@ihabdevteam/core 0.321.0 → 0.322.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +100 -0
- package/dist/components.cjs.js +3 -3
- package/dist/hooks.cjs.js +3 -3
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +5 -5
- package/dist/ihabdevteam-core.d.ts +64 -60
- package/dist/packages/core/src/components/HearingDeviceInfo.d.ts +5 -5
- package/dist/packages/core/src/components/HearingDeviceInfo.js +2 -2
- package/dist/packages/core/src/components/PanelRow.d.ts +2 -4
- package/dist/packages/core/src/components/PanelRow.js +2 -2
- package/dist/packages/core/src/components/Popup/DeviceListPopup.d.ts +4 -8
- package/dist/packages/core/src/components/Popup/DeviceListPopup.js +1 -1
- package/dist/packages/core/src/components/Popup/DeviceSideTable.js +3 -3
- package/dist/packages/core/src/components/Popup/ListPopup.js +3 -3
- package/dist/packages/core/src/components/Popup/LoadTablePopup.js +3 -3
- package/dist/packages/core/src/components/Training/NoisePlayerContext.d.ts +7 -4
- package/dist/packages/core/src/components/Training/TrainingBlock.js +2 -2
- package/dist/packages/core/src/components/Training/TrainingPagePopup.js +2 -2
- package/dist/packages/core/src/components/Training/TrainingStepAudioPlayer.js +2 -2
- package/dist/packages/core/src/components/Training/TrainingStepTextBox.js +2 -2
- package/dist/packages/core/src/components/Training/oneShotSound.d.ts +1 -1
- package/dist/packages/core/src/components/Training/oneShotSound.js +3 -3
- package/dist/packages/core/src/components/Training/stepAnswerable.d.ts +2 -2
- package/dist/packages/core/src/components/Training/trainingMissStats.js +2 -2
- package/dist/packages/core/src/components/Word/WordSearchResultBlock.js +9 -9
- package/dist/packages/core/src/components/Word/wordScoreStats.js +2 -2
- package/dist/packages/core/src/components/Word/wordTableRecommend.js +2 -2
- package/dist/packages/core/src/components/wordTableLayout.d.ts +5 -3
- package/dist/packages/core/src/hooks/inputModality.d.ts +1 -1
- package/dist/packages/core/src/hooks/inputModality.js +1 -1
- package/dist/packages/core/src/hooks/useDeviceManagement.d.ts +5 -17
- package/dist/packages/core/src/hooks/useDeviceManagement.js +20 -8
- package/dist/packages/core/src/hooks/usePageResetOnChange.d.ts +3 -3
- package/dist/packages/core/src/hooks/usePageResetOnChange.js +6 -6
- package/dist/packages/core/src/hooks/useTablePaging.d.ts +16 -5
- package/dist/packages/core/src/hooks/useTablePaging.js +20 -9
- package/dist/packages/core/src/hooks/useWordTrainingFilter.d.ts +3 -1
- package/dist/packages/core/src/hooks/useWordTrainingFilter.js +7 -5
- package/dist/packages/core/src/utils/devWarn.d.ts +2 -2
- package/dist/packages/core/src/utils/devWarn.js +5 -5
- package/dist/packages/core/src/utils/filterPanelSummary.d.ts +1 -1
- package/dist/packages/core/src/utils/filterPanelSummary.js +4 -4
- package/dist/packages/core/src/utils/navScroll.d.ts +2 -2
- package/dist/packages/core/src/utils/navScroll.js +4 -4
- package/dist/packages/core/src/utils/pressable.d.ts +1 -1
- package/dist/packages/core/src/utils/pressable.js +3 -3
- package/dist/packages/core/src/utils/sessionTab.d.ts +7 -7
- package/dist/packages/core/src/utils/sessionTab.js +9 -9
- package/dist/packages/core/src/utils/textSort.d.ts +15 -5
- package/dist/packages/core/src/utils/textSort.js +19 -9
- package/dist/packages/core/src/utils/wordAttributeFilterCodes.d.ts +2 -2
- package/dist/packages/core/src/utils/wordAttributeFilterCodes.js +3 -3
- package/dist/packages/core/src/version.d.ts +1 -1
- package/dist/packages/core/src/version.js +1 -1
- package/dist/utils.cjs.js +1 -1
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
\uC2E0\uB8B0\uB97C \uC313\uACE0
|
|
3
3
|
\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"},Fv={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"}}},Hv={timeHM:"{{h}}\uC2DC {{m}}\uBD84",timeH:"{{h}}\uC2DC"},Vv={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"}},Wv={answer:"\uC815\uB2F5",distractor:"\uC624\uB2F5"},Gv={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"},Uv={clearAriaLabel:"\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"},qv={ariaLabel:"\uC120\uD0DD \uD0ED"},Yv={ariaLabel:"\uD0ED"},Kv={dragPrompt:"\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC",browseButton:"\uD30C\uC77C \uC120\uD0DD",removeAriaLabel:"{{name}} \uC81C\uAC70"},Zv={ariaLabel:"\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0"},Xv={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"}},Jv={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",detailFor:"{{name}} \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"}},Qv={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"}},eC={manage:{unit:"\uAC74"}},tC={cancelLabel:"\uCDE8\uC18C"},aC={steps:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"},oC={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"},rC={resetColumns:"\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654",scrollRegion:"\uAC00\uB85C\uB85C \uAD74\uB9B4 \uC218 \uC788\uB294 \uD45C",rowActionHint:"\uC904\uC744 \uB204\uB974\uBA74 \uC790\uC138\uD788 \uBD05\uB2C8\uB2E4"},nC={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"},iC={ariaLabel:"\uBC30\uB108",dotAriaLabel:"{{count}}\uAC1C \uC911 {{index}}\uBC88\uC9F8 \uBC30\uB108"},sC={selectYearMonth:"\uC5F0\uC6D4 \uC120\uD0DD",chooseDate:"\uB0A0\uC9DC \uC120\uD0DD"},lC={previewRegion:"\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30 \u2014 \uC88C\uC6B0\uB85C \uAD74\uB824 \uBCFC \uC218 \uC788\uC2B5\uB2C8\uB2E4"},cC={description:"\uC124\uBA85",textbox:"\uBCF8\uBB38",training:"\uD6C8\uB828 \uC548\uB0B4",menu:"\uBA54\uB274"},uC={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"}},dC={clearSelection:"\uC120\uD0DD \uD574\uC81C"},pC={showResult:"{{type}} \uACB0\uACFC\uBCF4\uAE30"},hC={selected:"\uC120\uD0DD\uB428",remove:"\uC81C\uAC70",exclude:"\uC81C\uC678",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"},mC={loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},bC={state:{active:"\uC18C\uB9AC \uB098\uB294 \uC911",played:"\uB4E4\uC74C",correct:"\uC815\uB2F5",wrong:"\uC624\uB2F5"}},gC={ariaLabel:"\uC774\uB3D9 \uACBD\uB85C"},fC={empty:"\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."},vC={main:"\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8",soft:"\uC18C\uD504\uD2B8",sub:"\uC11C\uBE0C \uCEEC\uB7EC",deep:"\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8",softSub:"\uC18C\uD504\uD2B8 \uC11C\uBE0C",warm:"\uC6DC(\uAC15\uC870)",dark:"\uB2E4\uD06C",radial:"\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8",diagonal:"\uB300\uAC01\uC120 \uD328\uD134",dots:"\uB3C4\uD2B8 \uD328\uD134",outline:"\uC544\uC6C3\uB77C\uC778",success:"\uC131\uACF5/\uC644\uB8CC",naver:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4",instagram:"\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4"},CC={common:rv,calendar:nv,passCard:iv,searchField:sv,rating:lv,colorPicker:cv,dropdown:uv,accordion:dv,header:pv,nav:hv,settings:mv,usage:bv,account:gv,help:fv,training:vv,trainingSettings:Cv,customers:xv,payment:_v,coupons:yv,visits:wv,company:kv,trainingType:Bv,myWordTraining:Av,myWordTable:Sv,keyWords:Ev,wordTable:Dv,wordSearch:Nv,wordPrint:Tv,topic:jv,accessLinkManager:Lv,login:Mv,trainingPlanRun:$v,device:Rv,manager:Pv,wordPairs:zv,game:Iv,footer:Ov,landing:Fv,date:Hv,trainingSetPage:Vv,wordTrainingPreview:Wv,wordData:Gv,textField:Uv,segmentedControl:qv,tabs:Yv,fileUpload:Kv,avatar:Zv,myHomework:Xv,trainingStatus:Jv,store:Qv,homework:eC,inquiry:tC,progress:aC,trainingMiss:oC,table:rC,wordScore:nC,topBanner:iC,datePicker:sC,report:lC,tooltip:cC,phonemeProfile:uC,bulkBar:dC,debug:pC,badge:hC,loader:mC,soundCompass:bC,breadcrumb:gC,board:fC,promoBannerBg:vC},xC={statusFilter:"Filter by status",pageSizeSelect:"Items per page",selectedCount_one:"{{count}} selected",selectedCount_other:"{{count}} selected",moreFor:"More options for {{name}}",collapseFor:"Collapse {{name}}",expandFor:"Expand {{name}}",sortFor:"Sort {{name}}",cancel:"Cancel",info:"Info",errorState:{message:"Couldn't load this.",retry:"Try again"},save:"Save",confirm:"Confirm",discardConfirm:{title:"Discard your changes?",body:"If you do not save, everything you have entered will be lost.",confirm:"Discard"},close:"Close",back:"Back",emptyTrainingName:"Training name is empty.",remove:"Remove",image:"Image",delete:"Delete",reset:"Reset",update:"Update",download:"Download",likeCount_one:"{{count}} like",likeCount_other:"{{count}} likes",selectedOfMax:"{{count}} of {{max}}",downloadCount_one:"{{count}} download",downloadCount_other:"{{count}} downloads",descriptionFor:"About {{name}}",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",playFor:"Play {{name}}",pauseFor:"Pause {{name}}",pause:"Pause",playPause:"Play / Pause",replay:"Replay",subscription:"Subscription",done:"Done",failed:"Failed",continue:"Continue",notification:"Notice",emptyList:"No items",noMatches:"No matching 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."},_C={rangeSelect:"Select period",dow:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],yearMonth:"{{month}}/{{year}}",prevMonth:"Previous month",addOnDate:"Add a visit on {{date}}",nextMonth:"Next month",prevWeek:"Previous week",nextWeek:"Next week",legend:{visited:"Visited",scheduled:"Scheduled",noVisit:"No Show"},periodSelect:"Period unit",visitCount_one:"{{count}} visit",visitCount_other:"{{count}} visits",statusCount:"{{count}} {{label}}"},yC={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",expired:"Expired",menu:{use:"Activate",refund:"Refund",delete:"Delete"}},wC={clearAriaLabel:"Clear search"},kC={starLabel:"Select star {{n}}",valueLabel:"{{value}} out of {{max}}",groupLabel:"Rating"},BC={selected:"selected"},AC={placeholder:"Select"},SC={collapse:"Collapse",expand:"Expand"},EC={biArea:"BI area",biSymbol:"BI symbol",logoMalgwi:"Malgwi logo",logoManager:"Malgwi Manager logo",menuOpen:"Open menu",utilMenu:"Utility menu",menuClose:"Close menu"},DC={mainMenu:"Main menu",bottomNav:"Bottom navigation",goToManager:"Go to Malgwi Manager",goToMalgwi:"Go to Malgwi",modeLabelManager:"Malgwi Manager",modeLabelMalgwi:"Malgwi",training:"Training",settings:"Settings",notifications:"Notifications",account:"Account",help:"Help",feedback:"Report a bug",debug:"Debug",coupons:"Coupons",topic:"By Topic",trainingType:"By Training Type",wordPairs:"Word Pairs",wordSearch:"Word Search",wordTable:"Word Table Creator",company:"Company Info",more:"More",moreMenu:"More menu",badgeLabel:"{{label}}, {{count}}",badgeInsideLabel_one:"{{label}}, {{count}} notification inside",badgeInsideLabel_other:"{{label}}, {{count}} notifications inside"},NC={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."}}},TC={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"}},jC={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"}}},LC={guide:{faq:{title:"FAQ",desc:"View all frequently asked questions"}}},MC={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_one:"{{n}} question",countQuestions_other:"{{n}} questions",countSentences_one:"{{n}} sentence",countSentences_other:"{{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",previewFor:"Preview {{name}}",stopFor:"Stop {{name}}",next:"Next",completed:"Completed",selected:"Selected",nthSelected:"Selection {{n}}",fontSizeMin:"Font size is at the minimum.",fontSizeMax:"Font size is at the maximum.",fontSizeDecrease:"Decrease font size",fontSizeIncrease:"Increase font size",toggleBackground:"Toggle background",cardInstructions:"Look at the word card, listen to the sound, and check it.",noCards:"No cards.",audioFetchError:"Failed to load the sound source.",ttsUnavailable:"Speech playback isn't available on this device.",selectConfirm:"Look at the question and select the answer.",orderListDefault:"Arrange the sentences in the order you heard.",result:{pendingDone:"Results are still being calculated, so you can't finish yet.",eyebrow:"Training Complete",title:"You've finished all the training!",scoreAria:"{{correct}} / {{total}} questions",elapsed:"Time Elapsed",summary:"You heard {{correct}} item(s) correctly.",tableAriaLabel:"Per-question judgement",colJudge:"Judgement",colAnswerSelected:"Answer \xB7 Selected",colAnswer:"Answer",colSelected:"Selected",heardWell:"Heard well",notHeard:"Didn't hear",notJudged:"Not judged",replay:"Replay",done:"Done",viewResult:"View Results",noContent:"(No content)"},up:"Move up",down:"Move down",prev:"Previous",listenLabel:"Listen",sourcePlay:"Play source {{n}}",listen:"Listen",audioStatus:{idle:"Idle",resolving:"Resolving\u2026",checking_exists:"Checking file\u2026",getting_signed_url:"Getting URL\u2026",downloading:"Downloading\u2026",measuring_duration:"Measuring length\u2026",ready:"Ready",error:"Error",synthesizing:"Preparing the sound\u2026"}},$C={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"},RC={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"}},PC={plan:{recommendedFor:"Recommended for",features:"Key Features",freePrice:"Free",contact:"Contact Us",tierFallback:"Plan",openPromo:"Launch offer"},products:{mgrEnterprise:{tier:{price:"Contact us"}}}},zC={title:"Coupons",subtitle:"Enter a coupon code or view your coupons",input:{label:"Coupon code",placeholder:"Enter coupon code"},applyButton:"Apply",error:{invalid:"Invalid coupon code.",alreadyUsed:"This coupon has already been used."},success:{applied:'"{{name}}" coupon applied.'},section:{owned:"My Coupons"},status:{used:"Used",available:"Available"}},IC={unitVisit:"",periodAll:"All",showN:"Show {{n}}"},OC={subtitle:"Manage company and business information",editButton:"Edit Info",basicInfo:{title:"Basic Info"},contactInfo:{title:"Contact Info"}},FC={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."}},HC={comingSoon:"Word training is coming soon."},VC={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"},WC={title:"Key Words",empty:"No key words available."},GC={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",topInfo:"Header",bottomInfo:"Footer",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_one:"{{count}} word",itemCount_other:"{{count}} words",deleteAriaLabel:"Delete {{name}}",viewLabel:"View as",sortLabel:"Sort by",sort:{newest:"Newest",oldest:"Oldest",name:"Name",count:"Word Count"},view:{grid:"Grid View",list:"List View"}},publisherFilter:"Show only tables by {{name}}",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",markName:{o:"Correct",triangle:"Partial",x:"Incorrect"},button:"Score",pickTitle:"Who are you scoring?",pickSubtitle:"Choose the customer who trained with \u201C{{name}}\u201D.",pickSearch:"Search by name or phone",pickEmpty:"No customers registered.",pickNoMatch:"No matching customer.",pickAgain:"Choose another",scoringFor:"Scoring {{name}}",none:"Tap \u25CB \xB7 \u25B3 \xB7 \u2715 under a cell to mark it. With a mouse they appear when you hover the cell; with a keyboard, when focus reaches it.",tally:"{{marked}} scored \xB7 \u25CB {{o}} \xB7 \u25B3 {{triangle}} \xB7 \u2715 {{x}} \xB7 {{rate}}%",save:"Save score",saved_one:"Saved {{count}} mark for {{name}}.",saved_other:"Saved {{count}} marks for {{name}}.",reviewTitle:"Create a review table?",reviewMessage_one:"Builds a new table from the {{count}} cell {{name}} got wrong or partial. Correct ones are left out.",reviewMessage_other:"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_one:"Created \u201C{{name}}\u201D \u2014 {{count}} cell.",reviewCreated_other:"Created \u201C{{name}}\u201D \u2014 {{count}} cells.",discardTitle:"Discard this scoring?",discardMessage_one:"You marked {{count}} cell but have not saved. Leaving discards it.",discardMessage_other:"You marked {{count}} cells but have not saved. Leaving discards them.",discardConfirm:"Discard and leave"},info:{grade:"Grade: {{n}}",syllables:"Syllables: {{n}}",pos:"Part of speech: {{v}}",wordType:"Type: {{v}}"},pos:{noun:"Noun",verb:"Verb",adjective:"Adjective",adverb:"Adverb",numeral:"Numeral",determiner:"Determiner",interjection:"Interjection",particle:"Particle",affix:"Affix",dependentNoun:"Dependent noun",pronoun:"Pronoun",auxVerb:"Auxiliary verb",auxAdjective:"Auxiliary adjective"},reorder:{moved:"Moved to position {{n}} of {{total}}",handle:"Reorder {{word}} (Alt + arrow keys)",hint:"Alt + \u2190 \u2192 to reorder"}},UC={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}}",gradeNone:"None",syllables:"Syllables",syllable:"{{n}} Syll.",syllable5plus:"5+ Syllables",partOfSpeech:"Part of Speech",pos:{noun:"Noun/Numeral",verb:"Verb/Adjective",modifier:"Adverb/Determiner"},wordType:"Word Type",type:{native:"Native Korean",sino:"Sino-Korean",foreign:"Loanword",mixed:"Hybrid"},exclude:"Exclude",excludeNoImage:"No Image"},searchButton:"Search",resultUnit:"words",remaining:"{{count}} remaining",resultDisc:"Select {{unit}}. Up to {{max}} items. ({{selected}}/{{max}})",resultTitlePrefix:"",resultTitleSuffix:" {{unit}} found.",emptyResult:"No results found.",groupCount:"{{count}}",sort:{aria:"Sort",match:"Best Match",ganada:"A\u2013Z \u2191",ganadaDesc:"A\u2013Z \u2193",syllable:"Syllables \u2191",syllableDesc:"Syllables \u2193",grade:"Grade \u2191",gradeDesc:"Grade \u2193",original:"Original order"},pageSize:"Show {{count}}",pageSizeAria:"Page size",popup:{title:"Select a word for cell {{n}}"}},qC={clearAllSelection:"Clear All Selections",divLine:"Contrast Line",removePair:"Remove pair",removeWord:"Remove word"},YC={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"}},KC={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_one:"Used {{count}} time",uses_other:"Used {{count}} times",expiresAt:"Expires: {{date}}",createdAt:"Created: {{date}}",confirmDelete:"Delete this link?",deactivate:"Deactivate",delete:"Delete",status:{active:"Active",expired:"Expired",inactive:"Inactive"}},ZC={passwordPlaceholder:"Enter password"},XC={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"}},JC={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"}},QC={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}}",countLabel:"Number of phonemes",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:["Level 1 \u2014 everyday vocabulary acquired before school age and used for life","Level 2 \u2014 difficulty of grades 1\u20132","Level 3 \u2014 difficulty of grades 3\u20134","Level 4 \u2014 difficulty of grades 5\u20136","No level \u2014 frequent everyday words outside the national standard list, plus coinages and loanwords"],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."]},ex={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"}},tx={lead:`IHAB builds trust
|
|
4
4
|
through sound
|
|
5
|
-
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 Sicheong-gil, Chuncheon, Gangwon, Korea"},ax={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"}}},ox={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},rx={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},nx={answer:"Answer",distractor:"Distractor"},ix={phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount_one:"Downloading {{n}} word",downloadingCount_other:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items"},sx={clearAriaLabel:"Clear input"},lx={ariaLabel:"Select tab"},cx={ariaLabel:"Tabs"},ux={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},dx={ariaLabel:"User avatar"},px={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"}},hx={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_one:"{{n}} session",countLabel_other:"{{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",detailFor:"{{name}} details",trainingType:{LISTEN_IN_NOISE:"Sentence in Noise",SHORT_STORY:"Short Story",LONG_STORY:"Long Story",ORDERING_SENTENCE:"Sentence Ordering"}},mx={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)"}},bx={manage:{unit:"item(s)"}},gx={cancelLabel:"Cancel"},fx={subtitle:"Select a topic to start listening practice."},vx={steps:"Step {{current}} of {{total}}"},Cx={panelTitle:"Training misses",viewItems:"Items",viewTypes:"Types",colPending:"Left",colTrend:"Change",colRuns:"Runs",unitItem:" items",skippedOnly_one:"{{n}} older record was excluded \u2014 it does not say what was answered.",skippedOnly_other:"{{n}} older records 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_one:"{{count}} run",runs_other:"{{count}} runs",avgDuration:"{{sec}}s avg"},xx={resetColumns:"Reset column widths",scrollRegion:"Horizontally scrollable table",rowActionHint:"Press a row to open its details"},_x={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}}"},yx={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},wx={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},kx={previewRegion:"Report preview \u2014 scrollable sideways"},Bx={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},Ax={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},Sx={clearSelection:"Clear selection"},Ex={showResult:"Show {{type}} result"},Dx={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},Nx={loading:"Loading"},Tx={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},jx={ariaLabel:"Breadcrumb"},Lx={empty:"No items yet."},Mx={main:"Main gradient",soft:"Soft",sub:"Sub color",deep:"Deep gradient",softSub:"Soft sub",warm:"Warm (accent)",dark:"Dark",radial:"Radial gradient",diagonal:"Diagonal pattern",dots:"Dot pattern",outline:"Outline",success:"Success / done",naver:"Naver blog notice",instagram:"Instagram notice"},$x={common:xC,calendar:_C,passCard:yC,searchField:wC,rating:kC,colorPicker:BC,dropdown:AC,accordion:SC,header:EC,nav:DC,settings:NC,usage:TC,account:jC,help:LC,training:MC,trainingSettings:$C,customers:RC,payment:PC,coupons:zC,visits:IC,company:OC,trainingType:FC,myWordTraining:HC,myWordTable:VC,keyWords:WC,wordTable:GC,wordSearch:UC,wordPrint:qC,topic:YC,accessLinkManager:KC,login:ZC,device:XC,manager:JC,wordPairs:QC,game:ex,footer:tx,landing:ax,date:ox,trainingSetPage:rx,wordTrainingPreview:nx,wordData:ix,textField:sx,segmentedControl:lx,tabs:cx,fileUpload:ux,avatar:dx,myHomework:px,trainingStatus:hx,store:mx,homework:bx,inquiry:gx,trainingPlanRun:fx,progress:vx,trainingMiss:Cx,table:xx,wordScore:_x,topBanner:yx,datePicker:wx,report:kx,tooltip:Bx,phonemeProfile:Ax,bulkBar:Sx,debug:Ex,badge:Dx,loader:Nx,soundCompass:Tx,breadcrumb:jx,board:Lx,promoBannerBg:Mx};const Mn="0.
|
|
5
|
+
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 Sicheong-gil, Chuncheon, Gangwon, Korea"},ax={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"}}},ox={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},rx={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},nx={answer:"Answer",distractor:"Distractor"},ix={phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount_one:"Downloading {{n}} word",downloadingCount_other:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items"},sx={clearAriaLabel:"Clear input"},lx={ariaLabel:"Select tab"},cx={ariaLabel:"Tabs"},ux={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},dx={ariaLabel:"User avatar"},px={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"}},hx={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_one:"{{n}} session",countLabel_other:"{{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",detailFor:"{{name}} details",trainingType:{LISTEN_IN_NOISE:"Sentence in Noise",SHORT_STORY:"Short Story",LONG_STORY:"Long Story",ORDERING_SENTENCE:"Sentence Ordering"}},mx={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)"}},bx={manage:{unit:"item(s)"}},gx={cancelLabel:"Cancel"},fx={subtitle:"Select a topic to start listening practice."},vx={steps:"Step {{current}} of {{total}}"},Cx={panelTitle:"Training misses",viewItems:"Items",viewTypes:"Types",colPending:"Left",colTrend:"Change",colRuns:"Runs",unitItem:" items",skippedOnly_one:"{{n}} older record was excluded \u2014 it does not say what was answered.",skippedOnly_other:"{{n}} older records 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_one:"{{count}} run",runs_other:"{{count}} runs",avgDuration:"{{sec}}s avg"},xx={resetColumns:"Reset column widths",scrollRegion:"Horizontally scrollable table",rowActionHint:"Press a row to open its details"},_x={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}}"},yx={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},wx={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},kx={previewRegion:"Report preview \u2014 scrollable sideways"},Bx={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},Ax={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},Sx={clearSelection:"Clear selection"},Ex={showResult:"Show {{type}} result"},Dx={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},Nx={loading:"Loading"},Tx={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},jx={ariaLabel:"Breadcrumb"},Lx={empty:"No items yet."},Mx={main:"Main gradient",soft:"Soft",sub:"Sub color",deep:"Deep gradient",softSub:"Soft sub",warm:"Warm (accent)",dark:"Dark",radial:"Radial gradient",diagonal:"Diagonal pattern",dots:"Dot pattern",outline:"Outline",success:"Success / done",naver:"Naver blog notice",instagram:"Instagram notice"},$x={common:xC,calendar:_C,passCard:yC,searchField:wC,rating:kC,colorPicker:BC,dropdown:AC,accordion:SC,header:EC,nav:DC,settings:NC,usage:TC,account:jC,help:LC,training:MC,trainingSettings:$C,customers:RC,payment:PC,coupons:zC,visits:IC,company:OC,trainingType:FC,myWordTraining:HC,myWordTable:VC,keyWords:WC,wordTable:GC,wordSearch:UC,wordPrint:qC,topic:YC,accessLinkManager:KC,login:ZC,device:XC,manager:JC,wordPairs:QC,game:ex,footer:tx,landing:ax,date:ox,trainingSetPage:rx,wordTrainingPreview:nx,wordData:ix,textField:sx,segmentedControl:lx,tabs:cx,fileUpload:ux,avatar:dx,myHomework:px,trainingStatus:hx,store:mx,homework:bx,inquiry:gx,trainingPlanRun:fx,progress:vx,trainingMiss:Cx,table:xx,wordScore:_x,topBanner:yx,datePicker:wx,report:kx,tooltip:Bx,phonemeProfile:Ax,bulkBar:Sx,debug:Ex,badge:Dx,loader:Nx,soundCompass:Tx,breadcrumb:jx,board:Lx,promoBannerBg:Mx};const Mn="0.322.0",jr=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],So="ko",fs="ihab_display_language";function vp(){if(typeof window>"u")return So;try{const e=localStorage.getItem(fs);if(e&&jr.some(t=>t.code===e))return e}catch{}return So}function Rx(e){try{localStorage.setItem(fs,e)}catch{}}function Cp(e){try{document.documentElement.lang=e}catch{}}xt.on("languageChanged",Cp),Cp(vp()),xt.use(_e.initReactI18next).init({resources:{ko:{translation:CC},en:{translation:$x}},lng:vp(),fallbackLng:So,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const xp=s.createContext({locale:So,supportedLocales:jr});function Px(){return s.useContext(xp)}function zx(e){const t=o=>jr.some(n=>n.code===o);if(t(e))return e;const a=e.split(/[-_]/)[0]?.toLowerCase()??"";return t(a)?a:So}function Ix({locale:e=So,children:t}){const a=zx(e);s.useEffect(()=>{xt.language!==a&&xt.changeLanguage(a)},[a]);const o=s.useMemo(()=>({locale:a,supportedLocales:jr}),[a]);return r.jsx(xp.Provider,{value:o,children:t})}function Ne(...e){return e.filter(Boolean).join(" ")}var Ox=".ihabdevteam-core-scope .empty-state{align-items:center;border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);display:flex;flex-direction:column;gap:10px;justify-content:center;margin-block:auto;padding:var(--spacing-page) var(--spacing-xl);text-align:center}.ihabdevteam-core-scope .empty-state__icon{color:var(--color-lightGray);display:inline-flex}.ihabdevteam-core-scope .empty-state__message,.ihabdevteam-core-scope .empty-state__title{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .empty-state__title+.empty-state__message{margin-top:-6px}.ihabdevteam-core-scope .empty-state__action{margin-top:var(--spacing-xs);min-width:120px}";ce(Ox);const _p=new Set,Xo=(()=>{try{const e=globalThis;return e.process!=null&&e.process.env?.NODE_ENV!=="production"}catch{return!1}})();function ra(e,...t){!Xo||_p.has(e)||(_p.add(e),console.warn(...t))}/**
|
|
6
6
|
* @license lucide-react v1.38.0 - ISC
|
|
7
7
|
*
|
|
8
8
|
* This source code is licensed under the ISC license.
|
|
@@ -848,7 +848,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
848
848
|
\uC124\uCE58 \uBA85\uB839\uC5B4 (\uC2A4\uD1A0\uB9AC\uC9C0 SDK \uBBF8\uC124\uCE58 \uC2DC):
|
|
849
849
|
npm install @supabase/supabase-js
|
|
850
850
|
pnpm add @supabase/supabase-js
|
|
851
|
-
`),this.name="StorageNotConfiguredError"}};function Ls(e){d8(e)}function Rn(e,t){if(!e)return null;const a=er();return a?.resolvePath?a.resolvePath(e,t):t?`${t}/${e}.mp3`:null}async function Ms(e){if(!e)return!1;const t=er();if(!t)throw new js("fileExists");if(t.exists)return t.exists(e);try{return await t.resolveUrl(e)!==null}catch{return!1}}async function zr(e){if(!e)return null;const t=er();if(!t)throw new js("getSignedOrPublicUrl");try{return await t.resolveUrl(e)}catch{return null}}async function Pn(e){const t=er();if(!t)throw new js("downloadSound");return t.download(e)}function $s(){return er()?.noiseBaseUrl??"/sounds/noise"}function Rs(){const e=Number(er()?.noiseFileGain);return Number.isFinite(e)&&e>0?e:1}function p8(e){const t=AbortSignal.timeout;if(typeof t=="function")return t.call(AbortSignal,e);const a=new AbortController;return setTimeout(()=>a.abort(),e),a.signal}const Ps="__ihab_core_tts_config__";function ph(e){globalThis[Ps]=e}function Ir(){return globalThis[Ps]?.urlResolver??null}function zs(){return globalThis[Ps]?.fallbackUrlResolver??null}const h8=new Map;function hh(){h8.clear()}const mh="__ihab_core_pronunciation_resolver__";function bh(e){globalThis[mh]=e}function Is(){return globalThis[mh]??null}let lo=null;const Or=new WeakMap,Os=new WeakMap,Fs=new WeakMap;let gh=!1;const fh=e=>Math.max(0,Math.min(1,Number.isFinite(e)?e:0));function m8(){if(gh||typeof document>"u")return;gh=!0;const e=()=>{try{lo&&lo.state!=="running"&&lo.resume()}catch{}};for(const t of["pointerdown","touchend","keydown"])document.addEventListener(t,e,{capture:!0,passive:!0})}function vh(){if(lo)return lo;try{const e=window.AudioContext||window.webkitAudioContext;return e?(lo=new e,m8(),lo):null}catch{return null}}function Fr(){try{lo?.resume()}catch{}}function Hs(e,t){const a=Or.get(t);if(a)return a;try{const o=e.createMediaElementSource(t),n=e.createGain(),i=e.createAnalyser();i.fftSize=1024,i.smoothingTimeConstant=.6,n.gain.value=fh(Os.get(t)??t.volume),o.connect(n),n.connect(i),n.connect(e.destination);try{t.volume=1}catch{}const l={gain:n,analyser:i};return Or.set(t,l),l}catch{return null}}function tr(e){if(!e)return Promise.resolve(null);const t=Or.get(e);if(t)return Promise.resolve(t.analyser);const a=vh();if(!a)return Promise.resolve(null);if(a.state==="running")return Promise.resolve(Hs(a,e)?.analyser??null);const o=Fs.get(e);if(o)return o;const n=Promise.resolve().then(()=>a.resume()).then(()=>a.state==="running"?Hs(a,e)?.analyser??null:null).catch(()=>null).finally(()=>{Fs.delete(e)});return Fs.set(e,n),n}function Vs(e){if(!e)return null;const t=Or.get(e);if(t)return t.analyser;const a=vh();return a?a.state==="running"?Hs(a,e)?.analyser??null:(tr(e),null):null}function $a(e,t){const a=fh(t);Os.set(e,a);const o=Or.get(e);if(o){try{e.volume!==1&&(e.volume=1)}catch{}const n=o.gain.gain;try{const i=o.gain.context.currentTime;n.cancelScheduledValues(i),n.setTargetAtTime(a,i,.01)}catch{try{n.value=a}catch{}}return"gain"}try{e.volume=a}catch{}return"element"}function ar(e){return Os.get(e)??e.volume}function Ws(e,t){e.getFloatTimeDomainData(t);let a=0;for(let o=0;o<t.length;o++){const n=t[o];a+=n*n}return Math.sqrt(a/t.length)}const Ch="__ihab_core_image_config__";function xh(e){globalThis[Ch]=e}function co(){return globalThis[Ch]??null}const Hr="word_image_existence_map_v1";let Ra=null,No=0,_h=-1,Vr=null,yh=-1,wh=new Set;const zn=new Map;function or(){if(Ra)return Ra;try{const e=typeof localStorage<"u"?localStorage.getItem(Hr):null,t=e?JSON.parse(e):null;Ra=t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{Ra={}}return Ra}let Gs=null;function b8(){Gs||(Gs=setTimeout(()=>{Gs=null;try{typeof localStorage<"u"&&Ra&&localStorage.setItem(Hr,JSON.stringify(Ra))}catch{}},200))}function In(e,t){return`${e}_${t??1}`}async function Wr(e,t){const a=or(),o=In(e,t);if(o in a)return a[o];if(zn.has(o))return zn.get(o);const n=co();if(!n)return!1;const i=n(e,t);if(!i)return!1;const l=fetch(i,{method:"HEAD",signal:p8(8e3)}).then(c=>c.status>=500?null:c.ok,()=>null).then(c=>(zn.delete(o),c===null?!1:(a[o]=c,No++,b8(),c)));return zn.set(o,l),l}function kh(e,t){const a=or(),o=In(e,t);return o in a?a[o]:void 0}async function Bh(e,t={}){const{force:a=!1,concurrency:o=16,onProgress:n}=t,i=or(),l=a?Array.from(new Set(e)):Array.from(new Set(e)).filter(u=>!(In(u)in i));let c=0;if(l.length>0){let u=0;const d=Array.from({length:Math.min(o,l.length)},async()=>{for(;u<l.length;){const h=u++,p=l[h],m=In(p);if(!a&&m in i){c++,n?.(c,l.length);continue}try{await Wr(p)}catch{}c++,n?.(c,l.length)}});await Promise.all(d)}try{typeof localStorage<"u"&&Ra&&localStorage.setItem(Hr,JSON.stringify(Ra))}catch{}return{checked:l.length,cached:Object.keys(i).length,total:e.length}}function On(){const e=or();if(_h===No)return Vr?{...Vr}:null;const t=Object.values(e);return Vr=t.length===0?null:{total:t.length,exists:t.filter(Boolean).length},_h=No,Vr?{...Vr}:null}function Ah(){const e=or();if(yh===No)return wh;const t=new Set;for(const a in e)e[a]===!0&&a.endsWith("_1")&&t.add(a.slice(0,-2));return wh=t,yh=No,t}function Sh(e){const t=or();Object.assign(t,e),No++;try{typeof localStorage<"u"&&localStorage.setItem(Hr,JSON.stringify(t))}catch{}}function Us(){Ra={},No++;try{typeof localStorage<"u"&&localStorage.removeItem(Hr)}catch{}}const g8={\u3131:"\u3131",\u3132:"\u3131",\u314B:"\u3131",\u3133:"\u3131",\u313A:"\u3131",\u3134:"\u3134",\u3135:"\u3134",\u3136:"\u3134",\u3137:"\u3137",\u3145:"\u3137",\u3146:"\u3137",\u3148:"\u3137",\u314A:"\u3137",\u314C:"\u3137",\u314E:"\u3137",\u3139:"\u3139",\u313C:"\u3139",\u313D:"\u3139",\u313E:"\u3139",\u3140:"\u3139",\u3141:"\u3141",\u313B:"\u3141",\u3142:"\u3142",\u314D:"\u3142",\u313F:"\u3142",\u3144:"\u3142",\u3147:"\u3147"},qs={\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"}};function f8(e,t){return(qs[e]?.glide??"")!==(qs[t]?.glide??"")}function To(e){return g8[e]??e}const pt=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],yt=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],Pt=["","\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 Ke(e){if(!e)return null;const t=e.charCodeAt(0)-44032;return t<0||t>=11172?null:{cho:Math.floor(t/588),jung:Math.floor(t%588/28),jong:t%28}}function Ys(){const e=new Map;return t=>{let a=e.get(t);return a||(a=[...t].map(o=>Ke(o)),e.set(t,a)),a}}function ka(e,t,a=0){return String.fromCharCode(44032+(e*21+t)*28+a)}function Ks(e,t){if(!e||!t||e===t||e.length!==t.length)return"random";let a=0,o=null;for(let n=0;n<e.length;n++){const i=Ke(e[n]),l=Ke(t[n]);if(!i||!l)return"random";if(i.cho===l.cho&&i.jung===l.jung&&i.jong===l.jong)continue;a++;const c=i.cho!==l.cho,u=i.jung!==l.jung,d=i.jong!==l.jong;(c?1:0)+(u?1:0)+(d?1:0)>1?o="multi":c?o="cho":u?o="jung":o="jong"}return a!==1?"random":o==="cho"?"cho":o==="jung"?"jung":o==="jong"?"jong":"random"}function Zs(e){const t=Ke(e[0]||"");return t?pt[t.cho]:""}function Xs(e){return[...e].map(t=>{const a=Ke(t);return a?pt[a.cho]:t}).join("")}function Js(e){return!!e&&[...e].every(t=>pt.includes(t))}function Eh(e,t){return t?(e=e.normalize("NFC"),t=t.normalize("NFC"),Js(t)?Xs(e).includes(t):e.toLowerCase().includes(t.toLowerCase())):!0}function Dh(e,t){return Qs(t)(e)}function Qs(e){if(!e)return()=>!0;e=e.normalize("NFC");const t=[...e],a=l=>pt.includes(l),o=l=>yt.includes(l),n=t.map(l=>a(l)?"cho":o(l)?"jung":Ke(l)?"syl":"other"),i=t.map(l=>Ke(l));if(n.includes("other")){const l=e.toLowerCase();return c=>c.normalize("NFC").toLowerCase().includes(l)}return l=>{const c=[...l.normalize("NFC")];for(let u=0;u+t.length<=c.length;u++){let d=!0;for(let h=0;h<t.length;h++){const p=c[u+h],m=n[h];if(m==="cho"){if(Zs(p)!==t[h]){d=!1;break}}else if(m==="jung"){const C=Ke(p);if(!C||yt[C.jung]!==t[h]){d=!1;break}}else{const C=i[h];if(C&&C.jong===0){const v=Ke(p);if(!v||v.cho!==C.cho||v.jung!==C.jung){d=!1;break}}else if(p!==t[h]){d=!1;break}}}if(d)return!0}return!1}}const Fn={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"]},Nh=Object.fromEntries(Object.entries(Fn).map(([e,t])=>[t.join(""),Pt[Number(e)]]));function v8(e,t){if(!e||!t)return!1;for(const a of e){const o=Ke(a);if(o){if(pt[o.cho]===t)return!0;if(o.jong>0){if(Pt[o.jong]===t)return!0;const n=Fn[o.jong];if(n&&n.includes(t))return!0}}}return!1}function Th(e,t){if(!e||!t)return!1;for(const a of e){const o=Ke(a);if(o&&pt[o.cho]===t)return!0}return!1}function jh(e,t){if(!e||!t)return!1;for(const a of e){const o=Ke(a);if(o&&yt[o.jung]===t)return!0}return!1}function Lh(e,t,a){const o=Pt[e];return o===t?!0:a==="phoneme"&&To(o)===To(t)}function Mh(e,t,a="glyph"){if(!e||!t)return!1;for(const o of e){const n=Ke(o);if(!(!n||n.jong<=0)&&Lh(n.jong,t,a))return!0}return!1}function jo(e){if(!e)return 0;let t=0;for(const a of e)Ke(a)&&t++;return t}function el(e){if(!e)return!1;let t=!1;for(const a of e){const o=Ke(a);if(o&&(t=!0,o.jong>0))return!1}return t}function tl(e,t,a){return e.jong<=0?!1:t.some(o=>Lh(e.jong,o,a))}function al(e,t,a,o="glyph"){if(!e)return!1;const n=[...e],i=l=>{const c=Ke(n[l]);if(!c||t.cho&&!t.cho.includes(pt[c.cho])||t.jung&&!t.jung.includes(yt[c.jung]))return!1;if(t.jongNone){if(c.jong>0)return!1}else if(t.jong&&!tl(c,t.jong,o))return!1;return!0};if(a==="head")return i(0);if(a==="tail")return i(n.length-1);if(a==="mid"){for(let l=1;l<n.length-1;l++)if(i(l))return!0;return!1}for(let l=0;l<n.length;l++)if(i(l))return!0;return!1}function $h(e,t,a,o="glyph"){if(!e)return!1;const n=[...e].map(Ke).filter(u=>!!u);if(n.length===0)return!1;const i=n.length-1;if(a==="head"){if(!t.cho)return!1;const u=pt[n[0].cho];return u!=="\u3147"&&t.cho.includes(u)}if(a==="tail")return t.jongNone?n[i].jong===0:t.jong?tl(n[i],t.jong,o):!1;const l=!t.cho||n.some((u,d)=>{if(d===0)return!1;const h=pt[u.cho];return h!=="\u3147"&&t.cho.includes(h)}),c=t.jongNone?n.some((u,d)=>d!==i&&u.jong===0):!t.jong||n.some((u,d)=>d!==i&&tl(u,t.jong,o));return!t.cho&&!t.jong&&!t.jongNone?!1:l&&c}function ol(e){return e.includes(",")||e.includes("_")}function Rh(e){if(e==="")return[{kind:"any"}];if(e.includes("_")){const t=[...e];if(t.length>4)return[{kind:"invalid"}];const a=t[0]??"_",o=t[1]??"_";let n=t.slice(2).join("");if(n.length===2){const i=Nh[n];if(!i)return[{kind:"invalid"}];n=i}return[{kind:"template",cho:a,jung:o,jong:n||"_"}]}return[...e].map(t=>Ke(t)?{kind:"syllable",ch:t}:pt.includes(t)?{kind:"cho",jamo:t}:yt.includes(t)?{kind:"jung",jamo:t}:{kind:"invalid"})}function C8(e,t){switch(t.kind){case"any":return!0;case"syllable":{const a=Ke(t.ch);if(!a)return e===t.ch;if(a.jong===0){const o=Ke(e);return!!o&&o.cho===a.cho&&o.jung===a.jung}return e===t.ch}case"cho":{const a=Ke(e);return!!a&&pt[a.cho]===t.jamo}case"jung":{const a=Ke(e);return!!a&&yt[a.jung]===t.jamo}case"template":{const a=Ke(e);return!(!a||t.cho!=="_"&&pt[a.cho]!==t.cho||t.jung!=="_"&&yt[a.jung]!==t.jung||t.jong!=="_"&&Pt[a.jong]!==t.jong)}case"invalid":return!1}}function rl(e,t){e=e.normalize("NFC"),t=t.normalize("NFC");const a=t.split(",").flatMap(n=>Rh(n.trim()));if(a.length===0)return!0;const o=[...e];if(o.length<a.length)return!1;for(let n=0;n+a.length<=o.length;n++)if(a.every((i,l)=>C8(o[n+l],i)))return!0;return!1}function Ph(e){const t=e.split(",").flatMap(i=>Rh(i.trim())),a=new Set,o=new Set,n=new Set;for(const i of t)switch(i.kind){case"cho":a.add(i.jamo);break;case"jung":o.add(i.jamo);break;case"template":i.cho!=="_"&&a.add(i.cho),i.jung!=="_"&&o.add(i.jung),i.jong!=="_"&&n.add(i.jong);break;case"syllable":{const l=Ke(i.ch);l&&(a.add(pt[l.cho]),o.add(yt[l.jung]),l.jong!==0&&n.add(Pt[l.jong]));break}}return a.size===0&&o.size===0&&n.size===0?null:{cho:a.size?[...a]:null,jung:o.size?[...o]:null,jong:n.size?[...n]:null}}function x8(e){return!!Ke(e)||pt.includes(e)||yt.includes(e)}function zh(e){const t=e.normalize("NFC").trim();if(!t)return{ok:!0};for(const a of t.split(",")){const o=a.trim();if(o!==""){if(o.includes("_")){const n=[...o];if(n.length>4)return{ok:!1};const i=n[0],l=n[1],c=n.slice(2).join(""),u=i===void 0||i==="_"||pt.includes(i),d=l===void 0||l==="_"||yt.includes(l),h=c===""||c==="_"||Pt.filter(Boolean).includes(c)||!!Nh[c];if(u&&d&&h)continue;return{ok:!1}}if(![...o].every(x8))return{ok:!1}}}return{ok:!0}}const _8={cho:pt.length,jung:yt.length,jong:Pt.length};function y8(e,t,a,o,n=1/0){if(!e||a<1)return[];const i=[...e].map(p=>Ke(p));if(i.some(p=>!p))return[];const l=i,c=l.length;if(a>c)return[];const u=_8[t],d=new Set,h=[];(function p(m,C){if(C.length===a){h.push([...C]);return}for(let v=m;v<c;v++)C.push(v),p(v+1,C),C.pop()})(0,[]);for(const p of h)if((function m(C,v){if(d.size>=n)return;if(C===p.length){const x=v.map(b=>ka(b.cho,b.jung,b.jong)).join("");x!==e&&o.has(x)&&d.add(x);return}const f=p[C],g=l[f][t];for(let x=0;x<u;x++){if(x===g)continue;const b=v.slice();if(b[f]={...v[f],[t]:x},m(C+1,b),d.size>=n)return}})(0,l),d.size>=n)break;return[...d]}function w8(e,t){if(!e||!t||e.length!==t.length)return-1;let a=0;for(let o=0;o<e.length;o++){const n=Ke(e[o]),i=Ke(t[o]);if(!n||!i)return-1;n.cho!==i.cho&&a++,n.jung!==i.jung&&a++,n.jong!==i.jong&&a++}return a}function Ih(e,t){const a=t.normalize("NFC").trim();if(!a||!/[^\s,_]/.test(a))return e;if(ol(a))return e.filter(u=>rl(u.word,a));const o=Qs(a),n=[...a].length,i=u=>!!u&&o(u.normalize("NFC").slice(0,n)),l=[],c=[];for(const u of e)(o(u.word)||o(u.pronunciation??""))&&(i(u.word)||i(u.pronunciation??"")?l:c).push(u);return l.concat(c)}const nl="word_pair_index_v2",il="word_pair_index_sig_v2";let Pa=null,Gr=null;function Oh(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(nl),t=localStorage.getItem(il);return!e||!t?null:{index:JSON.parse(e),sig:t}}catch{return null}}function k8(e,t){try{if(typeof localStorage>"u")return;localStorage.setItem(nl,JSON.stringify(e)),localStorage.setItem(il,t)}catch{}}function B8(e){const t=e.map(o=>`${o.word}|${o.pron??""}`).sort();let a=0;for(const o of t)for(let n=0;n<o.length;n++)a=(a<<5)-a+o.charCodeAt(n)|0;return`${t.length}-${a}`}async function A8(e,t){const a=new Set,o=[];for(const d of e){if(!d.word||a.has(d.word))continue;const h=d.pron||d.word,p=Array.from(h).map(Ke);p.some(m=>m===null)||p.length===Array.from(d.word).length&&(a.add(d.word),o.push({word:d.word,syls:p}))}const n={},i=o.length,l=new Map;for(const d of o){const h=d.syls.length;l.has(h)||l.set(h,[]),l.get(h).push(d)}let c=0;const u=["cho","jung","jong"];for(const d of l.values()){const h=d[0].syls.length;for(let p=0;p<h;p++)for(const m of u){const C=new Map;for(const v of d){let f="";for(let x=0;x<h;x++){x>0&&(f+="~");const b=v.syls[x];x===p?m==="cho"?f+=`*:${b.jung}:${b.jong}`:m==="jung"?f+=`${b.cho}:*:${b.jong}`:f+=`${b.cho}:${b.jung}:*`:f+=`${b.cho}:${b.jung}:${b.jong}`}let g=C.get(f);g||(g=[],C.set(f,g)),g.push(v)}for(const v of C.values())if(!(v.length<2))for(let f=0;f<v.length;f++){const g=v[f];for(let x=f+1;x<v.length;x++){const b=v[x];g.syls[p][m]!==b.syls[p][m]&&(n[g.word]||(n[g.word]={cho:[],jung:[],jong:[]}),n[b.word]||(n[b.word]={cho:[],jung:[],jong:[]}),n[g.word][m].push(b.word),n[b.word][m].push(g.word))}}}c+=d.length,t?.(c,i),await new Promise(p=>setTimeout(p,0))}return i>0&&t?.(i,i),n}let sl=0;async function Fh(e,t={}){const a=B8(e);if(!t.force){if(Pa&&Gr===a)return Pa;const i=Oh();if(i&&i.sig===a)return Pa=i.index,Gr=a,Pa}const o=++sl,n=await A8(e,t.onProgress);return o===sl&&(Pa=n,Gr=a,k8(n,a)),n}function Lo(){if(Pa)return Pa;const e=Oh();return e?(Pa=e.index,Gr=e.sig,Pa):null}function ll(){sl+=1,Pa=null,Gr=null;try{typeof localStorage<"u"&&(localStorage.removeItem(nl),localStorage.removeItem(il))}catch{}}const cl={cho:pt,jung:yt,jong:Pt},zt=e=>Array.isArray(e)?e.length>0:!!e;function Ur(e,t){if(e.length!==t.length)return!1;for(let a=0;a<e.length;a++){const o=e[a],n=t[a];if(!(!o||!n)&&(o.cho!==n.cho&&pt[o.cho]==="\u3147"!=(pt[n.cho]==="\u3147")||o.jung!==n.jung&&f8(yt[o.jung],yt[n.jung])||o.jong!==n.jong&&o.jong===0!=(n.jong===0)))return!0}return!1}function ul(e,t,a){const o=a.pronOf(e),n=a.decompOf,i=a.sameStructureOnly&&n?n(o):null,l=[];for(const c of t)c!==e&&(a.okSet&&!a.okSet.has(c)||a.pronOf(c)!==o&&(i&&n&&Ur(i,n(a.pronOf(c)))||l.push(c)));return l}function Hn(e,t,a){const o=t?.[e];if(!o)return[];const n=a.kind?o[a.kind]??[]:[...o.cho??[],...o.jung??[],...o.jong??[]];return ul(e,n,a)}function dl(e,t,a,o,n,i,l){const c=["cho","jung","jong"].filter(m=>zt(e[m])),u={};for(const m of c){const C=e[m];u[m]=new Set(Array.isArray(C)?C:[C])}const d=n==="pron",h=new Map;for(const m of t){const C=a(i(m));if(C.some(x=>!x))continue;let v=C;if(!d&&(v=a(m),v.length!==C.length||v.some(x=>!x)))continue;const f=C.length,g=h.get(f);g?g.push({w:m,dPron:C,dPos:v}):h.set(f,[{w:m,dPron:C,dPos:v}])}const p=new Map;for(const[m,C]of h){const v=new Map,f=(g,x)=>{const b=g.dPos[x];return b!=null&&c.every(w=>u[w].has(cl[w][b[w]]))};for(const g of C){let x;if(l==="head")x=f(g,0)?0:-1;else if(l==="tail")x=f(g,m-1)?m-1:-1;else if(l==="mid"){const w=c.includes("cho")?1:0,_=c.includes("jong")?m-2:m-1;x=-1;for(let A=w;A<=_;A++)if(f(g,A)){x=A;break}}else x=g.dPos.findIndex(w=>w!=null&&c.every(_=>u[_].has(cl[_][w[_]])));if(x<0)continue;const b=v.get(x);b?b.push(g):v.set(x,[g])}for(const[g,x]of v){const b=c.includes("cho"),w=c.includes("jung"),_=c.includes("jong"),A=B=>{let k="";for(let S=0;S<m;S++){const E=B[S];S===g?k+=(b?"*":E.cho)+"."+(w?"*":E.jung)+"."+(_?"*":E.jong)+".":k+=E.cho+"."+E.jung+"."+E.jong+"."}return k},y=new Map;for(const B of C){const k=A(B.dPron),S=y.get(k);S?S.push(B):y.set(k,[B])}for(const B of x){const k=y.get(A(B.dPron))??[],S=[];for(const E of k){if(E.w===B.w)continue;let D=!0;for(const I of c){const j=B.dPron[g][I],W=E.dPron[g][I];if(W===j){D=!1;break}if(d&&u[I].has(cl[I][W])){D=!1;break}}D&&(o&&Ur(B.dPron,E.dPron)||S.push(E.w))}p.set(B.w,S)}}}return p}function pl(e,t,a){return!(e>0)||!(t>0)?1:Math.max(1,Math.floor((e+a)/(t+a)))}function hl(e,t){if(!(e>0))return 1;const a=Math.max(1,Math.floor(t));if(e<=a)return e;const o=Math.ceil(e/a);return Math.max(1,Math.ceil(e/o))}const Vn=0,Hh=1,Mo=2,ml=3,S8=4,Wn=5,bl=6,Gn=7,E8=8,gl=9,rr=10,D8=11,qr=12,N8=13,Yr=14,Un=15,qn=16,Kr=17,T8=18,Ba=0,Za=1,j8=3,uo=4,fl=5,Zr=6,za=7,Ft=8,Vh=9,Wh=10,Yn=11,Gh=12,vl=13,nr=15,Kn=16,Xa=17,Uh=18,Cl=21,xl=27,L8=20,M8={1:Vn,2:Hh,4:Mo,7:ml,8:Wn,16:bl,17:Gn,19:gl,20:rr,22:qr,23:Yr,24:Un,25:qn,26:Kr},$8={[j8]:[Za,rr],[fl]:[uo,qr],[Vh]:[Ft,Vn],[Wh]:[Ft,bl],[Yn]:[Ft,Gn],[Gh]:[Ft,rr],[vl]:[Ft,qn],14:[Ft,Kr],[Uh]:[Xa,rr]},R8={[Zr]:Mo,[nr]:Wn},_l={2:Za,24:Za,3:Za,9:Za,5:uo,6:uo,19:za,20:za,22:za,23:za,25:za,27:za,11:Ft,12:Ft,13:Ft,15:Ft,10:Kn,14:Xa,18:Xa,26:Xa},qh={[Vn]:Un,[ml]:qn,[Gn]:Kr,[qr]:Yr},Yh={[Vn]:Hh,[ml]:S8,[Gn]:E8,[gl]:rr,[qr]:N8},P8=new Set([fl,Wh,Yn,Gh,vl,nr,Uh]),z8=new Set(["\uBC1F"]);function Kh(e){const t=(e??"").trim();if(!t)return"";const a=[...t],o=a.map(Ke);if(o.some(i=>i===null))return t;const n=o;for(let i=0;i<n.length;i++){const l=n[i],c=n[i+1],u=l.jong;if(!c){l.jong=_l[l.jong]??l.jong;break}if(l.jong===Ba)continue;if(c.cho===D8){if(c.jung===L8){if(l.jong===za){l.jong=Ba,c.cho=qr;continue}if(l.jong===25){l.jong=Ba,c.cho=Yr;continue}if(l.jong===vl){l.jong=Ft,c.cho=Yr;continue}}if(l.jong===xl){l.jong=Ba;continue}const h=R8[l.jong];if(h!==void 0){l.jong=Ba,c.cho=h;continue}const p=$8[l.jong];if(p){l.jong=p[0],c.cho=p[1];continue}const m=M8[l.jong];m!==void 0&&(l.jong=Ba,c.cho=m);continue}if((l.jong===xl||l.jong===Zr||l.jong===nr)&&qh[c.cho]!==void 0){c.cho=qh[c.cho],l.jong=l.jong===Zr?uo:l.jong===nr?Ft:Ba;continue}if((l.jong===xl||l.jong===Zr||l.jong===nr)&&c.cho===gl){c.cho=rr,l.jong=l.jong===Zr?uo:l.jong===nr?Ft:Ba;continue}if(c.cho===T8){if(l.jong===fl){l.jong=uo,c.cho=Yr;continue}if(l.jong===Vh){l.jong=Ft,c.cho=Un;continue}if(l.jong===Yn){l.jong=Ft,c.cho=Kr;continue}const h=_l[l.jong]??l.jong;if(h===Za){l.jong=Ba,c.cho=Un;continue}if(h===za){l.jong=Ba,c.cho=qn;continue}if(h===Xa){l.jong=Ba,c.cho=Kr;continue}}let d=_l[l.jong]??l.jong;u===Yn&&z8.has(a[i])&&(d=Xa),l.jong=d,Yh[c.cho]!==void 0&&(d===Za||d===za||d===Xa||P8.has(u))&&(c.cho=Yh[c.cho]),(c.cho===Mo||c.cho===bl)&&(l.jong===Za?l.jong=Cl:l.jong===za?l.jong=uo:l.jong===Xa&&(l.jong=Kn)),c.cho===Wn?l.jong===uo?l.jong=Ft:l.jong===Kn||l.jong===Cl?c.cho=Mo:l.jong===Za?(l.jong=Cl,c.cho=Mo):l.jong===Xa&&(l.jong=Kn,c.cho=Mo):l.jong===Ft&&c.cho===Mo&&(c.cho=Wn)}return n.map(i=>ka(i.cho,i.jung,i.jong)).join("")}const ir=/[ㄱ-ㅎ]/,I8=/[ㅏ-ㅣ]/;function Xr(e){e=e.normalize("NFC");for(let t=e.length-1;t>=0;t--){const a=e[t],o=a.charCodeAt(0);if(o>=44032&&o<=55203||ir.test(a)||I8.test(a))return a}return null}function yl(e){const t=Xr(e);if(!t)return"\uAC00";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":ir.test(t)?"\uC774":"\uAC00"}function wl(e){return`${e}${yl(e)}`}function kl(e){const t=Xr(e);if(!t)return"\uB97C";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":ir.test(t)?"\uC744":"\uB97C"}function Bl(e){return`${e}${kl(e)}`}function Al(e){const t=Xr(e);if(!t)return"\uB294";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC740":"\uB294":ir.test(t)?"\uC740":"\uB294"}function Zh(e){return`${e}${Al(e)}`}function Sl(e){const t=Xr(e);if(!t)return"\uC640";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uACFC":"\uC640":ir.test(t)?"\uACFC":"\uC640"}function Xh(e){return`${e}${Sl(e)}`}function El(e){const t=Xr(e);if(!t)return"\uB85C";const a=t.charCodeAt(0);if(a>=44032&&a<=55203){const o=(a-44032)%28;return o===0||o===8?"\uB85C":"\uC73C\uB85C"}return t==="\u3139"?"\uB85C":ir.test(t)?"\uC73C\uB85C":"\uB85C"}function Jh(e){return`${e}${El(e)}`}function Dl(e,t,a){const o=e.slice(),[n]=o.splice(t,1);return o.splice(a,0,n),o}function nt(e,t=Math.random){const a=e.slice();for(let o=a.length-1;o>0;o--){const n=Math.floor(t()*(o+1));[a[o],a[n]]=[a[n],a[o]]}return a}function Aa(e,t,a=Math.random){return!Array.isArray(e)||e.length===0||t<=0?[]:t>=e.length?nt(e,a):nt(e,a).slice(0,t)}const sr={SAME_SOUND_PICK:{difficulty:!0,choseong:!0,group:"discrimination"},SAME_OR_DIFF:{difficulty:!0,choseong:!0,group:"discrimination"},HEAR_AND_PICK_SAME:{difficulty:!0,choseong:!0,group:"discrimination"},HEAR_AND_PICK_INCLUDED:{difficulty:!0,choseong:!0,group:"discrimination"},STARTS_WITH_SAME_SOUND:{difficulty:!1,choseong:!0,group:"discrimination"},LISTEN_AND_REMEMBER_ORDER:{difficulty:!1,choseong:!0,group:"attention"},MERGE_2_SYLLABLES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_3_SYLLABLES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_2_PHONEMES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_3_PHONEMES:{difficulty:!1,choseong:!0,group:"synthesis"},DROP_1_FROM_2SYLL:{difficulty:!1,choseong:!0,group:"deletion"},DROP_1_FROM_3SYLL:{difficulty:!1,choseong:!0,group:"deletion"},DROP_PART_FROM_COMPOUND:{difficulty:!1,choseong:!0,group:"deletion"},DROP_FINAL_CONSONANT_FROM_1SYLL:{difficulty:!1,choseong:!0,group:"deletion"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{difficulty:!1,choseong:!0,group:"deletion"},CHANGE_1_SYLL_IN_2SYLL:{difficulty:!0,choseong:!0,group:"substitution"},CHANGE_1_SYLL_IN_3SYLL:{difficulty:!0,choseong:!0,group:"substitution"},CHANGE_1_PHONEME_IN_1SYLL:{difficulty:!1,choseong:!0,group:"substitution"},CHANGE_1_PHONEME_IN_2SYLL:{difficulty:!0,choseong:!0,group:"substitution"}};function O8(e){const t=e?sr[e]?.group:void 0;return t==="synthesis"||t==="deletion"||t==="substitution"?t:null}const Nl=pt.indexOf("\u3147"),lr={DROP_FINAL_CONSONANT_FROM_1SYLL:{syllables:1,syllable:e=>e.jong>0},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{syllables:1,syllable:e=>e.jong===0&&e.cho!==Nl},MERGE_2_SYLLABLES:{syllables:2,syllable:()=>!0},MERGE_3_SYLLABLES:{syllables:3,syllable:()=>!0},MERGE_2_PHONEMES:{syllables:1,syllable:e=>e.jong===0&&e.cho!==Nl},MERGE_3_PHONEMES:{syllables:1,syllable:e=>e.jong>0&&!Fn[e.jong]&&e.cho!==Nl}},F8=new Set([]);function Qh(e){return e in lr}function em(e,t){const a=lr[e];if(!a)return!0;const o=[...t];if(o.length!==a.syllables)return!1;const n=Ke(o[0]);return!!n&&a.syllable(n)}function tm(e){return F8.has(e)}function H8(e){const t=e.charCodeAt((e.length||1)-1)||0;return t<44032||t>55203||(t-44032)%28===0?"\uC640":"\uACFC"}function Jr(e){const t=e.charCodeAt((e.length||1)-1)||0;return t<44032||t>55203||(t-44032)%28===0?"\uB97C":"\uC744"}function Tl(e){const t=e.charCodeAt((e.length||1)-1)||0;if(t<44032||t>55203)return"\uB85C";const a=(t-44032)%28;return a===0||a===8?"\uB85C":"\uC73C\uB85C"}function am(e){const t=e.charAt((e.length||1)-1),a=t.charCodeAt(0)||0;return a>=44032&&a<=55203?(a-44032)%28===0?"\uAC00":"\uC774":/[ㄱ-ㅎ]/.test(t)?"\uC774":"\uAC00"}const jl={\u3131:"\uAE30\uC5ED",\u3132:"\uC30D\uAE30\uC5ED",\u3134:"\uB2C8\uC740",\u3137:"\uB514\uADFF",\u3138:"\uC30D\uB514\uADFF",\u3139:"\uB9AC\uC744",\u3141:"\uBBF8\uC74C",\u3142:"\uBE44\uC74D",\u3143:"\uC30D\uBE44\uC74D",\u3145:"\uC2DC\uC637",\u3146:"\uC30D\uC2DC\uC637",\u3147:"\uC774\uC751",\u3148:"\uC9C0\uC752",\u3149:"\uC30D\uC9C0\uC752",\u314A:"\uCE58\uC753",\u314B:"\uD0A4\uC754",\u314C:"\uD2F0\uC755",\u314D:"\uD53C\uC756",\u314E:"\uD788\uC757",\u3133:"\uAE30\uC5ED\uC2DC\uC637",\u3135:"\uB2C8\uC740\uC9C0\uC752",\u3136:"\uB2C8\uC740\uD788\uC757",\u313A:"\uB9AC\uC744\uAE30\uC5ED",\u313B:"\uB9AC\uC744\uBBF8\uC74C",\u313C:"\uB9AC\uC744\uBE44\uC74D",\u313D:"\uB9AC\uC744\uC2DC\uC637",\u313E:"\uB9AC\uC744\uD2F0\uC755",\u313F:"\uB9AC\uC744\uD53C\uC756",\u3140:"\uB9AC\uC744\uD788\uC757",\u3144:"\uBE44\uC74D\uC2DC\uC637",\u314F:"\uC544",\u3150:"\uC560",\u3151:"\uC57C",\u3152:"\uC598",\u3153:"\uC5B4",\u3154:"\uC5D0",\u3155:"\uC5EC",\u3156:"\uC608",\u3157:"\uC624",\u3158:"\uC640",\u3159:"\uC65C",\u315A:"\uC678",\u315B:"\uC694",\u315C:"\uC6B0",\u315D:"\uC6CC",\u315E:"\uC6E8",\u315F:"\uC704",\u3160:"\uC720",\u3161:"\uC73C",\u3162:"\uC758",\u3163:"\uC774"};function om(e){if([...e].length!==1)return[e];const t=Ke(e);if(!t)return[e];const a=[pt[t.cho],yt[t.jung]];return t.jong!==0&&a.push(Pt[t.jong]),a}function Ll(e,t=!1){const a=e.filter(Boolean);if(a.length<2)return"";const o=c=>jl[c]??c,n=a.slice(0,-1).map(c=>`"${c}"${H8(o(c))}`).join(" "),i=a[a.length-1],l=`"${i}"${Jr(o(i))}`;return`${n} ${l} \uD569\uCE58\uBA74 \uC5B4\uB5A4 ${t?"\uC18C\uB9AC":"\uB2E8\uC5B4"}\uAC00 \uB418\uB098\uC694?`}function V8(e,t){return Ll(t,e==="MERGE_2_PHONEMES"||e==="MERGE_3_PHONEMES")}const Ml=e=>jl[e]??e,W8={cho:"\uCD08\uC131",jung:"\uBAA8\uC74C",jong:"\uBC1B\uCE68"};function G8(e,t){const a=(u,d)=>{const h=[...u].length===1?Ke(u):null,p=[...d].length===1?Ke(d):null;if(!h||!p)return null;const m=["cho","jung","jong"].filter(C=>h[C]!==p[C]);return m.length===1?{part:m[0],sx:h,sy:p}:null},o=a(e,t)??a(Qr(e),Qr(t));if(!o)return null;const n=o.part==="cho"?pt:o.part==="jung"?yt:Pt,i=n[o.sx[o.part]],l=n[o.sy[o.part]],c=o.part==="jong"&&!i?"add":o.part==="jong"&&!l?"remove":"swap";return{part:o.part,from:i,to:l,kind:c}}function U8(e,t){const a=String(t?.word??t?.original??""),o=String(t?.changedFrom??""),n=String(t?.changedTo??"");if(e==="CHANGE_1_PHONEME_IN_1SYLL"||e==="CHANGE_1_PHONEME_IN_2SYLL"){const i=e==="CHANGE_1_PHONEME_IN_1SYLL",l=i?o||a:o,c=G8(l,n);if(c){const u=i?`"${a}"`:`"${a}"\uC758 "${l}"`,d=c.kind==="add"?"\uC5D0":"\uC5D0\uC11C",h=`"${c.from}"${Jr(Ml(c.from))}`,p=`"${c.to}"${Tl(Ml(c.to))}`;return c.kind==="add"?`${u}${d} \uBC1B\uCE68 "${c.to}"${Jr(Ml(c.to))} \uB354\uD558\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`:c.kind==="remove"?`${u}${d} \uBC1B\uCE68 ${h} \uBE7C\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`:`${u}${d} ${W8[c.part]} ${h} ${p} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`}}return e==="CHANGE_1_PHONEME_IN_1SYLL"?`"${a}"${Jr(a)} "${n}"${Tl(n)} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`:`"${a}"\uC5D0\uC11C "${o}"${Jr(o)} "${n}"${Tl(n)} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`}function q8(e,t){const a=String(t?.word??t?.original??t?.base??""),o=String(t?.dropped??"");if(e==="DROP_FINAL_CONSONANT_FROM_1SYLL")return`"${a}"\uC5D0\uC11C \uBC1B\uCE68\uC774 \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uB9D0\uC774 \uB418\uB098\uC694?`;if(e==="REMOVE_CONSONANT_AND_IDENTIFY_PHONEME"){const n=String(t?.missingConsonant??"");return`"${a}"\uC5D0\uC11C "${n}"${am(n)} \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB418\uB098\uC694?`}return`"${a}"\uC5D0\uC11C "${o}"${am(o)} \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uB9D0\uC774 \uB418\uB098\uC694?`}function rm(e,t,a){switch(O8(e)){case"synthesis":return V8(e,a);case"substitution":return U8(e,t);case"deletion":return q8(e,t);default:return""}}function nm(e){return e.replace(/"([ㄱ-ㅣ])"(으로|와|과|을|를|이|가|은|는|로)?/g,(t,a,o)=>{const n=jl[a];if(!n)return t;if(!o)return`"${n}"`;const i=(n.charCodeAt(n.length-1)-44032)%28,l=i!==0;let c=o;return o==="\uC640"||o==="\uACFC"?c=l?"\uACFC":"\uC640":o==="\uC744"||o==="\uB97C"?c=l?"\uC744":"\uB97C":o==="\uC774"||o==="\uAC00"?c=l?"\uC774":"\uAC00":o==="\uC740"||o==="\uB294"?c=l?"\uC740":"\uB294":(o==="\uC73C\uB85C"||o==="\uB85C")&&(c=i===0||i===8?"\uB85C":"\uC73C\uB85C"),`"${n}"${c}`})}const Y8=e=>e==null?[]:Array.isArray(e)?e:[e];function Qr(e){if([...e].length!==1)return"";const t=Ke(e);if(!t)return"";const a=To(Pt[t.jong]),o=a===""?0:Pt.indexOf(a);return ka(t.cho,t.jung,o<0?0:o)}function Zn(e,t){return t.get(e)||Qr(e)||e}function cr(e){return e?zt(e.cho)?"cho":zt(e.jung)?"jung":zt(e.jong)?"jong":null:null}function Ja(e,t){const a=(n,i)=>!zt(n)||Y8(n).includes(i),o=t.jongNone?e.jong===0:a(t.jong,Pt[e.jong]);return a(t.cho,pt[e.cho])&&a(t.jung,yt[e.jung])&&o}function $o(e,t,a){const o=[...e];if(a!=="pron")return o.map(i=>Ke(i));const n=[...t.get(e)||e];return n.length!==o.length?o.map(i=>Ke(i)):n.map(i=>Ke(i))}function Ro(e,t,a,o,n){const i=t==="cho"?pt:t==="jung"?yt:Pt,l=e[t],c=[],u=p=>t==="jung"?Z8(Zn(p,n)):Zn(p,n),d=new Map([[u(a),-1]]),h=nt(i.map((p,m)=>m).filter(p=>p!==l&&(t!=="cho"||i[p]!=="\u3147")&&(t!=="jong"||p!==0)));for(const p of h){if(c.length>=o)break;const m=t==="cho"?ka(p,e.jung,e.jong):t==="jung"?ka(e.cho,p,e.jong):ka(e.cho,e.jung,p),C=u(m),v=d.get(C);if(v!==void 0){t==="jung"&&v>=0&&n.has(m)&&!n.has(c[v])&&(c[v]=m);continue}d.set(C,c.length),c.push(m)}return c}const K8={\u3154:"\u3150",\u3156:"\u3152",\u315A:"\u3159",\u315E:"\u3159"};function Z8(e){if([...e].length!==1)return e;const t=Ke(e);if(!t)return e;const a=K8[yt[t.jung]];return a?ka(t.cho,yt.indexOf(a),t.jong):e}function $l(e,t,a,o,n,i=null){const l=[...e];if(l.length!==2)return null;const c=l.map(p=>Ke(p));if(c.some(p=>!p))return null;const u=$o(e,a,o);if(u.some(p=>!p))return null;const d=cr(t);let h=d&&t?u.map((p,m)=>Ja(p,t)?m:-1).filter(p=>p>=0):[0,1];if(i!=null&&(h=h.filter(p=>p!==i)),!h.length)return null;for(const p of nt(h)){const m=l[p];if(!n.has(m))continue;const C=Ro(c[p],d??"cho",m,40,a),v=[];for(const f of C)if(f!==m&&n.has(f)&&!v.includes(f)&&v.push(f),v.length>=2)break;if(!(v.length<2))return{question:e,distractors:[m,...v]}}return null}function Rl(e,t,a,o,n,i=null){const l=[...e];if(l.length!==3)return null;const c=l.map(p=>Ke(p));if(c.some(p=>!p))return null;const u=$o(e,a,o);if(u.some(p=>!p))return null;const d=cr(t),h=d&&t?u.map((p,m)=>Ja(p,t)?m:-1).filter(p=>p>=0):[0,1,2];if(!h.length)return null;for(const p of nt(h))for(const m of nt([0,1,2].filter(C=>C!==p&&(i==null||C===i)))){const C=[0,1,2].filter(b=>b!==m),v=C.map(b=>l[b]).join("");if(!n.has(v))continue;const f=C.indexOf(p),g=Ro(c[p],d??"cho",l[p],40,a),x=[];for(const b of g){const w=C.map(A=>l[A]);w[f]=b;const _=w.join("");if(_!==v&&n.has(_)&&!x.includes(_)&&x.push(_),x.length>=2)break}if(!(x.length<2))return{question:e,distractors:[v,...x]}}return null}function Pl(e,t,a,o,n,i=null){const l=[...e],c=l.length;if(c<2)return null;const u=[];for(let h=1;h<=c-1;h++)u.push({remain:l.slice(0,h).join(""),dropped:l.slice(h).join(""),droppedEnd:1}),u.push({remain:l.slice(c-h).join(""),dropped:l.slice(0,c-h).join(""),droppedEnd:0});const d=cr(t);for(const{remain:h,dropped:p,droppedEnd:m}of nt(u)){if(i!=null&&m!==i||[...h].length===1&&[...p].length===1||h===e||!n.has(h)||!n.has(p))continue;const C=[...h],v=C.map(x=>Ke(x));if(v.some(x=>!x))continue;const f=$o(h,a,o);if(f.some(x=>!x))continue;const g=d&&t?f.map((x,b)=>Ja(x,t)?b:-1).filter(x=>x>=0):C.map((x,b)=>b);if(g.length)for(const x of nt(g)){const b=Ro(v[x],d??"cho",C[x],40,a),w=[];for(const _ of b){const A=[...C];A[x]=_;const y=A.join("");if(y!==h&&n.has(y)&&!w.includes(y)&&w.push(y),w.length>=2)break}if(w.length>=2)return{question:e,distractors:[h,...w],dropped:p}}}return null}function zl(e,t,a,o,n,i=null){if([...e].length!==1)return null;const l=Ke(a.get(e)||e);if(!l||l.jong===0)return null;const c=ka(l.cho,l.jung,0),u=Ro({cho:l.cho,jung:l.jung,jong:0},"cho",c,2,a);return u.length<2?null:{question:e,distractors:[c,...u]}}const Il=pt.indexOf("\u3147");function Ol(e,t,a,o,n,i=null){if([...e].length!==1)return null;const l=Ke(a.get(e)||e);if(!l||l.jong!==0||l.cho===Il)return null;const c=ka(Il,l.jung,0),u=Ro({cho:Il,jung:l.jung,jong:0},"jung",c,2,a);return u.length<2?null:{question:e,distractors:[c,...u]}}function Fl(e){const t=new Map;for(const a of e){const o=[...a],n=o.length;if(!(n<2||n>3))for(let i=0;i<n;i++){let l=n+"|"+i+"|";for(let u=0;u<n;u++)l+=u===i?"*":o[u];const c=t.get(l);c?c.push(a):t.set(l,[a])}}return t}function Hl(e,t,a,o,n,i=null,l=null,c=2){const u=[...e],d=u.length;if(d<2||d>3)return null;const h=u.map(b=>Ke(b));if(h.some(b=>!b))return null;const p=$o(e,a,o);if(p.some(b=>!b))return null;const m=b=>a.get(b)??b,C=m(e),v=!!t&&(zt(t.cho)||zt(t.jung)||zt(t.jong)),f=!!l&&(zt(l.cho)||zt(l.jung)||zt(l.jong)),g=b=>{let w=d+"|"+b+"|";for(let _=0;_<d;_++)w+=_===b?"*":u[_];return w};let x;if(i!=null){if(i>=d||v&&!Ja(p[i],t))return null;x=[i]}else v?x=p.map((b,w)=>Ja(b,t)?w:-1).filter(b=>b>=0):x=Array.from({length:d},(b,w)=>w);for(const b of nt(x)){const w=n.get(g(b))??[],_=[],A=[];for(const E of w){if(E===e)continue;const D=[...E].map(L=>Ke(L)),I=h[b],j=D[b];if(!I||!j)continue;let W=0;if(I.cho!==j.cho&&W++,I.jung!==j.jung&&W++,I.jong!==j.jong&&W++,!(W<c||m(E)===C))if(f){const L=$o(E,a,o)[b];L&&Ja(L,l)?_.push(E):A.push(E)}else _.push(E)}if(!_.length)continue;const y=nt(_)[0],B=[],k=new Set([C,m(y)]),S=f?A:_.filter(E=>E!==y);for(const E of nt(S)){const D=m(E);if(!k.has(D)&&(k.add(D),B.push(E),B.length>=2))break}if(!f&&B.length<2)for(const E of nt(w)){if(E===e||E===y)continue;const D=m(E);if(!k.has(D)&&(k.add(D),B.push(E),B.length>=2))break}if(!(B.length<2))return{question:e,distractors:[y,...B]}}return null}const X8=()=>{const e="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",t=typeof xt?.t=="function"?xt.t("common.unknownError",{defaultValue:e}):void 0;return typeof t=="string"&&t?t:e};function en(e,t){if(t===void 0&&(t=X8()),e instanceof Error)return e.message||t;if(typeof e=="string")return e||t;if(e&&typeof e=="object"){const a=e;for(const o of[a.message,a.error_description,a.error])if(typeof o=="string"&&o)return o}return t}const Xn="\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.",J8=()=>{const e=typeof xt?.t=="function"?xt.t("common.networkError",{defaultValue:Xn}):void 0;return typeof e=="string"&&e?e:Xn};function Vl(e){return e?/failed to fetch|load failed|networkerror|network request failed|fetcherror/i.test(e):!1}function im(e){return Vl(e)?J8():e}function sm(e,t){return e==="id"?void 0:`${e}|${t?"asc":"desc"}`}function lm(e){const[t,a]=e.split("|");return{key:t,asc:a==="asc"}}function cm(e){let t=e==null?"":String(e);return!(typeof e=="number"&&Number.isFinite(e))&&/^[=+\-@\t\r]/.test(t)&&(t="'"+t),/[",\n\r]/.test(t)?`"${t.replaceAll('"','""')}"`:t}const Q8=1e3;function um(e,t){const a=new Blob([t.startsWith("\uFEFF")?t:"\uFEFF"+t],{type:"text/csv;charset=utf-8"}),o=URL.createObjectURL(a),n=document.createElement("a");n.href=o,n.download=e,n.click(),setTimeout(()=>URL.revokeObjectURL(o),Q8)}const dm="__ihab_core_word_pool__";function e3(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("wordpool:update"))}function pm(e,t){const a=new Map;for(const n of e)a.set(n.word,n);const o={entries:e,pairIndex:t??null,byWord:a};globalThis[dm]=o,e3()}function Po(){return globalThis[dm]??null}const ur=globalThis;function Wl(e,t){const a=o=>{};try{const o=t();o&&typeof o.catch=="function"&&o.catch(a)}catch(o){a(o)}}function hm(e){ur.__ihabTrainingTimeLogger=e}function Gl(e){Wl("time",()=>ur.__ihabTrainingTimeLogger?.(e))}function mm(e){ur.__ihabTrainingCompletionLogger=e}function Ul(e){Wl("completion",()=>ur.__ihabTrainingCompletionLogger?.(e))}function bm(e){ur.__ihabCrosswordLogger=e}function gm(e){Wl("crossword",()=>ur.__ihabCrosswordLogger?.(e))}function Jn(e){if(typeof e=="string"){const t=e.trim();return t?Number.isNaN(new Date(t).getTime())?null:t:null}if(e instanceof Date)return Number.isNaN(e.getTime())?null:e.toISOString();if(typeof e=="number"&&Number.isFinite(e)){const t=new Date(e);return Number.isNaN(t.getTime())?null:t.toISOString()}return null}function ia(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function ql(e){for(const t of["correct","isCorrect","heard","judgement"])if(typeof e[t]=="boolean")return e[t];return e.score===1?!0:e.score===0?!1:null}function Yl(e){return Array.isArray(e)?e.map((t,a)=>{const o=t??{};return{index:a,itemId:ia(o.contextCode)??ia(o.itemId)??ia(o.itemCode)??ia(o.id),question:ia(o.question)??ia(o.q)??ia(o.sentence)??ia(o.text)??ia(o.prompt)??ia(o.word)??ia(o.targetSyllable),answer:ia(o.answer),selected:ia(o.selectedText)??ia(o.selected),correct:ql(o),shownAt:Jn(o.shownAt)??Jn(o.shown_at),answeredAt:Jn(o.answeredAt)??Jn(o.answered_at)}}):[]}function fm(e){return e.filter(t=>t.correct===!1)}let vm=null,Cm=null,xm=null;function _m(e){vm=e}function ym(e){Cm=e}function wm(e){xm=e}async function km(e,t){try{return await vm?.(e,t)??null}catch{return null}}async function Bm(){try{return await Cm?.()??null}catch{return null}}async function Am(e,t){try{return await xm?.(e,t)??null}catch{return null}}const Qn=globalThis;function Sm(e){Qn.__ihabNoiseSettingsStore=e}async function Kl(){try{return await Qn.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function ei(e){const t=a=>{};try{const a=Qn.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(t)}catch(a){t(a)}}function dr(e){try{Qn.__ihabNoiseSettingsStore?.applied?.(e)}catch{}}function tn(e){const t=new TextEncoder().encode(String(e).normalize("NFC"));let a="";return t.forEach(o=>{a+=o.toString(16).padStart(2,"0")}),a}const Em=tn;function Dm(e,t){return`${e}/${tn(t)}.mp3`}function Nm(e={}){const t=e.storagePrefix??"audio-cache",a=e.voice??"ko-f",o=typeof e.speed=="number"?e.speed:1,n=e.filenameSanitizer??tn;return async function(i){const l=String(i||"").trim();if(!l)return"";const c=`${n(l)}_${a}.mp3`,u=`${t}/${c}`;try{if(await Ms(u)){const d=await zr(u);if(d)return d}}catch{}if(e.generator)try{const d=await e.generator(l,u,e);if(d)return d}catch{}try{const d=`/api/tts?word=${encodeURIComponent(l)}&voice=${encodeURIComponent(a)}&speed=${encodeURIComponent(String(o))}`;return await fetch(d,{method:"GET"}),`/audio-cache/${c}`}catch{return`/audio-cache/${c}`}}}async function Zl(e){if(typeof document<"u"){const t=document.activeElement;let a=null;try{if(a=document.createElement("textarea"),a.value=e,a.setAttribute("readonly",""),a.style.position="fixed",a.style.top="0",a.style.left="0",a.style.opacity="0",a.style.pointerEvents="none",document.body.appendChild(a),a.focus(),a.select(),a.setSelectionRange(0,e.length),document.execCommand("copy"))return!0}catch{}finally{if(a?.parentNode&&a.parentNode.removeChild(a),t&&t!==document.activeElement&&typeof t.focus=="function"&&t.isConnected)try{t.focus({preventScroll:!0})}catch{}}}try{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}return!1}const pr="Asia/Seoul",t3=/^(\d{4}-\d{2}-\d{2})[T ](\d{2}:\d{2})(?::(\d{2})(?:\.(\d+))?)?$/;function ti(e){let t;if(e instanceof Date)t=e;else if(typeof e=="string"){const a=e.trim(),o=t3.exec(a);t=new Date(o?`${o[1]}T${o[2]}:${o[3]??"00"}${o[4]?`.${o[4].slice(0,3).padEnd(3,"0")}`:""}+09:00`:a)}else t=new Date(e);return Number.isNaN(t.getTime())?null:t}const an=e=>ti(e);function Tm(e){const t=an(e);return t?t.toLocaleDateString("ko-KR",{timeZone:pr,year:"numeric",month:"short",day:"numeric"}):""}function jm(e){const t=an(e);return t?t.toLocaleString("ko-KR",{timeZone:pr,year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"}):""}function ai(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US",o=an(e);return o?o.toLocaleDateString(a,{timeZone:pr,year:"numeric",month:"short",day:"numeric"}):""}function Lm(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US",o=an(e);return o?o.toLocaleString(a,{timeZone:pr,year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"}):""}function Mm(e){const t=an(e);return t?t.toLocaleString("ko-KR",{timeZone:pr,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):""}function $m(e){if(e==null||e==="")return"";const t=ti(e);return t?new Intl.DateTimeFormat("en-GB",{timeZone:pr,hour:"2-digit",minute:"2-digit",hour12:!1}).format(t):""}function Ca(){return Ia(new Date)}function Xl(e){return e&&/^\d{4}-\d{2}-\d{2}$/.test(e)?e:Ca()}function po(){return Jl(Ca())}const a3=540*60*1e3;function oi(e,t,a){return new Date(Date.UTC(e,t,a)-a3)}function Jl(e){const[t,a,o]=e.split("-").map(Number);return new Date(t,(a||1)-1,o||1)}function Ia(e){if(e==null||e==="")return"";const t=ti(e);return t?new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(t):""}function ri(e,t){if(!e)return"";const a=ti(e);if(!a)return"";const o=a.getTime(),n=Math.max(0,Math.floor((Date.now()-o)/1e3)),i=Math.floor(n/60),l=Math.floor(i/60),c=Math.floor(l/24),u=Math.floor(c/7),d=Math.floor(c/30),h=Math.floor(c/365);return i<1?t("store.time.justNow","\uBC29\uAE08 \uC804"):i<60?t("store.time.minutesAgo",{n:i}):l<24?t("store.time.hoursAgo",{n:l}):c<7?t("store.time.daysAgo",{n:c}):u<5?t("store.time.weeksAgo",{n:u}):c<365?t("store.time.monthsAgo",{n:Math.min(d,11)}):t("store.time.yearsAgo",{n:h})}function ni(e,t={}){const{sep:a=".",pad:o=!0,trailingDot:n=!1,fallback:i="\u2014"}=t;if(!e)return i;const l=Ia(e instanceof Date?e:String(e));if(!l)return i;const[c,u,d]=l.split("-"),h=o?u:String(Number(u)),p=o?d:String(Number(d));return`${c}${a}${h}${a}${p}${n?".":""}`}function Rm(e){const t=e.normalize("NFKC").replace(/\D/g,"");if(/^(050\d|0303)/.test(t)){const o=t.slice(0,12);return o.length<=4?o:o.length<=8?`${o.slice(0,4)}-${o.slice(4)}`:`${o.slice(0,4)}-${o.slice(4,o.length-4)}-${o.slice(o.length-4)}`}if(/^1[5-9]\d{2}/.test(t)&&t.length<=8)return t.length<=4?t:`${t.slice(0,4)}-${t.slice(4)}`;const a=t.slice(0,11);return a.startsWith("02")?a.length<=2?a:a.length<=6?`${a.slice(0,2)}-${a.slice(2)}`:`${a.slice(0,2)}-${a.slice(2,a.length-4)}-${a.slice(a.length-4)}`:a.length<=3?a:a.length<=7?`${a.slice(0,3)}-${a.slice(3)}`:`${a.slice(0,3)}-${a.slice(3,a.length-4)}-${a.slice(a.length-4)}`}const Pm=String.raw`(?:0\d{1,2}|050\d|0303)-\d{3,4}-\d{4}`,o3=String.raw`1[5-9]\d{2}-\d{4}`,Ql=new RegExp(`^(?:${Pm}|${o3})$`),ec=new RegExp(`^${Pm}$`);function zm(e){return Ql.test(e)}function Im(e){return ec.test(e)}function Om(e){if(e){if(/^\d{4}\.\d{2}\.\d{2}$/.test(e))return e;if(/^\d{8}$/.test(e))return`${e.slice(0,4)}.${e.slice(4,6)}.${e.slice(6,8)}`;if(/^\d{4}-\d{2}-\d{2}$/.test(e))return e.replace(/-/g,".");if(/^\d{4}-\d{2}-\d{2}[T ]/.test(e)){const t=Ia(e);return t?t.replace(/-/g,"."):void 0}}}function Fm(e){if(e)return/^\d{4}\.\d{2}\.\d{2}$/.test(e)?e.replace(/\./g,"-"):e}function hr(e){if(!e)return e;const t=e.trim();return/^[₩$]/.test(t)?t:/원\s*$/.test(t)?"\u20A9"+t.replace(/\s*원\s*$/,"").trim():t}function ii(e,t){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const o=Number(a[1]),n=Number(a[2]),i=a[1].padStart(2,"0");return n===0?t("date.timeH",{h:o,hh:i,mm:a[2]}):t("date.timeHM",{h:o,hh:i,m:n,mm:a[2]})}function on(e){return(e??0).toLocaleString("ko-KR")}const r3=[{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"}]}],n3=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"audio-lines",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"}];let tc=null;function Hm(e){tc=e}function si(){return tc?.topicTypes??r3}function ac(){return tc?.trainingTypes??n3}const Vm="ihab_theme",Wm="light";function oc(){try{const e=localStorage.getItem(Vm);if(e==="light"||e==="dark"||e==="auto")return e}catch{}return Wm}function rc(e){const t=e==="light"||e==="dark"||e==="auto"?e:Wm;try{document.documentElement.setAttribute("data-theme",t),localStorage.setItem(Vm,t)}catch{}}function Gm(){rc(oc())}const Um="ihab_font_scale",i3="medium",s3=["medium","large1","large2","large3"];function nc(){try{const e=localStorage.getItem(Um);if(s3.includes(e))return e}catch{}return i3}function ic(e){try{document.documentElement.setAttribute("data-font-scale",e),localStorage.setItem(Um,e)}catch{}}function qm(){ic(nc())}const ho=[],mo=[],bo=[],go=[],rn={LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]},nn={LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]},l3={LISTEN_IN_NOISE:3,SHORT_STORY:2,LONG_STORY:1,ORDERING_SENTENCE:2};let sc=null,Ym=null,fo=null;function lc({counts:e,forceRefresh:t}={}){const a=Object.assign({},l3,e||{}),o=Ca(),n=Ia(new Date(`${o}T00:00:00+09:00`).getTime()-864e5),i=JSON.stringify(a);if(!t&&Ym===o&&sc===i&&fo)return Object.assign(rn,fo.today),Object.assign(nn,fo.yesterday?.selection||{LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]}),{today:rn,yesterday:nn};const l={LISTEN_IN_NOISE:Aa(ho,Math.max(0,Number(a.LISTEN_IN_NOISE)||0)),SHORT_STORY:Aa(mo,Math.max(0,Number(a.SHORT_STORY)||0)),LONG_STORY:Aa(bo,Math.max(0,Number(a.LONG_STORY)||0)),ORDERING_SENTENCE:Aa(go,Math.max(0,Number(a.ORDERING_SENTENCE)||0))};let c=null;return fo&&sc===i&&fo.yesterday&&fo.yesterday.date===n&&(c=fo.yesterday.selection),c||(c={LISTEN_IN_NOISE:Aa(ho,Math.max(0,Number(a.LISTEN_IN_NOISE)||0)),SHORT_STORY:Aa(mo,Math.max(0,Number(a.SHORT_STORY)||0)),LONG_STORY:Aa(bo,Math.max(0,Number(a.LONG_STORY)||0)),ORDERING_SENTENCE:Aa(go,Math.max(0,Number(a.ORDERING_SENTENCE)||0))}),Object.assign(rn,l),Object.assign(nn,c),Ym=o,sc=i,fo={today:l,yesterday:{date:n,countsKey:i,selection:c}},{today:rn,yesterday:nn}}function Km(){return{today:rn,yesterday:nn}}function cc(){return{LISTEN_IN_NOISE:ho,SHORT_STORY:mo,LONG_STORY:bo,ORDERING_SENTENCE:go}}let li=!1,sn=null;async function c3(){try{const e={url:typeof document>"u"?require("url").pathToFileURL(__filename).href:va&&va.tagName.toUpperCase()==="SCRIPT"&&va.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}&&void 0||"/",t=await fetch(`${e}data/allTrainingData.json`);return t.ok?await t.json():null}catch{return null}}async function uc(){if(!li)return sn||(sn=(async()=>{const e=await c3();if(!e){sn=null;try{window.dispatchEvent(new Event("speechear.data.error"))}catch{}return}const t={noise:[],short:[],long:[],order:[]};try{for(const a of Object.keys(e||{})){const o=e[a]||[];for(const n of o){if(!n||typeof n!="object")continue;const i=n,l=String(i.training_type||a),c=String(i.category_main_code||i.category_main||i.category_0||""),u=String(i.category_sub_code||i.category_sub||i.category_1||""),d=Object.assign({},i,{training_type:l,category_0:c,category_1:u});l==="LISTEN_IN_NOISE"?t.noise.push(d):l==="SHORT_STORY"?t.short.push(d):l==="LONG_STORY"?t.long.push(d):l==="ORDERING_SENTENCE"&&t.order.push(d)}}}catch{sn=null;try{window.dispatchEvent(new Event("speechear.data.error"))}catch{}return}ho.push(...t.noise),mo.push(...t.short),bo.push(...t.long),go.push(...t.order),li=!0;try{lc()}catch{}try{window.dispatchEvent(new Event("speechear.data.updated"))}catch{}})(),sn)}function Zm(){return li}async function dc(e=3e3){const t=uc();let a;try{await Promise.race([t,new Promise(o=>{a=setTimeout(o,e)})])}finally{a!==void 0&&clearTimeout(a)}return li}const pc=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"audio-lines",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."}],Xm=[{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"}]}],ci={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function Jm(e){return pc.map(t=>{const a=ci[t.key];return a?{...t,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:t})}const hc="none";function u3(e){return e==null||String(e).trim()===""}function d3(e){return typeof e=="string"&&bc.includes(e)}function mc(e,t){if(!e)return!0;const a=e instanceof Set?e:new Set(e);return a.size===0?!0:u3(t)?a.has(hc):a.has(String(t))}const ln=["grade","syllables","pos","wordType"],bc=["1","2","3","4","none"],p3=["1","2","3","4","5+"],h3=["noun","verb","modifier"],m3=["native","sino","foreign","mixed"],b3={grade:bc,syllables:p3,pos:h3,wordType:m3},g3={noun:["\uBA85","\uC218"],verb:["\uB3D9","\uD615"],modifier:["\uBD80","\uAD00"]},f3={native:"\uACE0\uC720",sino:"\uD55C\uC790",foreign:"\uC678\uB798",mixed:"\uD63C\uC885"},v3={grade:["\uB09C\uC774\uB3C4 \uB4F1\uAE09"]},C3={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)"]}},gc=new Map;try{xt.store?.on?.("added",()=>gc.clear())}catch{}function cn(e){const t=gc.get(e);if(t)return t;const a=xt.getFixedT(e),o={\uC139\uC158:{grade:a("wordSearch.filter.difficulty","\uB4F1\uAE09"),syllables:a("wordSearch.filter.syllables","\uC74C\uC808 \uC218"),pos:a("wordSearch.filter.partOfSpeech","\uD488\uC0AC"),wordType:a("wordSearch.filter.wordType","\uC720\uD615")},\uAC12:{grade:{...Object.fromEntries(bc.filter(n=>n!==hc).map(n=>[n,a("wordSearch.filter.grade",{n:Number(n),defaultValue:`${n}\uB4F1\uAE09`})])),[hc]:a("wordSearch.filter.gradeNone","\uC5C6\uC74C")},syllables:{...Object.fromEntries(["1","2","3","4"].map(n=>[n,a("wordSearch.filter.syllable",{n:Number(n),defaultValue:`${n}\uC74C\uC808`})])),"5+":a("wordSearch.filter.syllable5plus","5\uC74C\uC808 \uC774\uC0C1")},pos:{noun:a("wordSearch.filter.pos.noun","\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)"),verb:a("wordSearch.filter.pos.verb","\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)"),modifier:a("wordSearch.filter.pos.modifier","\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)")},wordType:{native:a("wordSearch.filter.type.native","\uACE0\uC720\uC5B4"),sino:a("wordSearch.filter.type.sino","\uD55C\uC790\uC5B4"),foreign:a("wordSearch.filter.type.foreign","\uC678\uB798\uC5B4"),mixed:a("wordSearch.filter.type.mixed","\uD63C\uC885\uC5B4")}}};return gc.set(e,o),o}const fc=()=>Array.from(new Set([xt.language,"ko","en"].filter(e=>!!e)));function un(e){if(ln.includes(e))return e;for(const t of fc()){const a=cn(t);for(const o of ln)if(a.\uC139\uC158[o]===e)return o}for(const t of ln)if(v3[t]?.includes(e))return t;return null}function zo(e,t){if(b3[e].includes(t))return t;for(const a of fc()){const o=cn(a).\uAC12[e];for(const[n,i]of Object.entries(o))if(i===t)return n}for(const[a,o]of Object.entries(C3[e]??{}))if(o.includes(t))return a;if(e==="grade"||e==="syllables"){const a=parseInt(t.replace(/\D/g,""),10);if(Number.isFinite(a)&&a>=1)return e==="grade"?a<=4?String(a):null:a>=5?"5+":String(a)}return null}function x3(e,t,a=xt.language){return cn(a).\uAC12[e][t]??t}const _3=e=>Array.isArray(e)?e.filter(t=>typeof t=="string"):typeof e=="string"&&e?[e]:[];function ui(e){const t={};for(const[a,o]of Object.entries(e??{})){const n=un(a);if(n)for(const i of _3(o)){const l=zo(n,i);if(!l)continue;const c=t[n]??(t[n]=[]);c.includes(l)||c.push(l)}}return t}function di(e,t=xt.language){const a=cn(t||"ko"),o={};for(const n of ln){const i=(e?.[n]??[]).map(l=>a.\uAC12[n][l]).filter(l=>!!l);i.length&&(o[a.\uC139\uC158[n]]=i)}return o}function Qm(e,t=xt.language){const a={};for(const[o,n]of Object.entries(e??{}))un(o)||(a[o]=n);return{...a,...di(ui(e),t)}}function y3(e){for(const t of fc()){const a=cn(t);if(ln.some(o=>a.\uC139\uC158[o]===e))return t}return xt.language||"ko"}let pi=null,eb=null,tb=null;function w3(){const e=Po();if(e&&e.entries.length>0){const t=Lo();if(pi&&eb===e&&tb===t)return pi;const a=new Set,o=[];for(const n of e.entries)!n.word||a.has(n.word)||(a.add(n.word),o.push({w:n.word,s:n.syllables,p:t?.[n.word]?[...t[n.word].cho??[],...t[n.word].jung??[],...t[n.word].jong??[]]:[],pron:n.pronunciation||n.word,grade:n.grade}));return pi=o,eb=e,tb=t,pi}return[]}const Qa=new Proxy([],{get(e,t){const a=w3(),o=a[t];return typeof o=="function"?o.bind(a):o}});function vc(e){return e.length?e[Math.floor(Math.random()*e.length)]:void 0}function Sa(e,t){if(t>=e.length)return nt(e);if(t===0)return[];const a=e.slice();for(let o=0;o<t;o++){const n=o+Math.floor(Math.random()*(a.length-o)),i=a[o];a[o]=a[n],a[n]=i}return a.slice(0,t)}let Cc=null,ab=null;function vo(){const e=Po();if(Cc&&ab===e)return Cc;const t=new Map;for(const a of Qa)a.w&&t.set(a.w,a.pron);return Cc=t,ab=e,t}function Ht(e){return vo().get(e)||e}function hi(e,t,a=new Set){const o=[];for(const n of nt(e)){if(o.length>=t)break;const i=Ht(n);a.has(i)||(a.add(i),o.push(n))}return o}let k3=0;function Yt(e){return`${e}-rt-${++k3}`}function mr(e){const t=On();if(!t||t.total===0){const n=new Set;for(const i of e)n.add(i);return n}const a=Ah(),o=new Set;for(const n of e)a.has(n)&&o.add(n);return o}const mi=new Map;let ob=null,rb=null;function dn(e){return e==null?"":Array.isArray(e)?e.slice().sort().join(","):e}function xc(e){const t=dn(e.choseong),a=e.composition,o=a?.syllable==null?"":Array.isArray(a.syllable)?a.syllable.slice().sort().join(","):String(a.syllable),n=a?`${dn(a.cho)}/${dn(a.jung)}/${dn(a.jong)}/${a.jongNone?"N":""}/${o}`:"",i=dn(e.grade);return`${e.difficulty??""}|${t}|${n}|${e.excludeNoImage?"1":"0"}|${e.count??""}|x${e.contrastCount??1}|${e.fullCount?"F":""}|s${e.sameStructureOnly===!1?"0":"1"}|v${e.phonemeView==="pron"?"p":"c"}|g${i}|t${e.targetSyllable??""}|c${e.choicesPerItem??""}`}const _c=new Map;function B3(e){return xc({...e,count:void 0,choicesPerItem:void 0,fullCount:!1})}async function ha(e){const t=Po(),a=Lo();(t!==ob||a!==rb)&&(mi.clear(),_c.clear(),ob=t,rb=a);const o=xc(e);return mi.has(o)||mi.set(o,A3(e)),mi.get(o)}function nb(e){if(!e)return null;const t=l=>l==null?null:Array.isArray(l)?l.length?l:null:[l],a=t(e.cho),o=t(e.jung),n=!!e.jongNone,i=n?null:t(e.jong);return a||o||i||n?n&&!a&&!o&&!i?l=>el(l):l=>al(l,{cho:a,jung:o,jong:i,jongNone:n}):null}function ib(e){const t=e.grade&&e.grade.length>0?new Set(e.grade):null,a=e.composition??null,o=a?.syllable!=null?new Set(Array.isArray(a.syllable)?a.syllable:[a.syllable]):null,n=a?[nb(a),o?l=>o.has(jo(l)):null].filter(l=>l!=null):[];if(!t&&n.length===0)return null;const i=e.phonemeView==="pron";return l=>{if(!mc(t,l.grade))return!1;if(n.length===0)return!0;const c=i?Ht(l.w):l.w;return n.every(u=>u(c))}}async function A3(e){const{difficulty:t=null,choseong:a=null,composition:o=null,targetSyllable:n=null,excludeNoImage:i=!1}=e,l=e.grade&&e.grade.length>0?new Set(e.grade):null,c=e.sameStructureOnly??!0,u=e.phonemeView==="pron"?"pron":"char",d=Math.max(1,e.contrastCount??1),h=t==="cho"||t==="jung"||t==="jong",p=h&&d>=2,m=t==="count",C=a?new Set(Array.isArray(a)?a:[a]):null,v=o?.syllable!=null?new Set(Array.isArray(o.syllable)?o.syllable:[o.syllable]):null,f=o?[nb(o),v?P=>v.has(jo(P)):null].filter(P=>P!=null):[],g=t==="random"||t===null,x=g||m,b=g||p||m;let w=Qa.filter(P=>!P.w||!mc(l,P.grade)?!1:b?!0:Array.isArray(P.p)&&P.p.length>0);C&&(w=w.filter(P=>{for(const V of C)if(v8(P.w,V))return!0;return!1})),f.length>0&&(w=w.filter(P=>{const V=u==="pron"?Ht(P.w):P.w;return f.every($=>$(V))})),n&&(w=w.filter(P=>P.w[0]===n));let _;if(i){const P=new Set;for(const V of w)if(P.add(V.w),Array.isArray(V.p))for(const $ of V.p)P.add($);if(x)for(const V of Qa)V.w&&P.add(V.w);_=mr(P)}else{const P=new Set;for(const V of w)if(P.add(V.w),Array.isArray(V.p))for(const $ of V.p)P.add($);if(x)for(const V of Qa)V.w&&P.add(V.w);_=P}let A=null;if(p){const P=new Set;for(const V of Qa)V.w&&P.add(V.w);A=i?mr(P):P}const y=w.filter(P=>_.has(P.w)),B=600,k=Array.from(_),S=k.length>B?Sa(k,B):k,E=m&&o!=null&&(zt(o.cho)||zt(o.jung)||zt(o.jong)),D=2500,I=new Map;if(m&&!E&&d>=2){for(const P of k){const V=jo(P),$=I.get(V);$?$.push(P):I.set(V,[P])}for(const[P,V]of I)V.length>D&&I.set(P,Sa(V,D))}const j=Ys();let W=null;if(E){const P=B3(e),V=i?Ah():null,$=_c.get(P);W=$&&$.\uC774\uBBF8\uC9C0\uC9D1\uD569===V?$.map:dl(o,k,j,c,u,Ht),_c.set(P,{\uC774\uBBF8\uC9C0\uC9D1\uD569:V,map:W})}const L=500,M=1500,z=e.fullCount?y:t==="random"?y.length>L?Sa(y,L):y:y.length>M?Sa(y,M):y,q=Lo(),Y=[];for(const P of z){let V;const $=Ht(P.w);if(p)V=y8(P.w,t,d,A,24).filter(U=>Ht(U)!==$);else if(m)E?V=(W.get(P.w)??[]).filter(U=>Ht(U)!==$):d<=1?V=Hn(P.w,q,{okSet:_,pronOf:Ht,decompOf:j,sameStructureOnly:!1}):V=(I.get(jo(P.w))??[]).filter(U=>{if(U===P.w||Ht(U)===$)return!1;const T=w8($,Ht(U));return d>=5?T>=5:T===d});else if(g){const U=T=>T!==P.w&&T.length===P.w.length&&Ht(T)!==$;if(e.fullCount){const T=Math.max(1,(e.choicesPerItem??3)-1),F=[],N=new Set;for(const O of S){if(!U(O))continue;const H=Ht(O);if(!N.has(H)&&(N.add(H),F.push(O),F.length>=T))break}V=F}else V=S.filter(U)}else{const U=t;V=Hn(P.w,q,{kind:U,okSet:_,pronOf:Ht,decompOf:j,sameStructureOnly:!1}),V.length===0&&(V=(S.length>30?Sa(S,30):S).filter(T=>T!==P.w&&Ks(P.w,T)===t&&Ht(T)!==$))}if(c&&V.length>0&&(h||m&&!E)){const U=j(Ht(P.w));V=V.filter(T=>!Ur(U,j(Ht(T))))}V.length!==0&&Y.push({word:P,usable:V})}return Y}async function sb(e,t){const{choicesPerItem:a=3,count:o=10}=t,n=a-1,i=(await ha(t)).filter(c=>c.usable.length>=n),l=[];for(const c of nt(i)){if(l.length>=o)break;const u=hi(c.usable,n);if(u.length<n)continue;const d=nt([c.word.w,...u]);l.push({id:Yt(e+"-item"),index:l.length+1,word:c.word.w,syllables:c.word.s,choices:d,answerIndex:d.indexOf(c.word.w)})}return l}async function S3(e){const{choicesPerItem:t=3,count:a=10}=e,o=t-1,n=await ha({...e,difficulty:null});if(n.length<t)return[];const i=e.composition??null,l=[],c=nt([...n]);for(const u of c){if(l.length>=a)break;const d=u.word.w,h=[...u.word.pron||d],p=i&&cr(i)?h.filter(g=>{const x=Ke(g);return!!x&&Ja(x,i)}):[],m=vc(p.length?p:h);if(!m)continue;const C=n.filter(g=>g.word.w!==d&&g.word.s===u.word.s&&!(g.word.pron||g.word.w).includes(m)&&g.word.pron!==u.word.pron);if(C.length<o)continue;const v=hi(C.map(g=>g.word.w),o);if(v.length<o)continue;const f=nt([d,...v]);l.push({id:Yt("HPI-item"),index:l.length+1,targetSyllable:m,word:d,choices:f,answerIndex:f.indexOf(d)})}return l}async function E3(e){const{count:t=10}=e,a=(await ha(e)).filter(i=>i.usable.length>=1);if(!a.length)return[];const o=a.length>=t?Sa(a,t):nt(Array.from({length:t},(i,l)=>a[l%a.length])),n=nt(Array.from({length:t},(i,l)=>l<Math.ceil(t/2)));return o.map((i,l)=>{const c=n[l];let u;if(c)u=[i.word.w,i.word.w];else{const d=vc(i.usable);u=Math.random()<.5?[i.word.w,d]:[d,i.word.w]}return{id:Yt("SOD-item"),index:l+1,word:i.word.w,pair:u,same:c}})}async function D3(e){const{choicesPerItem:t=3,count:a=10}=e,o=t-1,n=await ha({...e,difficulty:null});if(n.length<t+1)return[];const i=n.map(m=>m.word.w),l=new Map(n.map(m=>[m.word.w,m.word.pron])),c=m=>(l.get(m)||m)[0]??"",u={};for(const m of n){const C=c(m.word.w);C&&(u[C]||(u[C]=[]),u[C].push(m.word.w))}const d=Object.entries(u).filter(([,m])=>m.length>=2).map(([m])=>m);if(d.length===0)return[];const h=[],p=nt([...d]);for(let m=0;h.length<a&&m<a*4;m++){const C=p[m%p.length],v=u[C];if(v.length<2)continue;const f=nt([...v]),g=f[0],x=f[1];if(!g||!x||g===x||(l.get(g)||g)===(l.get(x)||x))continue;const b=l.get(x)||x,w=i.filter(y=>c(y)!==C&&y!==g&&y!==x&&y.length===x.length&&(l.get(y)||y)!==b);if(w.length<o)continue;const _=hi(w,o);if(_.length<o)continue;const A=nt([x,..._]);h.push({id:Yt("SWS-item"),index:h.length+1,sourceWord:g,targetSyllable:C,word:x,choices:A,answerIndex:A.indexOf(x)})}return h}function lb(e,t,a){const o=vo(),n=u=>o.get(u)||u,i=(u,d)=>{const h=[...u],p=[...d];if(h.length!==p.length)return-1;let m=-1;for(let C=0;C<h.length;C++)if(h[C]!==p[C]){if(m>=0)return-1;m=C}return m},l=e.map(u=>({e:u,swaps:u.usable.filter(d=>!!d&&i(u.word.w,d)>=0&&n(d)!==n(u.word.w))})).filter(u=>u.swaps.length>0),c=[];for(const{e:u,swaps:d}of nt(l)){if(c.length>=t)break;const h=vc(d)??"",p=[...u.word.w],m=[...h],C=i(u.word.w,h),v=hi(u.usable.filter(f=>f&&f!==h),2,new Set([n(h),n(u.word.w)]));v.length<2||c.push({id:Yt(a),index:c.length+1,word:u.word.w,original:u.word.w,changed:h,changedFrom:C>=0?p[C]:"",changedTo:C>=0?m[C]:"",distractors:v})}return c}async function cb(e,t,a){const{count:o=10}=t,n=vo(),i=Qa.filter(v=>v.w&&v.s===e),l=t.excludeNoImage?mr(i.map(v=>v.w)):null,c=l?i.filter(v=>l.has(v.w)):i,u=new Set(c.map(v=>v.w)),d=Fl(u),h=t.phonemeView??"char",p=t.composition??null,m=ib(t),C=[];for(const v of nt(c)){if(C.length>=o)break;if(m&&!m(v))continue;const f=Hl(v.w,p,n,h,d,null,null);if(!f)continue;const g=f.distractors[0],x=[...v.w],b=[...g],w=x.findIndex((_,A)=>_!==b[A]);C.push({id:Yt(a),index:C.length+1,word:v.w,original:v.w,changed:g,changedFrom:w>=0?x[w]:"",changedTo:w>=0?b[w]:"",distractors:f.distractors.slice(1)})}return C}async function N3(e){return cb(2,e,"CS2-item")}async function T3(e){return cb(3,e,"CS3-item")}async function j3(e){const t=(await ha({...e,difficulty:"count",contrastCount:1})).filter(a=>a.word.s===1&&a.usable.length>=1);return lb(t,e.count??10,"CP1-item")}async function L3(e){const t=e.difficulty&&e.difficulty!=="random"?e.difficulty:"count",a=(await ha({...e,difficulty:t,contrastCount:1})).filter(o=>o.word.s===2&&o.usable.length>=1);return lb(a,e.count??10,"CP2-item")}async function M3(e){const{count:t=10}=e,a=(await ha({...e})).filter(o=>o.word.s===2);return Sa(a,t).map((o,n)=>({id:Yt("M2S-item"),index:n+1,word:o.word.w,answer:o.word.w,parts:[...o.word.w]}))}async function $3(e){const{count:t=10}=e,a=(await ha({...e})).filter(o=>o.word.s===3);return Sa(a,t).map((o,n)=>({id:Yt("M3S-item"),index:n+1,word:o.word.w,answer:o.word.w,parts:[...o.word.w]}))}function yc(e){const t=Qa.map(a=>a.w);return e.excludeNoImage?mr(t):new Set(t)}async function R3(e){const{count:t=10}=e,a=(await ha({...e})).filter(c=>c.word.s===2),o=vo(),n=yc(e),i=e.phonemeView??"char",l=[];for(const c of nt(a)){if(l.length>=t)break;const u=$l(c.word.w,e.composition??null,o,i,n);if(!u)continue;const[d,...h]=u.distractors,p=[...c.word.w],m=p[0]===d?p[1]:p[0];l.push({id:Yt("D2-item"),index:l.length+1,original:c.word.w,word:c.word.w,dropped:m,missingResult:d,distractors:h})}return l}async function P3(e){const{count:t=10}=e,a=(await ha({...e})).filter(c=>c.word.s===3),o=vo(),n=yc(e),i=e.phonemeView??"char",l=[];for(const c of nt(a)){if(l.length>=t)break;const u=Rl(c.word.w,e.composition??null,o,i,n);if(!u)continue;const[d,...h]=u.distractors,p=[...c.word.w];let m="";for(let C=0;C<p.length;C++)if(p.filter((v,f)=>f!==C).join("")===d){m=p[C];break}l.push({id:Yt("D3-item"),index:l.length+1,original:c.word.w,word:c.word.w,dropped:m,missingResult:d,distractors:h})}return l}async function z3(e){const{count:t=10}=e,a=(await ha({...e})).filter(c=>c.word.s>=3),o=vo(),n=yc(e),i=e.phonemeView??"char",l=[];for(const c of nt(a)){if(l.length>=t)break;const u=Pl(c.word.w,e.composition??null,o,i,n);if(!u)continue;const[d,...h]=u.distractors,p=c.word.w,m=u.dropped??(p.startsWith(d)?p.slice(d.length):p.endsWith(d)?p.slice(0,p.length-d.length):"");l.push({id:Yt("DPC-item"),index:l.length+1,original:p,word:p,dropped:m,missingResult:d,distractors:h})}return l}async function I3(e){const{count:t=10}=e,a=(await ha({...e})).map(o=>o.word.w);return a.length<3?[]:Array.from({length:t},(o,n)=>{const i=Sa(a,3);return{id:Yt("LRO-item"),index:n+1,sequence:i,choices:nt(i)}})}function bi(e,t,a){const o=Qa.filter(c=>c.w&&c.s===e),n=t.excludeNoImage?mr(o.map(c=>c.w)):null,i=ib(t),l=[];for(const c of o)if(!(n&&!n.has(c.w))&&!(i&&!i(c))){if(a){const u=Ke(c.w);if(!u||!a(u))continue}l.push(c)}return l}function O3(e){const t=bi(1,e,lr.MERGE_2_PHONEMES.syllable);return Sa(t,e.count??10).map((a,o)=>{const n=Ke(a.w);return{id:Yt("M2P-item"),index:o+1,parts:[pt[n.cho],yt[n.jung]],answer:a.w,word:a.w}})}function F3(e){const t=bi(1,e,lr.MERGE_3_PHONEMES.syllable);return Sa(t,e.count??10).map((a,o)=>{const n=Ke(a.w);return{id:Yt("M3P-item"),index:o+1,parts:[pt[n.cho],yt[n.jung],Pt[n.jong]],answer:a.w,word:a.w}})}function H3(e){const t=lr.DROP_FINAL_CONSONANT_FROM_1SYLL,a=bi(t.syllables,e,t.syllable),o=vo(),n=[];for(const i of nt(a)){if(n.length>=(e.count??10))break;const l=zl(i.w,null,o);if(!l)continue;const[c,...u]=l.distractors;n.push({id:Yt("DFC-item"),index:n.length+1,original:i.w,word:i.w,result:c,distractors:u})}return n}function V3(e){const t=lr.REMOVE_CONSONANT_AND_IDENTIFY_PHONEME,a=bi(t.syllables,e,t.syllable),o=vo(),n=[];for(const i of nt(a)){if(n.length>=(e.count??10))break;const l=Ol(i.w,null,o);if(!l)continue;const c=Ke(o.get(i.w)||i.w);if(!c)continue;const[u,...d]=l.distractors;n.push({id:Yt("RCP-item"),index:n.length+1,base:i.w,word:i.w,missingConsonant:pt[c.cho],remaining:u,distractors:d})}return n}const gi=new Map;let ub=null,db=null;async function pb(e,t={}){const a=Po(),o=Lo();(a!==ub||o!==db)&&(gi.clear(),ub=a,db=o);const n=`${e}:${xc(t)}`;if(gi.has(n))return gi.get(n);const i=await G3(e,t);return gi.set(n,i),i}const W3={SAME_SOUND_PICK:e=>sb("SSP",e),HEAR_AND_PICK_SAME:e=>sb("HPS",e),HEAR_AND_PICK_INCLUDED:e=>S3(e),SAME_OR_DIFF:e=>E3(e),STARTS_WITH_SAME_SOUND:e=>D3(e),LISTEN_AND_REMEMBER_ORDER:e=>I3(e),MERGE_2_SYLLABLES:e=>M3(e),MERGE_3_SYLLABLES:e=>$3(e),MERGE_2_PHONEMES:e=>O3(e),MERGE_3_PHONEMES:e=>F3(e),DROP_1_FROM_2SYLL:e=>R3(e),DROP_1_FROM_3SYLL:e=>P3(e),DROP_PART_FROM_COMPOUND:e=>z3(e),DROP_FINAL_CONSONANT_FROM_1SYLL:e=>H3(e),REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:e=>V3(e),CHANGE_1_SYLL_IN_2SYLL:e=>N3(e),CHANGE_1_SYLL_IN_3SYLL:e=>T3(e),CHANGE_1_PHONEME_IN_1SYLL:e=>j3(e),CHANGE_1_PHONEME_IN_2SYLL:e=>L3(e)};async function G3(e,t={}){const a=W3[e];return a?await a(t):[]}async function U3(e){const t=["random","count"],a=Object.keys(sr);let o=0;for(const n of t)for(const i of a){const l=sr[i];pb(i,{difficulty:l.difficulty?n:null,contrastCount:1,composition:null,count:5,excludeNoImage:e,sameStructureOnly:!0,phonemeView:"char",grade:null}).catch(()=>{}),++o%6===0&&await new Promise(c=>setTimeout(c,0))}}async function q3(e){const t=await ha({...e,fullCount:!0}),a=e.choicesPerItem!=null?Math.max(1,e.choicesPerItem-1):1;return t.filter(o=>new Set(o.usable.map(n=>Ht(n))).size>=a).length}async function Y3(e={}){const t=[];for(const c of Qa)c.w&&t.push(c.w);const a=e.excludeNoImage?mr(t):t,o=new Set,n=new Set,i=new Set,l=new Set;for(const c of a){l.add(jo(c));for(const u of c){const d=Ke(u);if(d&&(pt[d.cho]!=="\u3147"&&o.add(pt[d.cho]),n.add(yt[d.jung]),d.jong>0)){i.add(Pt[d.jong]);const h=Fn[d.jong];h&&h.forEach(p=>i.add(p))}}}return{cho:o,jung:n,jong:i,syllable:l}}const hb={free:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:0,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},personal_standard:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:2,sentenceDataLevel:2,crossword:!0,crosswordMid:!0,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},mgr_free:{maxCustomers:5,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:1,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},none:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!1,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!1,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:0,sentenceDataLevel:0,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},lite_word:{maxCustomers:10,visitWord:!0,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:0,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!1},lite_sentence:{maxCustomers:10,visitWord:!1,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!1,wordTableSetting:!1,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!1,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:0,sentenceDataLevel:1,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!0},lite:{maxCustomers:10,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:1,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},standard:{maxCustomers:30,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:2,sentenceDataLevel:2,crossword:!0,crosswordMid:!0,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},pro:{maxCustomers:50,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!0,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:3,sentenceDataLevel:3,crossword:!0,crosswordMid:!0,crosswordHigh:!0,wordTrainingView:!0,sentenceTrainingView:!0},enterprise:{maxCustomers:1/0,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!0,managerCustomerSplit:!0,managerManagement:!0,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!0,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!0,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!0,wordDataLevel:3,sentenceDataLevel:3,crossword:!0,crosswordMid:!0,crosswordHigh:!0,wordTrainingView:!0,sentenceTrainingView:!0}},mb={none:0,free:1,personal_standard:2,mgr_free:10,lite_word:11,lite_sentence:11,lite:12,standard:13,pro:14,enterprise:15},K3=new Set(["mgr_free","lite_word","lite_sentence","lite","standard","pro","enterprise"]);function bb(e){return K3.has(e)}const gb={free:{sentenceTrainingDaily:2,wordTrainingDaily:2,gameDaily:1},personal_standard:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null},mgr_free:{sentenceTrainingDaily:2,wordTrainingDaily:2,gameDaily:1,trainingItemMax:5,customerMax:5,homeworkSendDaily:1},lite:{sentenceTrainingDaily:5,wordTrainingDaily:5,gameDaily:5,trainingItemMax:10,customerMax:10,homeworkSendDaily:10},standard:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:30,customerMax:30,homeworkSendDaily:30},pro:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:null,customerMax:50,homeworkSendDaily:50},enterprise:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:null,customerMax:null,homeworkSendDaily:null}};function fb(e){const t=(e??"").toLowerCase();return t==="speechear_free"||t==="free"?"free":t.startsWith("manager_free")||t.startsWith("mgr_free")?"mgr_free":t.startsWith("manager_enterprise")?"enterprise":t.startsWith("manager_pro")?"pro":t.startsWith("manager_standard")?"standard":t.startsWith("manager_lite_word")?"lite_word":t.startsWith("manager_lite_sentence")?"lite_sentence":t.startsWith("manager_lite")||t.startsWith("mgr_lite")?"lite":t.startsWith("mgr_standard")?"standard":t.startsWith("mgr_pro")?"pro":t.startsWith("content_")||t.startsWith("speechear_")||t.startsWith("light_")||t==="light"?"personal_standard":"none"}const vb=5,Cb=5;function xb({rank:e,voteCount:t,quota:a=5}){return e<a&&t>0}const _b={selected:"ALREADY_SELECTED",added:"ALREADY_ADDED",rejected:"ALREADY_REJECTED"},yb="chunk-reload-ts";function wb(){try{return Number(sessionStorage.getItem(yb)||0)}catch{return 0}}function fi(e=Date.now()){if(e-wb()<=1e4)return!1;try{sessionStorage.setItem(yb,String(e))}catch{}return window.location.reload(),!0}function wc(e=Date.now()){const t=wb();return t>0&&e-t<=1e4}function kb(){if(typeof window>"u")return()=>{};const e=a=>{fi()&&a.preventDefault()},t=a=>{const o=a.target;o instanceof HTMLLinkElement&&o.rel==="stylesheet"&&fi()};return window.addEventListener("vite:preloadError",e),window.addEventListener("error",t,!0),()=>{window.removeEventListener("vite:preloadError",e),window.removeEventListener("error",t,!0)}}function Bb(e,t){return e?!!t&&t.access_token===e.access_token:!0}function Ab(e,t){return s.lazy(async()=>{const a=await t();if(a&&typeof a=="object"&&"default"in a)return a;if(wc())return new Promise(()=>{});throw new Error(`[lazyPage] ${e}: \uD654\uBA74 \uBAA8\uB4C8\uC744 \uBC1B\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4(default \uB0B4\uBCF4\uB0B4\uAE30 \uC5C6\uC74C). \uBC30\uD3EC \uC9C1\uD6C4\uB77C\uBA74 \uC0C8\uB85C\uACE0\uCE68\uC73C\uB85C \uD480\uB9BD\uB2C8\uB2E4.`)})}function Sb(...e){let t=!1;const a=()=>{if(!t)for(const i of e)i().catch(()=>{})},o=globalThis.requestIdleCallback;if(o){const i=o(a,{timeout:2e3});return()=>{t=!0;const l=globalThis.cancelIdleCallback;l?.(i)}}const n=setTimeout(a,300);return()=>{t=!0,clearTimeout(n)}}const Eb=e=>({word:e.Word,pronunciation:e.SP,colloquialPronunciation:e.CP??void 0,grade:String(e.Grade),pos:e.POS,wordType:e.Class,homonum:e.Homonum!=null?Number(e.Homonum):void 0});var Z3=Object.freeze({__proto__:null,CAPABILITY:sr,CHOSEONG:pt,CORE_VERSION:Mn,JONGSEONG:Pt,JUNGSEONG:yt,LONG_STORIES:bo,NETWORK_ERROR_MESSAGE:Xn,NOISE_DATAS:ho,ORDER_SETS:go,PERSONAL_PHONE_REGEX:ec,PHONE_REGEX:Ql,PLAN_FEATURES:hb,PLAN_LIMITS:gb,SHORT_STORIES:mo,TIER_RANK:mb,TOPIC_TYPES:Xm,TRAINING_TYPES:pc,TRAINING_TYPE_I18N_KEY:ci,WORD_SUGGESTION_ACCOUNT_LIMIT:Cb,WORD_SUGGESTION_EXISTING_ERROR:_b,WORD_SUGGESTION_WEEKLY_QUOTA:vb,applyFontScale:ic,applyTheme:rc,balancedColumns:hl,buildChangeWholeSyllableProblem:Hl,buildDropCompoundProblem:Pl,buildDropContrast3Problem:Rl,buildDropContrastProblem:$l,buildDropFinalConsonantProblem:zl,buildMultiPartPosContrast:dl,buildPairIndex:Fh,buildRemoveConsonantProblem:Ol,buildSyllableMaskIndex:Fl,bulkSetImageExistence:Sh,cardQuestionTitle:rm,checkImageExists:Wr,classifyPairDifficulty:Ks,clearAudioExistsCache:hh,clearImageExistenceCache:Us,clearPairIndexCache:ll,columnsFitting:pl,composeSyllable:ka,computeDailySelection:lc,configureImageResolver:xh,configureNoiseSettingsStore:Sm,configurePronunciationResolver:bh,configureStorage:Ls,configureTTS:ph,configureTrainingCategories:Hm,copyText:Zl,createDecompCache:Ys,createTTSUrlResolver:Nm,dateToDb:Fm,downloadCsvText:um,downloadSound:Pn,ensureTrainingDataLoaded:dc,escapeCsvField:cm,fileExists:Ms,filterContrastCandidates:ul,finalToPhoneme:To,firstChoseongOf:Zs,formatCount:on,formatDateKo:Tm,formatDateLocale:ai,formatDateLongKo:jm,formatDateLongLocale:Lm,formatDatetimeKo:Mm,formatPhone:Rm,formatRelativeTime:ri,formatTimeHM:ii,formatYmd:ni,getAssetBaseUrl:Ts,getDailySelection:Km,getElementAnalyser:Vs,getElementVolume:ar,getErrorMessage:en,getImageExistenceStats:On,getImageExistsCached:kh,getImageResolver:co,getNoiseBaseUrl:$s,getNoiseFileGain:Rs,getPairIndex:Lo,getPlanTier:fb,getPronunciationResolver:Is,getSavedFontScale:nc,getSavedTheme:oc,getSignedOrPublicUrl:zr,getTTSFallbackUrlResolver:zs,getTTSUrlResolver:Ir,getTodayKst:Ca,getTodayKstDate:po,getTopicTypes:si,getTrainingPools:cc,getTrainingTypes:ac,getWordPool:Po,hasQuestionWordConstraint:Qh,hasSel:zt,hasStructureContrast:Ur,initFontScale:qm,initTheme:Gm,installSkewRecovery:kb,isAllChoseong:Js,isManagerTier:bb,isManualOnlyType:tm,isNetworkErrorMessage:Vl,isPersonalPhone:Im,isSessionForThisTab:Bb,isSyllablePattern:ol,isThisWeekPick:xb,isTrainingDataLoaded:Zm,isValidPhone:zm,isValidQuestionWord:em,itemCorrectness:ql,jamoToNamesForSpeech:nm,kstStartOfDay:oi,lazyPage:Ab,loadGameLeaderboard:Am,loadMyGameRanks:Bm,loadNoiseSettings:Kl,loadTrainingData:uc,logCrossword:gm,logTrainingCompletion:Ul,logTrainingTime:Gl,matchSyllables:$o,matchesChoseongSearch:Eh,matchesSyllablePattern:rl,matchesWordQuery:Dh,mergeQuestionText:Ll,minimalPairDistractors:Hn,normalizeDate:Om,officialSoundPath:Dm,parseLocalYmd:Jl,parseSortValue:lm,parseSyllable:Ke,patternToComposition:Ph,phonemePartsOf:om,pickEuRo:El,pickEulReul:kl,pickEunNeun:Al,pickIga:yl,pickWaGwa:Sl,prefetchChunk:Sb,prewarmImageCache:Bh,primarySelPart:cr,readLevel:Ws,recoverFromSkew:fi,reorderArray:Dl,reportAppliedNoiseSettings:dr,resolveAssetUrl:Pr,resolveSoundPath:Rn,resumeAudioMeter:Fr,routeElementAudio:tr,sample:Aa,saveNoiseSettings:ei,searchAndRankWords:Ih,setAssetBaseUrl:uh,setCrosswordLogger:bm,setElementVolume:$a,setGameLeaderboardLoader:wm,setGameRanksLoader:ym,setGameScoreSubmitter:_m,setTrainingCompletionLogger:mm,setTrainingTimeLogger:hm,setWordPool:pm,shuffle:nt,skewReloadPending:wc,sortToValue:sm,soundOf:Zn,speak:sh,stopSpeaking:lh,submitGameScore:km,syllMatchesComp:Ja,syllableContrasts:Ro,syllableLength:jo,syllablePron:Qr,toBase64UrlSafe:Em,toChoseong:Xs,toItemResults:Yl,toKstHm:$m,toKstYmd:Ia,toStandardPronunciation:Kh,toStorageName:tn,toUserErrorMessage:im,toWordEntry:Eb,validateSyllableSearchInput:zh,withEuRo:Jh,withEulReul:Bl,withEunNeun:Zh,withIga:wl,withWaGwa:Xh,wordContainsChoseong:Th,wordContainsJongseong:Mh,wordContainsJungseong:jh,wordHasConsonantAt:$h,wordHasNoCoda:el,wordHasSyllableMatching:al,wrongItems:fm});function X3(e){if(e.includes("\\")&&e.includes("("))return!0;if(!/url\s*\(/i.test(e))return!1;const t=e.replace(/url\(\s*(['"]?)#[^)'"]*\1\s*\)/gi,"");return/url\s*\(/i.test(t)}function J3(e){if(typeof window>"u")return"";const t=(a,o)=>{typeof o.attrValue=="string"&&X3(o.attrValue)&&(o.keepAttr=!1)};Es.addHook("uponSanitizeAttribute",t);try{return Es.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{Es.removeHook("uponSanitizeAttribute",t)}}function Q3(e){const[t,a]=s.useState(null),[o,n]=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),n(null),l(null);return}const d=e.split("/").pop();let h=e;d&&(e.startsWith("/")?h=Pr(e):/^(Logo|Symbol)/i.test(d)?h=Pr(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),h=e)),n(null),l(null),a(h)},[e]),s.useEffect(()=>{if(!t)return;let d=!1;async function h(){try{let p=await fetch(t);p.ok||(p=await fetch(t));const m=p.headers.get("content-type")||"";if(d)return;if(m.includes("svg")){n("mask");return}if(m.startsWith("image/")){n("img");return}const C=await fetch(t);if(!C.ok)throw new Error("not ok");const v=await C.text();if(d)return;if(/^\s*<svg[\s>]/i.test(v)){const f=J3(v);if(!f){n("none");return}l(f),n("inline");return}n("none")}catch{d||n("none")}}return h(),()=>{d=!0}},[t]),s.useEffect(()=>{let d=!1,h=null;return o==="mask"&&t&&fetch(t).then(p=>{if(!p.ok)throw new Error("fetch failed");return p.blob()}).then(p=>{d||(h=URL.createObjectURL(p),u(h))}).catch(()=>{d||n("img")}),()=>{d=!0,h&&URL.revokeObjectURL(h),u(null)}},[o,t]),{iconToUse:t,mode:o,svgText:i,blobUrl:c}}var e7=".ihabdevteam-core-scope .iconRenderer-icon-mask{background-color:currentColor;display:inline-block;height:20px;height:var(--icon-size,20px);-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:20px;width:var(--icon-size,20px)}";ce(e7);function ot(e){const{icon:t,label:a,className:o,imgClassName:n,maskClassName:i,svgClassName:l,wrapperStyle:c,size:u}=e||{},d=o??"iconRenderer-icon",h=n??"iconRenderer-icon-image",p=i??"iconRenderer-icon-mask",m=l??"iconRenderer-icon-svg",C=typeof t=="string"?t:null,v=S5(C),{iconToUse:f,mode:g,svgText:x,blobUrl:b}=Q3(C),w=(k,S={})=>r.jsx("span",{className:d,style:c,...S,children:k}),_=typeof u=="number"?{width:u,height:u,objectFit:"contain"}:null,A=(k,S={})=>r.jsx("img",{src:k,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:h,...S,style:_?{...S.style,..._}:S.style});if(!t)return null;if(typeof t!="string")return w(t);if(t==="none")return w(r.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(v)try{return w(s.createElement(v,{className:m,size:typeof u=="number"?u:20}),{"aria-hidden":"true"})}catch{}if(f&&f.endsWith(".svg")){if(g==="mask"){const k={"--icon-url":b?`url(${b})`:`url(${f})`,...typeof u=="number"?{"--icon-size":`${u}px`}:null};return w(r.jsx("span",{className:p,style:k}),{"aria-hidden":"true"})}return g==="img"?w(A(f,{onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):g==="inline"?w(r.jsx("span",{className:m,dangerouslySetInnerHTML:x?{__html:x}:void 0}),{"aria-hidden":"true"}):w(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return A(Pr(t),{style:c,onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}});const y=typeof u=="number"?u:20,B=`<svg width="${y}" height="${y}" 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 w(r.jsx("span",{className:m,dangerouslySetInnerHTML:{__html:B}}),{"aria-hidden":"true"})}function Db(e){const[t,a]=s.useState(!1),o=s.useRef(!1),n=s.useRef(!0);s.useEffect(()=>(n.current=!0,()=>{n.current=!1}),[]);const i=s.useCallback(()=>{if(!e||o.current)return;const l=e();if(l&&typeof l.then=="function"){o.current=!0,a(!0);const c=()=>{o.current=!1,n.current&&a(!1)};l.then(c,c)}},[e]);return{pending:t,press:i}}function Nb({icon:e,title:t,message:a,action:o,className:n}){const{pending:i,press:l}=Db(o?.onClick);return r.jsxs("div",{className:Ne("empty-state",n),children:[e&&r.jsx(ot,{icon:e,size:48,className:"empty-state__icon"}),t&&r.jsx("p",{className:"empty-state__title h4",children:t}),a&&r.jsx("p",{className:"empty-state__message body-3",children:a}),o&&r.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:l,disabled:i,"aria-busy":i||void 0,children:[o.icon&&r.jsx(ot,{icon:o.icon,className:"button__icon"}),r.jsx("span",{className:"button__label button-1",children:o.label})]})]})}var t7=".ihabdevteam-core-scope .error-state__icon{color:var(--color-error)}.ihabdevteam-core-scope .error-state__hint{color:var(--color-lightGray);margin:0}";ce(t7);function Tb({message:e,hint:t,icon:a="triangle-alert",onRetry:o,retryLabel:n,className:i}){const{t:l}=_e.useTranslation(),{pending:c,press:u}=Db(o);return r.jsxs("div",{className:Ne("empty-state","error-state",i),role:"alert",children:[r.jsx(ot,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),r.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&r.jsx("p",{className:"error-state__hint caption-1",children:t}),o&&r.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:u,disabled:c,"aria-busy":c||void 0,children:[r.jsx(ot,{icon:"rotate-cw",className:"button__icon"}),r.jsx("span",{className:"button__label button-1",children:n??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}var a7=".ihabdevteam-core-scope .action-card{--ac-color:var(--color-main);--ac-color-a10:var(--color-main-a10);aspect-ratio:1/1;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-l);box-shadow:var(--shadow-card);cursor:pointer;display:block;overflow:hidden;transition:transform .2s ease-out,box-shadow .2s ease-out,border-color .2s ease-out;width:100%}.ihabdevteam-core-scope .action-card--sub{--ac-color:var(--color-sub);--ac-color-a10:var(--color-sub-a10)}.ihabdevteam-core-scope .action-card:focus-visible{outline:none}.ihabdevteam-core-scope .action-card:not(.action-card--disabled):focus-visible,.ihabdevteam-core-scope .action-card:not(.action-card--disabled):hover{border-color:var(--ac-color);box-shadow:var(--shadow-panel);transform:translateY(-4px)}.ihabdevteam-core-scope .action-card--disabled{cursor:wait;opacity:.6}.ihabdevteam-core-scope .action-card__body{display:flex;flex-direction:column;gap:var(--spacing-m);height:100%;padding:var(--spacing-l)}.ihabdevteam-core-scope .action-card__chip{align-items:center;background:var(--ac-color-a10);border-radius:var(--radius-m);color:var(--ac-color);display:flex;height:64px;justify-content:center;width:64px}.ihabdevteam-core-scope .action-card__text{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .action-card__title{color:var(--color-text-primary);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight-bold);letter-spacing:var(--text-h2-spacing);line-height:var(--text-h2-line);margin:0}.ihabdevteam-core-scope .action-card__desc{color:var(--color-lightGray);font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight);line-height:var(--text-body-2-line);margin:0}.ihabdevteam-core-scope .action-card__cta{align-items:center;color:var(--ac-color);display:flex;font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight-bold);gap:var(--spacing-xs);justify-content:flex-end;line-height:var(--text-body-2-line);margin-top:auto;padding-right:var(--spacing-s);padding-top:var(--spacing-s)}.ihabdevteam-core-scope .action-card__arrow{display:flex;transition:transform .2s}.ihabdevteam-core-scope .action-card:not(.action-card--disabled):hover .action-card__arrow{transform:translateX(4px)}";ce(a7);function jb({icon:e,title:t,description:a,cta:o,tone:n="main",disabled:i=!1,onClick:l,className:c=""}){const u=s.useId(),d=`${u}-title`,h=`${u}-desc`,p=`${u}-cta`,m=()=>{i||l?.()};return r.jsx("section",{role:"button",tabIndex:i?-1:0,"aria-disabled":i||void 0,"aria-labelledby":d,"aria-describedby":`${h} ${p}`,onClick:m,onKeyDown:C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),m())},className:Ne("action-card",`action-card--${n}`,i&&"action-card--disabled",c),children:r.jsxs("div",{className:"action-card__body",children:[r.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:r.jsx(ot,{icon:e,size:34})}),r.jsxs("div",{className:"action-card__text",children:[r.jsx("h2",{id:d,className:"action-card__title",children:t}),r.jsx("p",{id:h,className:"action-card__desc",children:a})]}),r.jsxs("div",{className:"action-card__cta",children:[r.jsx("span",{id:p,children:o}),r.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:r.jsx(ot,{icon:"arrow-right",size:18})})]})]})})}function Lb({as:e="div",className:t="",children:a,storage:o,...n}){o&&Ls({resolveUrl:o.resolveUrl,download:o.download??(()=>Promise.reject(new Error("[ihabdevteam-core] CoreScope: download resolver\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."))),exists:o.exists,resolvePath:o.resolvePath,noiseBaseUrl:o.noiseBaseUrl,noiseFileGain:o.noiseFileGain});const i=Ne("ihabdevteam-core-scope",t);return r.jsx(e,{className:i,...n,children:a})}function kc(e,t=!0){s.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const o=n=>{if(n.key!=="Tab")return;const i=Array.from(a.querySelectorAll(Oa)).filter(h=>!h.closest('[aria-hidden="true"]'));if(!i.length){n.preventDefault();return}const l=i[0],c=i[i.length-1],u=document.activeElement,d=u===a;n.shiftKey&&(u===l||d)?(n.preventDefault(),c.focus()):!n.shiftKey&&u===c&&(n.preventDefault(),l.focus())};return a.addEventListener("keydown",o),()=>a.removeEventListener("keydown",o)},[e,t])}const Oa='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',Bc=new WeakMap;function Ac(e,t){e&&Bc.set(e,t)}function Sc(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let o=t;for(;o&&!Bc.has(o);)o=o.parentElement;if(!o)return t;t=Bc.get(o)??null}return t}function Mb(e){return!(!e||!e.isConnected||e===document.body||typeof e.focus!="function"||e.disabled||e instanceof HTMLInputElement&&e.type==="hidden"||e.closest('[inert],[aria-hidden="true"],[hidden]'))}function vi(e,t,a){const o=e?.isConnected?e:a?.isConnected?a:null;if(Mb(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!o)return null;const n=Array.from(document.querySelectorAll(Oa)).filter(u=>!(e&&e.contains(u))&&Mb(u));let i=null,l=null;for(const u of n)o.compareDocumentPosition(u)&Node.DOCUMENT_POSITION_PRECEDING?i=u:l||(l=u);const c=i??l;return c?.focus(),c}var o7=".ihabdevteam-core-scope .notice-box{background:var(--color-darkWhite);border-radius:var(--radius-m);color:var(--color-gray);margin:0 auto var(--spacing-page);padding:var(--spacing-l);position:relative;text-align:left}.ihabdevteam-core-scope .notice-box ul{margin:0;padding:0 0 0 18px}.ihabdevteam-core-scope .notice-box__inner{border-radius:var(--radius-s);padding:12px 14px;text-align:left}.ihabdevteam-core-scope .notice-box__title{color:var(--color-darkGray);margin:0 0 10px}.ihabdevteam-core-scope .notice-box__body,.ihabdevteam-core-scope .notice-box__line{color:var(--color-deepGray)}.ihabdevteam-core-scope .notice-box--default{border-color:var(--color-whiteLine)}.ihabdevteam-core-scope .notice-box--dashed{background:var(--color-deepWhite);border:1px dashed var(--color-whiteLine)}.ihabdevteam-core-scope .notice-box--important{border:1px solid var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .notice-box__dismiss{align-items:center;background:none;border:none;border-radius:var(--radius-xs);color:var(--color-lightGray);cursor:pointer;display:inline-flex;font-size:18px;justify-content:center;line-height:1;min-height:24px;min-width:24px;padding:0;position:absolute;right:10px;top:8px;transition:color .12s}.ihabdevteam-core-scope .notice-box__dismiss:hover{color:var(--color-gray)}@media (max-width:767px){.ihabdevteam-core-scope .notice-box,.ihabdevteam-core-scope .notice-box__inner{padding:var(--spacing-s)}}";ce(o7);function $b({title:e="",lines:t=[],notices:a=null,children:o,variant:n="default",dismissible:i=!1,className:l=""}){const{t:c}=_e.useTranslation(),[u,d]=s.useState(!1),h=s.useRef(null),p=s.useCallback(()=>{const f=h.current;f&&f.contains(document.activeElement)&&vi(f),d(!0)},[]);if(u)return null;const m=`notice-box notice-box--${n} body-2 ${l}`.trim(),C=i&&r.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:p,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"});if(a&&Array.isArray(a)&&a.length)return r.jsxs("div",{className:m,role:"note",children:[a.map((f,g)=>r.jsxs("div",{className:"notice-box__inner",children:[f.title?r.jsx("span",{className:"notice-box__title body-3",children:f.title}):null,r.jsx("div",{className:"notice-box__body",children:f.lines&&f.lines.length?r.jsx("div",{children:f.lines.map((x,b)=>r.jsx("span",{className:"notice-box__line body-3",children:x},b))}):f.children??null})]},g)),C]});const v=e||t.length?r.jsxs("div",{className:"notice-box__inner",children:[e?r.jsx("span",{className:"notice-box__title body-1",children:e}):null,r.jsx("div",{className:"notice-box__body",children:t.length?r.jsx("ul",{children:t.map((f,g)=>r.jsx("li",{className:"notice-box__line",children:f},g))}):o})]}):r.jsx("div",{className:"notice-box__inner",children:o});return r.jsxs("div",{ref:h,className:m,role:"note",children:[v,C]})}var r7=".ihabdevteam-core-scope .button{align-items:center;background:var(--color-white);border:0;border:var(--button-border,0);box-sizing:border-box;color:inherit;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);padding:0 12px;transition:background-color .14s ease,color .14s ease,transform .1s ease,box-shadow .14s ease}.ihabdevteam-core-scope .button__icon,.ihabdevteam-core-scope .button__left,.ihabdevteam-core-scope .button__right{align-items:center;color:inherit;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .button--align-center .button__label,.ihabdevteam-core-scope .button--align-right .button__label{flex:1 1 auto;text-align:center}.ihabdevteam-core-scope .button__icon{height:24px;width:24px}.ihabdevteam-core-scope .button__icon--small{height:16px;width:16px}.ihabdevteam-core-scope .button__icon--medium{height:24px;width:24px}.ihabdevteam-core-scope .button__icon--large{height:36px;width:36px}.ihabdevteam-core-scope .button__center-group{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .button__center-group .button__label{display:inline-block;flex:0 1 auto;text-align:center}.ihabdevteam-core-scope .button__label{display:block;white-space:normal}.ihabdevteam-core-scope .button__label-text{align-items:center;display:inline-flex;justify-content:center;max-width:100%;vertical-align:middle;white-space:normal;word-break:break-word}.ihabdevteam-core-scope .button__label-text--has-sub{flex-direction:column;gap:3px}.ihabdevteam-core-scope .button--nowrap .button__label-text{white-space:nowrap}.ihabdevteam-core-scope .button--align-left .button__label-text--has-sub{align-items:flex-start;text-align:left}.ihabdevteam-core-scope .button__count{color:var(--color-main);font-weight:700;margin-left:4px}.ihabdevteam-core-scope .button--variant-main .button__count,.ihabdevteam-core-scope .is-selected .button__count,.ihabdevteam-core-scope [aria-pressed=true] .button__count{color:#fff}.ihabdevteam-core-scope .button__label:has(>.button__label-text+.button__label-text){gap:5px}.ihabdevteam-core-scope .button__sub-label-text{color:var(--button-subLabel-color,var(--color-gray));display:block}.ihabdevteam-core-scope .button__icon-img{display:block;height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.ihabdevteam-core-scope .button__icon-mask{background-color:currentColor;display:block;height:100%;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.ihabdevteam-core-scope .button__icon-svg{align-items:center;display:inline-flex;height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .button__icon-svg svg{display:block;height:100%;width:100%}.ihabdevteam-core-scope .button__icon-svg svg,.ihabdevteam-core-scope .button__icon-svg svg *{fill:currentColor;stroke:currentColor}.ihabdevteam-core-scope .button .button__label{color:currentColor;color:var(--button-text-color,currentColor);min-height:20px;min-width:20px}.ihabdevteam-core-scope .button .button__icon,.ihabdevteam-core-scope .button .button__left,.ihabdevteam-core-scope .button .button__right{color:currentColor;color:var(--button-icon-color,currentColor)}.ihabdevteam-core-scope .button--align-left{justify-content:flex-start}.ihabdevteam-core-scope .button--align-center{justify-content:center}.ihabdevteam-core-scope .button--align-right{justify-content:flex-end}.ihabdevteam-core-scope .button--align-left .button__label{align-items:center;display:inline-flex;flex:1 1 auto}.ihabdevteam-core-scope .button--align-left .button__label-text{justify-content:flex-start;text-align:left}.ihabdevteam-core-scope .button--align-center .button__label{align-items:center;display:flex;flex:1 1 auto;justify-content:center;text-align:center}.ihabdevteam-core-scope .button--align-right .button__label{flex:1 1 auto;text-align:right}.ihabdevteam-core-scope .button--align-grid{justify-content:center}.ihabdevteam-core-scope .button--align-grid .button__label{display:grid;flex:1 1 auto;grid-auto-columns:1fr;grid-auto-flow:column;text-align:center}.ihabdevteam-core-scope .button.button--no-bg{background:transparent;border-color:transparent}.ihabdevteam-core-scope .button--variant-danger{--button-text-color:var(--color-error);--button-icon-color:var(--color-error);--button-subLabel-color:var(--color-error);background:var(--color-deepWhite);border:var(--button-border,1px solid var(--color-error))}.ihabdevteam-core-scope .button--variant-danger:focus-visible,.ihabdevteam-core-scope .button--variant-danger:hover{--button-text-color:var(--color-error);--button-icon-color:var(--color-error);--button-subLabel-color:var(--color-error);background:var(--color-error-a10);border-color:var(--color-error)}.ihabdevteam-core-scope .button--variant-danger.is-selected,.ihabdevteam-core-scope .button--variant-danger[aria-pressed=true]{--button-text-color:#fff;--button-icon-color:#fff;--button-subLabel-color:#fff;background:var(--color-error);border-color:var(--color-error)}.ihabdevteam-core-scope .button--variant-default{--button-text-color:var(--color-darkGray);--button-icon-color:var(--color-lightGray);--button-subLabel-color:var(--color-gray);background:var(--color-deepWhite);border:var(--button-border,1px solid var(--color-whiteLine))}.ihabdevteam-core-scope .button--variant-default:focus-visible,.ihabdevteam-core-scope .button--variant-default:hover{--button-text-color:var(--color-black);--button-icon-color:var(--color-main);--button-subLabel-color:var(--color-black);background:var(--color-white);border-color:var(--color-main)}.ihabdevteam-core-scope .button--variant-default.is-selected,.ihabdevteam-core-scope .button--variant-default[aria-pressed=true]{--button-text-color:#fff;--button-icon-color:#fff;--button-subLabel-color:#fff;background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .button--variant-main{--button-subLabel-color:var(--color-white-a80);background:var(--color-main);border:var(--button-border,1px solid var(--color-main));color:#fff}.ihabdevteam-core-scope .button--variant-main:focus-visible,.ihabdevteam-core-scope .button--variant-main:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-sub);border-color:var(--color-sub);color:#fff}.ihabdevteam-core-scope .button--variant-main.is-selected,.ihabdevteam-core-scope .button--variant-main[aria-pressed=true]{--button-subLabel-color:var(--color-white-a80);background:var(--color-sub);color:#fff}.ihabdevteam-core-scope .button--variant-sub{--button-subLabel-color:var(--color-white-a80);background:var(--color-primary,var(--color-sub));color:#fff}.ihabdevteam-core-scope .button--variant-sub:focus-visible,.ihabdevteam-core-scope .button--variant-sub:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-uiAccent);color:#fff}.ihabdevteam-core-scope .button--variant-transparent-white{--button-subLabel-color:var(--color-white-a60);background:transparent;border:var(--button-border,1px solid var(--color-white-a80));color:#fbfdff}.ihabdevteam-core-scope .button--variant-transparent-white:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-white:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-white-a10);color:#fff}.ihabdevteam-core-scope .button--variant-transparent-white.is-selected,.ihabdevteam-core-scope .button--variant-transparent-white[aria-pressed=true]{--button-subLabel-color:var(--color-lightGray);background:var(--color-white);color:var(--color-main)}.ihabdevteam-core-scope .button--variant-transparent-gray{--button-subLabel-color:var(--color-gray-a60);background:transparent;border:var(--button-border,1px solid var(--color-gray-a80));color:var(--color-gray-a80)}.ihabdevteam-core-scope .button--variant-transparent-gray:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-gray:hover{--button-subLabel-color:var(--color-gray-a60);background:var(--color-gray-a10);color:var(--color-gray)}.ihabdevteam-core-scope .button--variant-transparent-lightGray{--button-subLabel-color:var(--color-gray-a60);background:transparent;border:var(--button-border,1px solid var(--color-lightGray-a80));color:var(--color-gray)}.ihabdevteam-core-scope .button--variant-transparent-lightGray:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-lightGray:hover{--button-subLabel-color:var(--color-gray-a60);background:var(--color-lightGray-a10);color:var(--color-deepGray)}.ihabdevteam-core-scope .button--variant-disabled{--button-subLabel-color:var(--color-disabled);background-color:transparent;border:var(--button-border,1px solid var(--color-whiteLine));color:var(--color-disabled)}.ihabdevteam-core-scope .button--variant-disabled .button__icon,.ihabdevteam-core-scope .button--variant-disabled .button__left,.ihabdevteam-core-scope .button--variant-disabled .button__right{color:var(--color-disabled)}.ihabdevteam-core-scope .button--variant-disabled-covered{background-color:var(--color-darkWhite);border:1px solid transparent;border:var(--button-border,1px solid transparent);border-color:transparent;color:transparent}.ihabdevteam-core-scope .button--variant-disabled-covered .button__icon,.ihabdevteam-core-scope .button--variant-disabled-covered .button__left,.ihabdevteam-core-scope .button--variant-disabled-covered .button__right{color:transparent}.ihabdevteam-core-scope .button--variant-disabled-faded,.ihabdevteam-core-scope .button--variant-disabled-invisibled{background:transparent}.ihabdevteam-core-scope .button--variant-disabled-faded .button__icon,.ihabdevteam-core-scope .button--variant-disabled-faded .button__left,.ihabdevteam-core-scope .button--variant-disabled-faded .button__right,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__icon,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__label,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__left,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__right{color:transparent}.ihabdevteam-core-scope .button.button--tooltip-only,.ihabdevteam-core-scope .button:disabled,.ihabdevteam-core-scope .button[disabled]{cursor:default}.ihabdevteam-core-scope .button--shape-rounded{border-radius:8px!important;border-radius:var(--button-rounded-radius,8px)!important}.ihabdevteam-core-scope .button--shape-pill{border-radius:9999px!important}.ihabdevteam-core-scope .button72{--button-rounded-radius:18px;border-radius:36px;height:72px;justify-content:center}.ihabdevteam-core-scope .button72--bar{min-width:220px}.ihabdevteam-core-scope .button72--dot{padding:0;width:72px}.ihabdevteam-core-scope .button56{--button-rounded-radius:14px;border-radius:28px;height:56px;justify-content:center}.ihabdevteam-core-scope .button56--bar{min-width:190px}.ihabdevteam-core-scope .button56--dot{padding:0;width:56px}.ihabdevteam-core-scope .button52{--button-rounded-radius:13px;border-radius:26px;height:52px;justify-content:center}.ihabdevteam-core-scope .button52--bar{min-width:175px}.ihabdevteam-core-scope .button52--dot{padding:0;width:52px}.ihabdevteam-core-scope .button48{--button-rounded-radius:12px;border-radius:24px;height:48px;justify-content:center}.ihabdevteam-core-scope .button48--bar{min-width:160px}.ihabdevteam-core-scope .button48--dot{padding:0;width:48px}.ihabdevteam-core-scope .button40{--button-rounded-radius:10px;border-radius:20px;height:40px;justify-content:center}.ihabdevteam-core-scope .button40--bar{min-width:100px}.ihabdevteam-core-scope .button40--dot{padding:0;width:40px}.ihabdevteam-core-scope .button40 .button__icon,.ihabdevteam-core-scope .button40--bar .button__icon,.ihabdevteam-core-scope .button40--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button32{--button-rounded-radius:8px;border-radius:16px;height:32px;justify-content:center}.ihabdevteam-core-scope .button32--bar{min-width:72px}.ihabdevteam-core-scope .button32--dot{padding:0;width:32px}.ihabdevteam-core-scope .button32 .button__icon,.ihabdevteam-core-scope .button32--bar .button__icon,.ihabdevteam-core-scope .button32--dot .button__icon{height:18px;width:18px}.ihabdevteam-core-scope .button28{--button-rounded-radius:7px;border-radius:14px;height:28px;justify-content:center}.ihabdevteam-core-scope .button28--bar{min-width:60px}.ihabdevteam-core-scope .button28--dot{padding:0;width:28px}.ihabdevteam-core-scope .button28 .button__icon,.ihabdevteam-core-scope .button28--bar .button__icon,.ihabdevteam-core-scope .button28--dot .button__icon{height:16px;width:16px}.ihabdevteam-core-scope .button24{--button-rounded-radius:6px;border-radius:12px;height:24px;justify-content:center}.ihabdevteam-core-scope .button24--bar{min-width:48px}.ihabdevteam-core-scope .button24--dot{padding:0;width:24px}.ihabdevteam-core-scope .button24 .button__icon,.ihabdevteam-core-scope .button24--bar .button__icon,.ihabdevteam-core-scope .button24--dot .button__icon{height:14px;width:14px}.ihabdevteam-core-scope .button-keyboard{border-radius:12px;height:32px;justify-content:center}.ihabdevteam-core-scope .button-keyboard--bar{min-width:32px;padding:0 12px}.ihabdevteam-core-scope .button-keyboard--dot{padding:0;width:32px}.ihabdevteam-core-scope .button-word{border-radius:12px;height:72px;justify-content:center;padding:0 16px}.ihabdevteam-core-scope .button-word--bar{min-width:120px}.ihabdevteam-core-scope .button-word--dot{padding:0;width:72px}@media (max-width:1024px){.ihabdevteam-core-scope .button56{--button-rounded-radius:13px;border-radius:25px;height:50px}.ihabdevteam-core-scope .button56--bar{min-width:170px}.ihabdevteam-core-scope .button56--dot{width:50px}.ihabdevteam-core-scope .button48{--button-rounded-radius:11px;border-radius:22px;height:44px}.ihabdevteam-core-scope .button48--bar{min-width:140px}.ihabdevteam-core-scope .button48--dot{width:44px}.ihabdevteam-core-scope .button40{--button-rounded-radius:9px;border-radius:18px;height:36px}.ihabdevteam-core-scope .button40--bar{min-width:88px}.ihabdevteam-core-scope .button40--dot{width:36px}.ihabdevteam-core-scope .button32{--button-rounded-radius:8px;border-radius:15px;height:30px}.ihabdevteam-core-scope .button32--bar{min-width:64px}.ihabdevteam-core-scope .button32--dot{width:30px}.ihabdevteam-core-scope .button24--bar{min-width:44px}}@media (max-width:768px){.ihabdevteam-core-scope .button56{--button-rounded-radius:12px;border-radius:23px;height:46px}.ihabdevteam-core-scope .button56--bar{min-width:150px}.ihabdevteam-core-scope .button56--dot{width:46px}.ihabdevteam-core-scope .button56 .button__icon,.ihabdevteam-core-scope .button56--bar .button__icon,.ihabdevteam-core-scope .button56--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button48{--button-rounded-radius:10px;border-radius:20px;height:40px}.ihabdevteam-core-scope .button48--bar{min-width:120px}.ihabdevteam-core-scope .button48--dot{width:40px}.ihabdevteam-core-scope .button48 .button__icon,.ihabdevteam-core-scope .button48--bar .button__icon,.ihabdevteam-core-scope .button48--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button40{--button-rounded-radius:8px;border-radius:17px;height:34px}.ihabdevteam-core-scope .button40--bar{min-width:80px}.ihabdevteam-core-scope .button40--dot{width:34px}.ihabdevteam-core-scope .button32{--button-rounded-radius:7px;border-radius:14px;height:28px}.ihabdevteam-core-scope .button32--bar{min-width:60px}.ihabdevteam-core-scope .button32--dot{width:28px}.ihabdevteam-core-scope .button24--bar{min-width:40px}}";ce(r7);var n7=".ihabdevteam-core-scope .tooltip-content{animation:tooltip-pop .2s cubic-bezier(.2,.9,.2,1) both;background-color:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);box-sizing:border-box;pointer-events:auto;position:absolute;transform-origin:left center;white-space:normal;will-change:transform,opacity;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-content--inline{position:static}.ihabdevteam-core-scope .tooltip-content--bordered{border:1px solid var(--color-whiteLine)}.ihabdevteam-core-scope .tooltip-content.tooltip-description,.ihabdevteam-core-scope .tooltip-content.tooltip-info,.ihabdevteam-core-scope .tooltip-content.tooltip-training{background:transparent;box-shadow:none}.ihabdevteam-core-scope .tooltip-content__header{align-items:center;color:var(--color-gray);display:flex;height:40px;padding:0 2px 10px}.ihabdevteam-core-scope .tooltip-content.is-closing{animation:tooltip-fade-out .2s ease both;opacity:0}.ihabdevteam-core-scope .tooltip-content[data-placement=top]{transform:translateY(-6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=bottom]{transform:translateY(6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=left]{transform:translateX(-6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=right]{transform:translateX(6px)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=top]{transform:translateY(-6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=bottom]{transform:translateY(6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=left]{transform:translateX(-6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=right]{transform:translateX(6px) scale(.98)}@keyframes tooltip-pop{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tooltip-fade-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-6px) scale(.98)}}.ihabdevteam-core-scope .tooltip-backdrop{background:var(--color-popupBlock);inset:0;position:fixed;z-index:calc(var(--z-tooltip) - 1)}.ihabdevteam-core-scope .tooltip-portal{inset:0;position:fixed;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-content.is-mobile{left:50%!important;max-width:calc(100% - 40px)!important;top:50%!important;transform:translate(-50%,-50%)!important;visibility:visible!important;width:calc(100% - 40px)!important;z-index:var(--z-tooltip)!important}";ce(n7);const br=[];let Ci=!1;function Rb(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=br[br.length-1];t&&(e.stopPropagation(),t())}function Io(e){return br.push(e),!Ci&&typeof document<"u"&&(document.addEventListener("keydown",Rb),Ci=!0),()=>{const t=br.lastIndexOf(e);t>=0&&br.splice(t,1),br.length===0&&Ci&&typeof document<"u"&&(document.removeEventListener("keydown",Rb),Ci=!1)}}const xi=s.createContext(null);function i7(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const Pb=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function s7(e){const t=s.useCallback(a=>{if(typeof window>"u"||!window.matchMedia)return()=>{};const o=window.matchMedia(e);return o.addEventListener?o.addEventListener("change",a):o.addListener&&o.addListener(a),()=>{o.removeEventListener?o.removeEventListener("change",a):o.removeListener&&o.removeListener(a)}},[e]);return fp.useSyncExternalStore(t,()=>Pb(e),()=>!1)}function l7(e){const[t,a]=s.useState(Pb(e));return s.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const o=window.matchMedia(e),n=l=>a(l.matches),i=o;return i.addEventListener?i.addEventListener("change",n):i.addListener&&i.addListener(n),a(o.matches),()=>{i.removeEventListener?i.removeEventListener("change",n):i.removeListener&&i.removeListener(n)}},[e]),t}const c7=typeof fp.useSyncExternalStore=="function"?s7:l7;function sa(e){const t=s.useContext(xi),a=c7(e);return t&&typeof t.mobile=="boolean"&&i7(e)?t.mobile:a}const u7="(prefers-reduced-motion: reduce)";function Ec(){return sa(u7)}function xa(e){const{anchorRect:t,anchorEl:a,offset:o=20,edgeMargin:n=20,onClose:i,closeOnOutsideClick:l=!0,className:c="",role:u="dialog",ariaLabel:d="",children:h,backdrop:p=!1,isMobilePopup:m=!1,useBorder:C=!0,header:v,focusOnOpen:f}=e||{},g=s.useRef(null),[x,b]=s.useState({position:"fixed",left:0,top:-9999}),[w,_]=s.useState(!1),[A,y]=s.useState("bottom"),[B,k]=s.useState(!1),[S,E]=s.useState(!1),D=!t&&!a,I=s.useCallback((V=!1)=>{if(S&&m)return;const $=a?a.getBoundingClientRect():t;if(!$||!g.current)return;const U=g.current,{offsetWidth:T,offsetHeight:F}=U,N=window.innerWidth,O=window.innerHeight,H=N-$.right,Z=$.left,te=$.top,se=O-$.bottom;let be=0,X=0,re="top";if(te>=F+o)re="top",X=$.top-o-F,be=$.left+$.width/2-T/2;else if(se>=F+o)re="bottom",X=$.bottom+o,be=$.left+$.width/2-T/2;else if(H>=T+o)re="right",be=$.right+o,X=$.top+$.height/2-F/2;else if(Z>=T+o)re="left",be=$.left-o-T,X=$.top+$.height/2-F/2;else{const ue=Math.max(te,se,H,Z);ue===te?(re="top",X=$.top-o-F,be=$.left+$.width/2-T/2):ue===se?(re="bottom",X=$.bottom+o,be=$.left+$.width/2-T/2):ue===H?(re="right",be=$.right+o,X=$.top+$.height/2-F/2):(re="left",be=$.left-o-T,X=$.top+$.height/2-F/2)}const Ae=Number.isFinite(Number(n))?Number(n):8;be=Math.min(Math.max(be,Ae),N-T-Ae),X=Math.min(Math.max(X,Ae),O-F-Ae);const K=Math.round(be),ie=Math.round(X);V&&g.current?(g.current.style.left=`${K}px`,g.current.style.top=`${ie}px`,g.current.dataset.placement=re):(y(re||A),b({position:"fixed",left:K,top:ie}),k(!0))},[S,m,a,t,o,n,A]);s.useLayoutEffect(()=>{if(D)return;if(S&&m){b({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),k(!0);return}I();const V=requestAnimationFrame(()=>I());return()=>cancelAnimationFrame(V)},[t,a,o,h,n,D,S,m,I]),s.useEffect(()=>{if(D||S&&m||!g.current||typeof ResizeObserver>"u")return;const V=new ResizeObserver(()=>{t&&I()});return V.observe(g.current),()=>V.disconnect()},[t,h,n,D,S,m,I]),s.useEffect(()=>{if(D||S&&m)return;let V=null;const $=()=>{if(typeof requestAnimationFrame>"u"){I(!0);return}V===null&&(V=requestAnimationFrame(()=>{V=null,I(!0)}))},U=T=>{if(!a&&i){const F=T.target;if(F&&g.current&&g.current.contains(F))return;try{if(F&&F.closest&&F.closest("[data-tooltip-ignore]"))return}catch{}z.current(!0);return}$()};return window.addEventListener("resize",$),document.addEventListener("scroll",U,{passive:!0,capture:!0}),()=>{V!==null&&cancelAnimationFrame(V),window.removeEventListener("resize",$),document.removeEventListener("scroll",U,{capture:!0})}},[t,a,i,o,h,n,D,S,m,I]),s.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const V=window.matchMedia("(max-width: 768px)"),$=()=>E(!!V.matches);$();try{V.addEventListener?V.addEventListener("change",$):V.addListener($)}catch{try{V.addListener($)}catch{}}return()=>{try{V.removeEventListener?V.removeEventListener("change",$):V.removeListener($)}catch{}}},[]);const j=s.useRef(!1),W=s.useRef(null),L=Ec(),M=s.useCallback((V=!1)=>{if(i&&!(w||j.current)){if(j.current=!0,V){_(!0);try{i&&i()}catch{j.current=!1,_(!1)}return}_(!0),W.current=setTimeout(()=>{W.current=null;try{i&&i()}catch{j.current=!1,_(!1)}},L?0:200)}},[w,i,_,L]);s.useEffect(()=>()=>{W.current&&clearTimeout(W.current)},[]),s.useEffect(()=>{if(D)return;const V=T=>{const F=g.current;if(!F)return;const N=T.target;if(N&&!F.contains(N)){try{if(N.closest&&N.closest("[data-tooltip-ignore]"))return}catch{}l&&M(!0)}},$=T=>{const F=g.current;if(!F)return;const N=T.target;if(N&&!F.contains(N)){try{if(N.closest&&N.closest("[data-tooltip-ignore]"))return}catch{}l&&M(!0)}},U=T=>{if(T.key==="Tab"){const F=g.current;if(!F)return;const N=F.querySelectorAll(Oa);if(!N||N.length===0)return;const O=N[0],H=N[N.length-1],Z=document.activeElement;T.shiftKey?Z===O&&(T.preventDefault(),H.focus()):Z===H&&(T.preventDefault(),O.focus())}};return document.addEventListener("pointerdown",V,!0),document.addEventListener("click",$,!0),document.addEventListener("keydown",U),()=>{document.removeEventListener("pointerdown",V,!0),document.removeEventListener("click",$,!0),document.removeEventListener("keydown",U)}},[i,l,M,D]);const z=s.useRef(M);s.useEffect(()=>{z.current=M});const q=!!i;s.useEffect(()=>{if(!(D||!q))return Io(()=>z.current())},[D,q]),s.useEffect(()=>{const V=()=>{M(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",V),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",V)}},[M]);const Y=s.useRef(null);s.useEffect(()=>{if(D||f===!1||!B)return;const V=g.current;if(!V)return;const $=V.querySelector(Oa);if($)return Y.current=document.activeElement,$.focus(),()=>{const U=Y.current;Y.current=null,U&&document.contains(U)&&U.focus()}},[D,f,B]),s.useEffect(()=>{u==="dialog"&&!d&&ra("tooltip-no-name",'[ihab/Tooltip] \uC774\uB984 \uC5C6\uB294 role="dialog" \uC785\uB2C8\uB2E4 \u2014 ariaLabel \uC744 \uC8FC\uC138\uC694. \uB0AD\uB3C5\uAE30\uAC00 "\uB300\uD654\uC0C1\uC790" \uB77C\uACE0\uB9CC \uC77D\uC2B5\uB2C8\uB2E4.')},[u,d]);const P=r.jsxs("div",{ref:g,className:`tooltip-content ${D?"tooltip-content--inline":""} ${C?"tooltip-content--bordered":""} ${w?"is-closing":""} ${c} ${S&&m?"is-mobile":""}`,role:u,"aria-label":d||void 0,style:D?{}:{...x,visibility:B?"visible":"hidden"},tabIndex:-1,"data-placement":A,"data-left":D?"":x.left,"data-top":D?"":x.top,"data-anchor-left":t?Math.round(t.left):"","data-anchor-top":t?Math.round(t.top):"","data-anchor-width":t?Math.round(t.width):"","data-anchor-height":t?Math.round(t.height):"",children:[v!=null&&r.jsx("div",{className:"tooltip-content__header h5",children:v}),h]});if(D||typeof document>"u")return P;if(p||S&&m){const V=r.jsxs("div",{className:"tooltip-portal",children:[r.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&M(!0)}}),P]});return ua.createPortal(V,document.body)}return ua.createPortal(P,document.body)}var d7='.ihabdevteam-core-scope .tooltip-info__content{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-main);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);color:var(--color-black);display:inline-flex;justify-content:center;line-height:1;overflow:hidden;padding:4px 12px;position:relative;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .tooltip-content.tooltip-info{pointer-events:none}.ihabdevteam-core-scope .tooltip-content.tooltip-info .tooltip-info__content{box-shadow:var(--shadow-tooltip)}.ihabdevteam-core-scope .tooltip-info[data-placement=bottom] .tooltip-info__content:after,.ihabdevteam-core-scope .tooltip-info[data-placement=top] .tooltip-info__content:after{content:"";height:0;margin:0;padding:0;position:absolute;width:0}';ce(d7);function Ea(e){const{anchorRect:t,text:a,offset:o=8,onClose:n,className:i="",ariaLabel:l}=e||{};return a?r.jsx(xa,{anchorRect:t,offset:o,onClose:n,closeOnOutsideClick:!1,className:`tooltip-info ${i}`,ariaLabel:l||a,children:r.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}var p7=".ihabdevteam-core-scope .tooltip-description__box{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);display:flex;flex-direction:column;gap:10px;max-width:640px;padding:16px 20px}.ihabdevteam-core-scope .tooltip-description__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .tooltip-description__items{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .tooltip-description__item{align-items:flex-start;color:var(--color-darkGray);display:flex;gap:var(--spacing-xs);margin:0}.ihabdevteam-core-scope .tooltip-description__index{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .tooltip-description__dot{border-radius:50%;flex-shrink:0;height:8px;margin-top:6px;width:8px}.ihabdevteam-core-scope .tooltip-description__item--active{color:var(--color-main);font-weight:600}.ihabdevteam-core-scope .tooltip-description__item--active .tooltip-description__index{color:var(--color-main)}";ce(p7);function Co(e){const{t}=_e.useTranslation(),{anchorRect:a,title:o,items:n,activeIndex:i=-1,showIndex:l=!0,onClose:c,offset:u=12,closeOnOutsideClick:d=!0}=e||{},h=(Array.isArray(n)?n:n?[n]:[]).map(p=>typeof p=="string"?{text:p}:p);return!h.length&&!o?null:r.jsx(xa,{anchorRect:a,offset:u,onClose:c,closeOnOutsideClick:d,useBorder:!1,className:"tooltip-description",ariaLabel:o||t("tooltip.description","\uC124\uBA85"),children:r.jsxs("div",{className:"tooltip-description__box",children:[o&&r.jsx("span",{className:"tooltip-description__title body-2",children:o}),r.jsx("ol",{className:"tooltip-description__items",children:h.map((p,m)=>r.jsxs("li",{className:`tooltip-description__item body-3${m===i?" tooltip-description__item--active":""}`,children:[l&&h.length>1&&r.jsxs("span",{className:"tooltip-description__index button-1",children:[m+1,"."]}),p.color&&r.jsx("span",{className:"tooltip-description__dot",style:{background:p.color},"aria-hidden":"true"}),r.jsx("span",{children:p.text})]},m))})]})})}function pn(e){const t=s.useRef(e);return s.useEffect(()=>{t.current=e}),t}let Dc=0,zb=!1;function Ib(){zb||typeof document>"u"||(zb=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(Dc=Date.now())},!0),document.addEventListener("touchstart",()=>{Dc=Date.now()},{capture:!0,passive:!0}))}Ib();function gr(e){return!!e&&e.pointerType==="touch"}function fr(e=1e3){return Ib(),Date.now()-Dc<e}function Nc(e,t,a,{enabled:o=!0,fallbackOnParent:n=!1}={}){const i=pn(e),l=pn(t),c=s.useRef(null),u=s.useRef(0);s.useEffect(()=>{if(!o||typeof document>"u")return;const h=p=>{const m=p,C=p.target,v=a.current,f=!!(C&&v&&v.contains(C));if(m.pointerType!=="touch"){f&&(c.current=null);return}if(f){c.current=i.current;return}c.current=null,i.current&&!(C&&C.closest?.(".tooltip-content"))&&l.current(!1,v)};return document.addEventListener("pointerdown",h,!0),()=>document.removeEventListener("pointerdown",h,!0)},[o,a,i,l]);const d=s.useCallback(h=>{const p=c.current;return p===null?!1:(c.current=null,u.current=Date.now(),l.current(!p,h??a.current),!0)},[a,l]);return s.useEffect(()=>{if(!o||!n)return;const h=a.current,p=h?.parentElement;if(!h||!p)return;let m=null;const C=g=>{const x=g.changedTouches?.[0];if(!x)return!1;const b=h.getBoundingClientRect();return x.clientX>=b.left&&x.clientX<=b.right&&x.clientY>=b.top&&x.clientY<=b.bottom},v=g=>{m=C(g)?i.current:null},f=g=>{const x=m;m=null,!(x===null||Date.now()-u.current<700||!C(g))&&(c.current=null,u.current=Date.now(),l.current(!x,h))};return p.addEventListener("touchstart",v,{passive:!0}),p.addEventListener("touchend",f),()=>{p.removeEventListener("touchstart",v),p.removeEventListener("touchend",f)}},[o,n,a,i,l]),{touchPress:d}}function h7(e,t){const{size:a=48,type:o,htmlType:n,href:i,target:l,rel:c,icon:u,rightIcon:d,label:h,count:p,subLabel:m,children:C,ariaLabel:v,variant:f="default",align:g="center",nowrap:x=!1,selected:b,toggleable:w=!1,ariaExpanded:_,ariaControls:A,disabled:y=!1,useLabel:B=!0,useBorder:k=!0,useBG:S=!0,useDisabledCovered:E=!1,useDisabledInvisible:D=!1,width:I,minWidth:j,onClick:W,onDisabledClick:L,showTooltipInfo:M=!1,tooltipInfoText:z=null,tooltipDescription:q=null,tooltipOnly:Y=!1,iconSize:P="medium",iconColor:V,shape:$="rounded",color:U,className:T,...F}=e,N=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),O=N.match(/^\d+$/)?`button${N}`:`button-${N}`,H=Number(a),Z=!isNaN(H)&&H<40?"button-2":"button-1",te=h??C,se=y||!!F.disabled,be=se?E?"disabled-covered":D?"disabled-invisibled":"disabled":f,X=be?`button--variant-${be}`:"",re=g?`button--align-${g}`:"",Ae=x?"button--nowrap":"",K=$?`button--shape-${$}`:"",ie=typeof V=="string"&&V.startsWith("--")?`var(${V})`:V,ue={...I?{width:typeof I=="number"?`${I}px`:I}:{},...j?{minWidth:typeof j=="number"?`${j}px`:j}:{},...k?{}:{"--button-border":se?"0":"1px solid transparent"},...ie?{"--button-icon-color":ie}:{},...U?{"--color-main":U}:{}},je=B===!1?"":te,ye=Array.isArray(je)?je.length>0:!!je,le=!!d,he=o??(ye||u||le?"bar":"dot"),ve=`${O}--${he}`,G=s.useRef(null);s.useEffect(()=>{!Xo||n!==void 0||G.current?.closest("form")&&ra(`button-in-form:${typeof te=="string"?te:""}`,'[ihab/Button] <form> \uC548\uC778\uB370 htmlType \uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 \uC774 \uB2E8\uCD94\uB294 type="button" \uC774\uB77C \uD3FC\uC744 \uBCF4\uB0B4\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uBCF4\uB0B4\uB294 \uB2E8\uCD94\uBA74 htmlType="submit" \uC744 \uC8FC\uC138\uC694. \uD3FC\uC5D0 \uBCF4\uB0B4\uB294 \uB2E8\uCD94\uAC00 \uD558\uB098\uB3C4 \uC5C6\uC73C\uBA74 **Enter \uB85C\uB3C4 \uC548 \uBCF4\uB0B4\uC9D1\uB2C8\uB2E4**(\uCE78\uC774 \uB458 \uC774\uC0C1\uC77C \uB54C).'+(typeof te=="string"&&te?` \uB2E8\uCD94: ${te}`:""))},[n,te]);const oe=s.useRef(t);oe.current=t;const me=s.useCallback(qe=>{G.current=qe;const tt=oe.current;typeof tt=="function"?tt(qe):tt&&(tt.current=qe)},[]),Te=s.useRef(se),[ke,Pe]=s.useState(!!b),[He,lt]=s.useState(!1),[rt,at]=s.useState(null),ht=s.useCallback(()=>lt(!1),[]),[De,Ue]=s.useState(!1),Se=s.useId();s.useEffect(()=>{typeof b=="boolean"&&Pe(b)},[b]),s.useEffect(()=>{if(Te.current&&!se&&G.current){const qe=G.current;let tt=!1;try{tt=qe.matches(":focus:not(:focus-visible)")}catch{tt=!1}tt&&qe.blur(),qe.style.pointerEvents="none";const Dt=requestAnimationFrame(()=>{requestAnimationFrame(()=>{G.current&&(G.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(Dt)}Te.current=se},[se]);const Ye=typeof b=="boolean"?!!b:ke,ee=typeof _=="boolean"?void 0:w||typeof b=="boolean"?Ye?"true":"false":F["aria-pressed"],pe=Ne("button",O,ve,X,re,Ae,K,Ye?"is-selected":null,S?null:"button--no-bg",Y?"button--tooltip-only":null,T),Ee=`button__icon button__icon--${P}`,Re=Array.isArray(m)?m:m!==void 0?[m]:[],Ve=()=>{if(Array.isArray(je))return je.map((tt,Dt)=>{const ca=Re[Dt];return r.jsxs("span",{className:`button__label-text${ca!==void 0?" button__label-text--has-sub":""}`,children:[tt,ca!==void 0&&r.jsx("span",{className:"button__sub-label-text caption-1",children:ca})]},Dt)});const qe=m!==void 0;return r.jsxs("span",{className:`button__label-text${qe?" button__label-text--has-sub":""}`,children:[je,p!=null&&r.jsx("span",{className:"button__count",children:p}),qe&&r.jsx("span",{className:"button__sub-label-text caption-1",children:m})]})},We=qe=>{typeof b!="boolean"&&!w&&Pe(!1),qe.currentTarget.blur()},ct=qe=>{se||(typeof F.onMouseLeave=="function"&&F.onMouseLeave(qe),We(qe))},mt=qe=>{if(Y&&ft&&et.touchPress(qe.currentTarget),se){ft&&et.touchPress(qe.currentTarget),qe.preventDefault(),L?.(qe);return}typeof b!="boolean"&&w&&Pe(tt=>!tt),W?.(qe)},gt=s.useCallback(()=>{(M||q)&&(lt(!0),at(G.current?.getBoundingClientRect()??null))},[M,q]),Et=s.useCallback(()=>{(M||q)&&(lt(!1),at(null))},[M,q]),ft=!!(M||q),et=Nc(He,qe=>{qe?gt():Et()},G,{enabled:ft&&(se||Y),fallbackOnParent:ft&&se}),Ie={...F};delete Ie.disabled,delete Ie.className,delete Ie.faded,delete Ie.useFaded,delete Ie.loading,delete Ie.onMouseLeave,delete Ie.onPointerEnter,delete Ie.onPointerLeave,delete Ie.onPointerUp,delete Ie.onFocus,delete Ie.onBlur,se&&(Object.keys(Ie).forEach(qe=>{/^on[A-Z]/.test(qe)&&typeof Ie[qe]=="function"&&delete Ie[qe]}),Ie["aria-disabled"]="true");const Oe=(typeof M=="string"?M:null)??(typeof z=="string"?z:null)??(typeof v=="string"?v:null)??(typeof te=="string"?te:null)??void 0,bt=typeof v=="string"?v:typeof te=="string"?te:Oe,it=q?[q.title,...q.items??[]].filter(Boolean).join(". "):M&&Oe&&Oe!==bt?Oe:"",wt=[typeof F["aria-describedby"]=="string"?F["aria-describedby"]:void 0,it?Se:null].filter(Boolean).join(" ")||void 0,Ze=(qe,tt)=>r.jsx(ot,{icon:qe,label:tt??bt,className:Ee,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),kt=()=>he==="dot"?r.jsxs(r.Fragment,{children:[Ze(u),ye&&r.jsx("span",{className:`button__label ${Z}`,children:Ve()})]}):g==="center"&&u?r.jsxs(r.Fragment,{children:[r.jsxs("span",{className:"button__center-group",children:[r.jsx("span",{className:"button__left",children:Ze(u)}),ye&&r.jsx("span",{className:`button__label ${Z}`,children:Ve()})]}),le&&r.jsx("span",{className:"button__right",children:Ze(d)})]}):r.jsxs(r.Fragment,{children:[u&&r.jsx("span",{className:"button__left",children:Ze(u,v??te)}),ye&&r.jsx("span",{className:`button__label ${Z}`,children:Ve()}),le&&r.jsx("span",{className:"button__right",children:Ze(d)})]}),Lt=!!i&&!se;return r.jsxs(r.Fragment,{children:[r.jsxs(Lt?"a":"button",{...Ie,ref:me,...Lt?{href:i,target:l,rel:c??(l==="_blank"?"noreferrer":void 0)}:{type:n??"button",disabled:se&&!L&&!De},className:pe,"aria-pressed":ee,"aria-expanded":typeof _=="boolean"?_:F["aria-expanded"],"aria-controls":A??F["aria-controls"],"aria-label":bt,"aria-disabled":se&&(Lt||L||De)?!0:void 0,"aria-describedby":wt,style:ue,onClick:mt,onMouseLeave:ct,onPointerEnter:qe=>{gr(qe)||gt(),!se&&typeof F.onPointerEnter=="function"&&F.onPointerEnter(qe)},onPointerLeave:qe=>{gr(qe)||Et(),!se&&typeof F.onPointerLeave=="function"&&F.onPointerLeave(qe)},onPointerUp:qe=>{se&&ft&&et.touchPress(qe.currentTarget),!se&&typeof F.onPointerUp=="function"&&F.onPointerUp(qe)},onFocus:qe=>{Ue(!0),fr()||gt(),!se&&typeof F.onFocus=="function"&&F.onFocus(qe)},onBlur:qe=>{Ue(!1),se||We(qe),Et(),!se&&typeof F.onBlur=="function"&&F.onBlur(qe)},children:[kt(),it?r.jsx("span",{id:Se,hidden:!0,"aria-label":it}):null]}),He&&q?r.jsx(Co,{anchorRect:rt,title:q.title,items:q.items,onClose:ht}):He&&Oe?r.jsx(Ea,{anchorRect:rt,text:Oe,onClose:ht}):null]})}const Ce=s.forwardRef(h7);Ce.displayName="Button";function Tt(e,t,a){const o=s.useRef(null);return s.useLayoutEffect(()=>{const n=o.current?.parentElement??null;return t(n,e),()=>a(n)},[e,t,a]),o}var m7=".ihabdevteam-core-scope .promo-banner-bg{border-radius:inherit;inset:0;pointer-events:none;position:absolute}";ce(m7);var b7=".ihabdevteam-core-scope .promo-banner-bg-main{background:linear-gradient(45deg,var(--color-main),var(--color-sub))}";ce(b7);const vr={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},Tc=new WeakMap;function _i(e){if(e)return Tc.get(e)}function Kt(e,t){e&&(e.style.setProperty(vr.title,t.title),e.style.setProperty(vr.description,t.description),Tc.set(e,t))}function Zt(e){e&&(e.style.removeProperty(vr.title),e.style.removeProperty(vr.description),Tc.delete(e))}const jc={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Lc(){const e=Tt(jc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}var g7=".ihabdevteam-core-scope .promo-banner-bg-soft{background:var(--color-main-a10)}";ce(g7);const Mc={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function $c(){const e=Tt(Mc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}var f7=".ihabdevteam-core-scope .promo-banner-bg-sub{background:var(--color-sub)}";ce(f7);const Rc={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Pc(){const e=Tt(Rc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}var v7=".ihabdevteam-core-scope .promo-banner-bg-deep{background:linear-gradient(135deg,var(--color-darkMain),var(--color-darkSub))}";ce(v7);const zc={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ic(){const e=Tt(zc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}var C7=".ihabdevteam-core-scope .promo-banner-bg-soft-sub{background:var(--color-sub-a10)}";ce(C7);const Oc={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Fc(){const e=Tt(Oc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}var x7=".ihabdevteam-core-scope .promo-banner-bg-warm{background:var(--color-warn)}";ce(x7);const Hc={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function Vc(){const e=Tt(Hc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}var _7=".ihabdevteam-core-scope .promo-banner-bg-dark{background:var(--color-lightBlack)}";ce(_7);const Wc={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Gc(){const e=Tt(Wc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}var y7=".ihabdevteam-core-scope .promo-banner-bg-radial{background:radial-gradient(circle at 15% 20%,var(--color-main) 0,var(--color-sub) 100%)}";ce(y7);const Uc={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function qc(){const e=Tt(Uc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}var w7=".ihabdevteam-core-scope .promo-banner-bg-diagonal{background-color:var(--color-lightMain);background-image:repeating-linear-gradient(45deg,var(--color-main-a10) 0,var(--color-main-a10) 10px,transparent 10px,transparent 20px)}";ce(w7);const Yc={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function Kc(){const e=Tt(Yc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}var k7=".ihabdevteam-core-scope .promo-banner-bg-dots{background-color:var(--color-lightSub);background-image:radial-gradient(var(--color-sub-a10) 2px,transparent 2px);background-size:14px 14px}";ce(k7);const Zc={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Xc(){const e=Tt(Zc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}var B7=".ihabdevteam-core-scope .promo-banner-bg-outline{background:var(--color-white);border:1px solid var(--color-whiteLine);box-sizing:border-box}.ihabdevteam-core-scope .promo-banner-bg-outline__dot{background:linear-gradient(45deg,var(--color-main),var(--color-sub));border-radius:50%;bottom:-40px;height:140px;opacity:.12;position:absolute;right:-40px;width:140px}";ce(B7);const Jc={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function Qc(){const e=Tt(Jc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:r.jsx("span",{className:"promo-banner-bg-outline__dot"})})}var A7=".ihabdevteam-core-scope .promo-banner-bg-success{background:var(--color-success)}";ce(A7);const eu={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function tu(){const e=Tt(eu,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}var S7=".ihabdevteam-core-scope .promo-banner-bg-naver{background:linear-gradient(90deg,#03c75a 0,var(--color-main) 100%)}";ce(S7);const au={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function ou(){const e=Tt(au,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}var E7=".ihabdevteam-core-scope .promo-banner-bg-instagram{background:linear-gradient(45deg,#f9ce34,#ee2a7b 50%,#6228d7)}";ce(E7);const ru={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function nu(){const e=Tt(ru,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const la=(e,t,a)=>({key:e,get label(){return xt.t(`promoBannerBg.${e}`,t)},textTone:a}),Ob=[la("main","\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),la("soft","\uC18C\uD504\uD2B8","dark"),la("sub","\uC11C\uBE0C \uCEEC\uB7EC","light"),la("deep","\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),la("softSub","\uC18C\uD504\uD2B8 \uC11C\uBE0C","dark"),la("warm","\uC6DC(\uAC15\uC870)","dark"),la("dark","\uB2E4\uD06C","light"),la("radial","\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),la("diagonal","\uB300\uAC01\uC120 \uD328\uD134","dark"),la("dots","\uB3C4\uD2B8 \uD328\uD134","dark"),la("outline","\uC544\uC6C3\uB77C\uC778","dark"),la("success","\uC131\uACF5/\uC644\uB8CC","light"),la("naver","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4","light"),la("instagram","\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4","light")],iu={main:Lc,soft:$c,sub:Pc,deep:Ic,softSub:Fc,warm:Vc,dark:Gc,radial:qc,diagonal:Kc,dots:Xc,outline:Qc,success:tu,naver:ou,instagram:nu};function yi({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:o=1.4,step:n=.1,lineHeightRatio:i=1.4}={}){const l=w=>Math.max(a,Math.min(o,Number(w))),c=w=>{try{const _=localStorage.getItem(w),A=_?Number(_):1;return Number.isFinite(A)?l(A):l(1)}catch{return l(1)}},[u,d]=s.useState(()=>c(e)),[h,p]=s.useState(e);h!==e&&(p(e),d(c(e))),s.useEffect(()=>{try{localStorage.setItem(e,String(u))}catch{}},[e,u]);const m=w=>{d(typeof w=="function"?_=>l(w(_)):l(w))},C=()=>m(w=>+(w+n).toFixed(6)),v=()=>m(w=>+(w-n).toFixed(6)),f=u<o-Number.EPSILON,g=u>a+Number.EPSILON,x=Math.round(t*u),b=Math.round(x*i);return{scale:u,setScale:m,increase:C,decrease:v,canIncrease:f,canDecrease:g,fontSize:x,lineHeight:b}}function hn(e,t){const a=pn(t);s.useEffect(()=>{const o=()=>a.current();try{window.addEventListener(e,o)}catch{}return()=>{try{window.removeEventListener(e,o)}catch{}}},[e,a])}const su=" \xB7 ",Fb=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(su)?e.split(su).pop()??e:e})(),lu=s.createContext(!1),Oo=[];let Hb=null;function cu(e){const t=s.useContext(lu);s.useEffect(()=>{if(t||typeof e!="string"||!e)return;Oo.length===0&&(Hb=document.title);const a={text:Fb?`${e}${su}${Fb}`:e};return Oo.push(a),document.title=a.text,()=>{const o=Oo.lastIndexOf(a);o>=0&&Oo.splice(o,1),document.title=Oo.length?Oo[Oo.length-1].text:Hb??document.title}},[e,t])}function D7(e,t){const[a,o,n]=e.split("-").map(Number),[i,l,c]=t.split("-").map(Number);return Math.round((Date.UTC(i,l-1,c)-Date.UTC(a,o-1,n))/864e5)}function Vb(){const{t:e}=_e.useTranslation();return s.useCallback(t=>{if(!t)return"";const a=Ia(t);if(!a)return"";const o=D7(a,Ca());return o<=0?e("myHomework.relativeDay.today","\uC624\uB298"):o===1?e("myHomework.relativeDay.yesterday","\uC5B4\uC81C"):e("myHomework.relativeDay.daysAgo",{n:o})},[e])}function Wb(e){const{t}=_e.useTranslation(),[a,o]=s.useState({current:"",next:"",confirm:""}),[n,i]=s.useState(null),[l,c]=s.useState(!1),u=s.useRef(null),d=s.useRef(!1);s.useEffect(()=>()=>{u.current!==null&&clearTimeout(u.current)},[]);const h=s.useCallback(()=>{o({current:"",next:"",confirm:""}),i(null)},[]),p=s.useCallback(async()=>{if(d.current)return;if(!a.current){i({type:"error",text:t("account.security.password.currentRequired","\uD604\uC7AC \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.")});return}if(!a.next){i({type:"error",text:t("account.security.password.newRequired","\uC0C8 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.")});return}if(a.next!==a.confirm){i({type:"error",text:t("account.security.password.mismatch","\uC0C8 \uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")});return}c(!0),d.current=!0;let m;try{m=e?await e(a.current,a.next):null}catch(C){m=en(C)}finally{d.current=!1,c(!1)}if(m){i({type:"error",text:m});return}i({type:"success",text:t("account.security.password.changed","\uBE44\uBC00\uBC88\uD638\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.")}),o({current:"",next:"",confirm:""}),u.current!==null&&clearTimeout(u.current),u.current=setTimeout(()=>i(null),1500)},[a,e,t]);return{pw:a,setPw:o,pwMsg:n,setPwMsg:i,pwLoading:l,handleChangePw:p,reset:h}}const uu=[{id:"wordData",labelKey:"settings.cache.group.wordData.label",subKey:"settings.cache.group.wordData.sub",keys:["word_data_cache","word_data_version"]},{id:"pairIndex",labelKey:"settings.cache.group.pairIndex.label",subKey:"settings.cache.group.pairIndex.sub",keys:["word_pair_index_v2","word_pair_index_sig_v2"]},{id:"imageCache",labelKey:"settings.cache.group.imageCache.label",subKey:"settings.cache.group.imageCache.sub",keys:["word_image_existence_map_v1"]}];function du(e){return e.reduce((t,a)=>{try{const o=localStorage.getItem(a);return t+(o?new Blob([o]).size:0)}catch{return t}},0)}function Gb(e){return e===0?"0 B":e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(2)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}function Ub(e){const{t}=_e.useTranslation(),[a,o]=s.useState({}),[n,i]=s.useState(null),[l,c]=s.useState(null),[u,d]=s.useState(null),h=s.useCallback(()=>{const m={};uu.forEach(C=>{m[C.id]=du([...C.keys])}),o(m),typeof navigator<"u"&&navigator.storage?.estimate&&navigator.storage.estimate().then(C=>{d({usage:C.usage??0,quota:C.quota??0})}).catch(()=>{})},[]);s.useEffect(()=>{h()},[h]);const p=s.useCallback(async m=>{i(m);try{m==="wordData"?(localStorage.removeItem("word_data_cache"),localStorage.removeItem("word_data_version")):m==="pairIndex"?ll():m==="imageCache"&&Us(),h(),e?.(t("settings.cache.cleared","\uCE90\uC2DC\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."))}finally{i(null)}},[h,e,t]);return{cacheSizes:a,clearingId:n,confirmCacheId:l,setConfirmCacheId:c,storageEstimate:u,refreshCacheSizes:h,handleClearCache:p}}function qb(e){const[t,a]=s.useState(null),[o,n]=s.useState(null),i=s.useCallback(()=>{const l=Lo();if(l){const u=Object.values(l),d=u.filter(h=>h.cho.length+h.jung.length+h.jong.length>0).length;a({matched:d,total:u.length})}else a(null);const c=On();n(c?{exists:c.exists,total:c.total}:null)},[]);return s.useEffect(()=>{i();const l=setTimeout(i,1e3);return()=>clearTimeout(l)},[e?.length,i]),{pairStats:t,imgStats:o,setPairStats:a,setImgStats:n,refreshStats:i}}function Fo(e,t){if(e===t)return!0;const a=e?.id,o=t?.id;return a!=null&&a!==""&&a===o}function Yb(e,t=[]){const[a,o]=s.useState(t),[n,i]=s.useState(null),[l,c]=s.useState(!1),[u,d]=s.useState(e),h=s.useRef(!1),p=s.useRef(null);s.useEffect(()=>{if(l)return;if(h.current){h.current=!1;return}const x=p.current;x!==null&&x.length===t.length&&x.every((b,w)=>b===t[w])||(p.current=t,o(t),i(b=>b==null?b:t.find(w=>Fo(w,b))??b))},[t,l]),s.useEffect(()=>{!l&&n!=null&&d({...n})},[l,n]);const m=s.useCallback(x=>{i(x),c(!1),d({...x})},[]),C=s.useCallback(()=>c(!0),[]),v=s.useCallback(()=>c(!1),[]),f=s.useCallback((x,b)=>{o(x),i(b),c(w=>(w&&(h.current=!0),!1))},[]),g=s.useCallback(x=>{o(b=>b.filter(w=>!Fo(w,x))),i(null)},[]);return{list:a,setList:o,selected:n,setSelected:i,isEditing:l,setIsEditing:c,editForm:u,setEditForm:d,openDetail:m,startEditing:C,cancelEditing:v,commitEdit:f,remove:g}}const Cr=()=>{const[e,t,a]=Ca().split("-");return{year:e,month:t,day:a}},N7={year:"",month:"",day:"",hour:"09",minute:"00",memo:""};function Kb(e=[]){const{list:t,setList:a,selected:o,setSelected:n,isEditing:i,setIsEditing:l,editForm:c,setEditForm:u,openDetail:d,commitEdit:h}=Yb(N7,e),{year:p,month:m,day:C}=Cr(),[v,f]=s.useState({year:p,month:m,day:C,hour:"09",minute:"00",memo:""});return{visitHistory:t,visitForm:v,setVisitForm:f,setVisit:g=>x=>f(b=>({...b,[g]:x})),selectedVisit:o,setSelectedVisit:n,isEditingVisit:i,setIsEditingVisit:l,editVisitForm:c,setEditVisitForm:u,openVisitDetail:d,handleVisitSave:g=>{a(_=>[v,..._]);const{year:x,month:b,day:w}=Cr();f({year:x,month:b,day:w,hour:"09",minute:"00",memo:""}),g?.()},handleVisitEditSave:()=>{h(g=>g.map(x=>o!=null&&Fo(x,o)?c:x),c)},addVisit:g=>{a(x=>[g,...x])},removeVisit:g=>{a(x=>x.filter(b=>!Fo(b,g)))},revertVisitEdit:(g,x)=>{a(b=>b.map(w=>w===x?g:w)),n(b=>b===x?g:b)}}}const Zb=e=>`${e.year.padStart(4,"0")}-${e.month.padStart(2,"0")}-${e.day.padStart(2,"0")} ${e.hour.padStart(2,"0")}:${e.minute.padStart(2,"0")}`,mn=e=>[...e].sort((t,a)=>{const o=Zb(t),n=Zb(a);return o<n?-1:o>n?1:0}),T7={year:"",month:"",day:"",hour:"09",minute:"00",memo:""};function Xb(e,t=[]){const a=s.useMemo(()=>mn(t),[t]),{list:o,setList:n,selected:i,setSelected:l,isEditing:c,setIsEditing:u,editForm:d,setEditForm:h,openDetail:p,commitEdit:m,remove:C}=Yb(T7,a),[v,f]=s.useState([]),{year:g,month:x,day:b}=Cr(),[w,_]=s.useState({year:g,month:x,day:b,hour:"09",minute:"00",memo:""}),A=W=>L=>_(M=>({...M,[W]:L})),y=W=>{n(q=>mn([...q,w]));const{year:L,month:M,day:z}=Cr();_({year:L,month:M,day:z,hour:"09",minute:"00",memo:""}),W?.()},B=()=>{m(W=>mn(W.map(L=>i!=null&&Fo(L,i)?d:L)),d)},k=s.useCallback(W=>{C(W)},[C]),S=s.useCallback(W=>{e({year:W.year,month:W.month,day:W.day,hour:W.hour,minute:W.minute,memo:W.memo,...W.id!=null?{id:W.id}:{}}),C(W)},[e,C]),E=s.useCallback(W=>{n(L=>L.filter(M=>!Fo(M,W))),f(L=>[W,...L]),l(null)},[n,l]),D=s.useCallback(W=>{n(L=>mn([...L,W]))},[n]),I=s.useCallback(W=>{n(L=>L.filter(M=>!Fo(M,W)))},[n]),j=s.useCallback((W,L)=>{n(M=>mn(M.map(z=>z===L?W:z))),l(M=>M===L?W:M)},[n,l]);return{scheduleList:o,noShowList:v,addSchedule:D,removeSchedule:I,revertScheduleEdit:j,scheduleForm:w,setScheduleForm:_,setSchedule:A,selectedSchedule:i,setSelectedSchedule:l,isEditingSchedule:c,setIsEditingSchedule:u,editScheduleForm:d,setEditScheduleForm:h,openScheduleDetail:p,handleScheduleSave:y,handleScheduleEditSave:B,handleScheduleDelete:k,handleScheduleToVisit:S,handleScheduleNoVisit:E}}const bn=[{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 Jb(e){const{t}=_e.useTranslation(),[a,o]=s.useState(""),[n,i]=s.useState("25"),[l,c]=s.useState("all"),[u,d]=s.useState(1),h=s.useMemo(()=>e.filter(({item:f,status:g})=>!(a&&!f.memo.includes(a)||l!=="all"&&g!==l)),[e,a,l]),p=Math.max(1,Math.ceil(h.length/Number(n))),m=Math.min(u,p),C=s.useMemo(()=>h.slice((m-1)*Number(n),m*Number(n)),[h,m,n]),v=s.useMemo(()=>bn.map(f=>({...f,label:t("common.pageSizeLabel",{n:f.value,defaultValue:f.label})})),[t]);return{vapSearch:a,setVapSearch:o,vapPageSize:n,setVapPageSize:i,vapPageSizeOptions:v,vapStatus:l,setVapStatus:c,vapPage:m,setVapPage:d,vapFiltered:h,vapTotal:p,vapPageItems:C}}const j7=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function ma(e,t){return j7().compare(e,t)}const wi=new Map;function L7(e){const t=wi.get(e);if(t)return t;const a=[],o=/-?\d+(?:\.\d+)?/g;let n=0;for(let i=o.exec(e);i;i=o.exec(e)){let l=i.index,c=i[0];c[0]==="-"&&l>0&&!/\s/.test(e[l-1])&&(l+=1,c=c.slice(1)),l>n&&a.push(e.slice(n,l)),a.push(Number(c)),n=i.index+i[0].length}return n<e.length&&a.push(e.slice(n)),wi.size>5e3&&wi.clear(),wi.set(e,a),a}function M7(e){if(!/^[\d\s-]+$/.test(e))return null;const t=e.replace(/\D/g,"");return t.length<9||t.length>11?null:t[0]==="0"||t[0]==="1"&&e!==t?t:null}function $7(e,t){const a=d=>d==null||typeof d=="number"&&Number.isNaN(d)?"":String(d).trim(),o=a(e),n=a(t);if(o===n)return 0;const i=(d,h)=>{if(typeof d=="number"&&!Number.isNaN(d))return[d];const p=M7(h);return p!==null?[p]:L7(h)},l=i(e,o),c=i(t,n),u=Math.min(l.length,c.length);for(let d=0;d<u;d++){const h=l[d],p=c[d];if(typeof h=="number"&&typeof p=="number"){if(h!==p)return h-p;continue}if(typeof h=="number")return-1;if(typeof p=="number")return 1;const m=ma(h,p);if(m!==0)return m}return l.length!==c.length?l.length-c.length:ma(o,n)}const Qb=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function pu(e,t,a){const o=Qb(e),n=Qb(t);if(o||n)return o===n?0:o?1:-1;const i=$7(e,t);return a?i:-i}function hu(e,t,a){const{t:o}=_e.useTranslation(),[n,i]=s.useState(()=>{const v=a?.initialPageSize;return v&&bn.some(f=>f.value===v)?v:"25"}),[l,c]=s.useState(1),[u,d]=s.useState(t);Object.is(u,t)||(d(t),l!==1&&c(1));const h=s.useMemo(()=>bn.map(v=>({...v,label:o("visits.showN",{n:v.value})})),[o]),p=s.useCallback(v=>{i(v),c(1)},[]),m=Math.max(1,Math.ceil(e.length/Number(n)));(l>m||l<1||!Number.isFinite(l))&&c(Math.min(Math.max(1,Number.isFinite(l)?l:1),m));const C=Math.min(Math.max(1,Number.isFinite(l)?l:1),m);return{pageRows:s.useMemo(()=>e.slice((C-1)*Number(n),C*Number(n)),[e,C,n]),pageSizeProps:{options:h,value:n,onChange:p},paginationProps:{page:C,total:m,onChange:c},setPage:c}}function mu(e){const[t,a]=s.useState(null),o=s.useRef(t),n=s.useRef(e?.onSortChange);n.current=e?.onSortChange;const i=s.useCallback(u=>{const d=o.current,h=d?.key===u?{key:u,asc:!d.asc}:{key:u,asc:!0};o.current=h,a(h),n.current?.(h)},[]),l=s.useCallback((u,d)=>({label:u,sortDir:t?.key===d?t.asc?"asc":"desc":null,onClick:()=>i(d)}),[t,i]),c=s.useCallback((u,d)=>{if(!t)return u;const{key:h,asc:p}=t;return[...u].sort((m,C)=>pu(d(m,h),d(C,h),p))},[t]);return{\uC815\uB82C:t,\uCE78:l,sortRows:c}}const eg=e=>e==="\uC88C"||e==="\uC6B0"?e:null;function tg(){const[e,t]=s.useState(!1),[a,o]=s.useState("\uC88C"),[n,i]=s.useState({\uC88C:null,\uC6B0:null}),[l,c]=s.useState({\uC88C:[],\uC6B0:[]}),[u,d]=s.useState(!1),[h,p]=s.useState("\uC88C"),m=s.useCallback(v=>{const f=eg(v.direction);f&&(i(g=>({...g,[f]:v})),c(g=>({...g,[f]:[v,...g[f]]})),t(!1))},[]),C=s.useCallback(v=>{const f=eg(v.direction);f&&(i(g=>({...g,[f]:v})),d(!1))},[]);return{showDevice:e,setShowDevice:t,deviceDirection:a,setDeviceDirection:o,devices:n,setDevices:i,deviceHistory:l,setDeviceHistory:c,showDeviceList:u,setShowDeviceList:d,listForSide:h,setListForSide:p,handleDeviceSubmit:m,handleSelectFromList:C}}const jt="\uC804\uCCB4";function bu(){const{t:e}=_e.useTranslation();return s.useMemo(()=>({difficulty:e("wordSearch.filter.difficulty","\uB4F1\uAE09"),syllables:e("wordSearch.filter.syllables","\uC74C\uC808 \uC218"),syllable5plus:e("wordSearch.filter.syllable5plus","5\uC74C\uC808 \uC774\uC0C1"),partOfSpeech:e("wordSearch.filter.partOfSpeech","\uD488\uC0AC"),wordType:e("wordSearch.filter.wordType","\uC720\uD615"),posMap:{[e("wordSearch.filter.pos.noun","\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)")]:["\uBA85","\uC218"],[e("wordSearch.filter.pos.verb","\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)")]:["\uB3D9","\uD615"],[e("wordSearch.filter.pos.modifier","\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)")]:["\uBD80","\uAD00"]},typeMap:{[e("wordSearch.filter.type.native","\uACE0\uC720\uC5B4")]:"\uACE0\uC720",[e("wordSearch.filter.type.sino","\uD55C\uC790\uC5B4")]:"\uD55C\uC790",[e("wordSearch.filter.type.foreign","\uC678\uB798\uC5B4")]:"\uC678\uB798",[e("wordSearch.filter.type.mixed","\uD63C\uC885\uC5B4")]:"\uD63C\uC885"}}),[e])}function gu(e,t,a){return{label:t.difficulty,items:[...[1,2,3,4].map(o=>e("wordSearch.filter.grade",{n:o})),e("wordSearch.filter.gradeNone","\uC5C6\uC74C")],multiple:!0,allOption:!0,allLabel:a?.allLabel,labelAction:a?.labelAction,labelInfo:a?.labelInfo}}function fu(e){return{label:e.partOfSpeech,items:Object.keys(e.posMap),multiple:!0,allOption:!0}}function vu(e){return{label:e.wordType,items:Object.keys(e.typeMap),multiple:!0,allOption:!0}}function ag(e,t){return{label:t.syllables,items:[e("wordSearch.filter.syllable",{n:1}),e("wordSearch.filter.syllable",{n:2}),e("wordSearch.filter.syllable",{n:3}),e("wordSearch.filter.syllable",{n:4}),t.syllable5plus],multiple:!0,allOption:!0}}function og(e,t){const a=[e("wordPairs.filter.onlyHasImage","\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC")];return t?.includeStructure&&a.push(e("wordPairs.filter.onlySameStructure","\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC")),{label:e("wordPairs.filter.selectLabel","\uC120\uD0DD"),items:a,multiple:!0,labelAction:t?.labelAction,labelInfo:t?.labelInfo}}function rg(e,t){const{label:a,headValue:o,midValue:n,tailValue:i,includeMid:l=!0,headDisabled:c,midDisabled:u,tailDisabled:d,allOptionDisabled:h,groupLabel:p,labelAction:m}=t;return{label:a,...p?{groupLabel:p}:{},...m?{labelAction:m}:{},allOption:!0,allLabel:e("wordSearch.filter.positionAny",{defaultValue:"\uBB34\uAD00"}),...h?{allOptionDisabled:h}:{},items:[{value:o,displayLabel:e("wordSearch.filter.positionHead",{defaultValue:"\uC5B4\uB450"}),disabled:c},...l?[{value:n,displayLabel:e("wordSearch.filter.positionMid",{defaultValue:"\uC5B4\uC911"}),disabled:u}]:[],{value:i,displayLabel:e("wordSearch.filter.positionTail",{defaultValue:"\uC5B4\uB9D0"}),disabled:d}]}}function ng(e,t,a){const o=un(a),n=o&&t!==jt?zo(o,t):null;if(o&&(t===jt||n)){const c={},u={};for(const[C,v]of Object.entries(e))(un(C)===o?u:c)[C]=v;if(t===jt)return c;const d=ui(u)[o]??[],h=d.includes(n)?d.filter(C=>C!==n):[...d,n];if(h.length===0)return c;const p=di({[o]:h},y3(a)),m=Object.values(p)[0]??[];return{...c,[a]:m}}if(t===jt){const{[a]:c,...u}=e;return u}const i=e[a]??[],l=i.includes(t)?i.filter(c=>c!==t):[...i,t];if(l.length===0){const{[a]:c,...u}=e;return u}return{...e,[a]:l}}Object.fromEntries(Object.entries(qs).map(([e,{nucleus:t}])=>[e,t]));const R7={\uACE0\uC720\uC5B4:"\uACE0\uC720",\uD55C\uC790\uC5B4:"\uD55C\uC790",\uC678\uB798\uC5B4:"\uC678\uB798",\uD63C\uC885\uC5B4:"\uD63C\uC885"},P7={"\uCCB4\uC5B8(\uBA85\uC0AC,\uC218\uC0AC)":["\uBA85","\uC218"],"\uC6A9\uC5B8(\uB3D9\uC0AC,\uD615\uC6A9\uC0AC)":["\uB3D9","\uD615"],"\uC218\uC2DD\uC5B8(\uBD80\uC0AC,\uAD00\uD615\uC0AC)":["\uBD80","\uAD00"]},z7={difficulty:"\uB09C\uC774\uB3C4 \uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218",syllable5plus:"5\uC74C\uC808 \uC774\uC0C1",partOfSpeech:"\uD488\uC0AC",wordType:"\uC720\uD615",posMap:P7,typeMap:R7},ig=new WeakMap;function I7(e,t){const a=ig.get(e);if(a&&a.keys===t)return a.\uAC12;const o={grades:[],syls:[],poses:[],types:[]},n={grade:o.grades,syllables:o.syls,pos:o.poses,wordType:o.types};for(const[i,l]of Object.entries(e??{})){const c=i===t.difficulty?"grade":i===t.syllables?"syllables":i===t.partOfSpeech?"pos":i===t.wordType?"wordType":un(i);if(c)for(const u of Array.isArray(l)?l:typeof l=="string"?[l]:[])n[c].includes(u)||n[c].push(u)}return ig.set(e,{keys:t,\uAC12:o}),o}function O7(e,t,a=z7){const{grades:o,syls:n,poses:i,types:l}=I7(t,a);if(o.length){const c=o.map(u=>zo("grade",u)??u.replace(/\D/g,"")).filter(u=>u!=="");if(c.length===0||!mc(c,e.grade))return!1}if(n.length){const c=e.syllables??0;if(!n.some(u=>{const d=u===a.syllable5plus?"5+":zo("syllables",u);return d==="5+"?c>=5:c===parseInt(d??u)}))return!1}return!(i.length&&!i.flatMap(c=>a.posMap[c]??g3[zo("pos",c)??""]??[c]).some(c=>(e.pos??"").includes(c))||l.length&&!l.some(c=>e.wordType===(a.typeMap[c]??f3[zo("wordType",c)??""])))}const F7={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"})},H7={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"})},V7={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 sg(e,t){if("place"in t)return F7[t.place](e);const a=H7[t.vowel](e);return t.glide?`${a} \xB7 ${V7[t.glide](e)}`:a}const W7=(e,{defaultValue:t})=>t,lg=(e,t)=>({jamos:e,phonetic:t,tooltip:sg(W7,t)}),eo=(e,t)=>t.map(a=>lg([a],{place:e})),Vt=(e,t,a)=>lg([...e],a?{vowel:t,glide:a}:{vowel:t}),Cu={cho:[eo("labial",["\u3142","\u3143","\u314D","\u3141"]),eo("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),eo("alveolar",["\u3145","\u3146"]),eo("palatal",["\u3148","\u3149","\u314A"]),eo("velar",["\u3131","\u3132","\u314B"]),eo("glottal",["\u314E"])],jung:[[Vt("\u3163","frontHigh"),Vt("\u315F","frontHigh","w"),Vt("\u3162","frontHigh","velar")],[Vt("\u3161","backHighUnrounded")],[Vt("\u315C","backHighRounded"),Vt("\u3160","backHighRounded","j")],[Vt("\u3154\u3150","frontMid"),Vt("\u3156\u3152","frontMid","j"),Vt("\u3159\u315A\u315E","frontMid","w")],[Vt("\u3153","backMidUnrounded"),Vt("\u3155","backMidUnrounded","j"),Vt("\u315D","backMidUnrounded","w")],[Vt("\u3157","backMidRounded"),Vt("\u315B","backMidRounded","j")],[Vt("\u314F","low"),Vt("\u3151","low","j"),Vt("\u3158","low","w")]],jong:[eo("labial",["\u3142","\u3141"]),eo("alveolar",["\u3137","\u3134","\u3139"]),eo("velar",["\u3131","\u3147"])]},G7=[...pt],U7=[...yt],q7=Pt.filter(e=>e!==""),Fa=e=>e===Da?[]:Array.from(e),Da="__NO_CODA__",cg=[1,2,3,4],Na=5,Y7=12,ug="SYL_",xu=e=>`${ug}${e}`,K7=e=>Number(e.slice(ug.length));function ki(e){return e>=Na?Array.from({length:Y7-Na+1},(t,a)=>Na+a):[e]}const dg={cho:G7,jung:U7,jong:q7},_u=e=>e.map(t=>t.map(({jamos:a,phonetic:o,tooltip:n})=>({v:a.join(""),phonetic:o,tooltip:n}))),yu={cho:_u(Cu.cho),jung:_u(Cu.jung),jong:_u(Cu.jong)},pg={};yu.jung.flat().forEach(({v:e})=>{for(const t of Fa(e))pg[t]=e});const Z7=new Set(yu.cho.flat().map(e=>e.v));function wu(e,t){return e==="cho"?Z7.has(t)?t:null:e==="jung"?pg[t]??t:To(t)}function ku(e,t,a){if(e==="jung"){const o=Fa(t);return a&&o.includes(a)?a:o[0]??t}return e==="jong"&&a&&To(a)===t?a:t}function Bu(e,t,a,o){const n=(i,l)=>l?i==="jong"&&l===Da?Da:t==="pron"?wu(i,l):ku(i,l,i==="jung"?a:i==="jong"?o:null):null;return{...e,cho:n("cho",e.cho),jung:n("jung",e.jung),jong:n("jong",e.jong)}}const Bi={cho:null,jung:null,jong:null,syllable:null},Au=e=>Array.isArray(e)?e.filter(d3):[],X7="wt_filter",hg=e=>`wt_filter_${e}`,Su=["noun","verb","modifier"],Eu=["native","sino","foreign","mixed"];function mg(e,t,a,o,n){if(!Array.isArray(e))return[];const i=[];for(const l of e){if(typeof l!="string")continue;const c=t.includes(l)?l:t.find(u=>n.some(d=>o(d,a(u))===l));c&&!i.includes(c)&&i.push(c)}return i}function bg(e){try{const t=localStorage.getItem(hg(e))??localStorage.getItem(X7);if(t)return JSON.parse(t)}catch{}return null}function gg(e){const t=e?.phonemeView;return t==="pron"?"pron":t==="direct"?"direct":"char"}function J7(e){const t=e;return t?.composition?{cho:t.composition.cho??null,jung:t.composition.jung??null,jong:t.composition.jong??null,syllable:t.composition.syllable??null}:t?.choseong?{...Bi,cho:t.choseong}:Bi}const fg=["1\uB4F1\uAE09 : \uD559\uB839\uC804\uAE30\uC5D0 \uC2B5\uB4DD\uD558\uC5EC \uD3C9\uC0DD\uC5D0 \uAC78\uCCD0 \uC77C\uC0C1 \uC5B8\uC5B4\uC0DD\uD65C\uC744 \uD558\uB294 \uB370 \uC0AC\uC6A9\uB418\uB294 \uC5B4\uD718","2\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 1-2\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","3\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 3-4\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","4\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 5-6\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","\uB4F1\uAE09\uC5C6\uC74C : \uAD6D\uB9BD\uAD6D\uC5B4\uC6D0 \uD45C\uC900 \uC5B4\uD718 \uC678 \uACE0\uBE48\uB3C4 \uC0DD\uD65C \uC5B4\uD718, \uC2E0\uC870\uC5B4 \uBC0F \uC678\uB798\uC5B4"];function Du(e){const t=e("wordPairs.filter.difficultyInfo",{returnObjects:!0,defaultValue:fg});return Array.isArray(t)&&t.length>0&&t.every(a=>typeof a=="string")?t:fg}function vg(e,t,a){const{t:o,i18n:n}=_e.useTranslation(),[i]=s.useState(()=>a?.resetOnMount?null:bg(e)),[l,c]=s.useState(gg(i)),[u,d]=s.useState(()=>J7(i)),h=s.useCallback(()=>t.requireSyllable?{cho:"\u3131",jung:"\u314F",jong:Da,syllable:t.fixedSyllable??null}:{cho:null,jung:null,jong:t.fixedNoCoda?Da:null,syllable:t.fixedSyllable??null},[t.requireSyllable,t.fixedSyllable,t.fixedNoCoda]);s.useEffect(()=>{!t.requireSyllable&&t.fixedSyllable==null&&!t.fixedNoCoda||d(G=>G.cho||G.jung||G.syllable!=null||G.jong?G:h())},[]);const p=s.useMemo(()=>zt(u.cho)||zt(u.jung)||zt(u.jong)?"count":"random",[u.cho,u.jung,u.jong]),m=s.useRef(l==="char"?u.jung:null),C=s.useRef(l==="char"?u.jong:null);s.useEffect(()=>{l==="char"&&(m.current=u.jung,C.current=u.jong)},[l,u.jung,u.jong]);const[v,f]=s.useState(a?.resetOnMount?!!a?.defaultImageOnly:i?.excludeNoImage??!0),[g,x]=s.useState(a?.resetOnMount?!1:i?.sameStructureOnly??!0),[b,w]=s.useState(Au(i?.gradeFilter)),_=Array.from(new Set([n.language,"ko","en"].filter(Boolean))),A=(G,oe)=>n.getFixedT(G)(oe),y=G=>mg(G,Su,oe=>`wordSearch.filter.pos.${oe}`,A,_),B=G=>mg(G,Eu,oe=>`wordSearch.filter.type.${oe}`,A,_),[k,S]=s.useState(()=>y(i?.posFilter)),[E,D]=s.useState(()=>B(i?.wordTypeFilter)),I=s.useRef(a?.resetKey);s.useEffect(()=>{I.current!==a?.resetKey&&(I.current=a?.resetKey,d(h()),f(!!a?.defaultImageOnly),x(!1),w([]),S([]),D([]))},[a?.resetKey]);const j=bu(),W=s.useMemo(()=>Object.keys(j.posMap),[j]),L=s.useMemo(()=>Object.keys(j.typeMap),[j]),M=s.useMemo(()=>k.map(G=>W[Su.indexOf(G)]).filter(Boolean),[k,W]),z=s.useMemo(()=>E.map(G=>L[Eu.indexOf(G)]).filter(Boolean),[E,L]),[q,Y]=s.useState({cho:new Set,jung:new Set,jong:new Set,syllable:new Set}),[P,V]=s.useState(!1),[$,U]=s.useState(null),T=1,F=Math.max(1,[u.cho,u.jung,u.jong].filter(Boolean).length),[N,O]=s.useState(e);s.useEffect(()=>{if(N!==e){if(!a?.resetOnMount){const G=bg(e);d(G?.composition??h()),f(G?.excludeNoImage??!0),x(G?.sameStructureOnly??!0),c(gg(G)),w(Au(G?.gradeFilter)),S(y(G?.posFilter)),D(B(G?.wordTypeFilter))}O(e)}},[e,N,a?.resetOnMount]),s.useEffect(()=>{if(!a?.resetOnMount&&N===e)try{localStorage.setItem(hg(e),JSON.stringify({contrastCount:F,composition:u,excludeNoImage:v,sameStructureOnly:g,phonemeView:l,gradeFilter:b,posFilter:k,wordTypeFilter:E}))}catch{}},[a?.resetOnMount,e,N,F,u,v,g,l,b,k,E]);const[H,Z]=s.useState(0);hn("wordpool:update",()=>Z(G=>G+1));const te=s.useRef(n.language);s.useEffect(()=>{te.current!==n.language&&(te.current=n.language,Z(G=>G+1))},[n.language]),s.useEffect(()=>{if(!t.choseong)return;let G=!1;return Y3({difficulty:p,excludeNoImage:v}).then(oe=>{G||(Y(oe),oe.cho.size+oe.jung.size+oe.jong.size>0&&V(!0))}).catch(()=>{G||Y({cho:new Set,jung:new Set,jong:new Set,syllable:new Set})}),()=>{G=!0}},[t.choseong,p,v,H]),s.useEffect(()=>{let G=!1;const oe=u,me=oe.cho?Fa(oe.cho):null,Te=oe.jung?Fa(oe.jung):null,ke=oe.jong===Da,Pe=ke?null:oe.jong?Fa(oe.jong):null,He=oe.syllable!=null?ki(oe.syllable):null,lt=!!(me||Te||Pe||ke||He);return q3({difficulty:t.difficulty?p:null,contrastCount:t.difficulty?F:1,composition:t.choseong&<?{cho:me,jung:Te,jong:Pe,jongNone:ke,syllable:He}:null,excludeNoImage:v,sameStructureOnly:g,phonemeView:l==="pron"?"pron":"char",grade:b.length>0?b:null}).then(rt=>{G||U(rt)}).catch(()=>{G||U(null)}),()=>{G=!0}},[t.choseong,t.difficulty,p,F,u,l,v,g,H,b]),s.useEffect(()=>{P&&d(G=>{const oe={...G};let me=!1;return["cho","jung","jong"].forEach(Te=>{const ke=G[Te];!ke||ke===Da||Fa(ke).some(Pe=>q[Te].has(Pe))||(oe[Te]=null,me=!0)}),G.syllable!=null&&t.fixedSyllable==null&&(G.syllable>=Na?[...q.syllable].some(Te=>Te>=Na)||(oe.syllable=null,me=!0):(!q.syllable.has(G.syllable)||G.syllable<T)&&(oe.syllable=null,me=!0)),me?oe:G})},[q,P,T,t.fixedSyllable]);const se=s.useMemo(()=>{const G=oe=>{const me=new Set;for(const Te of dg[oe])q[oe].has(Te)&&me.add(Te);return me};return{cho:G("cho"),jung:G("jung"),jong:G("jong")}},[q]),be=s.useMemo(()=>({exact:new Set(cg.filter(G=>q.syllable.has(G))),min:[...q.syllable].some(G=>G>=Na)}),[q]),X=s.useMemo(()=>({composition:o("wordPairs.composition","\uC815\uB2F5 \uB2E8\uC5B4 \uAD6C\uC131"),syllableCount:o("wordPairs.syllableCount","\uC74C\uC808 \uC218"),onset:o("wordPairs.onset","\uCD08\uC131"),vowel:o("wordPairs.vowel","\uBAA8\uC74C"),coda:o("wordPairs.coda","\uC885\uC131"),phonemeGroup:o("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),trainOnset:o("training.filter.trainOnset",{defaultValue:"\uCD08\uC131"}),trainVowel:o("training.filter.trainVowel",{defaultValue:"\uBAA8\uC74C"}),trainCoda:o("training.filter.trainCoda",{defaultValue:"\uC885\uC131"}),random:o("training.filter.random","\uBB34\uC791\uC704"),exclude:o("wordSearch.filter.exclude","\uC81C\uC678"),selectLabel:o("training.filter.selectSection",{defaultValue:"\uC120\uD0DD"}),none:o("common.none","\uC5C6\uC74C"),noImage:o("wordSearch.filter.excludeNoImage","\uC774\uBBF8\uC9C0 \uC5C6\uC74C"),excludeImage:o("training.filter.excludeImage",{defaultValue:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC"}),sameStructure:o("training.filter.sameStructure",{defaultValue:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"}),noLimit:o("training.filter.noLimit",{defaultValue:"\uBB34\uAD00"}),codaExclude:o("training.filter.codaExclude",{defaultValue:"\uC81C\uC678"}),gradeLabel:o("training.filter.gradeLabel",{defaultValue:"\uB09C\uC774\uB3C4 \uB4F1\uAE09"})}),[o]),re=s.useMemo(()=>({[X.trainOnset]:"cho",[X.trainVowel]:"jung",[X.trainCoda]:"jong"}),[X]),Ae=s.useCallback((G,oe)=>({title:oe,items:G}),[]),K=s.useMemo(()=>[o("training.filter.excludeImageInfo",{defaultValue:"\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."}),o("training.filter.sameStructureInfo",{defaultValue:"\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."})],[o]),ie=s.useMemo(()=>{const G=[];if(t.choseong){const oe={value:Da,displayLabel:X.codaExclude},me=t.fixedNoCoda===!0,Te=(ke,Pe)=>{const He=me&&ke==="jong",lt={label:Pe,groupLabel:X.phonemeGroup,allOption:!t.requireSyllable,allLabel:X.noLimit,allOptionDisabled:He};if(l==="pron"){const at=yu[ke].map(ht=>ht.map(({v:De,phonetic:Ue})=>{const Se=Fa(De),Ye=sg(o,Ue),ee=He||!Se.some(pe=>q[ke].has(pe));return Se.length>1?{value:De,labels:Se,tooltip:Ye,disabled:ee}:{value:De,tooltip:Ye,disabled:ee}}));return ke==="jong"&&!t.requireCoda&&at.unshift([oe]),{...lt,groups:at}}const rt=dg[ke].map(at=>!He&&se[ke].has(at)?at:{value:at,disabled:!0});return{...lt,items:ke==="jong"&&!t.requireCoda?[oe,...rt]:rt}};G.push(Te("cho",X.trainOnset)),G.push(Te("jung",X.trainVowel)),G.push(Te("jong",X.trainCoda))}if(G.push({...gu(o,j,{labelInfo:Ae(Du(o))}),label:X.gradeLabel}),t.partOfSpeech&&G.push(fu(j)),t.wordType&&G.push(vu(j)),t.choseong||t.fixedSyllable!=null){const oe=t.fixedSyllable;G.push({label:X.syllableCount,items:[...cg.map(me=>({value:xu(me),displayLabel:o("wordPairs.syllableN",{n:me,defaultValue:"{{n}}\uC74C\uC808"}),disabled:oe!=null?me!==oe:!be.exact.has(me)||me<T})),{value:xu(Na),displayLabel:o("wordPairs.syllableNPlus",{n:Na,defaultValue:"{{n}}\uC74C\uC808 \uC774\uC0C1"}),disabled:oe!=null?Na!==oe:!be.min}],allOption:!0,allOptionDisabled:oe!=null})}return t.choseong?G.push({label:X.exclude,displayLabel:X.selectLabel,multiple:!0,items:[X.excludeImage,X.sameStructure],labelInfo:Ae(K)}):G.push({label:X.exclude,displayLabel:X.selectLabel,multiple:!0,items:[X.excludeImage],labelInfo:Ae([K[0]])}),G},[t.choseong,t.partOfSpeech,t.wordType,t.requireSyllable,t.fixedSyllable,t.fixedNoCoda,t.requireCoda,T,se,q,l,be,X,o,Ae,K,j]),ue={...(t.choseong||t.fixedSyllable!=null)&&u.syllable!=null?{[X.syllableCount]:xu(u.syllable)}:{},...t.choseong&&u.cho?{[X.trainOnset]:u.cho}:{},...t.choseong&&u.jung?{[X.trainVowel]:u.jung}:{},...t.choseong&&u.jong?{[X.trainCoda]:u.jong}:{},[X.exclude]:[...v?[X.excludeImage]:[],...g?[X.sameStructure]:[]],[X.gradeLabel]:b.map(G=>x3("grade",G)),...t.partOfSpeech?{[j.partOfSpeech]:M}:{},...t.wordType?{[j.wordType]:z}:{}},je=s.useCallback((G,oe)=>{if(oe===X.exclude)G===X.excludeImage?f(me=>!me):G===X.sameStructure&&x(me=>!me);else if(oe===X.syllableCount)d(me=>{if(!G||G===jt)return{...me,syllable:null};const Te=K7(G);return{...me,syllable:me.syllable===Te?null:Te}});else if(oe===X.gradeLabel){if(!G||G===jt){w([]);return}const me=zo("grade",G);if(me==null)return;w(Te=>Te.includes(me)?Te.filter(ke=>ke!==me):[...Te,me])}else if(oe===j.partOfSpeech){if(!G||G===jt){S([]);return}const me=Su[W.indexOf(G)]??y([G])[0];if(!me)return;S(Te=>Te.includes(me)?Te.filter(ke=>ke!==me):[...Te,me])}else if(oe===j.wordType){if(!G||G===jt){D([]);return}const me=Eu[L.indexOf(G)]??B([G])[0];if(!me)return;D(Te=>Te.includes(me)?Te.filter(ke=>ke!==me):[...Te,me])}else{const me=re[oe];if(!me)return;d(Te=>t.requireSyllable?G&&G!==jt?{...Te,[me]:G}:Te:!G||G===jt||Te[me]===G?{...Te,[me]:null}:{...Te,[me]:G})}},[X,re,j,W,L,t.requireSyllable]),ye=s.useCallback(G=>!t.partOfSpeech&&!t.wordType?!0:O7(G,{...t.partOfSpeech?{[j.partOfSpeech]:M}:{},...t.wordType?{[j.wordType]:z}:{}},j),[t.partOfSpeech,t.wordType,M,z,j]),le=s.useCallback(G=>{G!==l&&(G!=="direct"&&l!=="direct"&&d(oe=>Bu(oe,G,m.current,C.current)),c(G))},[l]),he=s.useCallback(()=>({composition:u,contrastCount:F,excludeNoImage:v,sameStructureOnly:g,phonemeView:l,gradeFilter:b,posFilter:k,wordTypeFilter:E}),[u,F,v,g,l,b,k,E]),ve=s.useCallback(G=>{d(G.composition),f(G.excludeNoImage),x(G.sameStructureOnly??!0),c(G.phonemeView),w(Au(G.gradeFilter)),Array.isArray(G.posFilter)&&S(y(G.posFilter)),Array.isArray(G.wordTypeFilter)&&D(B(G.wordTypeFilter))},[]);return{difficulty:p,contrastCount:F,composition:u,choseong:u.cho,excludeNoImage:v,sameStructureOnly:g,gradeFilter:b,posFilter:M,wordTypeFilter:z,matchesWordAttributes:ye,poolVersion:H,filterSections:ie,filterSelected:ue,handleFilterSelect:je,phonemeView:l,setPhonemeView:le,phonemeGroupLabel:X.phonemeGroup,wordCount:$,getFilterSnapshot:he,restoreFilterSnapshot:ve}}function Q7(e){const t=c=>c?Fa(c):null,a=t(e.cho),o=t(e.jung),n=e.jong===Da,i=n?null:t(e.jong),l=e.syllable!=null?ki(e.syllable):null;return!a&&!o&&!i&&!n&&!l?null:{cho:a,jung:o,jong:i,jongNone:n,syllable:l}}function Cg(e,t,a,o,n,i,l=!0,c="char",u=[]){const[d,h]=s.useState({}),[p,m]=s.useState(!1),{cho:C=null,jung:v=null,jong:f=null,syllable:g=null}=o??{},x=u.length>0?u.slice().sort().join(","):"",b=e.map(_=>_.key).join("|");s.useEffect(()=>{i>0&&U3(n).catch(()=>{})},[i,n]),s.useEffect(()=>{let _=!1;return m(!0),(async()=>{const A=Q7({cho:C,jung:v,jong:f,syllable:g}),y=`${C??""}_${v??""}_${f??""}_${g??""}_${x}`,B={};await Promise.all(e.map(async k=>{const S=sr[k.key];try{const E=await pb(k.key,{difficulty:S.difficulty?t:null,contrastCount:S.difficulty?a:1,composition:S.choseong?A:null,count:5,excludeNoImage:n,sameStructureOnly:l,phonemeView:c,grade:u.length>0?u:null});E&&E.length>0?B[k.key]={id:`wt-${k.key}-${t}-${y}-${Date.now()}`,name:k.label,training_type:k.key,category_main_code:"WORD",iconColor:k.color,subTitle:k.subTitle,items:E,itemCount:E.length}:B[k.key]={id:`wt-${k.key}-empty`,name:k.label,training_type:k.key,category_main_code:"WORD",iconColor:k.color,subTitle:k.subTitle,items:[],itemCount:0,__empty:!0}}catch{B[k.key]=null}})),_||(h(B),m(!1))})(),()=>{_=!0}},[t,a,C,v,f,g,n,l,c,i,x,b]);const w=JSON.stringify(e.map(_=>[_.key,_.label,_.color,_.subTitle]));return{perTypeData:s.useMemo(()=>{const _={};for(const[A,y]of Object.entries(d)){const B=e.find(k=>k.key===A);_[A]=y&&B?{...y,name:B.label,iconColor:B.color,subTitle:B.subTitle}:y}return _},[d,w]),generating:p}}function xg(e){let t=2166136261;for(let a=0;a<e.length;a++)t^=e.charCodeAt(a),t=Math.imul(t,16777619);return t>>>0}function ek(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let a=Math.imul(t^t>>>15,1|t);return a=a+Math.imul(a^a>>>7,61|a)^a,((a^a>>>14)>>>0)/4294967296}}const tk=Aa,ak=e=>{const[t,a,o]=e.split("-").map(Number);return Math.round(Date.UTC(t,(a||1)-1,o||1)/864e5)},ok=(e,t)=>{const a=e??{};return String(a.id??a.name??t)};function Ai(e,t,a,o,n){if(!e.length||t<=0)return[];const i=ek(xg(`${a}|${o}|${n}`)),l=ak(o)&1,c=e.filter((d,h)=>(xg(`${a}|${n}|${ok(d,h)}`)>>>7&1)===l),u=c.length>=t&&e.length-c.length>=t;return tk(u?c:e,t,i)}function Nu(e,t,a){const o=n=>Math.max(0,e[n]||0);return{LISTEN_IN_NOISE:Ai(ho,o("LISTEN_IN_NOISE"),t,a,"LISTEN_IN_NOISE"),SHORT_STORY:Ai(mo,o("SHORT_STORY"),t,a,"SHORT_STORY"),LONG_STORY:Ai(bo,o("LONG_STORY"),t,a,"LONG_STORY"),ORDERING_SENTENCE:Ai(go,o("ORDERING_SENTENCE"),t,a,"ORDERING_SENTENCE")}}function Tu(e){return e?!!(e.LISTEN_IN_NOISE?.length||e.SHORT_STORY?.length||e.LONG_STORY?.length||e.ORDERING_SENTENCE?.length):!1}const rk={LISTEN_IN_NOISE:3,SHORT_STORY:2,LONG_STORY:1,ORDERING_SENTENCE:2};function ju(e=!1,t=rk,a){const o=Ia(Date.now()),n=Ia(Date.now()-864e5),i=a??"";return ho.length>0||mo.length>0||bo.length>0||go.length>0?{today:Nu(t,i,o),yesterday:Nu(t,i,n)}:{today:Nu(t,i,o),yesterday:null}}function _g(e){const t=s.useRef({LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]}),a=s.useRef(null),[o,n]=s.useState(!1),[i,l]=s.useState(!1),[c,u]=s.useState(0),[d,h]=s.useState(!1),[p,m]=s.useState(()=>Ca());s.useEffect(()=>{const v=()=>{const g=Date.now(),x=new Date(g+9*36e5),b=Date.UTC(x.getUTCFullYear(),x.getUTCMonth(),x.getUTCDate()+1)-9*36e5;return Math.max(1e3,b-g+1e3)};let f=setTimeout(function g(){m(Ca()),f=setTimeout(g,v())},v());return()=>clearTimeout(f)},[]),s.useEffect(()=>{let v=!1,f=!1,g=!1,x,b=0,w=null,_=0;const A=40,y=()=>{x!==void 0&&(clearInterval(x),x=void 0)};let B=!1;try{const I=new URLSearchParams(window.location.search),j=I.get("forceRefresh")||I.get("force");B=j==="1"||j==="true"}catch{}const k=I=>{f||(g=!0,t.current=I.today,a.current=I.yesterday,n(!0),h(!0),u(j=>j+1),v=!0,y())},S=async()=>{if(v)return;if(!B){const j=ju(!1,void 0,e);if(Tu(j.today)){k(j);return}}if(w){++b>=A&&E();return}if(b>=_){_=b+8,w=dc(3e3).catch(()=>!1);try{await w}finally{w=null}if(v)return}const I=ju(B,void 0,e);if(Tu(I.today)){k(I);return}++b>=A&&E()};function E(){n(!0),h(!1),v=!0,y()}const D=()=>{if(f||g)return;const I=ju(B,void 0,e);Tu(I.today)&&k(I)};try{window.addEventListener("speechear.data.updated",D)}catch{}return S(),x=setInterval(S,250),()=>{v=!0,f=!0,y();try{window.removeEventListener("speechear.data.updated",D)}catch{}}},[e,p]);const C=s.useCallback(v=>{const f=i?a.current:t.current,g=i?t.current:a.current;return f?.[v]?.length?f[v]:g?.[v]?.length?g[v]:void 0},[i,c]);return{loaded:o,hasData:d,showYesterday:i,setShowYesterday:l,getTrainingPerType:C}}function Lu(e,t=!0){const a=pn(e);s.useEffect(()=>{if(t)return Io(()=>{a.current?.()})},[t,a])}const Si=(e,t)=>`${e}:${t??1}`,Ei=new Map,yg=new Set,wg=new Map,nk=6e4;function kg(e,t){const[a,o]=s.useState(0),n=Array.from(new Set(e.map(i=>Si(i.word,i.homonum)))).sort().join("|");return s.useEffect(()=>{const i=n?n.split("|"):[],l=Date.now(),c=i.filter(h=>!Ei.has(h)&&!yg.has(h)&&!(l-(wg.get(h)??-1/0)<nk));if(c.length===0)return;let u=!1;const d=Array.from(new Set(c.map(h=>h.slice(0,h.lastIndexOf(":")))));return t(d).then(h=>{for(const p of h)p.Meaning&&Ei.set(Si(p.Word,p.Homonum??void 0),p.Meaning);if(h.length>0)for(const p of c)Ei.has(p)||yg.add(p);else{const p=Date.now();for(const m of c)wg.set(m,p)}u||h.length===0||o(p=>p+1)}).catch(()=>{}),()=>{u=!0}},[n,t]),s.useMemo(()=>{const i=n?n.split("|"):[],l=new Map;for(const c of i){const u=Ei.get(c);u!=null&&l.set(c,u)}return l},[n,a])}function Ho(){const[e,t]=s.useState(null),a=s.useCallback(i=>t(i.getBoundingClientRect()),[]),o=s.useCallback(()=>t(null),[]),n=s.useCallback(i=>{const l=i.getBoundingClientRect();t(c=>c?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:o,toggleAt:n}}function Mu(e){const[t,a]=s.useState(null),[o,n]=s.useState(null),i=s.useRef(null);s.useEffect(()=>()=>{i.current&&clearTimeout(i.current)},[]);const l=s.useCallback((u,d)=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{a(u),n(d)},e)},[e]),c=s.useCallback(()=>{i.current&&clearTimeout(i.current),a(null),n(null)},[]);return{payload:t,anchorRect:o,openAfterDelay:l,close:c}}function Bg(e,t,a){const o=Number.isFinite(t)&&t>=1?Math.floor(t):1,n=Math.max(1,Math.ceil(e.length/o)),i=Number.isFinite(a)?Math.min(Math.max(1,Math.floor(a)),n):1;return{pageItems:s.useMemo(()=>e.slice((i-1)*o,i*o),[e,i,o]),totalPages:n,curPage:i}}function $u(e,t){const[a,o]=s.useState(e);a!==e&&(o(e),t(1))}function Ag(e={}){const{defaultPageSize:t="25",resetOn:a}=e,[o,n]=s.useState(""),[i,l]=s.useState(t),[c,u]=s.useState(1),d=Number(t)||25,h=Number(i)||d;return $u([o,i,...a??[]].map(String).join("|"),u),{query:o,setQuery:n,pageSize:i,setPageSize:l,perPage:h,page:c,setPage:u}}function Di(e="warning"){const[t,a]=s.useState(""),[o,n]=s.useState(e),[i,l]=s.useState(0),c=s.useCallback((p,m)=>{n(m),a(p),l(C=>C+1)},[]),u=s.useCallback(p=>c(p,"warning"),[c]),d=s.useCallback(p=>c(p,"normal"),[c]),h=s.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:o,toastKey:i,showToast:c,showWarning:u,showNormal:d,clearToast:h}}const gn={blue:"#60A5FA",green:"#4ADE80",amber:"#FBBF24",purple:"#A78BFA",pink:"#F472B6"},fn=gn.blue,Ni=gn.green,vn=gn.amber,Ti=gn.purple,ik=gn.pink,sk=[{key:"discrimination",label:"\uBCC0\uBCC4\uD6C8\uB828",disc:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0, \uB610\uB294 \uD2B9\uC815 \uC18C\uB9AC\uB97C \uAD6C\uBCC4\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"ear",types:[{key:"SAME_SOUND_PICK",label:"\uAC19\uC740 \uC18C\uB9AC \uACE0\uB974\uAE30",icon:"volume-2",color:fn,subTitle:"\uB4E4\uC740 \uC18C\uB9AC\uC640 \uAC19\uC740 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"SAME_OR_DIFF",label:"\uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0 \uB9DE\uD788\uAE30",icon:"diff",color:fn,subTitle:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0, \uB2E4\uB978\uC9C0 \uAD6C\uBD84\uD558\uC138\uC694."},{key:"HEAR_AND_PICK_SAME",label:"\uC77C\uCE58\uD558\uB294 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"headphones",color:fn,subTitle:"\uB4E4\uC740 \uC18C\uB9AC\uC758 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"HEAR_AND_PICK_INCLUDED",label:"\uD55C \uC74C\uC808 \uD3EC\uD568 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"scan-search",color:fn,subTitle:"\uB4E4\uC740 \uC74C\uC808\uC774 \uD3EC\uD568\uB41C \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"STARTS_WITH_SAME_SOUND",label:"\uCCAB \uC74C\uC808\uC774 \uAC19\uC740 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"play-circle",color:fn,subTitle:"\uB4E4\uC740 \uB2E8\uC5B4\uC640 \uAC19\uC740 \uC18C\uB9AC\uB85C \uC2DC\uC791\uD558\uB294 \uB2E8\uC5B4\uB97C \uACE0\uB974\uC138\uC694."}]},{key:"synthesis",label:"\uD569\uC131\uD6C8\uB828",disc:"\uB450 \uAC1C \uC774\uC0C1\uC758 \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uD569\uCCD0 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"git-merge",types:[{key:"MERGE_2_SYLLABLES",label:"\uC74C\uC808 2\uAC1C \uD569\uCE58\uAE30",icon:"link-2",color:Ni,subTitle:"\uB450 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_3_SYLLABLES",label:"\uC74C\uC808 3\uAC1C \uD569\uCE58\uAE30",icon:"git-merge",color:Ni,subTitle:"\uC138 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_2_PHONEMES",label:"\uC74C\uC18C 2\uAC1C \uD569\uCE58\uAE30",icon:"combine",color:Ni,subTitle:"\uB450 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_3_PHONEMES",label:"\uC74C\uC18C 3\uAC1C \uD569\uCE58\uAE30",icon:"braces",color:Ni,subTitle:"\uC138 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"}]},{key:"deletion",label:"\uD0C8\uB77D\uD6C8\uB828",disc:"\uB2E8\uC5B4\uC5D0\uC11C \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uC81C\uAC70\uD588\uC744 \uB54C \uB0A8\uB294 \uC18C\uB9AC\uB97C \uC778\uC2DD\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"scissors",types:[{key:"DROP_1_FROM_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C 1\uC74C\uC808 \uD0C8\uB77D",icon:"scissors",color:vn,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_1_FROM_3SYLL",label:"3\uC74C\uC808\uC5D0\uC11C 1\uC74C\uC808 \uD0C8\uB77D",icon:"minus-circle",color:vn,subTitle:"3\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_PART_FROM_COMPOUND",label:"\uD569\uC131\uC5B4\uC5D0\uC11C \uBD80\uBD84\uD0C8\uB77D",icon:"unlink",color:vn,subTitle:"\uD569\uC131\uC5B4\uC758 \uC77C\uBD80\uB97C \uBE7C\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_FINAL_CONSONANT_FROM_1SYLL",label:"1\uC74C\uC808\uC5D0\uC11C \uBC1B\uCE68 \uD0C8\uB77D",icon:"eraser",color:vn,subTitle:"\uBC1B\uCE68\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"REMOVE_CONSONANT_AND_IDENTIFY_PHONEME",label:"1\uC74C\uC808\uC5D0\uC11C \uC790\uC74C \uD0C8\uB77D",icon:"audio-lines",color:vn,subTitle:"\uC790\uC74C\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB0A8\uC744\uAE4C\uC694?"}]},{key:"substitution",label:"\uB300\uCE58\uD6C8\uB828",disc:"\uB2E8\uC5B4\uC758 \uC77C\uBD80 \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uBC14\uAFB8\uC5B4 \uC0C8\uB85C\uC6B4 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"replace",types:[{key:"CHANGE_1_SYLL_IN_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",icon:"replace",color:Ti,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_SYLL_IN_3SYLL",label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",icon:"shuffle",color:Ti,subTitle:"3\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_PHONEME_IN_1SYLL",label:"1\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC18C \uBC14\uAFB8\uAE30",icon:"arrow-right-left",color:Ti,subTitle:"1\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_PHONEME_IN_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC18C \uBC14\uAFB8\uAE30",icon:"flip-horizontal",color:Ti,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."}]},{key:"attention",label:"\uCCAD\uAC01\uC801\uC8FC\uC758\uB825\uD6C8\uB828",disc:"\uC5EC\uB7EC \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uC21C\uC11C\uB97C \uAE30\uC5B5\uD558\uB294 \uC8FC\uC758\uB825\uACFC \uB2E8\uAE30 \uAE30\uC5B5 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"list-ordered",types:[{key:"LISTEN_AND_REMEMBER_ORDER",label:"\uB4E3\uACE0 \uC21C\uC11C\uB300\uB85C \uAE30\uC5B5\uD558\uAE30",icon:"list-ordered",color:ik,subTitle:"\uC138 \uB2E8\uC5B4\uB97C \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694."}]}];function Sg(){const{t:e}=_e.useTranslation();return s.useMemo(()=>{const t=Object.fromEntries(Jm(e).map(o=>[o.key,o.label])),a={...t};return sk.flatMap(o=>o.types).forEach(o=>{a[o.key]=e(`trainingType.${o.key}.label`,{defaultValue:o.label})}),{sentence:t,all:a}},[e])}function Cn(e){let t=0;if(e&&typeof window<"u"&&typeof window.getComputedStyle=="function")for(let a=e;a&&a!==document.body&&a!==document.documentElement;a=a.parentElement){const o=parseInt(window.getComputedStyle(a).zIndex,10);!Number.isNaN(o)&&o>t&&(t=o)}return t>0?`max(var(--z-menu, 1500), ${t+1})`:"var(--z-menu, 1500)"}function Vo({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:o}){const[n,i]=s.useState(!1),[l,c]=s.useState({position:"fixed"}),u=s.useRef(null),d=s.useRef(null),h=s.useCallback(()=>{u.current&&c(e(u.current.getBoundingClientRect(),u.current))},[e]);s.useLayoutEffect(()=>{n&&h()},[n,h]),s.useEffect(()=>{if(!n)return;let C=d.current?.offsetHeight??0;C>0&&h();let v=0,f=null;typeof ResizeObserver<"u"&&d.current&&(f=new ResizeObserver(()=>{const B=d.current?.offsetHeight??0;if(B!==C){if(C=B,++v>4){f?.disconnect(),f=null;return}h()}}),f.observe(d.current));const g=B=>{const k=B.target;o&&k.closest?.(o)||u.current?.contains(k)||d.current?.contains(k)||i(!1)};document.addEventListener("mousedown",g),document.addEventListener("pointerdown",g);let x=null;const b=()=>{if(typeof requestAnimationFrame>"u"){h();return}x===null&&(x=requestAnimationFrame(()=>{x=null,h()}))},w=B=>{d.current?.contains(B.target)||(t==="reposition"?b():t==="close"&&i(!1))};t!=="ignore"&&window.addEventListener("scroll",w,!0);const _=()=>{a==="reposition"?b():a==="close"&&i(!1)};let A=null;const y=()=>{_(),A&&clearTimeout(A),A=setTimeout(()=>{A=null,a==="reposition"&&h()},250)};return a!=="ignore"&&(window.addEventListener("resize",_),window.addEventListener("orientationchange",y)),()=>{x!==null&&cancelAnimationFrame(x),f?.disconnect(),document.removeEventListener("mousedown",g),document.removeEventListener("pointerdown",g),t!=="ignore"&&window.removeEventListener("scroll",w,!0),a!=="ignore"&&(window.removeEventListener("resize",_),window.removeEventListener("orientationchange",y)),A&&clearTimeout(A)}},[n,h,t,a,o]),s.useEffect(()=>{if(n)return Io(()=>i(!1))},[n]);const p=s.useCallback(()=>i(C=>!C),[]),m=s.useCallback(()=>i(!1),[]);return{open:n,setOpen:i,toggle:p,close:m,style:l,triggerRef:u,menuRef:d}}function Ru(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:o,onComplete:n,playMs:i=1100,feedbackMs:l=1500}={}){const[c,u]=s.useState([]),[d,h]=s.useState(0),[p,m]=s.useState("idle"),[C,v]=s.useState(null),[f,g]=s.useState([]),[x,b]=s.useState(null),[w,_]=s.useState(0),A=s.useRef(0),y=s.useCallback($=>{A.current=typeof $=="function"?$(A.current):$,_(A.current)},[]),B=s.useRef(o),k=s.useRef(n);s.useEffect(()=>{B.current=o,k.current=n},[o,n]);const S=s.useRef([]),E=()=>{S.current.forEach(clearTimeout),S.current=[]},D=($,U)=>{S.current.push(setTimeout(U,$))};s.useEffect(()=>()=>E(),[]);const I=c[d]?.id??null,j=s.useRef(null),W=s.useCallback(()=>{E(),m("playing"),g([]),b(null),y(0);let $=0;e.forEach((U,T)=>{D($,()=>{h(T),v(U.id),B.current?.(U)}),D($+1e3,()=>{v(null),g(F=>[...F,U.id])}),$+=1300}),D($,()=>{m("done"),k.current?.({score:0,total:e.length})})},[e,y]),L=s.useCallback(($,U)=>{if(U>=$.length){m("done"),k.current?.({score:A.current,total:$.length});return}j.current=null,h(U),b(null),m("playing"),v($[U].id),B.current?.($[U]),D(i,()=>{v(null),m("waiting")})},[i]),M=s.useCallback(()=>{E();const $=nt(e);u($),y(0),g([]),L($,0)},[e,L,y]),z=s.useCallback(()=>{t==="playback"?(u(e),W()):M()},[t,e,W,M]),q=s.useCallback(()=>{E(),m("idle"),v(null),g([]),b(null),h(0),y(0),u([])},[y]),Y=e.map($=>$.id).join("|");s.useEffect(()=>(a?z():q(),()=>E()),[t,Y,a]);const P=s.useCallback($=>{p!=="waiting"||t==="playback"||j.current===d||(j.current=d,b($),$===c[d]?.id&&y(U=>U+1),t==="exam"?(m("playing"),D(400,()=>L(c,d+1))):(m("feedback"),D(l,()=>L(c,d+1))))},[p,t,c,d,L,l,y]),V=t==="playback"?e.length:c.length;return{bind:{activeSpeakerId:C,playedIds:f,selectedId:x,answerId:I,showFeedback:p==="feedback",clickable:p==="waiting",onSelectSpeaker:P},index:d,total:V,score:w,phase:p,done:p==="done",start:z,reset:q}}var lk=Object.freeze({__proto__:null,CACHE_GROUPS:uu,CORE_VERSION:Mn,DocumentTitleSuppressContext:lu,EMPTY_COMPOSITION:Bi,MediaQueryOverrideContext:xi,NO_CODA:Da,SYLLABLE_MIN:Na,VAP_PAGE_SIZE_OPTIONS:bn,buildGradeSection:gu,buildPartOfSpeechSection:fu,buildPositionSection:rg,buildSelectSection:og,buildSyllableSection:ag,buildWordTypeSection:vu,charToPronValue:wu,convertComposition:Bu,fmtBytes:Gb,lsBytes:du,meaningKey:Si,normalizeWordAttributeFilter:Qm,pronToCharValue:ku,syllableToFilter:ki,toWordAttributeFilterCodes:ui,today:Cr,toggleAttributeFilter:ng,useAnchoredMenu:Vo,useCacheManagement:Ub,useDailyTrainingSelection:_g,useDelayedHoverAnchor:Mu,useDeviceManagement:tg,useDocumentTitle:cu,useEscToClose:Lu,useFontScale:yi,useHoverAnchor:Ho,useListControls:Ag,useMediaQuery:sa,usePageResetOnChange:$u,usePagedList:Bg,usePasswordChange:Wb,useRelativeDay:Vb,useSoundCompassExam:Ru,useTablePaging:hu,useTableSort:mu,useToastState:Di,useTrainingTypeLabels:Sg,useVisitAllPanel:Jb,useVisitHistory:Kb,useVisitSchedule:Xb,useWindowEvent:hn,useWordAttributeFilterKeys:bu,useWordDataStats:qb,useWordMeanings:kg,useWordTrainingDataGeneration:Cg,useWordTrainingFilter:vg,valueToJamos:Fa,wordAttributeFilterFromCodes:di,\uB4F1\uAE09\uC124\uBA85:Du}),ck=".ihabdevteam-core-scope .promo-banner{align-items:center;border-radius:var(--radius-s);box-sizing:border-box;display:flex;gap:var(--spacing-m);justify-content:space-between;overflow:hidden;position:relative;text-align:left}.ihabdevteam-core-scope .promo-banner--medium{min-height:120px;padding:20px 24px}.ihabdevteam-core-scope .promo-banner--small{padding:14px 16px}.ihabdevteam-core-scope .promo-banner__title{color:inherit;color:var(--promo-banner-bg-title,inherit)}.ihabdevteam-core-scope .promo-banner__description{color:inherit;color:var(--promo-banner-bg-description,inherit)}.ihabdevteam-core-scope .promo-banner__text{display:flex;flex-direction:column;justify-content:center;min-width:0;position:relative;z-index:1}.ihabdevteam-core-scope .promo-banner__description{margin-left:2px;margin-top:1px}.ihabdevteam-core-scope .promo-banner>.button{flex-shrink:0;position:relative;z-index:1}";ce(ck);function Eg({title:e,description:t,actionLabel:a,onAction:o,bg:n,color:i,size:l="medium",actionVariant:c,titleColor:u,descriptionColor:d,className:h=""}){const p=n??i??"main",m=s.useRef(null),[C,v]=s.useState("main"),f=sa("(max-width: 767px)"),g=s.useRef({title:!1,description:!1});s.useLayoutEffect(()=>{const w=m.current;if(!w)return;const _=_i(w),A=(y,B,k)=>{if(k!==void 0)w.style.setProperty(B,k),g.current[y]=!0;else if(g.current[y]){const S=_?.[y];S?w.style.setProperty(B,S):w.style.removeProperty(B),g.current[y]=!1}};A("title","--promo-banner-bg-title",u),A("description","--promo-banner-bg-description",d)},[u,d,p]),s.useLayoutEffect(()=>{const w=m.current;if(!w)return;const _=_i(w);v(_?.actionVariant??"main")},[p]);const x=Ne("promo-banner",`promo-banner--${l}`,h),b=iu[p];return r.jsxs("div",{ref:m,className:x,role:"note",children:[r.jsx(b,{}),r.jsxs("div",{className:"promo-banner__text",children:[r.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),t&&r.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&o&&r.jsx(Ce,{htmlType:"button",size:40,variant:c??C,shape:"pill",useBorder:!0,onClick:o,ariaLabel:a,...f?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}var uk='.ihabdevteam-core-scope .top-banner{--top-banner-min-h:120px;display:flex;flex-direction:column;padding-bottom:var(--spacing-page);position:relative}.ihabdevteam-core-scope .top-banner__viewport{border-radius:var(--radius-m);min-height:var(--top-banner-min-h);overflow:hidden}.ihabdevteam-core-scope .top-banner__track{align-items:stretch;display:flex;min-height:var(--top-banner-min-h);transition:transform .4s ease}.ihabdevteam-core-scope .top-banner__slide{flex:0 0 100%;min-width:0}.ihabdevteam-core-scope .top-banner__slide>*{box-sizing:border-box;min-height:100%;width:100%}.ihabdevteam-core-scope .top-banner__dots{bottom:calc(var(--spacing-page) + 12px);display:flex;gap:6px;left:50%;position:absolute;transform:translateX(-50%)}.ihabdevteam-core-scope .top-banner__dot{background:var(--color-white-a30);border:none;border-radius:3px;cursor:pointer;height:6px;padding:0;position:relative;transition:width .25s ease,background-color .25s ease;width:6px}.ihabdevteam-core-scope .top-banner__dot:after{content:"";height:24px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:calc(100% + 6px)}.ihabdevteam-core-scope .top-banner__dot--active{background:var(--color-white);width:18px}.ihabdevteam-core-scope .top-banner__dots--dark .top-banner__dot{background:var(--color-lightGray-a80)}.ihabdevteam-core-scope .top-banner__dots--dark .top-banner__dot--active{background:var(--color-main)}';ce(uk);function Dg({children:e,interval:t=5e3,dotTone:a,className:o="","aria-label":n}){const{t:i}=_e.useTranslation(),l=n??i("topBanner.ariaLabel","\uBC30\uB108"),c=s.Children.toArray(e),u=c.length,[d,h]=s.useState(0),[p,m]=s.useState(!1),[C,v]=s.useState(!1),[f,g]=s.useState(!1),x=s.useRef(null),b=s.useRef(null),w=s.useRef(null),_=Ec(),A=p||C||f,y=u>0?Math.min(d,u-1):0;s.useEffect(()=>{if(u<2||t<=0||A||_)return;const k=window.setInterval(()=>h(S=>(Math.min(S,u-1)+1)%u),t);return()=>window.clearInterval(k)},[u,t,A,_]);const B=k=>{b.current!=null&&window.clearTimeout(b.current),b.current=window.setTimeout(()=>{b.current=null,g(!1)},k)};return s.useEffect(()=>()=>{b.current!=null&&window.clearTimeout(b.current)},[]),s.useEffect(()=>{if(!f)return;const k=S=>{S.pointerType==="touch"&&(w.current&&w.current.contains(S.target)||(b.current!=null&&(window.clearTimeout(b.current),b.current=null),g(!1)))};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[f]),u===0?null:r.jsxs("section",{ref:w,className:Ne("top-banner",o),"aria-label":l,"aria-roledescription":"carousel",onPointerEnter:k=>{x.current=k.pointerType},onPointerDown:k=>{x.current=k.pointerType,k.pointerType==="touch"&&(b.current!=null&&(window.clearTimeout(b.current),b.current=null),g(!0))},onPointerUp:k=>{k.pointerType==="touch"&&B(5e3)},onPointerCancel:k=>{k.pointerType==="touch"&&B(5e3)},onMouseEnter:()=>{x.current!=="touch"&&m(!0)},onMouseLeave:()=>m(!1),onFocus:k=>{let S=!0;try{S=k.target.matches(":focus-visible")}catch{S=!0}v(S)},onBlur:k=>{k.currentTarget.contains(k.relatedTarget)||v(!1)},children:[r.jsx("div",{className:"top-banner__viewport",children:r.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${y*100}%)`},children:c.map((k,S)=>r.jsx("div",{className:"top-banner__slide","aria-hidden":S!==y,...S!==y?{inert:!0}:{},children:k},S))})}),u>1&&r.jsx("div",{className:`top-banner__dots${(a?.[y]??"light")==="dark"?" top-banner__dots--dark":""}`,children:c.map((k,S)=>r.jsx("button",{type:"button",className:`top-banner__dot${S===y?" top-banner__dot--active":""}`,"aria-label":i("topBanner.dotAriaLabel",{count:u,index:S+1,defaultValue:`${u}\uAC1C \uC911 ${S+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":S===y,onClick:()=>h(S)},S))})]})}var dk=".ihabdevteam-core-scope .accordion-item{background:transparent;border-radius:var(--radius-m)}.ihabdevteam-core-scope .accordion-item__header{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;cursor:pointer;display:flex;gap:var(--spacing-s);min-height:56px;outline:none;padding:0 20px;transition:background-color .2s ease,border-color .2s ease}.ihabdevteam-core-scope .accordion-item__header:hover{background:var(--color-deepWhite);border-color:var(--color-main)}.ihabdevteam-core-scope .accordion-item__header:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .accordion-item__avatar{align-items:center;display:inline-flex;flex:none}.ihabdevteam-core-scope .accordion-item__title{flex:1;text-align:left}.ihabdevteam-core-scope .accordion-item__chevron{align-items:center;display:inline-flex;flex:none}.ihabdevteam-core-scope .accordion-item__chevron-icon{align-items:center;color:var(--color-lightGray);display:inline-flex}.ihabdevteam-core-scope .accordion-item__chevron-image{height:18px;opacity:.7;transition:transform .18s ease;width:18px}.ihabdevteam-core-scope .accordion-item.accordion-item--open{background:var(--color-main-a10);border-radius:var(--radius-m);overflow:hidden}.ihabdevteam-core-scope .accordion-item.accordion-item--open .accordion-item__header{background:var(--color-white);border:1px solid var(--color-main)}.ihabdevteam-core-scope .accordion-item.accordion-item--open .accordion-item__chevron-image{transform:rotate(180deg)}.ihabdevteam-core-scope .accordion-item__body p{margin:0}.ihabdevteam-core-scope .accordion-item__body{background:transparent;box-sizing:border-box;color:var(--color-darkGray);max-width:100%;overflow-wrap:break-word;padding:40px 32px;text-align:left;word-break:break-word}.ihabdevteam-core-scope .accordion-group--s48 .accordion-item__header{min-height:48px}.ihabdevteam-core-scope .accordion-group--s56 .accordion-item__header{min-height:56px}.ihabdevteam-core-scope .accordion-group--s72 .accordion-item__header{min-height:72px}.ihabdevteam-core-scope .accordion-group--s48 .accordion-item,.ihabdevteam-core-scope .accordion-group--s48 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s48 .accordion-item__header{border-radius:12px}.ihabdevteam-core-scope .accordion-group--s56 .accordion-item,.ihabdevteam-core-scope .accordion-group--s56 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s56 .accordion-item__header{border-radius:14px}.ihabdevteam-core-scope .accordion-group--s72 .accordion-item,.ihabdevteam-core-scope .accordion-group--s72 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s72 .accordion-item__header{border-radius:18px}.ihabdevteam-core-scope .accordion-group,.ihabdevteam-core-scope .accordion-group>.accordion-item{box-sizing:border-box;display:block;width:100%}.ihabdevteam-core-scope .accordion-group>.accordion-item+.accordion-item{margin-top:var(--spacing-s)}";ce(dk);function pk({title:e,body:t,open:a=!1,onToggle:o,avatar:n,titleClassName:i="body-2",bodyClassName:l="body-2",className:c=""}){const{t:u}=_e.useTranslation();return r.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${c}`.trim(),role:"listitem",children:[r.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:o,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),o?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const h=d.currentTarget.closest('[role="list"]');if(!h)return;const p=Array.from(h.querySelectorAll("[data-accordion-header]")),m=p.indexOf(d.currentTarget);(d.key==="ArrowDown"?p[m+1]:p[m-1])?.focus()}},children:[n&&r.jsx("div",{className:"accordion-item__avatar",children:n}),r.jsx("div",{className:`accordion-item__title ${i}`,children:e}),r.jsx("div",{className:"accordion-item__chevron",children:r.jsx(ot,{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&&r.jsx("div",{className:`accordion-item__body ${l}`,children:typeof t=="string"?r.jsx("p",{children:t}):t})]})}function Ng({items:e=[],defaultOpenIndex:t=0,size:a=72,className:o="",bodyClassName:n}){const[i,l]=s.useState({index:t}),c=(u,d)=>i.id!=null&&u.id!=null?u.id===i.id:i.id==null&&d===i.index;return r.jsx("div",{className:`accordion-group accordion-group--s${a} ${o}`.trim(),role:"list",children:e.map((u,d)=>r.jsx(pk,{title:u.title,body:u.body,avatar:u.avatar,open:c(u,d),onToggle:()=>l(c(u,d)?{index:-1}:{index:d,id:u.id}),bodyClassName:n},u.id??d))})}var hk=".ihabdevteam-core-scope .bottom-nav{align-items:flex-start;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);bottom:0;display:none;height:calc(72px + env(safe-area-inset-bottom));left:0;padding:8px calc(10px + env(safe-area-inset-right)) env(safe-area-inset-bottom) calc(10px + env(safe-area-inset-left));position:fixed;right:0;z-index:var(--z-nav)}.ihabdevteam-core-scope .bottom-nav__left{align-items:center;display:flex;flex-shrink:0}.ihabdevteam-core-scope .bottom-nav__divider{align-self:flex-start;background:var(--color-whiteLine);border-radius:1px;flex-shrink:0;height:24px;margin:14px 0 0;width:1px}.ihabdevteam-core-scope .bottom-nav__items{align-items:center;display:flex;flex:1;gap:10px;justify-content:center;overflow:hidden}.ihabdevteam-core-scope .bottom-nav__slot{display:flex;flex-shrink:0;height:52px;position:relative;width:52px}.ihabdevteam-core-scope .bottom-nav__slot .circle-badge--top-right{right:0;top:0}.ihabdevteam-core-scope .bottom-nav__right{align-items:center;display:flex;flex-shrink:0}@media (max-width:767px){.ihabdevteam-core-scope .bottom-nav{display:flex}}@media (min-width:768px){.ihabdevteam-core-scope .bottom-nav{display:none}}.ihabdevteam-core-scope .bottom-nav-item{align-items:center;background:transparent!important;border:none!important;border-radius:10px!important;color:var(--color-lightGray);cursor:pointer;display:flex!important;flex-direction:column;height:52px!important;justify-content:center;padding:0!important;transition:background .16s ease,color .16s ease!important;width:52px!important}.ihabdevteam-core-scope .bottom-nav-item:hover:not(.is-selected){background:var(--color-darkWhite)!important}.ihabdevteam-core-scope .bottom-nav-item.is-selected{animation:bottom-nav-active-bg .36s cubic-bezier(.4,0,.2,1) forwards;background-color:var(--color-sub)!important;box-shadow:0 6px 12px rgba(12,24,36,.06);color:#fff!important}.ihabdevteam-core-scope .bottom-nav-item.is-selected *{color:#fff!important}.ihabdevteam-core-scope .bottom-nav-item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .bottom-nav-item:disabled,.ihabdevteam-core-scope .bottom-nav-item[disabled]{opacity:.6;pointer-events:none}@keyframes bottom-nav-active-bg{0%{background-color:var(--color-sub)}to{background-color:var(--color-main)}}";ce(hk);var mk=".ihabdevteam-core-scope .badge{align-items:center;background:var(--badge-color,var(--color-main));border-radius:999px;box-shadow:none;box-shadow:var(--badge-shadow,none);color:#fff;color:var(--badge-on-color,#fff);display:inline-flex;gap:6px;justify-content:center;line-height:1;vertical-align:middle;white-space:nowrap}.ihabdevteam-core-scope .badge--small{font-size:12px;height:20px;padding:0 10px}.ihabdevteam-core-scope .badge--medium{font-size:14px;height:28px;padding:0 14px}.ihabdevteam-core-scope .badge--large{font-size:16px;height:32px;padding:0 18px}.ihabdevteam-core-scope .badge__icon{align-items:center;display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .badge--default{--badge-color:var(--color-lightGray);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--main{--badge-color:var(--color-main);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--sub{--badge-color:var(--color-sub);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--danger{--badge-color:var(--color-error);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--disabled{--badge-color:var(--color-disabled);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--like{--badge-color:var(--color-like);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--success{--badge-color:var(--color-success);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--warning{--badge-color:var(--color-warn);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--critical{--badge-color:#7c3aed;--badge-on-color:#fff}.ihabdevteam-core-scope .badge--outline{background:transparent;border:1px solid var(--badge-color);box-shadow:none;color:var(--badge-color)}.ihabdevteam-core-scope .badge--soft{background:color-mix(in srgb,var(--badge-color) 10%,transparent);box-shadow:none;color:var(--badge-color)}.ihabdevteam-core-scope .circle-badge{align-items:center;border:2px solid var(--color-pureWhite);border-radius:50%;box-sizing:border-box;display:inline-flex;flex-shrink:0;font-weight:700;justify-content:center;line-height:1;pointer-events:none;position:absolute;transition:background .12s,transform .12s;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:1}@keyframes circle-badge-pop{0%{opacity:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.ihabdevteam-core-scope .circle-badge--animate{animation:circle-badge-pop .24s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .circle-badge--animate{animation:none}}.ihabdevteam-core-scope .circle-badge--clickable{cursor:pointer;pointer-events:auto}.ihabdevteam-core-scope .circle-badge--clickable:hover{transform:scale(1.12)}.ihabdevteam-core-scope .circle-badge--top-right{right:-6px;top:-6px}.ihabdevteam-core-scope .circle-badge--top-left{left:-6px;top:-6px}.ihabdevteam-core-scope .circle-badge--inline{border:none;position:static}.ihabdevteam-core-scope .circle-badge--24{border-width:1px;font-size:11px;height:24px;width:24px}.ihabdevteam-core-scope .circle-badge--32{border-width:2px;font-size:14px;height:32px;width:32px}.ihabdevteam-core-scope .circle-badge--40{border-width:2px;font-size:16px;height:40px;width:40px}.ihabdevteam-core-scope .circle-badge--check,.ihabdevteam-core-scope .circle-badge--number{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .circle-badge--remove{background:var(--color-error);color:#fff}.ihabdevteam-core-scope .circle-badge--minus{background:var(--color-lightGray);color:#fff}.ihabdevteam-core-scope .circle-badge--24 svg{height:11px;width:11px}.ihabdevteam-core-scope .circle-badge--32 svg{height:15px;width:15px}.ihabdevteam-core-scope .circle-badge--40 svg{height:19px;width:19px}";ce(mk);function bk(){return r.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:r.jsx("polyline",{points:"2,6 5,9 10,3"})})}function gk(){return r.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[r.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),r.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function fk(){return r.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:r.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function St(e){const{t}=_e.useTranslation(),{type:a="bar",size:o,className:n="","aria-label":i,"aria-hidden":l}=e;if(a==="dot"){const{icon:A,number:y,position:B="top-right",onClick:k,animate:S=!1}=e,E=A??"check",D=y!==void 0?"number":E,I=typeof o=="number"?o:32,j=Ne("circle-badge",`circle-badge--${D}`,`circle-badge--${B}`,`circle-badge--${I}`,S?"circle-badge--animate":"",k?"circle-badge--clickable":"",n),W=y!==void 0?t("badge.nthSelected",{n:y,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:t("badge.selected","\uC120\uD0DD\uB428"),remove:t("badge.remove","\uC81C\uAC70"),minus:t("badge.exclude","\uC81C\uC678")}[E];return r.jsxs("span",{className:j,onClick:k,onKeyDown:k?L=>{L.key!=="Enter"&&L.key!==" "||(L.preventDefault(),L.currentTarget.click())}:void 0,"aria-label":l?void 0:i??W,"aria-hidden":l||void 0,role:k?"button":l?void 0:"img",tabIndex:k?0:void 0,children:[y!==void 0&&y,y===void 0&&E==="check"&&r.jsx(bk,{}),y===void 0&&E==="remove"&&r.jsx(gk,{}),y===void 0&&E==="minus"&&r.jsx(fk,{})]})}const{label:c,children:u,variant:d="default",fill:h="filled",minWidth:p,iconLeft:m,iconRight:C,color:v}=e,f=typeof o=="number"?"medium":o??"medium",g={small:"caption-2b",medium:"body-3b",large:"body-2b"}[f]??"body-2b",x={small:12,medium:14,large:16}[f]??14,b=Ne("badge",`badge--${d}`,`badge--${f}`,h!=="filled"?`badge--${h}`:"",g,n),w=v?.startsWith("--")?`var(${v})`:v,_=p!==void 0||w?{...p!==void 0?{minWidth:typeof p=="number"?`${p}px`:p}:{},...w?{"--badge-color":w}:{}}:void 0;return r.jsxs("span",{className:b,style:_,"aria-label":l?void 0:i,role:i&&!l?"img":void 0,"aria-hidden":l||void 0,children:[m&&r.jsx(ot,{icon:m,size:x,className:"badge__icon"}),c??u,C&&r.jsx(ot,{icon:C,size:x,className:"badge__icon"})]})}var vk=".ihabdevteam-core-scope .tooltip-menu{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:160px;padding:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-menu__header{align-items:center;border-bottom:1px solid var(--color-darkWhite);display:flex;gap:var(--spacing-xs);height:52px;padding:8px 12px}.ihabdevteam-core-scope .tooltip-menu__title{font-weight:600}.ihabdevteam-core-scope .tooltip-menu__columns{display:flex;gap:var(--spacing-s);padding:4px}.ihabdevteam-core-scope .tooltip-menu__column{display:flex;flex:1;flex-direction:column;gap:var(--spacing-xs);min-width:0}.ihabdevteam-core-scope .tooltip-menu__column-title{color:var(--color-lightGray);margin-bottom:4px}.ihabdevteam-core-scope .tooltip-menu__items{display:flex;flex-direction:column;gap:var(--spacing-l)}.ihabdevteam-core-scope .tooltip-menu--small{gap:2px;min-width:140px}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__items{gap:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__columns{gap:var(--spacing-xs);padding:2px}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__header{height:44px;padding:6px 10px}.ihabdevteam-core-scope .tooltip-menu__separator{background:var(--color-whiteLine);height:1px;margin:4px 0}.ihabdevteam-core-scope .tooltip-menu__item{width:100%}@media (max-width:600px){.ihabdevteam-core-scope .tooltip-menu__columns{flex-direction:column}}";ce(vk);function xr({columns:e=[],onClose:t,className:a="",size:o="medium"}){const{t:n}=_e.useTranslation(),i=o==="small"?40:48,[l,c]=s.useState([]),u=s.useMemo(()=>{const g=[{title:null,columns:e}];let x=e;for(const b of l){const w=x?.[b.ci]?.items?.[b.ii];if(!w||!Array.isArray(w.children)||!w.children.length)break;x=[{title:null,items:w.children}],g.push({title:w.label||null,columns:x})}return g},[e,l]),d=u[u.length-1],h=u.length-1,p=s.useCallback(()=>c(g=>g.slice(0,Math.max(0,Math.min(g.length,h)-1))),[h]),m=s.useRef(null),C=s.useRef(null),v=u.length;s.useEffect(()=>{C.current||(C.current=document.activeElement);let g=0,x=0;const b=()=>{const w=m.current?.querySelector("button:not([disabled])");if(w&&w.offsetParent){w.focus({preventScroll:!0});return}x++<20&&(g=requestAnimationFrame(b))};return g=requestAnimationFrame(b),()=>cancelAnimationFrame(g)},[v]),s.useEffect(()=>()=>{C.current?.focus?.({preventScroll:!0})},[]);const f=s.useCallback((g,x,b)=>{if(g){if(Array.isArray(g.children)&&g.children.length){c(w=>[...w.slice(0,h),{ci:x,ii:b}]);return}try{typeof g.onClick=="function"&&g.onClick()}catch{}try{g&&g.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,h]);return r.jsxs("div",{className:`tooltip-menu tooltip-menu--${o} ${a}`,children:[(u.length>1||d.title)&&r.jsxs("div",{className:"tooltip-menu__header",children:[u.length>1?r.jsx(Ce,{htmlType:"button",size:i,type:"dot",icon:"chevron-left",ariaLabel:n("common.back","\uB4A4\uB85C"),onClick:p,variant:"transparent-gray",useBorder:!1}):null,r.jsx("div",{className:"tooltip-menu__title button-1",children:d.title})]}),r.jsx("div",{className:"tooltip-menu__columns",ref:m,children:d.columns&&d.columns.map((g,x)=>r.jsxs("div",{className:"tooltip-menu__column",children:[g.title?r.jsx("div",{className:"tooltip-menu__column-title body-3",children:g.title}):null,r.jsx("div",{className:"tooltip-menu__items",children:(g.items||[]).map((b,w)=>r.jsxs(s.Fragment,{children:[b.separatorBefore&&w>0&&r.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),r.jsx(Ce,{htmlType:"button",className:"tooltip-menu__item",size:i,type:b.label?"bar":"dot",icon:b.selected?"check":b.icon||"none",rightIcon:Array.isArray(b.children)&&b.children.length?"chevron-right":b.badgeCount?r.jsx(St,{type:"dot",position:"inline",number:Math.min(b.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:b.label,ariaLabel:b.label&&b.badgeCount&&b.badgeCount>0?n("nav.badgeLabel",{label:b.label,count:b.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):b.label,onClick:()=>f(b,x,w),selected:b.selected,disabled:b.disabled,showTooltipInfo:b.tooltip||!1,useBorder:!1,align:"left"})]},w))})]},x))})]})}const Tg=".content-area";function Pu(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(Tg);if(a){a.scrollTop=0;return}const o=document.scrollingElement??document.documentElement;o&&o.scrollHeight<=o.clientHeight&&ra("nav-scroll-container",`[${t}] \uBCF8\uBB38\uC744 \uB9E8 \uC704\uB85C \uB418\uB3CC\uB9B4 \uD1B5\uC744 \uBABB \uCC3E\uC558\uB2E4(\uAE30\uBCF8 ${Tg}) \u2014 \uCC3D\uB3C4 \uAD6C\uB97C \uC218 \uC5C6\uC5B4 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4. scrollContainer \uB85C \uD1B5\uC744 \uC54C\uB824 \uC900\uB2E4.`),window.scrollTo({top:0})}catch{}}const zu=52,ji=10,jg=e=>e&&e>0?e:0;function Iu({items:e=[],activeKey:t,onChange:a,appMode:o,onAppModeChange:n,moreItems:i=[],scrollContainer:l}){const{t:c}=_e.useTranslation(),u=o==="manager"?"malgwi":"manager",d=o==="manager"?"arrow-left":"arrow-right",h=o==="manager"?c("nav.modeLabelMalgwi","\uB9D0\uADC0"):c("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=s.useRef(null),[m,C]=s.useState(0),v=e.length;s.useEffect(()=>{const $=p.current;if(!$)return;const U=()=>{const N=typeof getComputedStyle=="function"?getComputedStyle($):null,O=$.clientWidth-(parseFloat(N?.paddingLeft??"")||0)-(parseFloat(N?.paddingRight??"")||0),H=$.querySelector(".bottom-nav__left"),Z=H?.nextElementSibling,te=(H?.offsetWidth??0)+(H&&Z?.classList.contains("bottom-nav__divider")?Z.offsetWidth:0);C(Math.max(0,O-te))};if(U(),typeof ResizeObserver>"u")return;const T=new ResizeObserver(U);T.observe($);const F=$.querySelector(".bottom-nav__left");return F&&T.observe(F),()=>T.disconnect()},[n]);const f=zu+1,g=$=>Math.max(0,Math.floor(($+ji)/(zu+ji))),x=v*(zu+ji)-ji<=m,b=m<=0||i.length===0&&x?v:Math.min(v,g(m-f)),w=m>0&&b<v,_=w?b:v,A=e.slice(0,_),y=e.slice(_),B=w||i.length>0,k=s.useCallback(($,U)=>({position:"fixed",bottom:window.innerHeight-$.top+8,right:window.innerWidth-$.right,zIndex:Cn(U)}),[]),S=s.useId(),{open:E,toggle:D,close:I,style:j,triggerRef:W,menuRef:L}=Vo({computeStyle:k,onScroll:"ignore",onResize:"reposition"}),M=s.useCallback(($,U)=>U>0?c("nav.badgeLabel",{label:$,count:U,defaultValue:"{{label}}, {{count}}\uAC1C"}):$,[c]),z=s.useCallback(($,U)=>U>0?c("nav.badgeInsideLabel",{label:$,count:U,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):$,[c]),q=s.useCallback(()=>n?.(u),[n,u]),Y=s.useMemo(()=>y.find($=>!!$.key&&$.key===t)??i.find($=>$.selected||$.key&&$.key===t),[y,t,i]),P=s.useMemo(()=>[{items:[...y.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:!!$.key&&$.key===t,closeOnSelect:!0,disabled:$.state==="disabled",onClick:()=>{$.state!=="disabled"&&($.key&&a&&(a($.key),Pu(l,"BottomNav")),I())}})),...i.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:$.selected??(!!$.key&&$.key===t),closeOnSelect:!0,onClick:()=>{$.onClick?.(),I()}}))]}],[y,i,t,a,I]),V=[...y,...i].reduce(($,U)=>$+jg(U.badgeCount),0);return r.jsxs("nav",{className:"bottom-nav",ref:p,"aria-label":c("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[n&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"bottom-nav__left",children:r.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:d,ariaLabel:h,className:"bottom-nav-item",onClick:q})}),r.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),r.jsx("div",{className:"bottom-nav__items",children:A.map(($,U)=>{const T=jg($.badgeCount);return r.jsxs("span",{className:"bottom-nav__slot",children:[r.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:$.icon,ariaLabel:M($.label,T),selected:!!$.key&&$.key===t,disabled:$.state==="disabled",className:"bottom-nav-item",onClick:()=>{$.key&&(a?.($.key),Pu(l,"BottomNav"))}}),T>0&&r.jsx("span",{"aria-hidden":"true",children:r.jsx(St,{type:"dot",position:"top-right",number:Math.min(T,99),size:24})})]},$.key??`__slot-${U}`)})}),B&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),r.jsx("div",{className:"bottom-nav__right",children:r.jsxs("div",{ref:W,className:"bottom-nav__slot",children:[r.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:Y?.icon??"ellipsis",ariaLabel:z(Y?.label??c("nav.more","\uB354\uBCF4\uAE30"),V),selected:!!Y,className:"bottom-nav-item",onClick:D,"aria-expanded":E,"aria-controls":E?S:void 0}),V>0&&r.jsx("span",{"aria-hidden":"true",children:r.jsx(St,{type:"dot",position:"top-right",number:Math.min(V,99),size:24})}),E&&ua.createPortal(r.jsx("div",{id:S,role:"group","aria-label":c("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:j,ref:L,children:r.jsx(xr,{columns:P,onClose:I})}),document.body)]})})]})]})}var Ck='.ihabdevteam-core-scope .side-nav__menu{-webkit-overflow-scrolling:touch;background-clip:padding-box;border-left:1px solid transparent;border-right:1px solid transparent;display:flex;flex:1;flex-direction:column;margin-bottom:var(--spacing-s);margin-top:4px;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-left:calc(var(--spacing-s) - 1px);padding-right:calc(var(--spacing-s) - 1px);scrollbar-width:none}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .side-nav__scroll{height:0;margin-left:calc((var(--spacing-s) - 1px)*-1);margin-right:calc((var(--spacing-s) - 1px)*-1);overflow:visible;pointer-events:none;position:sticky;top:0;z-index:1}.ihabdevteam-core-scope .side-nav__scroll-thumb{background:var(--color-darkWhite);border-radius:3px;pointer-events:auto;position:absolute;right:calc(var(--spacing-s)/2 - 4.5px);touch-action:none;transition:background-color .16s ease,opacity .18s ease;width:6px}.ihabdevteam-core-scope .side-nav__scroll-thumb:before{content:"";inset:0 -4px;position:absolute}.ihabdevteam-core-scope .side-nav__scroll-thumb:active,.ihabdevteam-core-scope .side-nav__scroll-thumb:hover{background:var(--color-lightGray)}.ihabdevteam-core-scope .side-nav__menu-list{display:flex;flex:1 0 auto;flex-direction:column;gap:4px;overflow:visible;padding:0 0 4px}.ihabdevteam-core-scope .side-nav__notification-wrap{display:inline-flex;position:relative;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .side-nav__footer{align-items:stretch;display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-s);margin-top:var(--spacing-s);padding:0}.ihabdevteam-core-scope .side-nav__separator{background:var(--color-whiteLine);height:1px;margin:0 var(--spacing-s) var(--spacing-xs)}.ihabdevteam-core-scope .side-nav__separator--short{margin:4px var(--spacing-m);width:var(--spacing-xl)}@media (max-width:767px){.ihabdevteam-core-scope .side-nav__footer,.ihabdevteam-core-scope .side-nav__menu{display:none}}.ihabdevteam-core-scope .side-nav__item{align-items:center;background:transparent;border:none;border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;flex-shrink:0;font-family:var(--font-family);gap:var(--spacing-s);height:52px;justify-content:flex-start;padding:0 var(--spacing-m);text-align:left;width:100%}@keyframes ihabCoreSnSweep{0%{background-position:100% 0}to{background-position:0 0}}@keyframes ihabCoreSnIconBounce{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.ihabdevteam-core-scope .side-nav__item.active{animation:ihabCoreSnSweep 1s cubic-bezier(.4,0,.2,1) forwards;background:linear-gradient(90deg,var(--color-main) 50%,var(--color-sub) 100%);background-position:0 0;background-size:200% 100%;box-shadow:var(--shadow-button);color:#fff}.ihabdevteam-core-scope .side-nav__item.active .side-nav__icon{animation:ihabCoreSnIconBounce .48s cubic-bezier(.4,0,.2,1) forwards;color:#fff}.ihabdevteam-core-scope .side-nav__icon{align-items:center;color:var(--color-lightGray);display:inline-flex;height:24px;justify-content:center;width:24px}.ihabdevteam-core-scope .side-nav__item.active .circle-badge{background:var(--color-pureWhite);color:var(--color-main)}.ihabdevteam-core-scope .side-nav__item .circle-badge--inline{border:1px solid var(--color-pureWhite)}.ihabdevteam-core-scope .side-nav__icon-wrap{display:inline-flex;flex:0 0 24px;position:relative}.ihabdevteam-core-scope .side-nav__icon{flex:0 0 24px}.ihabdevteam-core-scope .side-nav__icon img{display:block;height:20px;-o-object-fit:contain;object-fit:contain;width:20px}.ihabdevteam-core-scope .side-nav__icon-image{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:20px;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:20px}.ihabdevteam-core-scope .side-nav__item .side-nav__icon img{filter:brightness(0) saturate(0) opacity(.45);transition:filter .16s ease,opacity .16s ease}.ihabdevteam-core-scope .side-nav__item.active .side-nav__icon img{filter:brightness(0) invert(1)}.ihabdevteam-core-scope .side-nav__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .side-nav__item{transition:background-color .16s ease,color .16s ease,transform 80ms ease}.ihabdevteam-core-scope .side-nav__item:focus-visible:not(.active),.ihabdevteam-core-scope .side-nav__item:focus:not(.active),.ihabdevteam-core-scope .side-nav__item:hover:not(.active){background:var(--color-darkWhite)}.ihabdevteam-core-scope .side-nav__item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .side-nav__item.disabled,.ihabdevteam-core-scope .side-nav__item.disabled:focus,.ihabdevteam-core-scope .side-nav__item.disabled:hover{background:transparent;color:var(--color-lightGray);cursor:default;opacity:.6;pointer-events:none;transform:none}.ihabdevteam-core-scope .side-nav__item.disabled .side-nav__icon{color:var(--color-lightGray)}.ihabdevteam-core-scope .side-nav__item.disabled .side-nav__icon img{filter:none;opacity:.8}.ihabdevteam-core-scope .side-nav__item--child{height:40px;padding-left:30px}.ihabdevteam-core-scope .side-nav__item--child .side-nav__icon{height:20px;width:20px}.ihabdevteam-core-scope .side-nav__item--child .side-nav__label{font-weight:400}';ce(Ck);function Lg(e){if(typeof e!="string")return!1;let t="";for(const o of e){const n=o.charCodeAt(0);n<=32||n>=127&&n<=159||(t+=o)}if(!t)return!1;const a=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);return a?["http","https","mailto","tel"].includes(a[1].toLowerCase()):!0}function Mg(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function xk(e){const{t}=_e.useTranslation(),{activeKey:a,unreadCount:o,onDebug:n,onNotification:i,onSetting:l,onHelp:c,onFeedback:u,onAccount:d}=e||{},h="default";return n||i||l||c||u||d?r.jsxs("div",{className:"side-nav__footer",children:[n&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:n,selected:a==="debug"}),i&&r.jsxs("span",{className:"side-nav__notification-wrap",children:[r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"bell",ariaLabel:Mg(t,t("nav.notifications","\uC54C\uB9BC"),o),onClick:i,selected:a==="notifications"}),!!o&&o>0&&r.jsx(St,{type:"dot",number:Math.min(o,99),size:24,"aria-hidden":!0})]}),l&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),c&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:c,selected:a==="help"}),u&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:u,selected:a==="feedback"}),d&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:d,selected:a==="account"})]}):null}function $g(e){const{t}=_e.useTranslation(),{item:a,itemKey:o,label:n,icon:i,active:l,onClick:c,style:u,state:d,labelStyle:h}=e||{},p=a?.key??o??"",m=a?.label??n??"",C=a?.icon??i??"",v=a?.badge??0,f=r.jsx("span",{className:"side-nav__icon-wrap",children:r.jsx(ot,{icon:C,label:typeof m=="string"?m:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),g=d==="disabled",x=`side-nav__item ${l?"active":""} ${d||""} ${g?"disabled":""} ${a?.child?"side-nav__item--child":""}`,b=s.useCallback(w=>{if(g)return;const _=w.detail>0;if(_)try{w.currentTarget.blur()}catch{}c?.(p,w.currentTarget,_)},[g,p,c]);return r.jsxs("button",{type:"button",className:x,onClick:b,"aria-label":typeof m=="string"?Mg(t,m,v):void 0,"aria-current":l?"page":void 0,style:u,"aria-disabled":g,children:[f,r.jsx("span",{className:"side-nav__label button-1 f",style:h,children:m}),v>0&&r.jsx(St,{type:"dot",position:"inline",number:Math.min(v,99),size:24,"aria-hidden":!0}),d==="loading"&&r.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":t("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function Ou(e){const{t}=_e.useTranslation(),{items:a=[],activeKey:o,onChange:n,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:h,onFeedback:p,appMode:m,onAppModeChange:C,scrollContainer:v}=e||{},f=m==="manager",g=s.useCallback(()=>C?.(f?"malgwi":"manager"),[C,f]),x=s.useRef(null),[b,w]=s.useState(null);s.useEffect(()=>{const k=x.current;if(!k)return;let S=null;const E=()=>{const{scrollHeight:j,clientHeight:W,scrollTop:L}=k;if(j<=W+1){w(P=>P===null?P:null);return}const M=Math.max(24,W/j*W),z=W-M,q=j-W,Y={top:Math.round(L/q*z),height:Math.round(M)};w(P=>P&&P.top===Y.top&&P.height===Y.height?P:Y)},D=()=>{if(typeof requestAnimationFrame>"u"){E();return}S===null&&(S=requestAnimationFrame(()=>{S=null,E()}))};E(),k.addEventListener("scroll",D,{passive:!0});const I=typeof ResizeObserver<"u"?new ResizeObserver(D):null;I?.observe(k);for(const j of Array.from(k.children))I?.observe(j);return()=>{S!==null&&cancelAnimationFrame(S),k.removeEventListener("scroll",D),I?.disconnect()}},[a]);const _=s.useRef(null),A=s.useCallback(k=>{const S=x.current;S&&(k.preventDefault(),_.current={y:k.clientY,top:S.scrollTop},k.currentTarget.setPointerCapture(k.pointerId))},[]),y=s.useCallback(k=>{const S=x.current,E=_.current;!S||!E||(S.scrollTop=E.top+(k.clientY-E.y)*(S.scrollHeight/S.clientHeight))},[]),B=s.useCallback(k=>{_.current=null,k.currentTarget.hasPointerCapture(k.pointerId)&&k.currentTarget.releasePointerCapture(k.pointerId)},[]);return r.jsxs("nav",{ref:x,"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[b&&r.jsx("div",{className:"side-nav__scroll","aria-hidden":"true",children:r.jsx("div",{className:"side-nav__scroll-thumb",style:{top:b.top,height:b.height},onPointerDown:A,onPointerMove:y,onPointerUp:B,onPointerCancel:B})}),r.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(k=>!k.section&&(k.key||k.label)).map((k,S)=>r.jsxs(s.Fragment,{children:[k.divider&&r.jsx("div",{className:"side-nav__separator"}),r.jsx($g,{item:k,active:!!k.key&&k.key===o,state:k.disabled?"disabled":void 0,onClick:(E,D,I)=>{if(k.disabled)return;if(k.href){if(Lg(k.href)&&window.open(k.href,"_blank","noopener,noreferrer"),I)try{D?.blur()}catch{}return}if(n?.(k.key),Pu(v,"SideNav"),!I)return;try{D?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const j=document.querySelector(".header");if(j){const W=typeof j.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&W&&j.matches(":hover"))){j.classList.add("header--force-collapsed");const L=()=>{j.classList.remove("header--force-collapsed"),j.removeEventListener("mouseenter",L)};j.addEventListener("mouseenter",L)}}}})]},k.key??`side-nav__item-${S}`)),C&&r.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),C&&r.jsx($g,{item:{key:"__mode-switch__",label:f?t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:f?"arrow-left":"arrow-right"},onClick:g})]}),r.jsx(xk,{activeKey:o,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:h,onFeedback:p})]})}var Li='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',Fu='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',_k='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',yk='.ihabdevteam-core-scope .header{background:var(--color-deepWhite);border-left:1px solid var(--color-whiteLine);border-right:1px solid var(--color-whiteLine);bottom:0;display:flex;flex-direction:column;isolation:isolate;left:0;overflow:visible;overscroll-behavior:none;position:fixed;top:0;z-index:var(--z-sidebar)}.ihabdevteam-core-scope .header__menu-button{background:transparent;border:none;display:none;position:relative}.ihabdevteam-core-scope .header__bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);bottom:0;display:flex;height:56px;justify-content:center;left:0;padding:0;padding-bottom:calc(var(--spacing-content) + env(safe-area-inset-bottom));position:fixed;right:0}.ihabdevteam-core-scope .header__category-button{background:transparent;border:none}.ihabdevteam-core-scope .header:before{background:linear-gradient(160deg,var(--color-main) 0,var(--color-sub) 100%);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .2s ease;z-index:-1}.ihabdevteam-core-scope .header--manager{border-right-color:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .header--manager:before{opacity:1}.ihabdevteam-core-scope .header--manager .side-nav__separator{background:hsla(0,0%,100%,.25)}.ihabdevteam-core-scope .header--manager .side-nav__scroll-thumb{background:hsla(0,0%,100%,.4)}.ihabdevteam-core-scope .header--manager .side-nav__scroll-thumb:active,.ihabdevteam-core-scope .header--manager .side-nav__scroll-thumb:hover{background:hsla(0,0%,100%,.75)}.ihabdevteam-core-scope .header--manager .side-nav__icon,.ihabdevteam-core-scope .header--manager .side-nav__item,.ihabdevteam-core-scope .header--manager .side-nav__item.disabled,.ihabdevteam-core-scope .header--manager .side-nav__item.disabled .side-nav__icon{color:var(--color-deepWhite)}.ihabdevteam-core-scope .header--manager .side-nav__item:focus:not(.active),.ihabdevteam-core-scope .header--manager .side-nav__item:hover:not(.active){background:hsla(0,0%,100%,.15);color:#fff}.ihabdevteam-core-scope .header--manager .side-nav__item:focus:not(.active) .side-nav__icon,.ihabdevteam-core-scope .header--manager .side-nav__item:hover:not(.active) .side-nav__icon{color:#fff}.ihabdevteam-core-scope .header--manager .side-nav__item.active{animation:ihabCoreSnSweep 1s cubic-bezier(.4,0,.2,1) forwards;background:linear-gradient(90deg,var(--color-pureWhite) 50%,color-mix(in srgb,var(--color-main) 50%,#fff) 100%);background-position:0 0;background-size:200% 100%;box-shadow:var(--shadow-card);color:var(--color-darkGray)}.ihabdevteam-core-scope .header--manager .side-nav__item.active .side-nav__icon{animation:ihabCoreSnIconBounce .48s cubic-bezier(.4,0,.2,1) forwards;color:var(--color-lightGray)}.ihabdevteam-core-scope .header--manager .side-nav__item.active .side-nav__icon img{filter:none;opacity:1}.ihabdevteam-core-scope .header--manager .side-nav__footer [role=button],.ihabdevteam-core-scope .header--manager .side-nav__footer button{color:hsla(0,0%,100%,.55)}@media (min-width:1024px){.ihabdevteam-core-scope .header{width:220px}.ihabdevteam-core-scope .header__bottom,.ihabdevteam-core-scope .header__menu-button{display:none}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .header{overflow:visible;transition:width .18s ease;width:72px}.ihabdevteam-core-scope .header:focus-within,.ihabdevteam-core-scope .header:hover{width:220px}.ihabdevteam-core-scope .header.header--force-collapsed,.ihabdevteam-core-scope .header.header--force-collapsed:focus-within,.ihabdevteam-core-scope .header.header--force-collapsed:hover{width:72px}.ihabdevteam-core-scope .header__branding{height:80px}.ihabdevteam-core-scope .header .side-nav__menu{scrollbar-gutter:auto;scrollbar-width:none;transition:padding .18s ease}.ihabdevteam-core-scope .header .side-nav__menu::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .header .side-nav__item{transition:padding .18s ease,gap .18s ease,width .18s ease}.ihabdevteam-core-scope .header .side-nav__label{display:inline-block;overflow:hidden;transition:max-width .18s ease,opacity .18s ease,transform .18s ease;white-space:nowrap}.ihabdevteam-core-scope .header--force-collapsed .side-nav__menu,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__menu{padding:0 var(--spacing-xs)}.ihabdevteam-core-scope .header--force-collapsed .side-nav__item,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__item{border-radius:var(--radius-card);gap:0;margin:0 auto;padding:0 14px;position:relative;width:52px}.ihabdevteam-core-scope .header--force-collapsed .side-nav__item>.circle-badge,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__item>.circle-badge{border:1px solid var(--color-pureWhite);position:absolute;right:0;top:0}.ihabdevteam-core-scope .header--force-collapsed .side-nav__footer,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__footer{align-items:center}.ihabdevteam-core-scope .header--force-collapsed .side-nav__separator--short,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__separator--short{margin-left:auto;margin-right:auto}.ihabdevteam-core-scope .header--force-collapsed .side-nav__label,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__label{max-width:0;opacity:0;pointer-events:none;transform:translateX(-6px)}.ihabdevteam-core-scope .header--force-collapsed .brand-identity__image--symbol,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .brand-identity__image--symbol{display:block}.ihabdevteam-core-scope .header--force-collapsed .brand-identity__image--logo,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .brand-identity__image--logo{display:none}}@media (max-width:767px){.ihabdevteam-core-scope .header{align-items:center;border-bottom:1px solid var(--color-whiteLine);border-left:none;border-right:none;flex-direction:row;height:64px;justify-content:space-between;left:0;position:fixed;right:0;top:0;width:100%}.ihabdevteam-core-scope .header__top{align-items:center;display:flex;flex:1}.ihabdevteam-core-scope .header__branding{height:auto}.ihabdevteam-core-scope .header__menu-button{display:inline-flex}.ihabdevteam-core-scope .header__bi{align-items:center;display:flex;gap:var(--spacing-xs);padding:0 calc(12px + env(safe-area-inset-right)) 0 calc(12px + env(safe-area-inset-left));width:100%}.ihabdevteam-core-scope .header__bi .header__menu-button{margin-left:auto}.ihabdevteam-core-scope .header__bottom{display:none}}.ihabdevteam-core-scope .brand-identity__root{align-items:center;display:flex;height:100px;justify-content:center}.ihabdevteam-core-scope .brand-identity__image{height:48px;-o-object-fit:contain;object-fit:contain;width:auto}.ihabdevteam-core-scope .brand-identity__image--symbol{display:none}@media (min-width:1024px){.ihabdevteam-core-scope .brand-identity__root{height:100px}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .brand-identity__root{height:100px}}@media (max-width:767px){.ihabdevteam-core-scope .brand-identity__root{height:64px;padding:10px}.ihabdevteam-core-scope .brand-identity__image{height:40px}}';ce(yk);function Hu({appMode:e}){const{t}=_e.useTranslation(),a=e==="manager",o=a?Fu:Li,n=_k;return r.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[r.jsx("img",{src:n,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image brand-identity__image--symbol"}),r.jsx("img",{src:o,alt:a?t("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):t("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image brand-identity__image--logo"})]})}function Vu({activeKey:e,onChange:t,items:a,malgwiItems:o,managerItems:n,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:h,onFeedback:p,appMode:m,onAppModeChange:C,scrollContainer:v}){const{t:f}=_e.useTranslation(),g=sa("(max-width: 767px)"),x=s.useMemo(()=>(a??[]).filter(j=>!j.section&&(j.key||j.label)).map(j=>({key:j.key,label:typeof j.label=="string"?j.label:void 0,icon:j.icon,state:j.disabled?"disabled":void 0,badgeCount:j.badge})),[a]),b=s.useCallback(j=>{const W=a?.find(L=>L.key===j);if(!W?.disabled){if(W?.href){Lg(W.href)&&window.open(W.href,"_blank","noopener,noreferrer");return}t?.(j)}},[a,t]),w=s.useMemo(()=>{const j=[];return l&&j.push({key:"debug",icon:"terminal",label:f("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),c&&j.push({key:"notifications",icon:"bell",label:f("nav.notifications","\uC54C\uB9BC"),badgeCount:i,onClick:c}),d&&j.push({key:"settings",icon:"settings",label:f("nav.settings","\uC124\uC815"),onClick:d}),h&&j.push({key:"help",icon:"message-circle-question-mark",label:f("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:h}),p&&j.push({key:"feedback",icon:"bug",label:f("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:p}),u&&j.push({key:"account",icon:"user-round",label:f("nav.account","\uACC4\uC815"),onClick:u}),j},[f,l,c,d,h,p,u,i]),_=s.useCallback((j,W)=>({position:"fixed",top:j.bottom+8,right:Math.max(8,window.innerWidth-j.right),zIndex:Cn(W)}),[]),A=s.useId(),{open:y,toggle:B,close:k,style:S,triggerRef:E,menuRef:D}=Vo({computeStyle:_,onScroll:"ignore",onResize:"reposition"}),I=s.useMemo(()=>[{items:w.map(j=>({label:j.label,icon:j.icon,badgeCount:j.badgeCount,selected:j.selected??(!!j.key&&j.key===e),closeOnSelect:!0,onClick:()=>{j.onClick?.(),k()}}))}],[w,e,k]);return r.jsxs("aside",{className:`header${m==="manager"?" header--manager":""}`,children:[r.jsxs("div",{className:"header__bi",children:[r.jsx(Hu,{appMode:m}),r.jsxs("div",{className:"header__menu-button",ref:E,children:[r.jsx(Ce,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",useBorder:!1,icon:"menu",ariaLabel:c&&i&&i>0?f("nav.badgeInsideLabel",{label:f("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:i,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):f("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:B,"aria-expanded":y,"aria-controls":y?A:void 0}),!!c&&!!i&&i>0&&r.jsx(St,{type:"dot",number:Math.min(i,99),size:24,"aria-hidden":!0}),y&&ua.createPortal(r.jsx("div",{id:A,role:"group","aria-label":f("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:S,ref:D,children:r.jsx(xr,{columns:I,onClose:k})}),document.body)]})]}),r.jsx(Ou,{scrollContainer:v,items:a,activeKey:e??void 0,onChange:t,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:h,onFeedback:p,appMode:m,onAppModeChange:C}),g&&r.jsx(Iu,{items:x,activeKey:e??void 0,onChange:b,scrollContainer:v,appMode:m,onAppModeChange:C})]})}const Rg=Vu;var wk='.ihabdevteam-core-scope .payment-plan__card{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;display:flex;flex:1 1 340px;flex-direction:column;gap:28px;max-width:360px;min-width:min(340px,100%);padding:20px;position:relative;text-align:left;transition:box-shadow .2s ease,transform .2s ease;width:100%}.ihabdevteam-core-scope .payment-plan__card:hover{box-shadow:var(--shadow-dropdown);transform:translateY(-4px)}.ihabdevteam-core-scope .payment-plan__card-badge{position:absolute;right:32px;top:32px}.ihabdevteam-core-scope .payment-plan__pricing-card{cursor:pointer;display:flex;justify-content:center}.ihabdevteam-core-scope .payment-plan__title{color:var(--color-black);display:flex;flex-direction:column;margin:0}.ihabdevteam-core-scope .payment-plan__quote{color:var(--color-sub);margin:0 0 4px;min-height:1.4em}.ihabdevteam-core-scope .payment-plan__title-heading{margin:0}.ihabdevteam-core-scope .payment-plan__subtitle{color:var(--color-gray);line-height:1.5;margin:8px 0 0;text-align:left}.ihabdevteam-core-scope .payment-plan__box,.ihabdevteam-core-scope .payment-plan__box-title{display:block}.ihabdevteam-core-scope .payment-plan__contact-button{width:100%}.ihabdevteam-core-scope .payment-plan__feature-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:12px 0 0;padding:0}.ihabdevteam-core-scope .payment-plan__feature-item{align-items:center;color:var(--color-darkGray);display:flex;gap:10px;line-height:1.45}.ihabdevteam-core-scope .payment-plan__feature-check{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center}.ihabdevteam-core-scope .payment-plan__card-pricing{display:flex;flex-direction:column;gap:6px;margin-top:auto;text-align:left;width:100%}.ihabdevteam-core-scope .payment-plan__pricing-list{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .payment-plan__pricing-row{grid-row-gap:4px;align-items:center;background:var(--plan-color,var(--color-darkWhite));border:1px solid transparent;border-radius:var(--radius-s);box-sizing:border-box;color:#fff;cursor:pointer;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:14px 18px;row-gap:4px;transition:filter .15s ease,transform .15s ease,box-shadow .15s ease;width:100%}.ihabdevteam-core-scope .payment-plan__pricing-row--static{cursor:default;pointer-events:none}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight{background:var(--color-white);border:1px solid var(--plan-color,var(--color-main));color:var(--color-darkGray)}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-current,.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-row-price{color:var(--plan-color,var(--color-main))}.ihabdevteam-core-scope .payment-plan__pricing-row:hover{box-shadow:var(--shadow-dropdown);filter:brightness(1.04);transform:translateY(-2px)}.ihabdevteam-core-scope .payment-plan__pricing-row-title{display:contents}.ihabdevteam-core-scope .payment-plan__pricing-row-label{grid-column:1;grid-row:1;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-row-price{align-items:center;color:#fff;display:flex;gap:var(--spacing-xs);grid-column:1/-1;grid-row:2;justify-content:flex-end;margin:0;text-align:right}.ihabdevteam-core-scope .payment-plan__pricing-current{color:#fff;margin:0;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-symbol{font-weight:600;margin-right:2px}.ihabdevteam-core-scope .payment-plan__list{grid-gap:var(--spacing-l);align-items:stretch;display:grid;gap:var(--spacing-l);grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),360px));justify-content:center;margin:0 auto var(--spacing-page);width:100%}.ihabdevteam-core-scope .payment-plan__list>.payment-plan__card{align-self:stretch}.ihabdevteam-core-scope .payment-plan__card.recommended{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .payment-plan__feature{align-items:center;color:var(--color-darkGray);display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .payment-plan__feature:before{color:var(--color-success);content:"\u2713";font-weight:700}@media (max-width:767px){.ihabdevteam-core-scope .payment-plan__list{align-items:center;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .payment-plan__list>.payment-plan__card{align-self:center;flex:none;max-width:360px;width:100%}}';ce(wk);const kk=()=>xt.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function Pg(e){if(!(e==null||e==="")){if(typeof e=="string"&&/^\s*\d[\d,]*\s*$/.test(e)){const t=Number(e.replace(/[,\s]/g,""));if(Number.isFinite(t))return hr(`${t.toLocaleString("ko-KR")}\uC6D0`)}return hr(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function Bk(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function Ak(e){if(e.durationDays&&e.durationDays>0){const i=e.durationDays;return i%365===0?`${i/365}\uB144`:`${i}\uC77C`}const t=(e.code??"").match(/(\d+)(d|y)\b/i);if(t)return t[2].toLowerCase()==="y"?`${t[1]}\uB144`:`${t[1]}\uC77C`;const a=e.name??"",o=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(o)return o[1].replace(/\s+/g,"");const n=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return n?n[2].toLowerCase()==="year"?`${n[1]}\uB144`:`${n[1]}\uC77C`:a||kk()}function Sk(e){const t=(e??"").match(/(\d+)(d|y)\b/i);if(!t)return null;const a=Number(t[1]);return t[2].toLowerCase()==="y"?a*365:a}function Wu(e){return{type:e.type??Bk(e),plan:Ak(e),label:e.label,price:Pg(e.price),originalPrice:Pg(e.originalPrice),discountLabel:e.discountLabel}}var Ek='.ihabdevteam-core-scope .pass-card-frame{container-type:inline-size;height:188px;max-width:100%;width:300px}.ihabdevteam-core-scope .pass-card{border-radius:16px;box-sizing:border-box;display:flex;flex-direction:column;height:188px;overflow:hidden;padding:var(--spacing-l);position:relative;width:300px}.ihabdevteam-core-scope .pass-card-frame>.pass-card{aspect-ratio:auto;border-radius:5.33cqw;height:100%;padding:6.67cqw;width:100%}.ihabdevteam-core-scope .pass-card--clickable{cursor:pointer}@media (max-width:360px){.ihabdevteam-core-scope .pass-card,.ihabdevteam-core-scope .pass-card-frame{max-width:300px;width:100%}}.ihabdevteam-core-scope .pass-card--active{box-shadow:0 4px 16px rgba(0,0,0,.08)}.ihabdevteam-core-scope .pass-card--pending{box-shadow:0 2px 8px rgba(0,0,0,.05)}.ihabdevteam-core-scope .pass-card--expired{--color-main:var(--color-disabled);--color-sub:var(--color-whiteLine);--pass-card-expired-shape:var(--color-whiteLine);box-shadow:none}.ihabdevteam-core-scope [data-theme=dark] .pass-card--expired,.ihabdevteam-core-scope[data-theme=dark] .pass-card--expired,[data-theme=dark] .pass-card--expired .ihabdevteam-core-scope{--pass-card-expired-shape:hsla(0,0%,100%,.18)}@media (prefers-color-scheme:dark){.ihabdevteam-core-scope :root:not([data-theme=light]):not([data-theme=dark]) .pass-card--expired{--pass-card-expired-shape:hsla(0,0%,100%,.18)}}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg{background:var(--color-darkWhite)}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg__symbol{background:var(--pass-card-expired-shape)}.ihabdevteam-core-scope .pass-card--expired .pass-card__copyright,.ihabdevteam-core-scope .pass-card--expired .pass-card__plan,.ihabdevteam-core-scope .pass-card--expired .pass-card__price-area,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage-percent,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage-remaining{color:var(--color-gray)}.ihabdevteam-core-scope .pass-card.pass-card--expired:after{box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.5),inset -1px -1px 0 color-mix(in srgb,var(--color-gray) 10%,transparent)}.ihabdevteam-core-scope .pass-card:after{border-radius:inherit;box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.5),inset -1px -1px 0 rgba(73,156,223,.2);content:"";inset:0;pointer-events:none;position:absolute;z-index:2}.ihabdevteam-core-scope .pass-card__top{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;margin-top:-1.67cqw;position:relative;z-index:1}.ihabdevteam-core-scope .pass-card__top-left{align-items:flex-start;display:flex;flex-direction:column;gap:0}.ihabdevteam-core-scope .pass-card__logo{height:10.67cqw;-o-object-fit:contain;object-fit:contain;width:auto}.ihabdevteam-core-scope .pass-card__plan{color:var(--pass-card-text,var(--color-pureBlack));display:flex;flex-direction:column;gap:0;margin-top:-.67cqw;position:relative;text-align:left;z-index:1}.ihabdevteam-core-scope .pass-card__plan .h0{font-size:13.33cqw;line-height:1.3}.ihabdevteam-core-scope .pass-card .pass-card__plan-number{font-size:17.33cqw;letter-spacing:-1cqw;line-height:1}.ihabdevteam-core-scope .pass-card__plan .h5b{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__plan-unit{margin-left:.67cqw;position:relative;top:-.67cqw}.ihabdevteam-core-scope .pass-card__plan-suffix{margin-left:.67cqw;margin-top:0}.ihabdevteam-core-scope .pass-card .pass-card__copyright{color:var(--pass-card-text,var(--color-black));font-size:3.67cqw;line-height:1.36;margin:auto 0 0;position:relative;text-align:left;z-index:1}.ihabdevteam-core-scope .pass-card__price-area{align-items:flex-end;bottom:4.67cqw;display:flex;flex-direction:column;gap:0;position:absolute;right:6.67cqw;z-index:1}.ihabdevteam-core-scope .pass-card__price-area .h1{font-size:10.67cqw;line-height:1.375}.ihabdevteam-core-scope .pass-card__price-area .h5{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__usage{align-items:flex-end;bottom:4.67cqw;color:var(--pass-card-text,var(--color-black));display:flex;flex-direction:column;gap:0;position:absolute;right:6.67cqw;z-index:1}.ihabdevteam-core-scope .pass-card__usage-percent{align-items:baseline;display:inline-flex;font-size:3.67cqw;gap:0;line-height:1.36;opacity:.9}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-remaining{font-size:5cqw;line-height:1.53;opacity:.9}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-value{font-size:10.67cqw;line-height:1.2}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-symbol{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__discount{color:var(--pass-card-text,var(--color-pureBlack));font-size:4.67cqw;line-height:1.2;text-align:right;white-space:pre-line}.ihabdevteam-core-scope .pass-card__price{align-items:baseline;color:var(--pass-card-text,var(--color-pureBlack));display:inline-flex;gap:2cqw;text-align:right}.ihabdevteam-core-scope .pass-card__price-original{color:color-mix(in srgb,var(--pass-card-text,var(--color-pureBlack)) 75%,transparent);font-size:4.67cqw;line-height:1.57;text-decoration:line-through;text-decoration-thickness:1px}';ce(Ek);var Dk='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',Nk='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>',Tk='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',jk='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',Lk='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>',Mk='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',$k=".ihabdevteam-core-scope .pass-card-bg{border-radius:inherit;inset:0;overflow:hidden;pointer-events:none;position:absolute}:where(.ihabdevteam-core-scope){--pass-card-symbol-opacity:1}.ihabdevteam-core-scope .pass-card-bg__symbol{background:var(--symbol-url) center /contain no-repeat;height:48px;-webkit-mask:var(--symbol-url) center /contain no-repeat;mask:var(--symbol-url) center /contain no-repeat;position:absolute;right:12px;top:12px;width:48px}.ihabdevteam-core-scope .pass-card-bg__circle{border-radius:50%;opacity:1;opacity:var(--pass-card-symbol-opacity,.75);position:absolute}.ihabdevteam-core-scope .pass-card-bg__circle--1{height:340px;right:-150px;top:-140px;width:340px}.ihabdevteam-core-scope .pass-card-bg__circle--2{bottom:-90px;height:220px;right:-50px;width:220px}.ihabdevteam-core-scope .pass-card-bg__circle--3{bottom:-70px;height:140px;left:-40px;width:140px}.ihabdevteam-core-scope .pass-card-bg--default{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg--default .pass-card-bg__circle--1{background:var(--color-main)}.ihabdevteam-core-scope .pass-card-bg--default .pass-card-bg__circle--2{background:var(--color-sub)}.ihabdevteam-core-scope .pass-card-bg--default .pass-card-bg__circle--3{background:var(--color-main-a20)}.ihabdevteam-core-scope .pass-card-bg--blue{background:var(--color-deepMain)}.ihabdevteam-core-scope .pass-card-bg--blue .pass-card-bg__circle--1{background:var(--color-white-a30)}.ihabdevteam-core-scope .pass-card-bg--blue .pass-card-bg__circle--2,.ihabdevteam-core-scope .pass-card-bg--blue .pass-card-bg__circle--3{background:var(--color-white-a10)}.ihabdevteam-core-scope .pass-card-bg--dark{background:var(--color-softBlack)}.ihabdevteam-core-scope .pass-card-bg--dark .pass-card-bg__circle--1{background:var(--color-main)}.ihabdevteam-core-scope .pass-card-bg--dark .pass-card-bg__circle--2{background:var(--color-sub)}.ihabdevteam-core-scope .pass-card-bg--dark .pass-card-bg__circle--3{background:var(--color-white-a10)}";ce($k);var Rk=".ihabdevteam-core-scope .pass-card-bg-two-circle{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg-two-circle__c1,.ihabdevteam-core-scope .pass-card-bg-two-circle__c3{border-radius:50%;opacity:.75;opacity:var(--pass-card-symbol-opacity,.75);position:absolute}.ihabdevteam-core-scope .pass-card-bg-two-circle__c1{background:var(--color-main);height:340px;right:-150px;top:-140px;width:340px}.ihabdevteam-core-scope .pass-card-bg-two-circle__c3{background:var(--color-sub);bottom:-90px;height:220px;right:-50px;width:220px}.ihabdevteam-core-scope .pass-card-bg-two-circle__symbol{background:var(--color-darkWhite)}";ce(Rk);var zg='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 xo={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},Gu=new WeakMap;function Pk(e){if(e)return Gu.get(e)}function Ha(e,t){e&&(e.style.setProperty(xo.text,t.text),e.style.setProperty(xo.sub,t.sub),t.copyrightColor&&e.style.setProperty(xo.copyright,t.copyrightColor),Gu.set(e,t))}function Va(e){e&&(e.style.removeProperty(xo.text),e.style.removeProperty(xo.sub),e.style.removeProperty(xo.copyright),Gu.delete(e))}const Uu={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function qu(e={}){const t=Tt(Uu,Ha,Va);return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[r.jsx("div",{className:"pass-card-bg-two-circle__c1"}),r.jsx("div",{className:"pass-card-bg-two-circle__c3"}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${zg}")`}})]})}const Ig="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 zk=".ihabdevteam-core-scope .pass-card-bg-sound-move{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg-sound-move__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";ce(zk);var xn='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 Ik={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},Ok=[{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 t=Tt(Ik,Ha,Va),a="var(--color-main)",o=270,n=170;return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[r.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:Ok.map(({scale:i,opacity:l},c)=>r.jsx("g",{transform:`translate(${o} ${n}) scale(${i}) translate(-50 -50)`,opacity:l,children:r.jsx("path",{d:Ig,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}var Fk=".ihabdevteam-core-scope .pass-card-bg-sound-move-v1{background:linear-gradient(135deg,var(--color-main),var(--color-sub))}.ihabdevteam-core-scope .pass-card-bg-sound-move-v1__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";ce(Fk);const Hk={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},Vk=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Wk(e={}){const t=Tt(Hk,Ha,Va),a="#ffffff",o=270,n=170;return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[r.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:Vk.map(({scale:i,opacity:l},c)=>r.jsx("g",{transform:`translate(${o} ${n}) scale(${i}) translate(-50 -50)`,opacity:l,children:r.jsx("path",{d:Ig,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${zg}")`}})]})}var Gk=".ihabdevteam-core-scope .pass-card-bg-talk{align-items:center;background:var(--color-pureWhite);display:flex;justify-content:center}.ihabdevteam-core-scope .pass-card-bg-talk__shape{height:76px;position:absolute;width:76px}.ihabdevteam-core-scope .pass-card-bg-talk__shape--left{background:var(--color-main);border-radius:42px 42px 42px 4px;transform:translateX(-18px)}.ihabdevteam-core-scope .pass-card-bg-talk__shape--right{background:var(--color-sub);border-radius:50%;opacity:.7;transform:translateX(18px)}";ce(Gk);const Uk={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function qk(e={}){const t=Tt(Uk,Ha,Va);return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[r.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),r.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}const Yk={Logo_speechear_kr:{"":Li,_white:Dk,_textWhite:Nk,_black:Tk},Logo_speechearManager_kr:{"":Fu,_white:jk,_textWhite:Lk,_black:Mk}};function Kk(e,t){if(e)return Yk[e]?.[t??""]??void 0}const Zk={speechear:Li,manager:Fu},Xk={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},Fg=10;function Jk(e){return e<=0?0:e>=86400?Math.floor(e/86400)*86400:e>=3600?Math.floor(e/3600)*3600:e>=60?Math.floor(e/60)*60:Math.floor(e)}function Hg(e,t){if(e<=0)return t("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return t("passCard.remainingDay",{n:a});const o=Math.floor(e/3600);if(o>0)return t("passCard.remainingHour",{n:o});const n=Math.floor(e/60);return n>0?t("passCard.remainingMinute",{n}):t("passCard.remainingSecond",{n:Math.floor(e)})}function Qk(e,t,a){if(e==="manager"){const o=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),n=a==="\uC624\uD508\uD2B9\uAC00"||a===xt.t("passCard.specialLabel");return o?r.jsx(qk,{}):n?r.jsx(Wk,{}):r.jsx(Og,{})}return r.jsx(qu,{})}function Yu({ariaLabel:e,product:t,showPrice:a=!1,plan:o,type:n,endDate:i,remainingSeconds:l,endInclusive:c=!1,state:u="active",bg:d,bgOnly:h=!1,textColor:p,subColor:m,copyrightColor:C,logoSrc:v,label:f,price:g,originalPrice:x,discountLabel:b,onUse:w,onRefund:_,onDelete:A}){const{t:y}=_e.useTranslation(),B=t?Wu(t):void 0,k=n??B?.type??"speechear",S=o??B?.plan??y("passCard.planSuffix","\uC774\uC6A9\uAD8C"),E=f??B?.label,D=g??(a?B?.price:void 0),I=x??(a?B?.originalPrice:void 0),j=b??B?.discountLabel,W=s.useMemo(()=>{if(D)return null;const K=t?.durationDays??Sk(t?.code);if(!K||K<=0)return l!=null?{percent:null,remainingLabel:Hg(l,y)}:null;const ie=K*86400;let ue;if(l!=null)ue=l;else if((u==="active"||u==="expired")&&i){const le=new Date(i).getTime();if(Number.isNaN(le))return null;const he=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(i)),ve=/^(\d{4})-(\d{2})-(\d{2})/.exec(Ca()),G=Math.round(he&&ve?(Date.UTC(+he[1],+he[2]-1,+he[3])-Date.UTC(+ve[1],+ve[2]-1,+ve[3]))/864e5:(le-Date.now())/864e5);ue=Math.max(0,c?G+1:G)*86400}else u==="expired"?ue=0:ue=ie;const je=Jk(ue),ye=Math.max(0,Math.min(100,Math.floor(Math.min(je,ie)/ie*100)));return u==="pending"&&ye>=100?null:{percent:ye,remainingLabel:u==="expired"?y("passCard.expired","\uB9CC\uB8CC\uB428"):Hg(ue,y)}},[D,u,i,l,c,t?.durationDays,t?.code,y]),L=s.useRef(null),[M,z]=s.useState({}),[q,Y]=s.useState(null),P=!!(w||_||A),V=s.useRef(!1),$=s.useRef(void 0),[U,T]=s.useState(v);s.useLayoutEffect(()=>{T(v)},[v]),s.useLayoutEffect(()=>{const K=L.current;K&&(p!==void 0&&K.style.setProperty("--pass-card-text",p),m!==void 0&&K.style.setProperty("--pass-card-sub",m),C!==void 0&&K.style.setProperty("--pass-card-copyright",C))},[p,m,C]),s.useLayoutEffect(()=>{const K=L.current;if(!K)return;const ie=Pk(K);if(!v){const ue=Xk[k],je=u==="expired"?"_black":ie?.logoColor??"",ye=Kk(ue,je);T(ye)}},[d,v,k,u]);const F=K=>{const ie=L.current;if(!ie)return null;const{left:ue,top:je,width:ye,height:le}=ie.getBoundingClientRect(),he=(K.clientX-ue)/ye-.5;return{rotateX:-((K.clientY-je)/le-.5)*Fg,rotateY:he*Fg}},N=(K,ie)=>{const ue=ie*-.7,je=K*.7+10,ye=20+(Math.abs(K)+Math.abs(ie))*.4;return`${ue}px ${je}px ${ye}px rgba(0, 0, 0, 0.18)`},O=s.useCallback(K=>{if(fr())return;V.current=!0,clearTimeout($.current),$.current=setTimeout(()=>{V.current=!1},200);const ie=F(K);ie&&z({transform:`perspective(800px) rotateX(${ie.rotateX}deg) rotateY(${ie.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:N(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)"})},[]),H=s.useCallback(K=>{if(fr())return;const ie=F(K);if(!ie)return;const ue=V.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";z({transform:`perspective(800px) rotateX(${ie.rotateX}deg) rotateY(${ie.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:N(ie.rotateX,ie.rotateY),transition:ue})},[]),Z=s.useCallback(()=>{clearTimeout($.current),V.current=!1,z({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)"})},[]),te=s.useCallback(()=>Y(null),[]),se=s.useMemo(()=>{const K=y("passCard.planSuffix","\uC774\uC6A9\uAD8C"),ie=S.replace("\uC774\uC6A9\uAD8C","").replace(K==="\uC774\uC6A9\uAD8C"?"":K,"").trim(),ue=ie.match(/^(.*?)(일|년)$/);return ue?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"h0 pass-card__plan-number",children:ue[1]}),r.jsx("span",{className:"h5b pass-card__plan-unit",children:ue[2]==="\uB144"?y("passCard.unitYear","\uB144"):y("passCard.unitDay","\uC77C")})]}):r.jsx("span",{className:"h0",children:ie})},[S,y]),be=s.useMemo(()=>{const K=hr(D);if(!K)return null;const ie=K.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!ie)return r.jsx("span",{className:"h1",children:K});const[,ue,je,ye]=ie;return r.jsxs(r.Fragment,{children:[ue&&r.jsx("span",{className:"h5 pass-card__price-symbol",children:ue}),r.jsx("span",{className:"h1 pass-card__price-amount",children:je}),ye.trim()&&r.jsx("span",{className:"h5 pass-card__price-symbol",children:ye.trim()})]})},[D]),X=s.useCallback(()=>{P&&Y(K=>{if(K)return null;const ie=L.current?.getBoundingClientRect();if(!ie)return null;const ue=50;return{left:ie.left,right:ie.right,width:ie.width,height:ie.height,x:ie.x,y:ie.y+ue,top:ie.top+ue,bottom:ie.bottom+ue}})},[P]),re=s.useCallback(K=>{P&&(K.key==="Enter"||K.key===" ")&&(K.preventDefault(),X())},[P,X]),Ae=[{items:[...w?[{label:y("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{w(),Y(null)},closeOnSelect:!0}]:[],..._?[{label:y("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{_(),Y(null)},closeOnSelect:!0}]:[],...A?[{label:y("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{A(),Y(null)},closeOnSelect:!0}]:[]]}];return r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"pass-card-frame",children:r.jsxs("div",{ref:L,className:`pass-card pass-card--${u}${P?" pass-card--clickable":""}`,style:M,onMouseEnter:O,onMouseMove:H,onMouseLeave:Z,onPointerUp:K=>{K.pointerType==="touch"&&Z()},onPointerCancel:K=>{K.pointerType==="touch"&&Z()},onClick:X,onKeyDown:P?re:void 0,role:P?"button":void 0,tabIndex:P?0:void 0,"aria-label":e,"aria-haspopup":P?"menu":void 0,"aria-expanded":P?!!q:void 0,children:[d??Qk(k,S,E),!h&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"pass-card__top",children:r.jsxs("div",{className:"pass-card__top-left",children:[r.jsx("img",{src:U??Zk[k],className:"pass-card__logo",alt:k==="manager"?y("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):y("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),r.jsxs("div",{className:"pass-card__plan",children:[r.jsx("div",{children:se}),r.jsx("span",{className:"h5b pass-card__plan-suffix",children:E?y("passCard.labeledPlan",{label:E}):y("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),D?r.jsxs("div",{className:"pass-card__price-area",children:[j&&r.jsx("span",{className:"pass-card__discount body-3",children:j}),r.jsxs("div",{className:"pass-card__price",children:[I&&r.jsx("span",{className:"pass-card__price-original body-3",children:hr(I)}),be]})]}):W?r.jsxs("div",{className:"pass-card__usage",children:[r.jsx("span",{className:"h5b pass-card__usage-remaining",children:W.remainingLabel}),W.percent!=null&&r.jsxs("span",{className:"pass-card__usage-percent",children:[r.jsx("span",{className:"h1 pass-card__usage-value",children:W.percent}),r.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):r.jsx("div",{className:"pass-card__copyright caption-2","aria-hidden":"true",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),q&&r.jsx(xa,{anchorRect:q,onClose:te,ariaLabel:y("tooltip.menu","\uBA54\uB274"),children:r.jsx(xr,{columns:Ae,onClose:te,size:"small"})})]})}var e6=".ihabdevteam-core-scope .pass-card-bg-sound-line{background:linear-gradient(60deg,var(--color-pureWhite) 0,color-mix(in srgb,var(--color-sub) 15%,var(--color-pureWhite)) 100%)}.ihabdevteam-core-scope .pass-card-bg-sound-line__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";ce(e6);const t6={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function a6(e={}){const t=`passcard-sound-line-grad-${s.useId()}`,a=Tt(t6,Ha,Va);return r.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[r.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:[r.jsx("defs",{children:r.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[r.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),r.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),r.jsx("g",{transform:"translate(25, 45)",children:r.jsx("path",{d:"M -30 150 C 40 80, 100 220, 160 150 S 280 80, 340 150 S 460 220, 510 150",fill:"none",stroke:`url(#${t})`,strokeWidth:"50",strokeLinecap:"round"})})]}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}var o6=".ihabdevteam-core-scope .pass-card-bg-talk-v1{align-items:center;background:var(--color-pureWhite);display:flex;justify-content:center}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape{height:76px;position:absolute;width:76px}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape--left{background:linear-gradient(70deg,var(--color-main),var(--color-sub));border-radius:999px;height:92px;transform:translateX(0) rotate(120deg);width:180px}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape--right{background:var(--color-sub);border-radius:50%;height:60px;opacity:1;transform:translate(38px,12px);width:60px}";ce(o6);const r6={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function n6(e={}){const t=Tt(r6,Ha,Va);return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[r.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),r.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}function i6(e,t){if(e){if(t==="manager_pro")return r.jsx(n6,{});if(t==="manager_standard")return r.jsx(a6,{});if(t==="manager_lite")return r.jsx(Og,{})}}function s6(e){const t=hr(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,o,n,i]=a;return r.jsxs(r.Fragment,{children:[o&&r.jsx("span",{className:"payment-plan__pricing-symbol h4",children:o}),n,i.trim()&&r.jsx("span",{className:"payment-plan__pricing-symbol h4",children:i.trim()})]})}function Vg(e){const{t}=_e.useTranslation(),a=t("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),o=t("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:n,onSelect:i,period:l="monthly",ownedCodes:c}=e||{},u=_=>!!_&&!!c?.includes(_),d=_=>_.onceOnly??/오픈\s*특가/.test(_.label??""),h=(n.tiers||[]).some(_=>d(_)&&u(_.code)),p=_=>{const A=_.prices?_.prices[l]:_.price;return A?(n.tiers||[]).some(y=>!!y.badge&&y.originals?.[l]===A):!1},m=n.colorToken?`var(--color-${n.colorToken})`:"var(--color-gray)",C=t("payment.plan.freePrice","\uBB34\uB8CC"),v=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),f=_=>_.prices?_.prices[l]:_.price,g=(n.tiers||[]).length>0&&(n.tiers||[]).every(_=>{const A=f(_);return A==="\uBB34\uB8CC"||A===C||A==="0\uC6D0"||typeof A=="string"&&/\d/.test(A)&&!/[1-9]/.test(A)}),x=(n.tiers||[]).length>0&&(n.tiers||[]).every(_=>{const A=f(_);return A==="\uBB38\uC758"||A===v}),b=n.group==="org",w=b?"manager":"speechear";return r.jsxs("div",{className:"payment-plan__card",style:{borderColor:m,"--plan-color":m},children:[n.cardBadge&&r.jsx("div",{className:"payment-plan__card-badge",children:r.jsx(St,{label:n.cardBadge,variant:"main",size:"medium",fill:"soft"})}),r.jsxs("div",{className:"payment-plan__title",children:[r.jsx("p",{className:"payment-plan__quote body-3b",style:{color:m},children:n.quote||"\xA0"}),r.jsx("h3",{className:"payment-plan__title-heading h1",children:n.tier??n.title}),r.jsx("p",{className:"payment-plan__subtitle body-3",children:n.subtitle})]}),r.jsxs("div",{className:"payment-plan__box",children:[r.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),r.jsx("ul",{className:"payment-plan__feature-list",children:(n.recommendedFor||[]).map((_,A)=>r.jsxs("li",{className:"payment-plan__feature-item body-3",children:[r.jsx(ot,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:m}}),_]},A))})]}),r.jsxs("div",{className:"payment-plan__box",children:[r.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),r.jsx("ul",{className:"payment-plan__feature-list",children:(n.features||[]).map((_,A)=>r.jsxs("li",{className:"payment-plan__feature-item body-3",children:[r.jsx(ot,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:m}}),_]},A))})]}),r.jsx("div",{className:"payment-plan__card-pricing",children:g?null:x?r.jsx(Ce,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>n.tiers?.[0]&&i?.({...n.tiers[0],productId:n.id,productTitle:n.title})}):r.jsx(r.Fragment,{children:r.jsx("div",{className:"payment-plan__pricing-list",children:(n.tiers||[]).map(_=>{const A=_.label||a,y=d(_),B=y||_.openPromo===!0,k=A.replace(/^오픈\s*특가\s*/,"")||a,S=_.prices?_.prices[l]:_.price,E=_.badge?B?`${o}
|
|
851
|
+
`),this.name="StorageNotConfiguredError"}};function Ls(e){d8(e)}function Rn(e,t){if(!e)return null;const a=er();return a?.resolvePath?a.resolvePath(e,t):t?`${t}/${e}.mp3`:null}async function Ms(e){if(!e)return!1;const t=er();if(!t)throw new js("fileExists");if(t.exists)return t.exists(e);try{return await t.resolveUrl(e)!==null}catch{return!1}}async function zr(e){if(!e)return null;const t=er();if(!t)throw new js("getSignedOrPublicUrl");try{return await t.resolveUrl(e)}catch{return null}}async function Pn(e){const t=er();if(!t)throw new js("downloadSound");return t.download(e)}function $s(){return er()?.noiseBaseUrl??"/sounds/noise"}function Rs(){const e=Number(er()?.noiseFileGain);return Number.isFinite(e)&&e>0?e:1}function p8(e){const t=AbortSignal.timeout;if(typeof t=="function")return t.call(AbortSignal,e);const a=new AbortController;return setTimeout(()=>a.abort(),e),a.signal}const Ps="__ihab_core_tts_config__";function ph(e){globalThis[Ps]=e}function Ir(){return globalThis[Ps]?.urlResolver??null}function zs(){return globalThis[Ps]?.fallbackUrlResolver??null}const h8=new Map;function hh(){h8.clear()}const mh="__ihab_core_pronunciation_resolver__";function bh(e){globalThis[mh]=e}function Is(){return globalThis[mh]??null}let lo=null;const Or=new WeakMap,Os=new WeakMap,Fs=new WeakMap;let gh=!1;const fh=e=>Math.max(0,Math.min(1,Number.isFinite(e)?e:0));function m8(){if(gh||typeof document>"u")return;gh=!0;const e=()=>{try{lo&&lo.state!=="running"&&lo.resume()}catch{}};for(const t of["pointerdown","touchend","keydown"])document.addEventListener(t,e,{capture:!0,passive:!0})}function vh(){if(lo)return lo;try{const e=window.AudioContext||window.webkitAudioContext;return e?(lo=new e,m8(),lo):null}catch{return null}}function Fr(){try{lo?.resume()}catch{}}function Hs(e,t){const a=Or.get(t);if(a)return a;try{const o=e.createMediaElementSource(t),n=e.createGain(),i=e.createAnalyser();i.fftSize=1024,i.smoothingTimeConstant=.6,n.gain.value=fh(Os.get(t)??t.volume),o.connect(n),n.connect(i),n.connect(e.destination);try{t.volume=1}catch{}const l={gain:n,analyser:i};return Or.set(t,l),l}catch{return null}}function tr(e){if(!e)return Promise.resolve(null);const t=Or.get(e);if(t)return Promise.resolve(t.analyser);const a=vh();if(!a)return Promise.resolve(null);if(a.state==="running")return Promise.resolve(Hs(a,e)?.analyser??null);const o=Fs.get(e);if(o)return o;const n=Promise.resolve().then(()=>a.resume()).then(()=>a.state==="running"?Hs(a,e)?.analyser??null:null).catch(()=>null).finally(()=>{Fs.delete(e)});return Fs.set(e,n),n}function Vs(e){if(!e)return null;const t=Or.get(e);if(t)return t.analyser;const a=vh();return a?a.state==="running"?Hs(a,e)?.analyser??null:(tr(e),null):null}function $a(e,t){const a=fh(t);Os.set(e,a);const o=Or.get(e);if(o){try{e.volume!==1&&(e.volume=1)}catch{}const n=o.gain.gain;try{const i=o.gain.context.currentTime;n.cancelScheduledValues(i),n.setTargetAtTime(a,i,.01)}catch{try{n.value=a}catch{}}return"gain"}try{e.volume=a}catch{}return"element"}function ar(e){return Os.get(e)??e.volume}function Ws(e,t){e.getFloatTimeDomainData(t);let a=0;for(let o=0;o<t.length;o++){const n=t[o];a+=n*n}return Math.sqrt(a/t.length)}const Ch="__ihab_core_image_config__";function xh(e){globalThis[Ch]=e}function co(){return globalThis[Ch]??null}const Hr="word_image_existence_map_v1";let Ra=null,No=0,_h=-1,Vr=null,yh=-1,wh=new Set;const zn=new Map;function or(){if(Ra)return Ra;try{const e=typeof localStorage<"u"?localStorage.getItem(Hr):null,t=e?JSON.parse(e):null;Ra=t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{Ra={}}return Ra}let Gs=null;function b8(){Gs||(Gs=setTimeout(()=>{Gs=null;try{typeof localStorage<"u"&&Ra&&localStorage.setItem(Hr,JSON.stringify(Ra))}catch{}},200))}function In(e,t){return`${e}_${t??1}`}async function Wr(e,t){const a=or(),o=In(e,t);if(o in a)return a[o];if(zn.has(o))return zn.get(o);const n=co();if(!n)return!1;const i=n(e,t);if(!i)return!1;const l=fetch(i,{method:"HEAD",signal:p8(8e3)}).then(c=>c.status>=500?null:c.ok,()=>null).then(c=>(zn.delete(o),c===null?!1:(a[o]=c,No++,b8(),c)));return zn.set(o,l),l}function kh(e,t){const a=or(),o=In(e,t);return o in a?a[o]:void 0}async function Bh(e,t={}){const{force:a=!1,concurrency:o=16,onProgress:n}=t,i=or(),l=a?Array.from(new Set(e)):Array.from(new Set(e)).filter(u=>!(In(u)in i));let c=0;if(l.length>0){let u=0;const d=Array.from({length:Math.min(o,l.length)},async()=>{for(;u<l.length;){const h=u++,p=l[h],m=In(p);if(!a&&m in i){c++,n?.(c,l.length);continue}try{await Wr(p)}catch{}c++,n?.(c,l.length)}});await Promise.all(d)}try{typeof localStorage<"u"&&Ra&&localStorage.setItem(Hr,JSON.stringify(Ra))}catch{}return{checked:l.length,cached:Object.keys(i).length,total:e.length}}function On(){const e=or();if(_h===No)return Vr?{...Vr}:null;const t=Object.values(e);return Vr=t.length===0?null:{total:t.length,exists:t.filter(Boolean).length},_h=No,Vr?{...Vr}:null}function Ah(){const e=or();if(yh===No)return wh;const t=new Set;for(const a in e)e[a]===!0&&a.endsWith("_1")&&t.add(a.slice(0,-2));return wh=t,yh=No,t}function Sh(e){const t=or();Object.assign(t,e),No++;try{typeof localStorage<"u"&&localStorage.setItem(Hr,JSON.stringify(t))}catch{}}function Us(){Ra={},No++;try{typeof localStorage<"u"&&localStorage.removeItem(Hr)}catch{}}const g8={\u3131:"\u3131",\u3132:"\u3131",\u314B:"\u3131",\u3133:"\u3131",\u313A:"\u3131",\u3134:"\u3134",\u3135:"\u3134",\u3136:"\u3134",\u3137:"\u3137",\u3145:"\u3137",\u3146:"\u3137",\u3148:"\u3137",\u314A:"\u3137",\u314C:"\u3137",\u314E:"\u3137",\u3139:"\u3139",\u313C:"\u3139",\u313D:"\u3139",\u313E:"\u3139",\u3140:"\u3139",\u3141:"\u3141",\u313B:"\u3141",\u3142:"\u3142",\u314D:"\u3142",\u313F:"\u3142",\u3144:"\u3142",\u3147:"\u3147"},qs={\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"}};function f8(e,t){return(qs[e]?.glide??"")!==(qs[t]?.glide??"")}function To(e){return g8[e]??e}const pt=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],yt=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],Pt=["","\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 Ke(e){if(!e)return null;const t=e.charCodeAt(0)-44032;return t<0||t>=11172?null:{cho:Math.floor(t/588),jung:Math.floor(t%588/28),jong:t%28}}function Ys(){const e=new Map;return t=>{let a=e.get(t);return a||(a=[...t].map(o=>Ke(o)),e.set(t,a)),a}}function ka(e,t,a=0){return String.fromCharCode(44032+(e*21+t)*28+a)}function Ks(e,t){if(!e||!t||e===t||e.length!==t.length)return"random";let a=0,o=null;for(let n=0;n<e.length;n++){const i=Ke(e[n]),l=Ke(t[n]);if(!i||!l)return"random";if(i.cho===l.cho&&i.jung===l.jung&&i.jong===l.jong)continue;a++;const c=i.cho!==l.cho,u=i.jung!==l.jung,d=i.jong!==l.jong;(c?1:0)+(u?1:0)+(d?1:0)>1?o="multi":c?o="cho":u?o="jung":o="jong"}return a!==1?"random":o==="cho"?"cho":o==="jung"?"jung":o==="jong"?"jong":"random"}function Zs(e){const t=Ke(e[0]||"");return t?pt[t.cho]:""}function Xs(e){return[...e].map(t=>{const a=Ke(t);return a?pt[a.cho]:t}).join("")}function Js(e){return!!e&&[...e].every(t=>pt.includes(t))}function Eh(e,t){return t?(e=e.normalize("NFC"),t=t.normalize("NFC"),Js(t)?Xs(e).includes(t):e.toLowerCase().includes(t.toLowerCase())):!0}function Dh(e,t){return Qs(t)(e)}function Qs(e){if(!e)return()=>!0;e=e.normalize("NFC");const t=[...e],a=l=>pt.includes(l),o=l=>yt.includes(l),n=t.map(l=>a(l)?"cho":o(l)?"jung":Ke(l)?"syl":"other"),i=t.map(l=>Ke(l));if(n.includes("other")){const l=e.toLowerCase();return c=>c.normalize("NFC").toLowerCase().includes(l)}return l=>{const c=[...l.normalize("NFC")];for(let u=0;u+t.length<=c.length;u++){let d=!0;for(let h=0;h<t.length;h++){const p=c[u+h],m=n[h];if(m==="cho"){if(Zs(p)!==t[h]){d=!1;break}}else if(m==="jung"){const C=Ke(p);if(!C||yt[C.jung]!==t[h]){d=!1;break}}else{const C=i[h];if(C&&C.jong===0){const v=Ke(p);if(!v||v.cho!==C.cho||v.jung!==C.jung){d=!1;break}}else if(p!==t[h]){d=!1;break}}}if(d)return!0}return!1}}const Fn={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"]},Nh=Object.fromEntries(Object.entries(Fn).map(([e,t])=>[t.join(""),Pt[Number(e)]]));function v8(e,t){if(!e||!t)return!1;for(const a of e){const o=Ke(a);if(o){if(pt[o.cho]===t)return!0;if(o.jong>0){if(Pt[o.jong]===t)return!0;const n=Fn[o.jong];if(n&&n.includes(t))return!0}}}return!1}function Th(e,t){if(!e||!t)return!1;for(const a of e){const o=Ke(a);if(o&&pt[o.cho]===t)return!0}return!1}function jh(e,t){if(!e||!t)return!1;for(const a of e){const o=Ke(a);if(o&&yt[o.jung]===t)return!0}return!1}function Lh(e,t,a){const o=Pt[e];return o===t?!0:a==="phoneme"&&To(o)===To(t)}function Mh(e,t,a="glyph"){if(!e||!t)return!1;for(const o of e){const n=Ke(o);if(!(!n||n.jong<=0)&&Lh(n.jong,t,a))return!0}return!1}function jo(e){if(!e)return 0;let t=0;for(const a of e)Ke(a)&&t++;return t}function el(e){if(!e)return!1;let t=!1;for(const a of e){const o=Ke(a);if(o&&(t=!0,o.jong>0))return!1}return t}function tl(e,t,a){return e.jong<=0?!1:t.some(o=>Lh(e.jong,o,a))}function al(e,t,a,o="glyph"){if(!e)return!1;const n=[...e],i=l=>{const c=Ke(n[l]);if(!c||t.cho&&!t.cho.includes(pt[c.cho])||t.jung&&!t.jung.includes(yt[c.jung]))return!1;if(t.jongNone){if(c.jong>0)return!1}else if(t.jong&&!tl(c,t.jong,o))return!1;return!0};if(a==="head")return i(0);if(a==="tail")return i(n.length-1);if(a==="mid"){for(let l=1;l<n.length-1;l++)if(i(l))return!0;return!1}for(let l=0;l<n.length;l++)if(i(l))return!0;return!1}function $h(e,t,a,o="glyph"){if(!e)return!1;const n=[...e].map(Ke).filter(u=>!!u);if(n.length===0)return!1;const i=n.length-1;if(a==="head"){if(!t.cho)return!1;const u=pt[n[0].cho];return u!=="\u3147"&&t.cho.includes(u)}if(a==="tail")return t.jongNone?n[i].jong===0:t.jong?tl(n[i],t.jong,o):!1;const l=!t.cho||n.some((u,d)=>{if(d===0)return!1;const h=pt[u.cho];return h!=="\u3147"&&t.cho.includes(h)}),c=t.jongNone?n.some((u,d)=>d!==i&&u.jong===0):!t.jong||n.some((u,d)=>d!==i&&tl(u,t.jong,o));return!t.cho&&!t.jong&&!t.jongNone?!1:l&&c}function ol(e){return e.includes(",")||e.includes("_")}function Rh(e){if(e==="")return[{kind:"any"}];if(e.includes("_")){const t=[...e];if(t.length>4)return[{kind:"invalid"}];const a=t[0]??"_",o=t[1]??"_";let n=t.slice(2).join("");if(n.length===2){const i=Nh[n];if(!i)return[{kind:"invalid"}];n=i}return[{kind:"template",cho:a,jung:o,jong:n||"_"}]}return[...e].map(t=>Ke(t)?{kind:"syllable",ch:t}:pt.includes(t)?{kind:"cho",jamo:t}:yt.includes(t)?{kind:"jung",jamo:t}:{kind:"invalid"})}function C8(e,t){switch(t.kind){case"any":return!0;case"syllable":{const a=Ke(t.ch);if(!a)return e===t.ch;if(a.jong===0){const o=Ke(e);return!!o&&o.cho===a.cho&&o.jung===a.jung}return e===t.ch}case"cho":{const a=Ke(e);return!!a&&pt[a.cho]===t.jamo}case"jung":{const a=Ke(e);return!!a&&yt[a.jung]===t.jamo}case"template":{const a=Ke(e);return!(!a||t.cho!=="_"&&pt[a.cho]!==t.cho||t.jung!=="_"&&yt[a.jung]!==t.jung||t.jong!=="_"&&Pt[a.jong]!==t.jong)}case"invalid":return!1}}function rl(e,t){e=e.normalize("NFC"),t=t.normalize("NFC");const a=t.split(",").flatMap(n=>Rh(n.trim()));if(a.length===0)return!0;const o=[...e];if(o.length<a.length)return!1;for(let n=0;n+a.length<=o.length;n++)if(a.every((i,l)=>C8(o[n+l],i)))return!0;return!1}function Ph(e){const t=e.split(",").flatMap(i=>Rh(i.trim())),a=new Set,o=new Set,n=new Set;for(const i of t)switch(i.kind){case"cho":a.add(i.jamo);break;case"jung":o.add(i.jamo);break;case"template":i.cho!=="_"&&a.add(i.cho),i.jung!=="_"&&o.add(i.jung),i.jong!=="_"&&n.add(i.jong);break;case"syllable":{const l=Ke(i.ch);l&&(a.add(pt[l.cho]),o.add(yt[l.jung]),l.jong!==0&&n.add(Pt[l.jong]));break}}return a.size===0&&o.size===0&&n.size===0?null:{cho:a.size?[...a]:null,jung:o.size?[...o]:null,jong:n.size?[...n]:null}}function x8(e){return!!Ke(e)||pt.includes(e)||yt.includes(e)}function zh(e){const t=e.normalize("NFC").trim();if(!t)return{ok:!0};for(const a of t.split(",")){const o=a.trim();if(o!==""){if(o.includes("_")){const n=[...o];if(n.length>4)return{ok:!1};const i=n[0],l=n[1],c=n.slice(2).join(""),u=i===void 0||i==="_"||pt.includes(i),d=l===void 0||l==="_"||yt.includes(l),h=c===""||c==="_"||Pt.filter(Boolean).includes(c)||!!Nh[c];if(u&&d&&h)continue;return{ok:!1}}if(![...o].every(x8))return{ok:!1}}}return{ok:!0}}const _8={cho:pt.length,jung:yt.length,jong:Pt.length};function y8(e,t,a,o,n=1/0){if(!e||a<1)return[];const i=[...e].map(p=>Ke(p));if(i.some(p=>!p))return[];const l=i,c=l.length;if(a>c)return[];const u=_8[t],d=new Set,h=[];(function p(m,C){if(C.length===a){h.push([...C]);return}for(let v=m;v<c;v++)C.push(v),p(v+1,C),C.pop()})(0,[]);for(const p of h)if((function m(C,v){if(d.size>=n)return;if(C===p.length){const x=v.map(b=>ka(b.cho,b.jung,b.jong)).join("");x!==e&&o.has(x)&&d.add(x);return}const f=p[C],g=l[f][t];for(let x=0;x<u;x++){if(x===g)continue;const b=v.slice();if(b[f]={...v[f],[t]:x},m(C+1,b),d.size>=n)return}})(0,l),d.size>=n)break;return[...d]}function w8(e,t){if(!e||!t||e.length!==t.length)return-1;let a=0;for(let o=0;o<e.length;o++){const n=Ke(e[o]),i=Ke(t[o]);if(!n||!i)return-1;n.cho!==i.cho&&a++,n.jung!==i.jung&&a++,n.jong!==i.jong&&a++}return a}function Ih(e,t){const a=t.normalize("NFC").trim();if(!a||!/[^\s,_]/.test(a))return e;if(ol(a))return e.filter(u=>rl(u.word,a));const o=Qs(a),n=[...a].length,i=u=>!!u&&o(u.normalize("NFC").slice(0,n)),l=[],c=[];for(const u of e)(o(u.word)||o(u.pronunciation??""))&&(i(u.word)||i(u.pronunciation??"")?l:c).push(u);return l.concat(c)}const nl="word_pair_index_v2",il="word_pair_index_sig_v2";let Pa=null,Gr=null;function Oh(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(nl),t=localStorage.getItem(il);return!e||!t?null:{index:JSON.parse(e),sig:t}}catch{return null}}function k8(e,t){try{if(typeof localStorage>"u")return;localStorage.setItem(nl,JSON.stringify(e)),localStorage.setItem(il,t)}catch{}}function B8(e){const t=e.map(o=>`${o.word}|${o.pron??""}`).sort();let a=0;for(const o of t)for(let n=0;n<o.length;n++)a=(a<<5)-a+o.charCodeAt(n)|0;return`${t.length}-${a}`}async function A8(e,t){const a=new Set,o=[];for(const d of e){if(!d.word||a.has(d.word))continue;const h=d.pron||d.word,p=Array.from(h).map(Ke);p.some(m=>m===null)||p.length===Array.from(d.word).length&&(a.add(d.word),o.push({word:d.word,syls:p}))}const n={},i=o.length,l=new Map;for(const d of o){const h=d.syls.length;l.has(h)||l.set(h,[]),l.get(h).push(d)}let c=0;const u=["cho","jung","jong"];for(const d of l.values()){const h=d[0].syls.length;for(let p=0;p<h;p++)for(const m of u){const C=new Map;for(const v of d){let f="";for(let x=0;x<h;x++){x>0&&(f+="~");const b=v.syls[x];x===p?m==="cho"?f+=`*:${b.jung}:${b.jong}`:m==="jung"?f+=`${b.cho}:*:${b.jong}`:f+=`${b.cho}:${b.jung}:*`:f+=`${b.cho}:${b.jung}:${b.jong}`}let g=C.get(f);g||(g=[],C.set(f,g)),g.push(v)}for(const v of C.values())if(!(v.length<2))for(let f=0;f<v.length;f++){const g=v[f];for(let x=f+1;x<v.length;x++){const b=v[x];g.syls[p][m]!==b.syls[p][m]&&(n[g.word]||(n[g.word]={cho:[],jung:[],jong:[]}),n[b.word]||(n[b.word]={cho:[],jung:[],jong:[]}),n[g.word][m].push(b.word),n[b.word][m].push(g.word))}}}c+=d.length,t?.(c,i),await new Promise(p=>setTimeout(p,0))}return i>0&&t?.(i,i),n}let sl=0;async function Fh(e,t={}){const a=B8(e);if(!t.force){if(Pa&&Gr===a)return Pa;const i=Oh();if(i&&i.sig===a)return Pa=i.index,Gr=a,Pa}const o=++sl,n=await A8(e,t.onProgress);return o===sl&&(Pa=n,Gr=a,k8(n,a)),n}function Lo(){if(Pa)return Pa;const e=Oh();return e?(Pa=e.index,Gr=e.sig,Pa):null}function ll(){sl+=1,Pa=null,Gr=null;try{typeof localStorage<"u"&&(localStorage.removeItem(nl),localStorage.removeItem(il))}catch{}}const cl={cho:pt,jung:yt,jong:Pt},zt=e=>Array.isArray(e)?e.length>0:!!e;function Ur(e,t){if(e.length!==t.length)return!1;for(let a=0;a<e.length;a++){const o=e[a],n=t[a];if(!(!o||!n)&&(o.cho!==n.cho&&pt[o.cho]==="\u3147"!=(pt[n.cho]==="\u3147")||o.jung!==n.jung&&f8(yt[o.jung],yt[n.jung])||o.jong!==n.jong&&o.jong===0!=(n.jong===0)))return!0}return!1}function ul(e,t,a){const o=a.pronOf(e),n=a.decompOf,i=a.sameStructureOnly&&n?n(o):null,l=[];for(const c of t)c!==e&&(a.okSet&&!a.okSet.has(c)||a.pronOf(c)!==o&&(i&&n&&Ur(i,n(a.pronOf(c)))||l.push(c)));return l}function Hn(e,t,a){const o=t?.[e];if(!o)return[];const n=a.kind?o[a.kind]??[]:[...o.cho??[],...o.jung??[],...o.jong??[]];return ul(e,n,a)}function dl(e,t,a,o,n,i,l){const c=["cho","jung","jong"].filter(m=>zt(e[m])),u={};for(const m of c){const C=e[m];u[m]=new Set(Array.isArray(C)?C:[C])}const d=n==="pron",h=new Map;for(const m of t){const C=a(i(m));if(C.some(x=>!x))continue;let v=C;if(!d&&(v=a(m),v.length!==C.length||v.some(x=>!x)))continue;const f=C.length,g=h.get(f);g?g.push({w:m,dPron:C,dPos:v}):h.set(f,[{w:m,dPron:C,dPos:v}])}const p=new Map;for(const[m,C]of h){const v=new Map,f=(g,x)=>{const b=g.dPos[x];return b!=null&&c.every(w=>u[w].has(cl[w][b[w]]))};for(const g of C){let x;if(l==="head")x=f(g,0)?0:-1;else if(l==="tail")x=f(g,m-1)?m-1:-1;else if(l==="mid"){const w=c.includes("cho")?1:0,_=c.includes("jong")?m-2:m-1;x=-1;for(let A=w;A<=_;A++)if(f(g,A)){x=A;break}}else x=g.dPos.findIndex(w=>w!=null&&c.every(_=>u[_].has(cl[_][w[_]])));if(x<0)continue;const b=v.get(x);b?b.push(g):v.set(x,[g])}for(const[g,x]of v){const b=c.includes("cho"),w=c.includes("jung"),_=c.includes("jong"),A=B=>{let k="";for(let S=0;S<m;S++){const E=B[S];S===g?k+=(b?"*":E.cho)+"."+(w?"*":E.jung)+"."+(_?"*":E.jong)+".":k+=E.cho+"."+E.jung+"."+E.jong+"."}return k},y=new Map;for(const B of C){const k=A(B.dPron),S=y.get(k);S?S.push(B):y.set(k,[B])}for(const B of x){const k=y.get(A(B.dPron))??[],S=[];for(const E of k){if(E.w===B.w)continue;let D=!0;for(const I of c){const j=B.dPron[g][I],W=E.dPron[g][I];if(W===j){D=!1;break}if(d&&u[I].has(cl[I][W])){D=!1;break}}D&&(o&&Ur(B.dPron,E.dPron)||S.push(E.w))}p.set(B.w,S)}}}return p}function pl(e,t,a){return!(e>0)||!(t>0)?1:Math.max(1,Math.floor((e+a)/(t+a)))}function hl(e,t){if(!(e>0))return 1;const a=Math.max(1,Math.floor(t));if(e<=a)return e;const o=Math.ceil(e/a);return Math.max(1,Math.ceil(e/o))}const Vn=0,Hh=1,Mo=2,ml=3,S8=4,Wn=5,bl=6,Gn=7,E8=8,gl=9,rr=10,D8=11,qr=12,N8=13,Yr=14,Un=15,qn=16,Kr=17,T8=18,Ba=0,Za=1,j8=3,uo=4,fl=5,Zr=6,za=7,Ft=8,Vh=9,Wh=10,Yn=11,Gh=12,vl=13,nr=15,Kn=16,Xa=17,Uh=18,Cl=21,xl=27,L8=20,M8={1:Vn,2:Hh,4:Mo,7:ml,8:Wn,16:bl,17:Gn,19:gl,20:rr,22:qr,23:Yr,24:Un,25:qn,26:Kr},$8={[j8]:[Za,rr],[fl]:[uo,qr],[Vh]:[Ft,Vn],[Wh]:[Ft,bl],[Yn]:[Ft,Gn],[Gh]:[Ft,rr],[vl]:[Ft,qn],14:[Ft,Kr],[Uh]:[Xa,rr]},R8={[Zr]:Mo,[nr]:Wn},_l={2:Za,24:Za,3:Za,9:Za,5:uo,6:uo,19:za,20:za,22:za,23:za,25:za,27:za,11:Ft,12:Ft,13:Ft,15:Ft,10:Kn,14:Xa,18:Xa,26:Xa},qh={[Vn]:Un,[ml]:qn,[Gn]:Kr,[qr]:Yr},Yh={[Vn]:Hh,[ml]:S8,[Gn]:E8,[gl]:rr,[qr]:N8},P8=new Set([fl,Wh,Yn,Gh,vl,nr,Uh]),z8=new Set(["\uBC1F"]);function Kh(e){const t=(e??"").trim();if(!t)return"";const a=[...t],o=a.map(Ke);if(o.some(i=>i===null))return t;const n=o;for(let i=0;i<n.length;i++){const l=n[i],c=n[i+1],u=l.jong;if(!c){l.jong=_l[l.jong]??l.jong;break}if(l.jong===Ba)continue;if(c.cho===D8){if(c.jung===L8){if(l.jong===za){l.jong=Ba,c.cho=qr;continue}if(l.jong===25){l.jong=Ba,c.cho=Yr;continue}if(l.jong===vl){l.jong=Ft,c.cho=Yr;continue}}if(l.jong===xl){l.jong=Ba;continue}const h=R8[l.jong];if(h!==void 0){l.jong=Ba,c.cho=h;continue}const p=$8[l.jong];if(p){l.jong=p[0],c.cho=p[1];continue}const m=M8[l.jong];m!==void 0&&(l.jong=Ba,c.cho=m);continue}if((l.jong===xl||l.jong===Zr||l.jong===nr)&&qh[c.cho]!==void 0){c.cho=qh[c.cho],l.jong=l.jong===Zr?uo:l.jong===nr?Ft:Ba;continue}if((l.jong===xl||l.jong===Zr||l.jong===nr)&&c.cho===gl){c.cho=rr,l.jong=l.jong===Zr?uo:l.jong===nr?Ft:Ba;continue}if(c.cho===T8){if(l.jong===fl){l.jong=uo,c.cho=Yr;continue}if(l.jong===Vh){l.jong=Ft,c.cho=Un;continue}if(l.jong===Yn){l.jong=Ft,c.cho=Kr;continue}const h=_l[l.jong]??l.jong;if(h===Za){l.jong=Ba,c.cho=Un;continue}if(h===za){l.jong=Ba,c.cho=qn;continue}if(h===Xa){l.jong=Ba,c.cho=Kr;continue}}let d=_l[l.jong]??l.jong;u===Yn&&z8.has(a[i])&&(d=Xa),l.jong=d,Yh[c.cho]!==void 0&&(d===Za||d===za||d===Xa||P8.has(u))&&(c.cho=Yh[c.cho]),(c.cho===Mo||c.cho===bl)&&(l.jong===Za?l.jong=Cl:l.jong===za?l.jong=uo:l.jong===Xa&&(l.jong=Kn)),c.cho===Wn?l.jong===uo?l.jong=Ft:l.jong===Kn||l.jong===Cl?c.cho=Mo:l.jong===Za?(l.jong=Cl,c.cho=Mo):l.jong===Xa&&(l.jong=Kn,c.cho=Mo):l.jong===Ft&&c.cho===Mo&&(c.cho=Wn)}return n.map(i=>ka(i.cho,i.jung,i.jong)).join("")}const ir=/[ㄱ-ㅎ]/,I8=/[ㅏ-ㅣ]/;function Xr(e){e=e.normalize("NFC");for(let t=e.length-1;t>=0;t--){const a=e[t],o=a.charCodeAt(0);if(o>=44032&&o<=55203||ir.test(a)||I8.test(a))return a}return null}function yl(e){const t=Xr(e);if(!t)return"\uAC00";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":ir.test(t)?"\uC774":"\uAC00"}function wl(e){return`${e}${yl(e)}`}function kl(e){const t=Xr(e);if(!t)return"\uB97C";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":ir.test(t)?"\uC744":"\uB97C"}function Bl(e){return`${e}${kl(e)}`}function Al(e){const t=Xr(e);if(!t)return"\uB294";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC740":"\uB294":ir.test(t)?"\uC740":"\uB294"}function Zh(e){return`${e}${Al(e)}`}function Sl(e){const t=Xr(e);if(!t)return"\uC640";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uACFC":"\uC640":ir.test(t)?"\uACFC":"\uC640"}function Xh(e){return`${e}${Sl(e)}`}function El(e){const t=Xr(e);if(!t)return"\uB85C";const a=t.charCodeAt(0);if(a>=44032&&a<=55203){const o=(a-44032)%28;return o===0||o===8?"\uB85C":"\uC73C\uB85C"}return t==="\u3139"?"\uB85C":ir.test(t)?"\uC73C\uB85C":"\uB85C"}function Jh(e){return`${e}${El(e)}`}function Dl(e,t,a){const o=e.slice(),[n]=o.splice(t,1);return o.splice(a,0,n),o}function nt(e,t=Math.random){const a=e.slice();for(let o=a.length-1;o>0;o--){const n=Math.floor(t()*(o+1));[a[o],a[n]]=[a[n],a[o]]}return a}function Aa(e,t,a=Math.random){return!Array.isArray(e)||e.length===0||t<=0?[]:t>=e.length?nt(e,a):nt(e,a).slice(0,t)}const sr={SAME_SOUND_PICK:{difficulty:!0,choseong:!0,group:"discrimination"},SAME_OR_DIFF:{difficulty:!0,choseong:!0,group:"discrimination"},HEAR_AND_PICK_SAME:{difficulty:!0,choseong:!0,group:"discrimination"},HEAR_AND_PICK_INCLUDED:{difficulty:!0,choseong:!0,group:"discrimination"},STARTS_WITH_SAME_SOUND:{difficulty:!1,choseong:!0,group:"discrimination"},LISTEN_AND_REMEMBER_ORDER:{difficulty:!1,choseong:!0,group:"attention"},MERGE_2_SYLLABLES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_3_SYLLABLES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_2_PHONEMES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_3_PHONEMES:{difficulty:!1,choseong:!0,group:"synthesis"},DROP_1_FROM_2SYLL:{difficulty:!1,choseong:!0,group:"deletion"},DROP_1_FROM_3SYLL:{difficulty:!1,choseong:!0,group:"deletion"},DROP_PART_FROM_COMPOUND:{difficulty:!1,choseong:!0,group:"deletion"},DROP_FINAL_CONSONANT_FROM_1SYLL:{difficulty:!1,choseong:!0,group:"deletion"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{difficulty:!1,choseong:!0,group:"deletion"},CHANGE_1_SYLL_IN_2SYLL:{difficulty:!0,choseong:!0,group:"substitution"},CHANGE_1_SYLL_IN_3SYLL:{difficulty:!0,choseong:!0,group:"substitution"},CHANGE_1_PHONEME_IN_1SYLL:{difficulty:!1,choseong:!0,group:"substitution"},CHANGE_1_PHONEME_IN_2SYLL:{difficulty:!0,choseong:!0,group:"substitution"}};function O8(e){const t=e?sr[e]?.group:void 0;return t==="synthesis"||t==="deletion"||t==="substitution"?t:null}const Nl=pt.indexOf("\u3147"),lr={DROP_FINAL_CONSONANT_FROM_1SYLL:{syllables:1,syllable:e=>e.jong>0},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{syllables:1,syllable:e=>e.jong===0&&e.cho!==Nl},MERGE_2_SYLLABLES:{syllables:2,syllable:()=>!0},MERGE_3_SYLLABLES:{syllables:3,syllable:()=>!0},MERGE_2_PHONEMES:{syllables:1,syllable:e=>e.jong===0&&e.cho!==Nl},MERGE_3_PHONEMES:{syllables:1,syllable:e=>e.jong>0&&!Fn[e.jong]&&e.cho!==Nl}},F8=new Set([]);function Qh(e){return e in lr}function em(e,t){const a=lr[e];if(!a)return!0;const o=[...t];if(o.length!==a.syllables)return!1;const n=Ke(o[0]);return!!n&&a.syllable(n)}function tm(e){return F8.has(e)}function H8(e){const t=e.charCodeAt((e.length||1)-1)||0;return t<44032||t>55203||(t-44032)%28===0?"\uC640":"\uACFC"}function Jr(e){const t=e.charCodeAt((e.length||1)-1)||0;return t<44032||t>55203||(t-44032)%28===0?"\uB97C":"\uC744"}function Tl(e){const t=e.charCodeAt((e.length||1)-1)||0;if(t<44032||t>55203)return"\uB85C";const a=(t-44032)%28;return a===0||a===8?"\uB85C":"\uC73C\uB85C"}function am(e){const t=e.charAt((e.length||1)-1),a=t.charCodeAt(0)||0;return a>=44032&&a<=55203?(a-44032)%28===0?"\uAC00":"\uC774":/[ㄱ-ㅎ]/.test(t)?"\uC774":"\uAC00"}const jl={\u3131:"\uAE30\uC5ED",\u3132:"\uC30D\uAE30\uC5ED",\u3134:"\uB2C8\uC740",\u3137:"\uB514\uADFF",\u3138:"\uC30D\uB514\uADFF",\u3139:"\uB9AC\uC744",\u3141:"\uBBF8\uC74C",\u3142:"\uBE44\uC74D",\u3143:"\uC30D\uBE44\uC74D",\u3145:"\uC2DC\uC637",\u3146:"\uC30D\uC2DC\uC637",\u3147:"\uC774\uC751",\u3148:"\uC9C0\uC752",\u3149:"\uC30D\uC9C0\uC752",\u314A:"\uCE58\uC753",\u314B:"\uD0A4\uC754",\u314C:"\uD2F0\uC755",\u314D:"\uD53C\uC756",\u314E:"\uD788\uC757",\u3133:"\uAE30\uC5ED\uC2DC\uC637",\u3135:"\uB2C8\uC740\uC9C0\uC752",\u3136:"\uB2C8\uC740\uD788\uC757",\u313A:"\uB9AC\uC744\uAE30\uC5ED",\u313B:"\uB9AC\uC744\uBBF8\uC74C",\u313C:"\uB9AC\uC744\uBE44\uC74D",\u313D:"\uB9AC\uC744\uC2DC\uC637",\u313E:"\uB9AC\uC744\uD2F0\uC755",\u313F:"\uB9AC\uC744\uD53C\uC756",\u3140:"\uB9AC\uC744\uD788\uC757",\u3144:"\uBE44\uC74D\uC2DC\uC637",\u314F:"\uC544",\u3150:"\uC560",\u3151:"\uC57C",\u3152:"\uC598",\u3153:"\uC5B4",\u3154:"\uC5D0",\u3155:"\uC5EC",\u3156:"\uC608",\u3157:"\uC624",\u3158:"\uC640",\u3159:"\uC65C",\u315A:"\uC678",\u315B:"\uC694",\u315C:"\uC6B0",\u315D:"\uC6CC",\u315E:"\uC6E8",\u315F:"\uC704",\u3160:"\uC720",\u3161:"\uC73C",\u3162:"\uC758",\u3163:"\uC774"};function om(e){if([...e].length!==1)return[e];const t=Ke(e);if(!t)return[e];const a=[pt[t.cho],yt[t.jung]];return t.jong!==0&&a.push(Pt[t.jong]),a}function Ll(e,t=!1){const a=e.filter(Boolean);if(a.length<2)return"";const o=c=>jl[c]??c,n=a.slice(0,-1).map(c=>`"${c}"${H8(o(c))}`).join(" "),i=a[a.length-1],l=`"${i}"${Jr(o(i))}`;return`${n} ${l} \uD569\uCE58\uBA74 \uC5B4\uB5A4 ${t?"\uC18C\uB9AC":"\uB2E8\uC5B4"}\uAC00 \uB418\uB098\uC694?`}function V8(e,t){return Ll(t,e==="MERGE_2_PHONEMES"||e==="MERGE_3_PHONEMES")}const Ml=e=>jl[e]??e,W8={cho:"\uCD08\uC131",jung:"\uBAA8\uC74C",jong:"\uBC1B\uCE68"};function G8(e,t){const a=(u,d)=>{const h=[...u].length===1?Ke(u):null,p=[...d].length===1?Ke(d):null;if(!h||!p)return null;const m=["cho","jung","jong"].filter(C=>h[C]!==p[C]);return m.length===1?{part:m[0],sx:h,sy:p}:null},o=a(e,t)??a(Qr(e),Qr(t));if(!o)return null;const n=o.part==="cho"?pt:o.part==="jung"?yt:Pt,i=n[o.sx[o.part]],l=n[o.sy[o.part]],c=o.part==="jong"&&!i?"add":o.part==="jong"&&!l?"remove":"swap";return{part:o.part,from:i,to:l,kind:c}}function U8(e,t){const a=String(t?.word??t?.original??""),o=String(t?.changedFrom??""),n=String(t?.changedTo??"");if(e==="CHANGE_1_PHONEME_IN_1SYLL"||e==="CHANGE_1_PHONEME_IN_2SYLL"){const i=e==="CHANGE_1_PHONEME_IN_1SYLL",l=i?o||a:o,c=G8(l,n);if(c){const u=i?`"${a}"`:`"${a}"\uC758 "${l}"`,d=c.kind==="add"?"\uC5D0":"\uC5D0\uC11C",h=`"${c.from}"${Jr(Ml(c.from))}`,p=`"${c.to}"${Tl(Ml(c.to))}`;return c.kind==="add"?`${u}${d} \uBC1B\uCE68 "${c.to}"${Jr(Ml(c.to))} \uB354\uD558\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`:c.kind==="remove"?`${u}${d} \uBC1B\uCE68 ${h} \uBE7C\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`:`${u}${d} ${W8[c.part]} ${h} ${p} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`}}return e==="CHANGE_1_PHONEME_IN_1SYLL"?`"${a}"${Jr(a)} "${n}"${Tl(n)} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`:`"${a}"\uC5D0\uC11C "${o}"${Jr(o)} "${n}"${Tl(n)} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`}function q8(e,t){const a=String(t?.word??t?.original??t?.base??""),o=String(t?.dropped??"");if(e==="DROP_FINAL_CONSONANT_FROM_1SYLL")return`"${a}"\uC5D0\uC11C \uBC1B\uCE68\uC774 \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uB9D0\uC774 \uB418\uB098\uC694?`;if(e==="REMOVE_CONSONANT_AND_IDENTIFY_PHONEME"){const n=String(t?.missingConsonant??"");return`"${a}"\uC5D0\uC11C "${n}"${am(n)} \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB418\uB098\uC694?`}return`"${a}"\uC5D0\uC11C "${o}"${am(o)} \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uB9D0\uC774 \uB418\uB098\uC694?`}function rm(e,t,a){switch(O8(e)){case"synthesis":return V8(e,a);case"substitution":return U8(e,t);case"deletion":return q8(e,t);default:return""}}function nm(e){return e.replace(/"([ㄱ-ㅣ])"(으로|와|과|을|를|이|가|은|는|로)?/g,(t,a,o)=>{const n=jl[a];if(!n)return t;if(!o)return`"${n}"`;const i=(n.charCodeAt(n.length-1)-44032)%28,l=i!==0;let c=o;return o==="\uC640"||o==="\uACFC"?c=l?"\uACFC":"\uC640":o==="\uC744"||o==="\uB97C"?c=l?"\uC744":"\uB97C":o==="\uC774"||o==="\uAC00"?c=l?"\uC774":"\uAC00":o==="\uC740"||o==="\uB294"?c=l?"\uC740":"\uB294":(o==="\uC73C\uB85C"||o==="\uB85C")&&(c=i===0||i===8?"\uB85C":"\uC73C\uB85C"),`"${n}"${c}`})}const Y8=e=>e==null?[]:Array.isArray(e)?e:[e];function Qr(e){if([...e].length!==1)return"";const t=Ke(e);if(!t)return"";const a=To(Pt[t.jong]),o=a===""?0:Pt.indexOf(a);return ka(t.cho,t.jung,o<0?0:o)}function Zn(e,t){return t.get(e)||Qr(e)||e}function cr(e){return e?zt(e.cho)?"cho":zt(e.jung)?"jung":zt(e.jong)?"jong":null:null}function Ja(e,t){const a=(n,i)=>!zt(n)||Y8(n).includes(i),o=t.jongNone?e.jong===0:a(t.jong,Pt[e.jong]);return a(t.cho,pt[e.cho])&&a(t.jung,yt[e.jung])&&o}function $o(e,t,a){const o=[...e];if(a!=="pron")return o.map(i=>Ke(i));const n=[...t.get(e)||e];return n.length!==o.length?o.map(i=>Ke(i)):n.map(i=>Ke(i))}function Ro(e,t,a,o,n){const i=t==="cho"?pt:t==="jung"?yt:Pt,l=e[t],c=[],u=p=>t==="jung"?Z8(Zn(p,n)):Zn(p,n),d=new Map([[u(a),-1]]),h=nt(i.map((p,m)=>m).filter(p=>p!==l&&(t!=="cho"||i[p]!=="\u3147")&&(t!=="jong"||p!==0)));for(const p of h){if(c.length>=o)break;const m=t==="cho"?ka(p,e.jung,e.jong):t==="jung"?ka(e.cho,p,e.jong):ka(e.cho,e.jung,p),C=u(m),v=d.get(C);if(v!==void 0){t==="jung"&&v>=0&&n.has(m)&&!n.has(c[v])&&(c[v]=m);continue}d.set(C,c.length),c.push(m)}return c}const K8={\u3154:"\u3150",\u3156:"\u3152",\u315A:"\u3159",\u315E:"\u3159"};function Z8(e){if([...e].length!==1)return e;const t=Ke(e);if(!t)return e;const a=K8[yt[t.jung]];return a?ka(t.cho,yt.indexOf(a),t.jong):e}function $l(e,t,a,o,n,i=null){const l=[...e];if(l.length!==2)return null;const c=l.map(p=>Ke(p));if(c.some(p=>!p))return null;const u=$o(e,a,o);if(u.some(p=>!p))return null;const d=cr(t);let h=d&&t?u.map((p,m)=>Ja(p,t)?m:-1).filter(p=>p>=0):[0,1];if(i!=null&&(h=h.filter(p=>p!==i)),!h.length)return null;for(const p of nt(h)){const m=l[p];if(!n.has(m))continue;const C=Ro(c[p],d??"cho",m,40,a),v=[];for(const f of C)if(f!==m&&n.has(f)&&!v.includes(f)&&v.push(f),v.length>=2)break;if(!(v.length<2))return{question:e,distractors:[m,...v]}}return null}function Rl(e,t,a,o,n,i=null){const l=[...e];if(l.length!==3)return null;const c=l.map(p=>Ke(p));if(c.some(p=>!p))return null;const u=$o(e,a,o);if(u.some(p=>!p))return null;const d=cr(t),h=d&&t?u.map((p,m)=>Ja(p,t)?m:-1).filter(p=>p>=0):[0,1,2];if(!h.length)return null;for(const p of nt(h))for(const m of nt([0,1,2].filter(C=>C!==p&&(i==null||C===i)))){const C=[0,1,2].filter(b=>b!==m),v=C.map(b=>l[b]).join("");if(!n.has(v))continue;const f=C.indexOf(p),g=Ro(c[p],d??"cho",l[p],40,a),x=[];for(const b of g){const w=C.map(A=>l[A]);w[f]=b;const _=w.join("");if(_!==v&&n.has(_)&&!x.includes(_)&&x.push(_),x.length>=2)break}if(!(x.length<2))return{question:e,distractors:[v,...x]}}return null}function Pl(e,t,a,o,n,i=null){const l=[...e],c=l.length;if(c<2)return null;const u=[];for(let h=1;h<=c-1;h++)u.push({remain:l.slice(0,h).join(""),dropped:l.slice(h).join(""),droppedEnd:1}),u.push({remain:l.slice(c-h).join(""),dropped:l.slice(0,c-h).join(""),droppedEnd:0});const d=cr(t);for(const{remain:h,dropped:p,droppedEnd:m}of nt(u)){if(i!=null&&m!==i||[...h].length===1&&[...p].length===1||h===e||!n.has(h)||!n.has(p))continue;const C=[...h],v=C.map(x=>Ke(x));if(v.some(x=>!x))continue;const f=$o(h,a,o);if(f.some(x=>!x))continue;const g=d&&t?f.map((x,b)=>Ja(x,t)?b:-1).filter(x=>x>=0):C.map((x,b)=>b);if(g.length)for(const x of nt(g)){const b=Ro(v[x],d??"cho",C[x],40,a),w=[];for(const _ of b){const A=[...C];A[x]=_;const y=A.join("");if(y!==h&&n.has(y)&&!w.includes(y)&&w.push(y),w.length>=2)break}if(w.length>=2)return{question:e,distractors:[h,...w],dropped:p}}}return null}function zl(e,t,a,o,n,i=null){if([...e].length!==1)return null;const l=Ke(a.get(e)||e);if(!l||l.jong===0)return null;const c=ka(l.cho,l.jung,0),u=Ro({cho:l.cho,jung:l.jung,jong:0},"cho",c,2,a);return u.length<2?null:{question:e,distractors:[c,...u]}}const Il=pt.indexOf("\u3147");function Ol(e,t,a,o,n,i=null){if([...e].length!==1)return null;const l=Ke(a.get(e)||e);if(!l||l.jong!==0||l.cho===Il)return null;const c=ka(Il,l.jung,0),u=Ro({cho:Il,jung:l.jung,jong:0},"jung",c,2,a);return u.length<2?null:{question:e,distractors:[c,...u]}}function Fl(e){const t=new Map;for(const a of e){const o=[...a],n=o.length;if(!(n<2||n>3))for(let i=0;i<n;i++){let l=n+"|"+i+"|";for(let u=0;u<n;u++)l+=u===i?"*":o[u];const c=t.get(l);c?c.push(a):t.set(l,[a])}}return t}function Hl(e,t,a,o,n,i=null,l=null,c=2){const u=[...e],d=u.length;if(d<2||d>3)return null;const h=u.map(b=>Ke(b));if(h.some(b=>!b))return null;const p=$o(e,a,o);if(p.some(b=>!b))return null;const m=b=>a.get(b)??b,C=m(e),v=!!t&&(zt(t.cho)||zt(t.jung)||zt(t.jong)),f=!!l&&(zt(l.cho)||zt(l.jung)||zt(l.jong)),g=b=>{let w=d+"|"+b+"|";for(let _=0;_<d;_++)w+=_===b?"*":u[_];return w};let x;if(i!=null){if(i>=d||v&&!Ja(p[i],t))return null;x=[i]}else v?x=p.map((b,w)=>Ja(b,t)?w:-1).filter(b=>b>=0):x=Array.from({length:d},(b,w)=>w);for(const b of nt(x)){const w=n.get(g(b))??[],_=[],A=[];for(const E of w){if(E===e)continue;const D=[...E].map(L=>Ke(L)),I=h[b],j=D[b];if(!I||!j)continue;let W=0;if(I.cho!==j.cho&&W++,I.jung!==j.jung&&W++,I.jong!==j.jong&&W++,!(W<c||m(E)===C))if(f){const L=$o(E,a,o)[b];L&&Ja(L,l)?_.push(E):A.push(E)}else _.push(E)}if(!_.length)continue;const y=nt(_)[0],B=[],k=new Set([C,m(y)]),S=f?A:_.filter(E=>E!==y);for(const E of nt(S)){const D=m(E);if(!k.has(D)&&(k.add(D),B.push(E),B.length>=2))break}if(!f&&B.length<2)for(const E of nt(w)){if(E===e||E===y)continue;const D=m(E);if(!k.has(D)&&(k.add(D),B.push(E),B.length>=2))break}if(!(B.length<2))return{question:e,distractors:[y,...B]}}return null}const X8=()=>{const e="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",t=typeof xt?.t=="function"?xt.t("common.unknownError",{defaultValue:e}):void 0;return typeof t=="string"&&t?t:e};function en(e,t){if(t===void 0&&(t=X8()),e instanceof Error)return e.message||t;if(typeof e=="string")return e||t;if(e&&typeof e=="object"){const a=e;for(const o of[a.message,a.error_description,a.error])if(typeof o=="string"&&o)return o}return t}const Xn="\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.",J8=()=>{const e=typeof xt?.t=="function"?xt.t("common.networkError",{defaultValue:Xn}):void 0;return typeof e=="string"&&e?e:Xn};function Vl(e){return e?/failed to fetch|load failed|networkerror|network request failed|fetcherror/i.test(e):!1}function im(e){return Vl(e)?J8():e}function sm(e,t){return e==="id"?void 0:`${e}|${t?"asc":"desc"}`}function lm(e){const[t,a]=e.split("|");return{key:t,asc:a==="asc"}}function cm(e){let t=e==null?"":String(e);return!(typeof e=="number"&&Number.isFinite(e))&&/^[=+\-@\t\r]/.test(t)&&(t="'"+t),/[",\n\r]/.test(t)?`"${t.replaceAll('"','""')}"`:t}const Q8=1e3;function um(e,t){const a=new Blob([t.startsWith("\uFEFF")?t:"\uFEFF"+t],{type:"text/csv;charset=utf-8"}),o=URL.createObjectURL(a),n=document.createElement("a");n.href=o,n.download=e,n.click(),setTimeout(()=>URL.revokeObjectURL(o),Q8)}const dm="__ihab_core_word_pool__";function e3(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("wordpool:update"))}function pm(e,t){const a=new Map;for(const n of e)a.set(n.word,n);const o={entries:e,pairIndex:t??null,byWord:a};globalThis[dm]=o,e3()}function Po(){return globalThis[dm]??null}const ur=globalThis;function Wl(e,t){const a=o=>{};try{const o=t();o&&typeof o.catch=="function"&&o.catch(a)}catch(o){a(o)}}function hm(e){ur.__ihabTrainingTimeLogger=e}function Gl(e){Wl("time",()=>ur.__ihabTrainingTimeLogger?.(e))}function mm(e){ur.__ihabTrainingCompletionLogger=e}function Ul(e){Wl("completion",()=>ur.__ihabTrainingCompletionLogger?.(e))}function bm(e){ur.__ihabCrosswordLogger=e}function gm(e){Wl("crossword",()=>ur.__ihabCrosswordLogger?.(e))}function Jn(e){if(typeof e=="string"){const t=e.trim();return t?Number.isNaN(new Date(t).getTime())?null:t:null}if(e instanceof Date)return Number.isNaN(e.getTime())?null:e.toISOString();if(typeof e=="number"&&Number.isFinite(e)){const t=new Date(e);return Number.isNaN(t.getTime())?null:t.toISOString()}return null}function ia(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function ql(e){for(const t of["correct","isCorrect","heard","judgement"])if(typeof e[t]=="boolean")return e[t];return e.score===1?!0:e.score===0?!1:null}function Yl(e){return Array.isArray(e)?e.map((t,a)=>{const o=t??{};return{index:a,itemId:ia(o.contextCode)??ia(o.itemId)??ia(o.itemCode)??ia(o.id),question:ia(o.question)??ia(o.q)??ia(o.sentence)??ia(o.text)??ia(o.prompt)??ia(o.word)??ia(o.targetSyllable),answer:ia(o.answer),selected:ia(o.selectedText)??ia(o.selected),correct:ql(o),shownAt:Jn(o.shownAt)??Jn(o.shown_at),answeredAt:Jn(o.answeredAt)??Jn(o.answered_at)}}):[]}function fm(e){return e.filter(t=>t.correct===!1)}let vm=null,Cm=null,xm=null;function _m(e){vm=e}function ym(e){Cm=e}function wm(e){xm=e}async function km(e,t){try{return await vm?.(e,t)??null}catch{return null}}async function Bm(){try{return await Cm?.()??null}catch{return null}}async function Am(e,t){try{return await xm?.(e,t)??null}catch{return null}}const Qn=globalThis;function Sm(e){Qn.__ihabNoiseSettingsStore=e}async function Kl(){try{return await Qn.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function ei(e){const t=a=>{};try{const a=Qn.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(t)}catch(a){t(a)}}function dr(e){try{Qn.__ihabNoiseSettingsStore?.applied?.(e)}catch{}}function tn(e){const t=new TextEncoder().encode(String(e).normalize("NFC"));let a="";return t.forEach(o=>{a+=o.toString(16).padStart(2,"0")}),a}const Em=tn;function Dm(e,t){return`${e}/${tn(t)}.mp3`}function Nm(e={}){const t=e.storagePrefix??"audio-cache",a=e.voice??"ko-f",o=typeof e.speed=="number"?e.speed:1,n=e.filenameSanitizer??tn;return async function(i){const l=String(i||"").trim();if(!l)return"";const c=`${n(l)}_${a}.mp3`,u=`${t}/${c}`;try{if(await Ms(u)){const d=await zr(u);if(d)return d}}catch{}if(e.generator)try{const d=await e.generator(l,u,e);if(d)return d}catch{}try{const d=`/api/tts?word=${encodeURIComponent(l)}&voice=${encodeURIComponent(a)}&speed=${encodeURIComponent(String(o))}`;return await fetch(d,{method:"GET"}),`/audio-cache/${c}`}catch{return`/audio-cache/${c}`}}}async function Zl(e){if(typeof document<"u"){const t=document.activeElement;let a=null;try{if(a=document.createElement("textarea"),a.value=e,a.setAttribute("readonly",""),a.style.position="fixed",a.style.top="0",a.style.left="0",a.style.opacity="0",a.style.pointerEvents="none",document.body.appendChild(a),a.focus(),a.select(),a.setSelectionRange(0,e.length),document.execCommand("copy"))return!0}catch{}finally{if(a?.parentNode&&a.parentNode.removeChild(a),t&&t!==document.activeElement&&typeof t.focus=="function"&&t.isConnected)try{t.focus({preventScroll:!0})}catch{}}}try{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}return!1}const pr="Asia/Seoul",t3=/^(\d{4}-\d{2}-\d{2})[T ](\d{2}:\d{2})(?::(\d{2})(?:\.(\d+))?)?$/;function ti(e){let t;if(e instanceof Date)t=e;else if(typeof e=="string"){const a=e.trim(),o=t3.exec(a);t=new Date(o?`${o[1]}T${o[2]}:${o[3]??"00"}${o[4]?`.${o[4].slice(0,3).padEnd(3,"0")}`:""}+09:00`:a)}else t=new Date(e);return Number.isNaN(t.getTime())?null:t}const an=e=>ti(e);function Tm(e){const t=an(e);return t?t.toLocaleDateString("ko-KR",{timeZone:pr,year:"numeric",month:"short",day:"numeric"}):""}function jm(e){const t=an(e);return t?t.toLocaleString("ko-KR",{timeZone:pr,year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"}):""}function ai(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US",o=an(e);return o?o.toLocaleDateString(a,{timeZone:pr,year:"numeric",month:"short",day:"numeric"}):""}function Lm(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US",o=an(e);return o?o.toLocaleString(a,{timeZone:pr,year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"}):""}function Mm(e){const t=an(e);return t?t.toLocaleString("ko-KR",{timeZone:pr,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):""}function $m(e){if(e==null||e==="")return"";const t=ti(e);return t?new Intl.DateTimeFormat("en-GB",{timeZone:pr,hour:"2-digit",minute:"2-digit",hour12:!1}).format(t):""}function Ca(){return Ia(new Date)}function Xl(e){return e&&/^\d{4}-\d{2}-\d{2}$/.test(e)?e:Ca()}function po(){return Jl(Ca())}const a3=540*60*1e3;function oi(e,t,a){return new Date(Date.UTC(e,t,a)-a3)}function Jl(e){const[t,a,o]=e.split("-").map(Number);return new Date(t,(a||1)-1,o||1)}function Ia(e){if(e==null||e==="")return"";const t=ti(e);return t?new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(t):""}function ri(e,t){if(!e)return"";const a=ti(e);if(!a)return"";const o=a.getTime(),n=Math.max(0,Math.floor((Date.now()-o)/1e3)),i=Math.floor(n/60),l=Math.floor(i/60),c=Math.floor(l/24),u=Math.floor(c/7),d=Math.floor(c/30),h=Math.floor(c/365);return i<1?t("store.time.justNow","\uBC29\uAE08 \uC804"):i<60?t("store.time.minutesAgo",{n:i}):l<24?t("store.time.hoursAgo",{n:l}):c<7?t("store.time.daysAgo",{n:c}):u<5?t("store.time.weeksAgo",{n:u}):c<365?t("store.time.monthsAgo",{n:Math.min(d,11)}):t("store.time.yearsAgo",{n:h})}function ni(e,t={}){const{sep:a=".",pad:o=!0,trailingDot:n=!1,fallback:i="\u2014"}=t;if(!e)return i;const l=Ia(e instanceof Date?e:String(e));if(!l)return i;const[c,u,d]=l.split("-"),h=o?u:String(Number(u)),p=o?d:String(Number(d));return`${c}${a}${h}${a}${p}${n?".":""}`}function Rm(e){const t=e.normalize("NFKC").replace(/\D/g,"");if(/^(050\d|0303)/.test(t)){const o=t.slice(0,12);return o.length<=4?o:o.length<=8?`${o.slice(0,4)}-${o.slice(4)}`:`${o.slice(0,4)}-${o.slice(4,o.length-4)}-${o.slice(o.length-4)}`}if(/^1[5-9]\d{2}/.test(t)&&t.length<=8)return t.length<=4?t:`${t.slice(0,4)}-${t.slice(4)}`;const a=t.slice(0,11);return a.startsWith("02")?a.length<=2?a:a.length<=6?`${a.slice(0,2)}-${a.slice(2)}`:`${a.slice(0,2)}-${a.slice(2,a.length-4)}-${a.slice(a.length-4)}`:a.length<=3?a:a.length<=7?`${a.slice(0,3)}-${a.slice(3)}`:`${a.slice(0,3)}-${a.slice(3,a.length-4)}-${a.slice(a.length-4)}`}const Pm=String.raw`(?:0\d{1,2}|050\d|0303)-\d{3,4}-\d{4}`,o3=String.raw`1[5-9]\d{2}-\d{4}`,Ql=new RegExp(`^(?:${Pm}|${o3})$`),ec=new RegExp(`^${Pm}$`);function zm(e){return Ql.test(e)}function Im(e){return ec.test(e)}function Om(e){if(e){if(/^\d{4}\.\d{2}\.\d{2}$/.test(e))return e;if(/^\d{8}$/.test(e))return`${e.slice(0,4)}.${e.slice(4,6)}.${e.slice(6,8)}`;if(/^\d{4}-\d{2}-\d{2}$/.test(e))return e.replace(/-/g,".");if(/^\d{4}-\d{2}-\d{2}[T ]/.test(e)){const t=Ia(e);return t?t.replace(/-/g,"."):void 0}}}function Fm(e){if(e)return/^\d{4}\.\d{2}\.\d{2}$/.test(e)?e.replace(/\./g,"-"):e}function hr(e){if(!e)return e;const t=e.trim();return/^[₩$]/.test(t)?t:/원\s*$/.test(t)?"\u20A9"+t.replace(/\s*원\s*$/,"").trim():t}function ii(e,t){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const o=Number(a[1]),n=Number(a[2]),i=a[1].padStart(2,"0");return n===0?t("date.timeH",{h:o,hh:i,mm:a[2]}):t("date.timeHM",{h:o,hh:i,m:n,mm:a[2]})}function on(e){return(e??0).toLocaleString("ko-KR")}const r3=[{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"}]}],n3=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"audio-lines",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"}];let tc=null;function Hm(e){tc=e}function si(){return tc?.topicTypes??r3}function ac(){return tc?.trainingTypes??n3}const Vm="ihab_theme",Wm="light";function oc(){try{const e=localStorage.getItem(Vm);if(e==="light"||e==="dark"||e==="auto")return e}catch{}return Wm}function rc(e){const t=e==="light"||e==="dark"||e==="auto"?e:Wm;try{document.documentElement.setAttribute("data-theme",t),localStorage.setItem(Vm,t)}catch{}}function Gm(){rc(oc())}const Um="ihab_font_scale",i3="medium",s3=["medium","large1","large2","large3"];function nc(){try{const e=localStorage.getItem(Um);if(s3.includes(e))return e}catch{}return i3}function ic(e){try{document.documentElement.setAttribute("data-font-scale",e),localStorage.setItem(Um,e)}catch{}}function qm(){ic(nc())}const ho=[],mo=[],bo=[],go=[],rn={LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]},nn={LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]},l3={LISTEN_IN_NOISE:3,SHORT_STORY:2,LONG_STORY:1,ORDERING_SENTENCE:2};let sc=null,Ym=null,fo=null;function lc({counts:e,forceRefresh:t}={}){const a=Object.assign({},l3,e||{}),o=Ca(),n=Ia(new Date(`${o}T00:00:00+09:00`).getTime()-864e5),i=JSON.stringify(a);if(!t&&Ym===o&&sc===i&&fo)return Object.assign(rn,fo.today),Object.assign(nn,fo.yesterday?.selection||{LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]}),{today:rn,yesterday:nn};const l={LISTEN_IN_NOISE:Aa(ho,Math.max(0,Number(a.LISTEN_IN_NOISE)||0)),SHORT_STORY:Aa(mo,Math.max(0,Number(a.SHORT_STORY)||0)),LONG_STORY:Aa(bo,Math.max(0,Number(a.LONG_STORY)||0)),ORDERING_SENTENCE:Aa(go,Math.max(0,Number(a.ORDERING_SENTENCE)||0))};let c=null;return fo&&sc===i&&fo.yesterday&&fo.yesterday.date===n&&(c=fo.yesterday.selection),c||(c={LISTEN_IN_NOISE:Aa(ho,Math.max(0,Number(a.LISTEN_IN_NOISE)||0)),SHORT_STORY:Aa(mo,Math.max(0,Number(a.SHORT_STORY)||0)),LONG_STORY:Aa(bo,Math.max(0,Number(a.LONG_STORY)||0)),ORDERING_SENTENCE:Aa(go,Math.max(0,Number(a.ORDERING_SENTENCE)||0))}),Object.assign(rn,l),Object.assign(nn,c),Ym=o,sc=i,fo={today:l,yesterday:{date:n,countsKey:i,selection:c}},{today:rn,yesterday:nn}}function Km(){return{today:rn,yesterday:nn}}function cc(){return{LISTEN_IN_NOISE:ho,SHORT_STORY:mo,LONG_STORY:bo,ORDERING_SENTENCE:go}}let li=!1,sn=null;async function c3(){try{const e={url:typeof document>"u"?require("url").pathToFileURL(__filename).href:va&&va.tagName.toUpperCase()==="SCRIPT"&&va.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}&&void 0||"/",t=await fetch(`${e}data/allTrainingData.json`);return t.ok?await t.json():null}catch{return null}}async function uc(){if(!li)return sn||(sn=(async()=>{const e=await c3();if(!e){sn=null;try{window.dispatchEvent(new Event("speechear.data.error"))}catch{}return}const t={noise:[],short:[],long:[],order:[]};try{for(const a of Object.keys(e||{})){const o=e[a]||[];for(const n of o){if(!n||typeof n!="object")continue;const i=n,l=String(i.training_type||a),c=String(i.category_main_code||i.category_main||i.category_0||""),u=String(i.category_sub_code||i.category_sub||i.category_1||""),d=Object.assign({},i,{training_type:l,category_0:c,category_1:u});l==="LISTEN_IN_NOISE"?t.noise.push(d):l==="SHORT_STORY"?t.short.push(d):l==="LONG_STORY"?t.long.push(d):l==="ORDERING_SENTENCE"&&t.order.push(d)}}}catch{sn=null;try{window.dispatchEvent(new Event("speechear.data.error"))}catch{}return}ho.push(...t.noise),mo.push(...t.short),bo.push(...t.long),go.push(...t.order),li=!0;try{lc()}catch{}try{window.dispatchEvent(new Event("speechear.data.updated"))}catch{}})(),sn)}function Zm(){return li}async function dc(e=3e3){const t=uc();let a;try{await Promise.race([t,new Promise(o=>{a=setTimeout(o,e)})])}finally{a!==void 0&&clearTimeout(a)}return li}const pc=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"audio-lines",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."}],Xm=[{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"}]}],ci={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function Jm(e){return pc.map(t=>{const a=ci[t.key];return a?{...t,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:t})}const hc="none";function u3(e){return e==null||String(e).trim()===""}function d3(e){return typeof e=="string"&&bc.includes(e)}function mc(e,t){if(!e)return!0;const a=e instanceof Set?e:new Set(e);return a.size===0?!0:u3(t)?a.has(hc):a.has(String(t))}const ln=["grade","syllables","pos","wordType"],bc=["1","2","3","4","none"],p3=["1","2","3","4","5+"],h3=["noun","verb","modifier"],m3=["native","sino","foreign","mixed"],b3={grade:bc,syllables:p3,pos:h3,wordType:m3},g3={noun:["\uBA85","\uC218"],verb:["\uB3D9","\uD615"],modifier:["\uBD80","\uAD00"]},f3={native:"\uACE0\uC720",sino:"\uD55C\uC790",foreign:"\uC678\uB798",mixed:"\uD63C\uC885"},v3={grade:["\uB09C\uC774\uB3C4 \uB4F1\uAE09"]},C3={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)"]}},gc=new Map;try{xt.store?.on?.("added",()=>gc.clear())}catch{}function cn(e){const t=gc.get(e);if(t)return t;const a=xt.getFixedT(e),o={\uC139\uC158:{grade:a("wordSearch.filter.difficulty","\uB4F1\uAE09"),syllables:a("wordSearch.filter.syllables","\uC74C\uC808 \uC218"),pos:a("wordSearch.filter.partOfSpeech","\uD488\uC0AC"),wordType:a("wordSearch.filter.wordType","\uC720\uD615")},\uAC12:{grade:{...Object.fromEntries(bc.filter(n=>n!==hc).map(n=>[n,a("wordSearch.filter.grade",{n:Number(n),defaultValue:`${n}\uB4F1\uAE09`})])),[hc]:a("wordSearch.filter.gradeNone","\uC5C6\uC74C")},syllables:{...Object.fromEntries(["1","2","3","4"].map(n=>[n,a("wordSearch.filter.syllable",{n:Number(n),defaultValue:`${n}\uC74C\uC808`})])),"5+":a("wordSearch.filter.syllable5plus","5\uC74C\uC808 \uC774\uC0C1")},pos:{noun:a("wordSearch.filter.pos.noun","\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)"),verb:a("wordSearch.filter.pos.verb","\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)"),modifier:a("wordSearch.filter.pos.modifier","\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)")},wordType:{native:a("wordSearch.filter.type.native","\uACE0\uC720\uC5B4"),sino:a("wordSearch.filter.type.sino","\uD55C\uC790\uC5B4"),foreign:a("wordSearch.filter.type.foreign","\uC678\uB798\uC5B4"),mixed:a("wordSearch.filter.type.mixed","\uD63C\uC885\uC5B4")}}};return gc.set(e,o),o}const fc=()=>Array.from(new Set([xt.language,"ko","en"].filter(e=>!!e)));function un(e){if(ln.includes(e))return e;for(const t of fc()){const a=cn(t);for(const o of ln)if(a.\uC139\uC158[o]===e)return o}for(const t of ln)if(v3[t]?.includes(e))return t;return null}function zo(e,t){if(b3[e].includes(t))return t;for(const a of fc()){const o=cn(a).\uAC12[e];for(const[n,i]of Object.entries(o))if(i===t)return n}for(const[a,o]of Object.entries(C3[e]??{}))if(o.includes(t))return a;if(e==="grade"||e==="syllables"){const a=parseInt(t.replace(/\D/g,""),10);if(Number.isFinite(a)&&a>=1)return e==="grade"?a<=4?String(a):null:a>=5?"5+":String(a)}return null}function x3(e,t,a=xt.language){return cn(a).\uAC12[e][t]??t}const _3=e=>Array.isArray(e)?e.filter(t=>typeof t=="string"):typeof e=="string"&&e?[e]:[];function ui(e){const t={};for(const[a,o]of Object.entries(e??{})){const n=un(a);if(n)for(const i of _3(o)){const l=zo(n,i);if(!l)continue;const c=t[n]??(t[n]=[]);c.includes(l)||c.push(l)}}return t}function di(e,t=xt.language){const a=cn(t||"ko"),o={};for(const n of ln){const i=(e?.[n]??[]).map(l=>a.\uAC12[n][l]).filter(l=>!!l);i.length&&(o[a.\uC139\uC158[n]]=i)}return o}function Qm(e,t=xt.language){const a={};for(const[o,n]of Object.entries(e??{}))un(o)||(a[o]=n);return{...a,...di(ui(e),t)}}function y3(e){for(const t of fc()){const a=cn(t);if(ln.some(o=>a.\uC139\uC158[o]===e))return t}return xt.language||"ko"}let pi=null,eb=null,tb=null;function w3(){const e=Po();if(e&&e.entries.length>0){const t=Lo();if(pi&&eb===e&&tb===t)return pi;const a=new Set,o=[];for(const n of e.entries)!n.word||a.has(n.word)||(a.add(n.word),o.push({w:n.word,s:n.syllables,p:t?.[n.word]?[...t[n.word].cho??[],...t[n.word].jung??[],...t[n.word].jong??[]]:[],pron:n.pronunciation||n.word,grade:n.grade}));return pi=o,eb=e,tb=t,pi}return[]}const Qa=new Proxy([],{get(e,t){const a=w3(),o=a[t];return typeof o=="function"?o.bind(a):o}});function vc(e){return e.length?e[Math.floor(Math.random()*e.length)]:void 0}function Sa(e,t){if(t>=e.length)return nt(e);if(t===0)return[];const a=e.slice();for(let o=0;o<t;o++){const n=o+Math.floor(Math.random()*(a.length-o)),i=a[o];a[o]=a[n],a[n]=i}return a.slice(0,t)}let Cc=null,ab=null;function vo(){const e=Po();if(Cc&&ab===e)return Cc;const t=new Map;for(const a of Qa)a.w&&t.set(a.w,a.pron);return Cc=t,ab=e,t}function Ht(e){return vo().get(e)||e}function hi(e,t,a=new Set){const o=[];for(const n of nt(e)){if(o.length>=t)break;const i=Ht(n);a.has(i)||(a.add(i),o.push(n))}return o}let k3=0;function Yt(e){return`${e}-rt-${++k3}`}function mr(e){const t=On();if(!t||t.total===0){const n=new Set;for(const i of e)n.add(i);return n}const a=Ah(),o=new Set;for(const n of e)a.has(n)&&o.add(n);return o}const mi=new Map;let ob=null,rb=null;function dn(e){return e==null?"":Array.isArray(e)?e.slice().sort().join(","):e}function xc(e){const t=dn(e.choseong),a=e.composition,o=a?.syllable==null?"":Array.isArray(a.syllable)?a.syllable.slice().sort().join(","):String(a.syllable),n=a?`${dn(a.cho)}/${dn(a.jung)}/${dn(a.jong)}/${a.jongNone?"N":""}/${o}`:"",i=dn(e.grade);return`${e.difficulty??""}|${t}|${n}|${e.excludeNoImage?"1":"0"}|${e.count??""}|x${e.contrastCount??1}|${e.fullCount?"F":""}|s${e.sameStructureOnly===!1?"0":"1"}|v${e.phonemeView==="pron"?"p":"c"}|g${i}|t${e.targetSyllable??""}|c${e.choicesPerItem??""}`}const _c=new Map;function B3(e){return xc({...e,count:void 0,choicesPerItem:void 0,fullCount:!1})}async function ha(e){const t=Po(),a=Lo();(t!==ob||a!==rb)&&(mi.clear(),_c.clear(),ob=t,rb=a);const o=xc(e);return mi.has(o)||mi.set(o,A3(e)),mi.get(o)}function nb(e){if(!e)return null;const t=l=>l==null?null:Array.isArray(l)?l.length?l:null:[l],a=t(e.cho),o=t(e.jung),n=!!e.jongNone,i=n?null:t(e.jong);return a||o||i||n?n&&!a&&!o&&!i?l=>el(l):l=>al(l,{cho:a,jung:o,jong:i,jongNone:n}):null}function ib(e){const t=e.grade&&e.grade.length>0?new Set(e.grade):null,a=e.composition??null,o=a?.syllable!=null?new Set(Array.isArray(a.syllable)?a.syllable:[a.syllable]):null,n=a?[nb(a),o?l=>o.has(jo(l)):null].filter(l=>l!=null):[];if(!t&&n.length===0)return null;const i=e.phonemeView==="pron";return l=>{if(!mc(t,l.grade))return!1;if(n.length===0)return!0;const c=i?Ht(l.w):l.w;return n.every(u=>u(c))}}async function A3(e){const{difficulty:t=null,choseong:a=null,composition:o=null,targetSyllable:n=null,excludeNoImage:i=!1}=e,l=e.grade&&e.grade.length>0?new Set(e.grade):null,c=e.sameStructureOnly??!0,u=e.phonemeView==="pron"?"pron":"char",d=Math.max(1,e.contrastCount??1),h=t==="cho"||t==="jung"||t==="jong",p=h&&d>=2,m=t==="count",C=a?new Set(Array.isArray(a)?a:[a]):null,v=o?.syllable!=null?new Set(Array.isArray(o.syllable)?o.syllable:[o.syllable]):null,f=o?[nb(o),v?P=>v.has(jo(P)):null].filter(P=>P!=null):[],g=t==="random"||t===null,x=g||m,b=g||p||m;let w=Qa.filter(P=>!P.w||!mc(l,P.grade)?!1:b?!0:Array.isArray(P.p)&&P.p.length>0);C&&(w=w.filter(P=>{for(const V of C)if(v8(P.w,V))return!0;return!1})),f.length>0&&(w=w.filter(P=>{const V=u==="pron"?Ht(P.w):P.w;return f.every($=>$(V))})),n&&(w=w.filter(P=>P.w[0]===n));let _;if(i){const P=new Set;for(const V of w)if(P.add(V.w),Array.isArray(V.p))for(const $ of V.p)P.add($);if(x)for(const V of Qa)V.w&&P.add(V.w);_=mr(P)}else{const P=new Set;for(const V of w)if(P.add(V.w),Array.isArray(V.p))for(const $ of V.p)P.add($);if(x)for(const V of Qa)V.w&&P.add(V.w);_=P}let A=null;if(p){const P=new Set;for(const V of Qa)V.w&&P.add(V.w);A=i?mr(P):P}const y=w.filter(P=>_.has(P.w)),B=600,k=Array.from(_),S=k.length>B?Sa(k,B):k,E=m&&o!=null&&(zt(o.cho)||zt(o.jung)||zt(o.jong)),D=2500,I=new Map;if(m&&!E&&d>=2){for(const P of k){const V=jo(P),$=I.get(V);$?$.push(P):I.set(V,[P])}for(const[P,V]of I)V.length>D&&I.set(P,Sa(V,D))}const j=Ys();let W=null;if(E){const P=B3(e),V=i?Ah():null,$=_c.get(P);W=$&&$.\uC774\uBBF8\uC9C0\uC9D1\uD569===V?$.map:dl(o,k,j,c,u,Ht),_c.set(P,{\uC774\uBBF8\uC9C0\uC9D1\uD569:V,map:W})}const L=500,M=1500,z=e.fullCount?y:t==="random"?y.length>L?Sa(y,L):y:y.length>M?Sa(y,M):y,q=Lo(),Y=[];for(const P of z){let V;const $=Ht(P.w);if(p)V=y8(P.w,t,d,A,24).filter(U=>Ht(U)!==$);else if(m)E?V=(W.get(P.w)??[]).filter(U=>Ht(U)!==$):d<=1?V=Hn(P.w,q,{okSet:_,pronOf:Ht,decompOf:j,sameStructureOnly:!1}):V=(I.get(jo(P.w))??[]).filter(U=>{if(U===P.w||Ht(U)===$)return!1;const T=w8($,Ht(U));return d>=5?T>=5:T===d});else if(g){const U=T=>T!==P.w&&T.length===P.w.length&&Ht(T)!==$;if(e.fullCount){const T=Math.max(1,(e.choicesPerItem??3)-1),F=[],N=new Set;for(const O of S){if(!U(O))continue;const H=Ht(O);if(!N.has(H)&&(N.add(H),F.push(O),F.length>=T))break}V=F}else V=S.filter(U)}else{const U=t;V=Hn(P.w,q,{kind:U,okSet:_,pronOf:Ht,decompOf:j,sameStructureOnly:!1}),V.length===0&&(V=(S.length>30?Sa(S,30):S).filter(T=>T!==P.w&&Ks(P.w,T)===t&&Ht(T)!==$))}if(c&&V.length>0&&(h||m&&!E)){const U=j(Ht(P.w));V=V.filter(T=>!Ur(U,j(Ht(T))))}V.length!==0&&Y.push({word:P,usable:V})}return Y}async function sb(e,t){const{choicesPerItem:a=3,count:o=10}=t,n=a-1,i=(await ha(t)).filter(c=>c.usable.length>=n),l=[];for(const c of nt(i)){if(l.length>=o)break;const u=hi(c.usable,n);if(u.length<n)continue;const d=nt([c.word.w,...u]);l.push({id:Yt(e+"-item"),index:l.length+1,word:c.word.w,syllables:c.word.s,choices:d,answerIndex:d.indexOf(c.word.w)})}return l}async function S3(e){const{choicesPerItem:t=3,count:a=10}=e,o=t-1,n=await ha({...e,difficulty:null});if(n.length<t)return[];const i=e.composition??null,l=[],c=nt([...n]);for(const u of c){if(l.length>=a)break;const d=u.word.w,h=[...u.word.pron||d],p=i&&cr(i)?h.filter(g=>{const x=Ke(g);return!!x&&Ja(x,i)}):[],m=vc(p.length?p:h);if(!m)continue;const C=n.filter(g=>g.word.w!==d&&g.word.s===u.word.s&&!(g.word.pron||g.word.w).includes(m)&&g.word.pron!==u.word.pron);if(C.length<o)continue;const v=hi(C.map(g=>g.word.w),o);if(v.length<o)continue;const f=nt([d,...v]);l.push({id:Yt("HPI-item"),index:l.length+1,targetSyllable:m,word:d,choices:f,answerIndex:f.indexOf(d)})}return l}async function E3(e){const{count:t=10}=e,a=(await ha(e)).filter(i=>i.usable.length>=1);if(!a.length)return[];const o=a.length>=t?Sa(a,t):nt(Array.from({length:t},(i,l)=>a[l%a.length])),n=nt(Array.from({length:t},(i,l)=>l<Math.ceil(t/2)));return o.map((i,l)=>{const c=n[l];let u;if(c)u=[i.word.w,i.word.w];else{const d=vc(i.usable);u=Math.random()<.5?[i.word.w,d]:[d,i.word.w]}return{id:Yt("SOD-item"),index:l+1,word:i.word.w,pair:u,same:c}})}async function D3(e){const{choicesPerItem:t=3,count:a=10}=e,o=t-1,n=await ha({...e,difficulty:null});if(n.length<t+1)return[];const i=n.map(m=>m.word.w),l=new Map(n.map(m=>[m.word.w,m.word.pron])),c=m=>(l.get(m)||m)[0]??"",u={};for(const m of n){const C=c(m.word.w);C&&(u[C]||(u[C]=[]),u[C].push(m.word.w))}const d=Object.entries(u).filter(([,m])=>m.length>=2).map(([m])=>m);if(d.length===0)return[];const h=[],p=nt([...d]);for(let m=0;h.length<a&&m<a*4;m++){const C=p[m%p.length],v=u[C];if(v.length<2)continue;const f=nt([...v]),g=f[0],x=f[1];if(!g||!x||g===x||(l.get(g)||g)===(l.get(x)||x))continue;const b=l.get(x)||x,w=i.filter(y=>c(y)!==C&&y!==g&&y!==x&&y.length===x.length&&(l.get(y)||y)!==b);if(w.length<o)continue;const _=hi(w,o);if(_.length<o)continue;const A=nt([x,..._]);h.push({id:Yt("SWS-item"),index:h.length+1,sourceWord:g,targetSyllable:C,word:x,choices:A,answerIndex:A.indexOf(x)})}return h}function lb(e,t,a){const o=vo(),n=u=>o.get(u)||u,i=(u,d)=>{const h=[...u],p=[...d];if(h.length!==p.length)return-1;let m=-1;for(let C=0;C<h.length;C++)if(h[C]!==p[C]){if(m>=0)return-1;m=C}return m},l=e.map(u=>({e:u,swaps:u.usable.filter(d=>!!d&&i(u.word.w,d)>=0&&n(d)!==n(u.word.w))})).filter(u=>u.swaps.length>0),c=[];for(const{e:u,swaps:d}of nt(l)){if(c.length>=t)break;const h=vc(d)??"",p=[...u.word.w],m=[...h],C=i(u.word.w,h),v=hi(u.usable.filter(f=>f&&f!==h),2,new Set([n(h),n(u.word.w)]));v.length<2||c.push({id:Yt(a),index:c.length+1,word:u.word.w,original:u.word.w,changed:h,changedFrom:C>=0?p[C]:"",changedTo:C>=0?m[C]:"",distractors:v})}return c}async function cb(e,t,a){const{count:o=10}=t,n=vo(),i=Qa.filter(v=>v.w&&v.s===e),l=t.excludeNoImage?mr(i.map(v=>v.w)):null,c=l?i.filter(v=>l.has(v.w)):i,u=new Set(c.map(v=>v.w)),d=Fl(u),h=t.phonemeView??"char",p=t.composition??null,m=ib(t),C=[];for(const v of nt(c)){if(C.length>=o)break;if(m&&!m(v))continue;const f=Hl(v.w,p,n,h,d,null,null);if(!f)continue;const g=f.distractors[0],x=[...v.w],b=[...g],w=x.findIndex((_,A)=>_!==b[A]);C.push({id:Yt(a),index:C.length+1,word:v.w,original:v.w,changed:g,changedFrom:w>=0?x[w]:"",changedTo:w>=0?b[w]:"",distractors:f.distractors.slice(1)})}return C}async function N3(e){return cb(2,e,"CS2-item")}async function T3(e){return cb(3,e,"CS3-item")}async function j3(e){const t=(await ha({...e,difficulty:"count",contrastCount:1})).filter(a=>a.word.s===1&&a.usable.length>=1);return lb(t,e.count??10,"CP1-item")}async function L3(e){const t=e.difficulty&&e.difficulty!=="random"?e.difficulty:"count",a=(await ha({...e,difficulty:t,contrastCount:1})).filter(o=>o.word.s===2&&o.usable.length>=1);return lb(a,e.count??10,"CP2-item")}async function M3(e){const{count:t=10}=e,a=(await ha({...e})).filter(o=>o.word.s===2);return Sa(a,t).map((o,n)=>({id:Yt("M2S-item"),index:n+1,word:o.word.w,answer:o.word.w,parts:[...o.word.w]}))}async function $3(e){const{count:t=10}=e,a=(await ha({...e})).filter(o=>o.word.s===3);return Sa(a,t).map((o,n)=>({id:Yt("M3S-item"),index:n+1,word:o.word.w,answer:o.word.w,parts:[...o.word.w]}))}function yc(e){const t=Qa.map(a=>a.w);return e.excludeNoImage?mr(t):new Set(t)}async function R3(e){const{count:t=10}=e,a=(await ha({...e})).filter(c=>c.word.s===2),o=vo(),n=yc(e),i=e.phonemeView??"char",l=[];for(const c of nt(a)){if(l.length>=t)break;const u=$l(c.word.w,e.composition??null,o,i,n);if(!u)continue;const[d,...h]=u.distractors,p=[...c.word.w],m=p[0]===d?p[1]:p[0];l.push({id:Yt("D2-item"),index:l.length+1,original:c.word.w,word:c.word.w,dropped:m,missingResult:d,distractors:h})}return l}async function P3(e){const{count:t=10}=e,a=(await ha({...e})).filter(c=>c.word.s===3),o=vo(),n=yc(e),i=e.phonemeView??"char",l=[];for(const c of nt(a)){if(l.length>=t)break;const u=Rl(c.word.w,e.composition??null,o,i,n);if(!u)continue;const[d,...h]=u.distractors,p=[...c.word.w];let m="";for(let C=0;C<p.length;C++)if(p.filter((v,f)=>f!==C).join("")===d){m=p[C];break}l.push({id:Yt("D3-item"),index:l.length+1,original:c.word.w,word:c.word.w,dropped:m,missingResult:d,distractors:h})}return l}async function z3(e){const{count:t=10}=e,a=(await ha({...e})).filter(c=>c.word.s>=3),o=vo(),n=yc(e),i=e.phonemeView??"char",l=[];for(const c of nt(a)){if(l.length>=t)break;const u=Pl(c.word.w,e.composition??null,o,i,n);if(!u)continue;const[d,...h]=u.distractors,p=c.word.w,m=u.dropped??(p.startsWith(d)?p.slice(d.length):p.endsWith(d)?p.slice(0,p.length-d.length):"");l.push({id:Yt("DPC-item"),index:l.length+1,original:p,word:p,dropped:m,missingResult:d,distractors:h})}return l}async function I3(e){const{count:t=10}=e,a=(await ha({...e})).map(o=>o.word.w);return a.length<3?[]:Array.from({length:t},(o,n)=>{const i=Sa(a,3);return{id:Yt("LRO-item"),index:n+1,sequence:i,choices:nt(i)}})}function bi(e,t,a){const o=Qa.filter(c=>c.w&&c.s===e),n=t.excludeNoImage?mr(o.map(c=>c.w)):null,i=ib(t),l=[];for(const c of o)if(!(n&&!n.has(c.w))&&!(i&&!i(c))){if(a){const u=Ke(c.w);if(!u||!a(u))continue}l.push(c)}return l}function O3(e){const t=bi(1,e,lr.MERGE_2_PHONEMES.syllable);return Sa(t,e.count??10).map((a,o)=>{const n=Ke(a.w);return{id:Yt("M2P-item"),index:o+1,parts:[pt[n.cho],yt[n.jung]],answer:a.w,word:a.w}})}function F3(e){const t=bi(1,e,lr.MERGE_3_PHONEMES.syllable);return Sa(t,e.count??10).map((a,o)=>{const n=Ke(a.w);return{id:Yt("M3P-item"),index:o+1,parts:[pt[n.cho],yt[n.jung],Pt[n.jong]],answer:a.w,word:a.w}})}function H3(e){const t=lr.DROP_FINAL_CONSONANT_FROM_1SYLL,a=bi(t.syllables,e,t.syllable),o=vo(),n=[];for(const i of nt(a)){if(n.length>=(e.count??10))break;const l=zl(i.w,null,o);if(!l)continue;const[c,...u]=l.distractors;n.push({id:Yt("DFC-item"),index:n.length+1,original:i.w,word:i.w,result:c,distractors:u})}return n}function V3(e){const t=lr.REMOVE_CONSONANT_AND_IDENTIFY_PHONEME,a=bi(t.syllables,e,t.syllable),o=vo(),n=[];for(const i of nt(a)){if(n.length>=(e.count??10))break;const l=Ol(i.w,null,o);if(!l)continue;const c=Ke(o.get(i.w)||i.w);if(!c)continue;const[u,...d]=l.distractors;n.push({id:Yt("RCP-item"),index:n.length+1,base:i.w,word:i.w,missingConsonant:pt[c.cho],remaining:u,distractors:d})}return n}const gi=new Map;let ub=null,db=null;async function pb(e,t={}){const a=Po(),o=Lo();(a!==ub||o!==db)&&(gi.clear(),ub=a,db=o);const n=`${e}:${xc(t)}`;if(gi.has(n))return gi.get(n);const i=await G3(e,t);return gi.set(n,i),i}const W3={SAME_SOUND_PICK:e=>sb("SSP",e),HEAR_AND_PICK_SAME:e=>sb("HPS",e),HEAR_AND_PICK_INCLUDED:e=>S3(e),SAME_OR_DIFF:e=>E3(e),STARTS_WITH_SAME_SOUND:e=>D3(e),LISTEN_AND_REMEMBER_ORDER:e=>I3(e),MERGE_2_SYLLABLES:e=>M3(e),MERGE_3_SYLLABLES:e=>$3(e),MERGE_2_PHONEMES:e=>O3(e),MERGE_3_PHONEMES:e=>F3(e),DROP_1_FROM_2SYLL:e=>R3(e),DROP_1_FROM_3SYLL:e=>P3(e),DROP_PART_FROM_COMPOUND:e=>z3(e),DROP_FINAL_CONSONANT_FROM_1SYLL:e=>H3(e),REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:e=>V3(e),CHANGE_1_SYLL_IN_2SYLL:e=>N3(e),CHANGE_1_SYLL_IN_3SYLL:e=>T3(e),CHANGE_1_PHONEME_IN_1SYLL:e=>j3(e),CHANGE_1_PHONEME_IN_2SYLL:e=>L3(e)};async function G3(e,t={}){const a=W3[e];return a?await a(t):[]}async function U3(e){const t=["random","count"],a=Object.keys(sr);let o=0;for(const n of t)for(const i of a){const l=sr[i];pb(i,{difficulty:l.difficulty?n:null,contrastCount:1,composition:null,count:5,excludeNoImage:e,sameStructureOnly:!0,phonemeView:"char",grade:null}).catch(()=>{}),++o%6===0&&await new Promise(c=>setTimeout(c,0))}}async function q3(e){const t=await ha({...e,fullCount:!0}),a=e.choicesPerItem!=null?Math.max(1,e.choicesPerItem-1):1;return t.filter(o=>new Set(o.usable.map(n=>Ht(n))).size>=a).length}async function Y3(e={}){const t=[];for(const c of Qa)c.w&&t.push(c.w);const a=e.excludeNoImage?mr(t):t,o=new Set,n=new Set,i=new Set,l=new Set;for(const c of a){l.add(jo(c));for(const u of c){const d=Ke(u);if(d&&(pt[d.cho]!=="\u3147"&&o.add(pt[d.cho]),n.add(yt[d.jung]),d.jong>0)){i.add(Pt[d.jong]);const h=Fn[d.jong];h&&h.forEach(p=>i.add(p))}}}return{cho:o,jung:n,jong:i,syllable:l}}const hb={free:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:0,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},personal_standard:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:2,sentenceDataLevel:2,crossword:!0,crosswordMid:!0,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},mgr_free:{maxCustomers:5,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:1,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},none:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!1,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!1,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:0,sentenceDataLevel:0,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},lite_word:{maxCustomers:10,visitWord:!0,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:0,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!1},lite_sentence:{maxCustomers:10,visitWord:!1,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!1,wordTableSetting:!1,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!1,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:0,sentenceDataLevel:1,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!0},lite:{maxCustomers:10,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:1,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},standard:{maxCustomers:30,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:2,sentenceDataLevel:2,crossword:!0,crosswordMid:!0,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},pro:{maxCustomers:50,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!0,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:3,sentenceDataLevel:3,crossword:!0,crosswordMid:!0,crosswordHigh:!0,wordTrainingView:!0,sentenceTrainingView:!0},enterprise:{maxCustomers:1/0,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!0,managerCustomerSplit:!0,managerManagement:!0,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!0,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!0,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!0,wordDataLevel:3,sentenceDataLevel:3,crossword:!0,crosswordMid:!0,crosswordHigh:!0,wordTrainingView:!0,sentenceTrainingView:!0}},mb={none:0,free:1,personal_standard:2,mgr_free:10,lite_word:11,lite_sentence:11,lite:12,standard:13,pro:14,enterprise:15},K3=new Set(["mgr_free","lite_word","lite_sentence","lite","standard","pro","enterprise"]);function bb(e){return K3.has(e)}const gb={free:{sentenceTrainingDaily:2,wordTrainingDaily:2,gameDaily:1},personal_standard:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null},mgr_free:{sentenceTrainingDaily:2,wordTrainingDaily:2,gameDaily:1,trainingItemMax:5,customerMax:5,homeworkSendDaily:1},lite:{sentenceTrainingDaily:5,wordTrainingDaily:5,gameDaily:5,trainingItemMax:10,customerMax:10,homeworkSendDaily:10},standard:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:30,customerMax:30,homeworkSendDaily:30},pro:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:null,customerMax:50,homeworkSendDaily:50},enterprise:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:null,customerMax:null,homeworkSendDaily:null}};function fb(e){const t=(e??"").toLowerCase();return t==="speechear_free"||t==="free"?"free":t.startsWith("manager_free")||t.startsWith("mgr_free")?"mgr_free":t.startsWith("manager_enterprise")?"enterprise":t.startsWith("manager_pro")?"pro":t.startsWith("manager_standard")?"standard":t.startsWith("manager_lite_word")?"lite_word":t.startsWith("manager_lite_sentence")?"lite_sentence":t.startsWith("manager_lite")||t.startsWith("mgr_lite")?"lite":t.startsWith("mgr_standard")?"standard":t.startsWith("mgr_pro")?"pro":t.startsWith("content_")||t.startsWith("speechear_")||t.startsWith("light_")||t==="light"?"personal_standard":"none"}const vb=5,Cb=5;function xb({rank:e,voteCount:t,quota:a=5}){return e<a&&t>0}const _b={selected:"ALREADY_SELECTED",added:"ALREADY_ADDED",rejected:"ALREADY_REJECTED"},yb="chunk-reload-ts";function wb(){try{return Number(sessionStorage.getItem(yb)||0)}catch{return 0}}function fi(e=Date.now()){if(e-wb()<=1e4)return!1;try{sessionStorage.setItem(yb,String(e))}catch{}return window.location.reload(),!0}function wc(e=Date.now()){const t=wb();return t>0&&e-t<=1e4}function kb(){if(typeof window>"u")return()=>{};const e=a=>{fi()&&a.preventDefault()},t=a=>{const o=a.target;o instanceof HTMLLinkElement&&o.rel==="stylesheet"&&fi()};return window.addEventListener("vite:preloadError",e),window.addEventListener("error",t,!0),()=>{window.removeEventListener("vite:preloadError",e),window.removeEventListener("error",t,!0)}}function Bb(e,t){return e?!!t&&t.access_token===e.access_token:!0}function Ab(e,t){return s.lazy(async()=>{const a=await t();if(a&&typeof a=="object"&&"default"in a)return a;if(wc())return new Promise(()=>{});throw new Error(`[lazyPage] ${e}: \uD654\uBA74 \uBAA8\uB4C8\uC744 \uBC1B\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4(default \uB0B4\uBCF4\uB0B4\uAE30 \uC5C6\uC74C). \uBC30\uD3EC \uC9C1\uD6C4\uB77C\uBA74 \uC0C8\uB85C\uACE0\uCE68\uC73C\uB85C \uD480\uB9BD\uB2C8\uB2E4.`)})}function Sb(...e){let t=!1;const a=()=>{if(!t)for(const i of e)i().catch(()=>{})},o=globalThis.requestIdleCallback;if(o){const i=o(a,{timeout:2e3});return()=>{t=!0;const l=globalThis.cancelIdleCallback;l?.(i)}}const n=setTimeout(a,300);return()=>{t=!0,clearTimeout(n)}}const Eb=e=>({word:e.Word,pronunciation:e.SP,colloquialPronunciation:e.CP??void 0,grade:String(e.Grade),pos:e.POS,wordType:e.Class,homonum:e.Homonum!=null?Number(e.Homonum):void 0});var Z3=Object.freeze({__proto__:null,CAPABILITY:sr,CHOSEONG:pt,CORE_VERSION:Mn,JONGSEONG:Pt,JUNGSEONG:yt,LONG_STORIES:bo,NETWORK_ERROR_MESSAGE:Xn,NOISE_DATAS:ho,ORDER_SETS:go,PERSONAL_PHONE_REGEX:ec,PHONE_REGEX:Ql,PLAN_FEATURES:hb,PLAN_LIMITS:gb,SHORT_STORIES:mo,TIER_RANK:mb,TOPIC_TYPES:Xm,TRAINING_TYPES:pc,TRAINING_TYPE_I18N_KEY:ci,WORD_SUGGESTION_ACCOUNT_LIMIT:Cb,WORD_SUGGESTION_EXISTING_ERROR:_b,WORD_SUGGESTION_WEEKLY_QUOTA:vb,applyFontScale:ic,applyTheme:rc,balancedColumns:hl,buildChangeWholeSyllableProblem:Hl,buildDropCompoundProblem:Pl,buildDropContrast3Problem:Rl,buildDropContrastProblem:$l,buildDropFinalConsonantProblem:zl,buildMultiPartPosContrast:dl,buildPairIndex:Fh,buildRemoveConsonantProblem:Ol,buildSyllableMaskIndex:Fl,bulkSetImageExistence:Sh,cardQuestionTitle:rm,checkImageExists:Wr,classifyPairDifficulty:Ks,clearAudioExistsCache:hh,clearImageExistenceCache:Us,clearPairIndexCache:ll,columnsFitting:pl,composeSyllable:ka,computeDailySelection:lc,configureImageResolver:xh,configureNoiseSettingsStore:Sm,configurePronunciationResolver:bh,configureStorage:Ls,configureTTS:ph,configureTrainingCategories:Hm,copyText:Zl,createDecompCache:Ys,createTTSUrlResolver:Nm,dateToDb:Fm,downloadCsvText:um,downloadSound:Pn,ensureTrainingDataLoaded:dc,escapeCsvField:cm,fileExists:Ms,filterContrastCandidates:ul,finalToPhoneme:To,firstChoseongOf:Zs,formatCount:on,formatDateKo:Tm,formatDateLocale:ai,formatDateLongKo:jm,formatDateLongLocale:Lm,formatDatetimeKo:Mm,formatPhone:Rm,formatRelativeTime:ri,formatTimeHM:ii,formatYmd:ni,getAssetBaseUrl:Ts,getDailySelection:Km,getElementAnalyser:Vs,getElementVolume:ar,getErrorMessage:en,getImageExistenceStats:On,getImageExistsCached:kh,getImageResolver:co,getNoiseBaseUrl:$s,getNoiseFileGain:Rs,getPairIndex:Lo,getPlanTier:fb,getPronunciationResolver:Is,getSavedFontScale:nc,getSavedTheme:oc,getSignedOrPublicUrl:zr,getTTSFallbackUrlResolver:zs,getTTSUrlResolver:Ir,getTodayKst:Ca,getTodayKstDate:po,getTopicTypes:si,getTrainingPools:cc,getTrainingTypes:ac,getWordPool:Po,hasQuestionWordConstraint:Qh,hasSel:zt,hasStructureContrast:Ur,initFontScale:qm,initTheme:Gm,installSkewRecovery:kb,isAllChoseong:Js,isManagerTier:bb,isManualOnlyType:tm,isNetworkErrorMessage:Vl,isPersonalPhone:Im,isSessionForThisTab:Bb,isSyllablePattern:ol,isThisWeekPick:xb,isTrainingDataLoaded:Zm,isValidPhone:zm,isValidQuestionWord:em,itemCorrectness:ql,jamoToNamesForSpeech:nm,kstStartOfDay:oi,lazyPage:Ab,loadGameLeaderboard:Am,loadMyGameRanks:Bm,loadNoiseSettings:Kl,loadTrainingData:uc,logCrossword:gm,logTrainingCompletion:Ul,logTrainingTime:Gl,matchSyllables:$o,matchesChoseongSearch:Eh,matchesSyllablePattern:rl,matchesWordQuery:Dh,mergeQuestionText:Ll,minimalPairDistractors:Hn,normalizeDate:Om,officialSoundPath:Dm,parseLocalYmd:Jl,parseSortValue:lm,parseSyllable:Ke,patternToComposition:Ph,phonemePartsOf:om,pickEuRo:El,pickEulReul:kl,pickEunNeun:Al,pickIga:yl,pickWaGwa:Sl,prefetchChunk:Sb,prewarmImageCache:Bh,primarySelPart:cr,readLevel:Ws,recoverFromSkew:fi,reorderArray:Dl,reportAppliedNoiseSettings:dr,resolveAssetUrl:Pr,resolveSoundPath:Rn,resumeAudioMeter:Fr,routeElementAudio:tr,sample:Aa,saveNoiseSettings:ei,searchAndRankWords:Ih,setAssetBaseUrl:uh,setCrosswordLogger:bm,setElementVolume:$a,setGameLeaderboardLoader:wm,setGameRanksLoader:ym,setGameScoreSubmitter:_m,setTrainingCompletionLogger:mm,setTrainingTimeLogger:hm,setWordPool:pm,shuffle:nt,skewReloadPending:wc,sortToValue:sm,soundOf:Zn,speak:sh,stopSpeaking:lh,submitGameScore:km,syllMatchesComp:Ja,syllableContrasts:Ro,syllableLength:jo,syllablePron:Qr,toBase64UrlSafe:Em,toChoseong:Xs,toItemResults:Yl,toKstHm:$m,toKstYmd:Ia,toStandardPronunciation:Kh,toStorageName:tn,toUserErrorMessage:im,toWordEntry:Eb,validateSyllableSearchInput:zh,withEuRo:Jh,withEulReul:Bl,withEunNeun:Zh,withIga:wl,withWaGwa:Xh,wordContainsChoseong:Th,wordContainsJongseong:Mh,wordContainsJungseong:jh,wordHasConsonantAt:$h,wordHasNoCoda:el,wordHasSyllableMatching:al,wrongItems:fm});function X3(e){if(e.includes("\\")&&e.includes("("))return!0;if(!/url\s*\(/i.test(e))return!1;const t=e.replace(/url\(\s*(['"]?)#[^)'"]*\1\s*\)/gi,"");return/url\s*\(/i.test(t)}function J3(e){if(typeof window>"u")return"";const t=(a,o)=>{typeof o.attrValue=="string"&&X3(o.attrValue)&&(o.keepAttr=!1)};Es.addHook("uponSanitizeAttribute",t);try{return Es.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{Es.removeHook("uponSanitizeAttribute",t)}}function Q3(e){const[t,a]=s.useState(null),[o,n]=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),n(null),l(null);return}const d=e.split("/").pop();let h=e;d&&(e.startsWith("/")?h=Pr(e):/^(Logo|Symbol)/i.test(d)?h=Pr(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),h=e)),n(null),l(null),a(h)},[e]),s.useEffect(()=>{if(!t)return;let d=!1;async function h(){try{let p=await fetch(t);p.ok||(p=await fetch(t));const m=p.headers.get("content-type")||"";if(d)return;if(m.includes("svg")){n("mask");return}if(m.startsWith("image/")){n("img");return}const C=await fetch(t);if(!C.ok)throw new Error("not ok");const v=await C.text();if(d)return;if(/^\s*<svg[\s>]/i.test(v)){const f=J3(v);if(!f){n("none");return}l(f),n("inline");return}n("none")}catch{d||n("none")}}return h(),()=>{d=!0}},[t]),s.useEffect(()=>{let d=!1,h=null;return o==="mask"&&t&&fetch(t).then(p=>{if(!p.ok)throw new Error("fetch failed");return p.blob()}).then(p=>{d||(h=URL.createObjectURL(p),u(h))}).catch(()=>{d||n("img")}),()=>{d=!0,h&&URL.revokeObjectURL(h),u(null)}},[o,t]),{iconToUse:t,mode:o,svgText:i,blobUrl:c}}var e7=".ihabdevteam-core-scope .iconRenderer-icon-mask{background-color:currentColor;display:inline-block;height:20px;height:var(--icon-size,20px);-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:20px;width:var(--icon-size,20px)}";ce(e7);function ot(e){const{icon:t,label:a,className:o,imgClassName:n,maskClassName:i,svgClassName:l,wrapperStyle:c,size:u}=e||{},d=o??"iconRenderer-icon",h=n??"iconRenderer-icon-image",p=i??"iconRenderer-icon-mask",m=l??"iconRenderer-icon-svg",C=typeof t=="string"?t:null,v=S5(C),{iconToUse:f,mode:g,svgText:x,blobUrl:b}=Q3(C),w=(k,S={})=>r.jsx("span",{className:d,style:c,...S,children:k}),_=typeof u=="number"?{width:u,height:u,objectFit:"contain"}:null,A=(k,S={})=>r.jsx("img",{src:k,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:h,...S,style:_?{...S.style,..._}:S.style});if(!t)return null;if(typeof t!="string")return w(t);if(t==="none")return w(r.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(v)try{return w(s.createElement(v,{className:m,size:typeof u=="number"?u:20}),{"aria-hidden":"true"})}catch{}if(f&&f.endsWith(".svg")){if(g==="mask"){const k={"--icon-url":b?`url(${b})`:`url(${f})`,...typeof u=="number"?{"--icon-size":`${u}px`}:null};return w(r.jsx("span",{className:p,style:k}),{"aria-hidden":"true"})}return g==="img"?w(A(f,{onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):g==="inline"?w(r.jsx("span",{className:m,dangerouslySetInnerHTML:x?{__html:x}:void 0}),{"aria-hidden":"true"}):w(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return A(Pr(t),{style:c,onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}});const y=typeof u=="number"?u:20,B=`<svg width="${y}" height="${y}" 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 w(r.jsx("span",{className:m,dangerouslySetInnerHTML:{__html:B}}),{"aria-hidden":"true"})}function Db(e){const[t,a]=s.useState(!1),o=s.useRef(!1),n=s.useRef(!0);s.useEffect(()=>(n.current=!0,()=>{n.current=!1}),[]);const i=s.useCallback(()=>{if(!e||o.current)return;const l=e();if(l&&typeof l.then=="function"){o.current=!0,a(!0);const c=()=>{o.current=!1,n.current&&a(!1)};l.then(c,c)}},[e]);return{pending:t,press:i}}function Nb({icon:e,title:t,message:a,action:o,className:n}){const{pending:i,press:l}=Db(o?.onClick);return r.jsxs("div",{className:Ne("empty-state",n),children:[e&&r.jsx(ot,{icon:e,size:48,className:"empty-state__icon"}),t&&r.jsx("p",{className:"empty-state__title h4",children:t}),a&&r.jsx("p",{className:"empty-state__message body-3",children:a}),o&&r.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:l,disabled:i,"aria-busy":i||void 0,children:[o.icon&&r.jsx(ot,{icon:o.icon,className:"button__icon"}),r.jsx("span",{className:"button__label button-1",children:o.label})]})]})}var t7=".ihabdevteam-core-scope .error-state__icon{color:var(--color-error)}.ihabdevteam-core-scope .error-state__hint{color:var(--color-lightGray);margin:0}";ce(t7);function Tb({message:e,hint:t,icon:a="triangle-alert",onRetry:o,retryLabel:n,className:i}){const{t:l}=_e.useTranslation(),{pending:c,press:u}=Db(o);return r.jsxs("div",{className:Ne("empty-state","error-state",i),role:"alert",children:[r.jsx(ot,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),r.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&r.jsx("p",{className:"error-state__hint caption-1",children:t}),o&&r.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:u,disabled:c,"aria-busy":c||void 0,children:[r.jsx(ot,{icon:"rotate-cw",className:"button__icon"}),r.jsx("span",{className:"button__label button-1",children:n??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}var a7=".ihabdevteam-core-scope .action-card{--ac-color:var(--color-main);--ac-color-a10:var(--color-main-a10);aspect-ratio:1/1;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-l);box-shadow:var(--shadow-card);cursor:pointer;display:block;overflow:hidden;transition:transform .2s ease-out,box-shadow .2s ease-out,border-color .2s ease-out;width:100%}.ihabdevteam-core-scope .action-card--sub{--ac-color:var(--color-sub);--ac-color-a10:var(--color-sub-a10)}.ihabdevteam-core-scope .action-card:focus-visible{outline:none}.ihabdevteam-core-scope .action-card:not(.action-card--disabled):focus-visible,.ihabdevteam-core-scope .action-card:not(.action-card--disabled):hover{border-color:var(--ac-color);box-shadow:var(--shadow-panel);transform:translateY(-4px)}.ihabdevteam-core-scope .action-card--disabled{cursor:wait;opacity:.6}.ihabdevteam-core-scope .action-card__body{display:flex;flex-direction:column;gap:var(--spacing-m);height:100%;padding:var(--spacing-l)}.ihabdevteam-core-scope .action-card__chip{align-items:center;background:var(--ac-color-a10);border-radius:var(--radius-m);color:var(--ac-color);display:flex;height:64px;justify-content:center;width:64px}.ihabdevteam-core-scope .action-card__text{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .action-card__title{color:var(--color-text-primary);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight-bold);letter-spacing:var(--text-h2-spacing);line-height:var(--text-h2-line);margin:0}.ihabdevteam-core-scope .action-card__desc{color:var(--color-lightGray);font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight);line-height:var(--text-body-2-line);margin:0}.ihabdevteam-core-scope .action-card__cta{align-items:center;color:var(--ac-color);display:flex;font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight-bold);gap:var(--spacing-xs);justify-content:flex-end;line-height:var(--text-body-2-line);margin-top:auto;padding-right:var(--spacing-s);padding-top:var(--spacing-s)}.ihabdevteam-core-scope .action-card__arrow{display:flex;transition:transform .2s}.ihabdevteam-core-scope .action-card:not(.action-card--disabled):hover .action-card__arrow{transform:translateX(4px)}";ce(a7);function jb({icon:e,title:t,description:a,cta:o,tone:n="main",disabled:i=!1,onClick:l,className:c=""}){const u=s.useId(),d=`${u}-title`,h=`${u}-desc`,p=`${u}-cta`,m=()=>{i||l?.()};return r.jsx("section",{role:"button",tabIndex:i?-1:0,"aria-disabled":i||void 0,"aria-labelledby":d,"aria-describedby":`${h} ${p}`,onClick:m,onKeyDown:C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),m())},className:Ne("action-card",`action-card--${n}`,i&&"action-card--disabled",c),children:r.jsxs("div",{className:"action-card__body",children:[r.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:r.jsx(ot,{icon:e,size:34})}),r.jsxs("div",{className:"action-card__text",children:[r.jsx("h2",{id:d,className:"action-card__title",children:t}),r.jsx("p",{id:h,className:"action-card__desc",children:a})]}),r.jsxs("div",{className:"action-card__cta",children:[r.jsx("span",{id:p,children:o}),r.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:r.jsx(ot,{icon:"arrow-right",size:18})})]})]})})}function Lb({as:e="div",className:t="",children:a,storage:o,...n}){o&&Ls({resolveUrl:o.resolveUrl,download:o.download??(()=>Promise.reject(new Error("[ihabdevteam-core] CoreScope: download resolver\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."))),exists:o.exists,resolvePath:o.resolvePath,noiseBaseUrl:o.noiseBaseUrl,noiseFileGain:o.noiseFileGain});const i=Ne("ihabdevteam-core-scope",t);return r.jsx(e,{className:i,...n,children:a})}function kc(e,t=!0){s.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const o=n=>{if(n.key!=="Tab")return;const i=Array.from(a.querySelectorAll(Oa)).filter(h=>!h.closest('[aria-hidden="true"]'));if(!i.length){n.preventDefault();return}const l=i[0],c=i[i.length-1],u=document.activeElement,d=u===a;n.shiftKey&&(u===l||d)?(n.preventDefault(),c.focus()):!n.shiftKey&&u===c&&(n.preventDefault(),l.focus())};return a.addEventListener("keydown",o),()=>a.removeEventListener("keydown",o)},[e,t])}const Oa='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',Bc=new WeakMap;function Ac(e,t){e&&Bc.set(e,t)}function Sc(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let o=t;for(;o&&!Bc.has(o);)o=o.parentElement;if(!o)return t;t=Bc.get(o)??null}return t}function Mb(e){return!(!e||!e.isConnected||e===document.body||typeof e.focus!="function"||e.disabled||e instanceof HTMLInputElement&&e.type==="hidden"||e.closest('[inert],[aria-hidden="true"],[hidden]'))}function vi(e,t,a){const o=e?.isConnected?e:a?.isConnected?a:null;if(Mb(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!o)return null;const n=Array.from(document.querySelectorAll(Oa)).filter(u=>!(e&&e.contains(u))&&Mb(u));let i=null,l=null;for(const u of n)o.compareDocumentPosition(u)&Node.DOCUMENT_POSITION_PRECEDING?i=u:l||(l=u);const c=i??l;return c?.focus(),c}var o7=".ihabdevteam-core-scope .notice-box{background:var(--color-darkWhite);border-radius:var(--radius-m);color:var(--color-gray);margin:0 auto var(--spacing-page);padding:var(--spacing-l);position:relative;text-align:left}.ihabdevteam-core-scope .notice-box ul{margin:0;padding:0 0 0 18px}.ihabdevteam-core-scope .notice-box__inner{border-radius:var(--radius-s);padding:12px 14px;text-align:left}.ihabdevteam-core-scope .notice-box__title{color:var(--color-darkGray);margin:0 0 10px}.ihabdevteam-core-scope .notice-box__body,.ihabdevteam-core-scope .notice-box__line{color:var(--color-deepGray)}.ihabdevteam-core-scope .notice-box--default{border-color:var(--color-whiteLine)}.ihabdevteam-core-scope .notice-box--dashed{background:var(--color-deepWhite);border:1px dashed var(--color-whiteLine)}.ihabdevteam-core-scope .notice-box--important{border:1px solid var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .notice-box__dismiss{align-items:center;background:none;border:none;border-radius:var(--radius-xs);color:var(--color-lightGray);cursor:pointer;display:inline-flex;font-size:18px;justify-content:center;line-height:1;min-height:24px;min-width:24px;padding:0;position:absolute;right:10px;top:8px;transition:color .12s}.ihabdevteam-core-scope .notice-box__dismiss:hover{color:var(--color-gray)}@media (max-width:767px){.ihabdevteam-core-scope .notice-box,.ihabdevteam-core-scope .notice-box__inner{padding:var(--spacing-s)}}";ce(o7);function $b({title:e="",lines:t=[],notices:a=null,children:o,variant:n="default",dismissible:i=!1,className:l=""}){const{t:c}=_e.useTranslation(),[u,d]=s.useState(!1),h=s.useRef(null),p=s.useCallback(()=>{const f=h.current;f&&f.contains(document.activeElement)&&vi(f),d(!0)},[]);if(u)return null;const m=`notice-box notice-box--${n} body-2 ${l}`.trim(),C=i&&r.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:p,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"});if(a&&Array.isArray(a)&&a.length)return r.jsxs("div",{className:m,role:"note",children:[a.map((f,g)=>r.jsxs("div",{className:"notice-box__inner",children:[f.title?r.jsx("span",{className:"notice-box__title body-3",children:f.title}):null,r.jsx("div",{className:"notice-box__body",children:f.lines&&f.lines.length?r.jsx("div",{children:f.lines.map((x,b)=>r.jsx("span",{className:"notice-box__line body-3",children:x},b))}):f.children??null})]},g)),C]});const v=e||t.length?r.jsxs("div",{className:"notice-box__inner",children:[e?r.jsx("span",{className:"notice-box__title body-1",children:e}):null,r.jsx("div",{className:"notice-box__body",children:t.length?r.jsx("ul",{children:t.map((f,g)=>r.jsx("li",{className:"notice-box__line",children:f},g))}):o})]}):r.jsx("div",{className:"notice-box__inner",children:o});return r.jsxs("div",{ref:h,className:m,role:"note",children:[v,C]})}var r7=".ihabdevteam-core-scope .button{align-items:center;background:var(--color-white);border:0;border:var(--button-border,0);box-sizing:border-box;color:inherit;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);padding:0 12px;transition:background-color .14s ease,color .14s ease,transform .1s ease,box-shadow .14s ease}.ihabdevteam-core-scope .button__icon,.ihabdevteam-core-scope .button__left,.ihabdevteam-core-scope .button__right{align-items:center;color:inherit;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .button--align-center .button__label,.ihabdevteam-core-scope .button--align-right .button__label{flex:1 1 auto;text-align:center}.ihabdevteam-core-scope .button__icon{height:24px;width:24px}.ihabdevteam-core-scope .button__icon--small{height:16px;width:16px}.ihabdevteam-core-scope .button__icon--medium{height:24px;width:24px}.ihabdevteam-core-scope .button__icon--large{height:36px;width:36px}.ihabdevteam-core-scope .button__center-group{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .button__center-group .button__label{display:inline-block;flex:0 1 auto;text-align:center}.ihabdevteam-core-scope .button__label{display:block;white-space:normal}.ihabdevteam-core-scope .button__label-text{align-items:center;display:inline-flex;justify-content:center;max-width:100%;vertical-align:middle;white-space:normal;word-break:break-word}.ihabdevteam-core-scope .button__label-text--has-sub{flex-direction:column;gap:3px}.ihabdevteam-core-scope .button--nowrap .button__label-text{white-space:nowrap}.ihabdevteam-core-scope .button--align-left .button__label-text--has-sub{align-items:flex-start;text-align:left}.ihabdevteam-core-scope .button__count{color:var(--color-main);font-weight:700;margin-left:4px}.ihabdevteam-core-scope .button--variant-main .button__count,.ihabdevteam-core-scope .is-selected .button__count,.ihabdevteam-core-scope [aria-pressed=true] .button__count{color:#fff}.ihabdevteam-core-scope .button__label:has(>.button__label-text+.button__label-text){gap:5px}.ihabdevteam-core-scope .button__sub-label-text{color:var(--button-subLabel-color,var(--color-gray));display:block}.ihabdevteam-core-scope .button__icon-img{display:block;height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.ihabdevteam-core-scope .button__icon-mask{background-color:currentColor;display:block;height:100%;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.ihabdevteam-core-scope .button__icon-svg{align-items:center;display:inline-flex;height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .button__icon-svg svg{display:block;height:100%;width:100%}.ihabdevteam-core-scope .button__icon-svg svg,.ihabdevteam-core-scope .button__icon-svg svg *{fill:currentColor;stroke:currentColor}.ihabdevteam-core-scope .button .button__label{color:currentColor;color:var(--button-text-color,currentColor);min-height:20px;min-width:20px}.ihabdevteam-core-scope .button .button__icon,.ihabdevteam-core-scope .button .button__left,.ihabdevteam-core-scope .button .button__right{color:currentColor;color:var(--button-icon-color,currentColor)}.ihabdevteam-core-scope .button--align-left{justify-content:flex-start}.ihabdevteam-core-scope .button--align-center{justify-content:center}.ihabdevteam-core-scope .button--align-right{justify-content:flex-end}.ihabdevteam-core-scope .button--align-left .button__label{align-items:center;display:inline-flex;flex:1 1 auto}.ihabdevteam-core-scope .button--align-left .button__label-text{justify-content:flex-start;text-align:left}.ihabdevteam-core-scope .button--align-center .button__label{align-items:center;display:flex;flex:1 1 auto;justify-content:center;text-align:center}.ihabdevteam-core-scope .button--align-right .button__label{flex:1 1 auto;text-align:right}.ihabdevteam-core-scope .button--align-grid{justify-content:center}.ihabdevteam-core-scope .button--align-grid .button__label{display:grid;flex:1 1 auto;grid-auto-columns:1fr;grid-auto-flow:column;text-align:center}.ihabdevteam-core-scope .button.button--no-bg{background:transparent;border-color:transparent}.ihabdevteam-core-scope .button--variant-danger{--button-text-color:var(--color-error);--button-icon-color:var(--color-error);--button-subLabel-color:var(--color-error);background:var(--color-deepWhite);border:var(--button-border,1px solid var(--color-error))}.ihabdevteam-core-scope .button--variant-danger:focus-visible,.ihabdevteam-core-scope .button--variant-danger:hover{--button-text-color:var(--color-error);--button-icon-color:var(--color-error);--button-subLabel-color:var(--color-error);background:var(--color-error-a10);border-color:var(--color-error)}.ihabdevteam-core-scope .button--variant-danger.is-selected,.ihabdevteam-core-scope .button--variant-danger[aria-pressed=true]{--button-text-color:#fff;--button-icon-color:#fff;--button-subLabel-color:#fff;background:var(--color-error);border-color:var(--color-error)}.ihabdevteam-core-scope .button--variant-default{--button-text-color:var(--color-darkGray);--button-icon-color:var(--color-lightGray);--button-subLabel-color:var(--color-gray);background:var(--color-deepWhite);border:var(--button-border,1px solid var(--color-whiteLine))}.ihabdevteam-core-scope .button--variant-default:focus-visible,.ihabdevteam-core-scope .button--variant-default:hover{--button-text-color:var(--color-black);--button-icon-color:var(--color-main);--button-subLabel-color:var(--color-black);background:var(--color-white);border-color:var(--color-main)}.ihabdevteam-core-scope .button--variant-default.is-selected,.ihabdevteam-core-scope .button--variant-default[aria-pressed=true]{--button-text-color:#fff;--button-icon-color:#fff;--button-subLabel-color:#fff;background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .button--variant-main{--button-subLabel-color:var(--color-white-a80);background:var(--color-main);border:var(--button-border,1px solid var(--color-main));color:#fff}.ihabdevteam-core-scope .button--variant-main:focus-visible,.ihabdevteam-core-scope .button--variant-main:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-sub);border-color:var(--color-sub);color:#fff}.ihabdevteam-core-scope .button--variant-main.is-selected,.ihabdevteam-core-scope .button--variant-main[aria-pressed=true]{--button-subLabel-color:var(--color-white-a80);background:var(--color-sub);color:#fff}.ihabdevteam-core-scope .button--variant-sub{--button-subLabel-color:var(--color-white-a80);background:var(--color-primary,var(--color-sub));color:#fff}.ihabdevteam-core-scope .button--variant-sub:focus-visible,.ihabdevteam-core-scope .button--variant-sub:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-uiAccent);color:#fff}.ihabdevteam-core-scope .button--variant-transparent-white{--button-subLabel-color:var(--color-white-a60);background:transparent;border:var(--button-border,1px solid var(--color-white-a80));color:#fbfdff}.ihabdevteam-core-scope .button--variant-transparent-white:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-white:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-white-a10);color:#fff}.ihabdevteam-core-scope .button--variant-transparent-white.is-selected,.ihabdevteam-core-scope .button--variant-transparent-white[aria-pressed=true]{--button-subLabel-color:var(--color-lightGray);background:var(--color-white);color:var(--color-main)}.ihabdevteam-core-scope .button--variant-transparent-gray{--button-subLabel-color:var(--color-gray-a60);background:transparent;border:var(--button-border,1px solid var(--color-gray-a80));color:var(--color-gray-a80)}.ihabdevteam-core-scope .button--variant-transparent-gray:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-gray:hover{--button-subLabel-color:var(--color-gray-a60);background:var(--color-gray-a10);color:var(--color-gray)}.ihabdevteam-core-scope .button--variant-transparent-lightGray{--button-subLabel-color:var(--color-gray-a60);background:transparent;border:var(--button-border,1px solid var(--color-lightGray-a80));color:var(--color-gray)}.ihabdevteam-core-scope .button--variant-transparent-lightGray:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-lightGray:hover{--button-subLabel-color:var(--color-gray-a60);background:var(--color-lightGray-a10);color:var(--color-deepGray)}.ihabdevteam-core-scope .button--variant-disabled{--button-subLabel-color:var(--color-disabled);background-color:transparent;border:var(--button-border,1px solid var(--color-whiteLine));color:var(--color-disabled)}.ihabdevteam-core-scope .button--variant-disabled .button__icon,.ihabdevteam-core-scope .button--variant-disabled .button__left,.ihabdevteam-core-scope .button--variant-disabled .button__right{color:var(--color-disabled)}.ihabdevteam-core-scope .button--variant-disabled-covered{background-color:var(--color-darkWhite);border:1px solid transparent;border:var(--button-border,1px solid transparent);border-color:transparent;color:transparent}.ihabdevteam-core-scope .button--variant-disabled-covered .button__icon,.ihabdevteam-core-scope .button--variant-disabled-covered .button__left,.ihabdevteam-core-scope .button--variant-disabled-covered .button__right{color:transparent}.ihabdevteam-core-scope .button--variant-disabled-faded,.ihabdevteam-core-scope .button--variant-disabled-invisibled{background:transparent}.ihabdevteam-core-scope .button--variant-disabled-faded .button__icon,.ihabdevteam-core-scope .button--variant-disabled-faded .button__left,.ihabdevteam-core-scope .button--variant-disabled-faded .button__right,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__icon,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__label,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__left,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__right{color:transparent}.ihabdevteam-core-scope .button.button--tooltip-only,.ihabdevteam-core-scope .button:disabled,.ihabdevteam-core-scope .button[disabled]{cursor:default}.ihabdevteam-core-scope .button--shape-rounded{border-radius:8px!important;border-radius:var(--button-rounded-radius,8px)!important}.ihabdevteam-core-scope .button--shape-pill{border-radius:9999px!important}.ihabdevteam-core-scope .button72{--button-rounded-radius:18px;border-radius:36px;height:72px;justify-content:center}.ihabdevteam-core-scope .button72--bar{min-width:220px}.ihabdevteam-core-scope .button72--dot{padding:0;width:72px}.ihabdevteam-core-scope .button56{--button-rounded-radius:14px;border-radius:28px;height:56px;justify-content:center}.ihabdevteam-core-scope .button56--bar{min-width:190px}.ihabdevteam-core-scope .button56--dot{padding:0;width:56px}.ihabdevteam-core-scope .button52{--button-rounded-radius:13px;border-radius:26px;height:52px;justify-content:center}.ihabdevteam-core-scope .button52--bar{min-width:175px}.ihabdevteam-core-scope .button52--dot{padding:0;width:52px}.ihabdevteam-core-scope .button48{--button-rounded-radius:12px;border-radius:24px;height:48px;justify-content:center}.ihabdevteam-core-scope .button48--bar{min-width:160px}.ihabdevteam-core-scope .button48--dot{padding:0;width:48px}.ihabdevteam-core-scope .button40{--button-rounded-radius:10px;border-radius:20px;height:40px;justify-content:center}.ihabdevteam-core-scope .button40--bar{min-width:100px}.ihabdevteam-core-scope .button40--dot{padding:0;width:40px}.ihabdevteam-core-scope .button40 .button__icon,.ihabdevteam-core-scope .button40--bar .button__icon,.ihabdevteam-core-scope .button40--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button32{--button-rounded-radius:8px;border-radius:16px;height:32px;justify-content:center}.ihabdevteam-core-scope .button32--bar{min-width:72px}.ihabdevteam-core-scope .button32--dot{padding:0;width:32px}.ihabdevteam-core-scope .button32 .button__icon,.ihabdevteam-core-scope .button32--bar .button__icon,.ihabdevteam-core-scope .button32--dot .button__icon{height:18px;width:18px}.ihabdevteam-core-scope .button28{--button-rounded-radius:7px;border-radius:14px;height:28px;justify-content:center}.ihabdevteam-core-scope .button28--bar{min-width:60px}.ihabdevteam-core-scope .button28--dot{padding:0;width:28px}.ihabdevteam-core-scope .button28 .button__icon,.ihabdevteam-core-scope .button28--bar .button__icon,.ihabdevteam-core-scope .button28--dot .button__icon{height:16px;width:16px}.ihabdevteam-core-scope .button24{--button-rounded-radius:6px;border-radius:12px;height:24px;justify-content:center}.ihabdevteam-core-scope .button24--bar{min-width:48px}.ihabdevteam-core-scope .button24--dot{padding:0;width:24px}.ihabdevteam-core-scope .button24 .button__icon,.ihabdevteam-core-scope .button24--bar .button__icon,.ihabdevteam-core-scope .button24--dot .button__icon{height:14px;width:14px}.ihabdevteam-core-scope .button-keyboard{border-radius:12px;height:32px;justify-content:center}.ihabdevteam-core-scope .button-keyboard--bar{min-width:32px;padding:0 12px}.ihabdevteam-core-scope .button-keyboard--dot{padding:0;width:32px}.ihabdevteam-core-scope .button-word{border-radius:12px;height:72px;justify-content:center;padding:0 16px}.ihabdevteam-core-scope .button-word--bar{min-width:120px}.ihabdevteam-core-scope .button-word--dot{padding:0;width:72px}@media (max-width:1024px){.ihabdevteam-core-scope .button56{--button-rounded-radius:13px;border-radius:25px;height:50px}.ihabdevteam-core-scope .button56--bar{min-width:170px}.ihabdevteam-core-scope .button56--dot{width:50px}.ihabdevteam-core-scope .button48{--button-rounded-radius:11px;border-radius:22px;height:44px}.ihabdevteam-core-scope .button48--bar{min-width:140px}.ihabdevteam-core-scope .button48--dot{width:44px}.ihabdevteam-core-scope .button40{--button-rounded-radius:9px;border-radius:18px;height:36px}.ihabdevteam-core-scope .button40--bar{min-width:88px}.ihabdevteam-core-scope .button40--dot{width:36px}.ihabdevteam-core-scope .button32{--button-rounded-radius:8px;border-radius:15px;height:30px}.ihabdevteam-core-scope .button32--bar{min-width:64px}.ihabdevteam-core-scope .button32--dot{width:30px}.ihabdevteam-core-scope .button24--bar{min-width:44px}}@media (max-width:768px){.ihabdevteam-core-scope .button56{--button-rounded-radius:12px;border-radius:23px;height:46px}.ihabdevteam-core-scope .button56--bar{min-width:150px}.ihabdevteam-core-scope .button56--dot{width:46px}.ihabdevteam-core-scope .button56 .button__icon,.ihabdevteam-core-scope .button56--bar .button__icon,.ihabdevteam-core-scope .button56--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button48{--button-rounded-radius:10px;border-radius:20px;height:40px}.ihabdevteam-core-scope .button48--bar{min-width:120px}.ihabdevteam-core-scope .button48--dot{width:40px}.ihabdevteam-core-scope .button48 .button__icon,.ihabdevteam-core-scope .button48--bar .button__icon,.ihabdevteam-core-scope .button48--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button40{--button-rounded-radius:8px;border-radius:17px;height:34px}.ihabdevteam-core-scope .button40--bar{min-width:80px}.ihabdevteam-core-scope .button40--dot{width:34px}.ihabdevteam-core-scope .button32{--button-rounded-radius:7px;border-radius:14px;height:28px}.ihabdevteam-core-scope .button32--bar{min-width:60px}.ihabdevteam-core-scope .button32--dot{width:28px}.ihabdevteam-core-scope .button24--bar{min-width:40px}}";ce(r7);var n7=".ihabdevteam-core-scope .tooltip-content{animation:tooltip-pop .2s cubic-bezier(.2,.9,.2,1) both;background-color:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);box-sizing:border-box;pointer-events:auto;position:absolute;transform-origin:left center;white-space:normal;will-change:transform,opacity;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-content--inline{position:static}.ihabdevteam-core-scope .tooltip-content--bordered{border:1px solid var(--color-whiteLine)}.ihabdevteam-core-scope .tooltip-content.tooltip-description,.ihabdevteam-core-scope .tooltip-content.tooltip-info,.ihabdevteam-core-scope .tooltip-content.tooltip-training{background:transparent;box-shadow:none}.ihabdevteam-core-scope .tooltip-content__header{align-items:center;color:var(--color-gray);display:flex;height:40px;padding:0 2px 10px}.ihabdevteam-core-scope .tooltip-content.is-closing{animation:tooltip-fade-out .2s ease both;opacity:0}.ihabdevteam-core-scope .tooltip-content[data-placement=top]{transform:translateY(-6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=bottom]{transform:translateY(6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=left]{transform:translateX(-6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=right]{transform:translateX(6px)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=top]{transform:translateY(-6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=bottom]{transform:translateY(6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=left]{transform:translateX(-6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=right]{transform:translateX(6px) scale(.98)}@keyframes tooltip-pop{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tooltip-fade-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-6px) scale(.98)}}.ihabdevteam-core-scope .tooltip-backdrop{background:var(--color-popupBlock);inset:0;position:fixed;z-index:calc(var(--z-tooltip) - 1)}.ihabdevteam-core-scope .tooltip-portal{inset:0;position:fixed;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-content.is-mobile{left:50%!important;max-width:calc(100% - 40px)!important;top:50%!important;transform:translate(-50%,-50%)!important;visibility:visible!important;width:calc(100% - 40px)!important;z-index:var(--z-tooltip)!important}";ce(n7);const br=[];let Ci=!1;function Rb(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=br[br.length-1];t&&(e.stopPropagation(),t())}function Io(e){return br.push(e),!Ci&&typeof document<"u"&&(document.addEventListener("keydown",Rb),Ci=!0),()=>{const t=br.lastIndexOf(e);t>=0&&br.splice(t,1),br.length===0&&Ci&&typeof document<"u"&&(document.removeEventListener("keydown",Rb),Ci=!1)}}const xi=s.createContext(null);function i7(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const Pb=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function s7(e){const t=s.useCallback(a=>{if(typeof window>"u"||!window.matchMedia)return()=>{};const o=window.matchMedia(e);return o.addEventListener?o.addEventListener("change",a):o.addListener&&o.addListener(a),()=>{o.removeEventListener?o.removeEventListener("change",a):o.removeListener&&o.removeListener(a)}},[e]);return fp.useSyncExternalStore(t,()=>Pb(e),()=>!1)}function l7(e){const[t,a]=s.useState(Pb(e));return s.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const o=window.matchMedia(e),n=l=>a(l.matches),i=o;return i.addEventListener?i.addEventListener("change",n):i.addListener&&i.addListener(n),a(o.matches),()=>{i.removeEventListener?i.removeEventListener("change",n):i.removeListener&&i.removeListener(n)}},[e]),t}const c7=typeof fp.useSyncExternalStore=="function"?s7:l7;function sa(e){const t=s.useContext(xi),a=c7(e);return t&&typeof t.mobile=="boolean"&&i7(e)?t.mobile:a}const u7="(prefers-reduced-motion: reduce)";function Ec(){return sa(u7)}function xa(e){const{anchorRect:t,anchorEl:a,offset:o=20,edgeMargin:n=20,onClose:i,closeOnOutsideClick:l=!0,className:c="",role:u="dialog",ariaLabel:d="",children:h,backdrop:p=!1,isMobilePopup:m=!1,useBorder:C=!0,header:v,focusOnOpen:f}=e||{},g=s.useRef(null),[x,b]=s.useState({position:"fixed",left:0,top:-9999}),[w,_]=s.useState(!1),[A,y]=s.useState("bottom"),[B,k]=s.useState(!1),[S,E]=s.useState(!1),D=!t&&!a,I=s.useCallback((V=!1)=>{if(S&&m)return;const $=a?a.getBoundingClientRect():t;if(!$||!g.current)return;const U=g.current,{offsetWidth:T,offsetHeight:F}=U,N=window.innerWidth,O=window.innerHeight,H=N-$.right,Z=$.left,te=$.top,se=O-$.bottom;let be=0,X=0,re="top";if(te>=F+o)re="top",X=$.top-o-F,be=$.left+$.width/2-T/2;else if(se>=F+o)re="bottom",X=$.bottom+o,be=$.left+$.width/2-T/2;else if(H>=T+o)re="right",be=$.right+o,X=$.top+$.height/2-F/2;else if(Z>=T+o)re="left",be=$.left-o-T,X=$.top+$.height/2-F/2;else{const ue=Math.max(te,se,H,Z);ue===te?(re="top",X=$.top-o-F,be=$.left+$.width/2-T/2):ue===se?(re="bottom",X=$.bottom+o,be=$.left+$.width/2-T/2):ue===H?(re="right",be=$.right+o,X=$.top+$.height/2-F/2):(re="left",be=$.left-o-T,X=$.top+$.height/2-F/2)}const Ae=Number.isFinite(Number(n))?Number(n):8;be=Math.min(Math.max(be,Ae),N-T-Ae),X=Math.min(Math.max(X,Ae),O-F-Ae);const K=Math.round(be),ie=Math.round(X);V&&g.current?(g.current.style.left=`${K}px`,g.current.style.top=`${ie}px`,g.current.dataset.placement=re):(y(re||A),b({position:"fixed",left:K,top:ie}),k(!0))},[S,m,a,t,o,n,A]);s.useLayoutEffect(()=>{if(D)return;if(S&&m){b({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),k(!0);return}I();const V=requestAnimationFrame(()=>I());return()=>cancelAnimationFrame(V)},[t,a,o,h,n,D,S,m,I]),s.useEffect(()=>{if(D||S&&m||!g.current||typeof ResizeObserver>"u")return;const V=new ResizeObserver(()=>{t&&I()});return V.observe(g.current),()=>V.disconnect()},[t,h,n,D,S,m,I]),s.useEffect(()=>{if(D||S&&m)return;let V=null;const $=()=>{if(typeof requestAnimationFrame>"u"){I(!0);return}V===null&&(V=requestAnimationFrame(()=>{V=null,I(!0)}))},U=T=>{if(!a&&i){const F=T.target;if(F&&g.current&&g.current.contains(F))return;try{if(F&&F.closest&&F.closest("[data-tooltip-ignore]"))return}catch{}z.current(!0);return}$()};return window.addEventListener("resize",$),document.addEventListener("scroll",U,{passive:!0,capture:!0}),()=>{V!==null&&cancelAnimationFrame(V),window.removeEventListener("resize",$),document.removeEventListener("scroll",U,{capture:!0})}},[t,a,i,o,h,n,D,S,m,I]),s.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const V=window.matchMedia("(max-width: 768px)"),$=()=>E(!!V.matches);$();try{V.addEventListener?V.addEventListener("change",$):V.addListener($)}catch{try{V.addListener($)}catch{}}return()=>{try{V.removeEventListener?V.removeEventListener("change",$):V.removeListener($)}catch{}}},[]);const j=s.useRef(!1),W=s.useRef(null),L=Ec(),M=s.useCallback((V=!1)=>{if(i&&!(w||j.current)){if(j.current=!0,V){_(!0);try{i&&i()}catch{j.current=!1,_(!1)}return}_(!0),W.current=setTimeout(()=>{W.current=null;try{i&&i()}catch{j.current=!1,_(!1)}},L?0:200)}},[w,i,_,L]);s.useEffect(()=>()=>{W.current&&clearTimeout(W.current)},[]),s.useEffect(()=>{if(D)return;const V=T=>{const F=g.current;if(!F)return;const N=T.target;if(N&&!F.contains(N)){try{if(N.closest&&N.closest("[data-tooltip-ignore]"))return}catch{}l&&M(!0)}},$=T=>{const F=g.current;if(!F)return;const N=T.target;if(N&&!F.contains(N)){try{if(N.closest&&N.closest("[data-tooltip-ignore]"))return}catch{}l&&M(!0)}},U=T=>{if(T.key==="Tab"){const F=g.current;if(!F)return;const N=F.querySelectorAll(Oa);if(!N||N.length===0)return;const O=N[0],H=N[N.length-1],Z=document.activeElement;T.shiftKey?Z===O&&(T.preventDefault(),H.focus()):Z===H&&(T.preventDefault(),O.focus())}};return document.addEventListener("pointerdown",V,!0),document.addEventListener("click",$,!0),document.addEventListener("keydown",U),()=>{document.removeEventListener("pointerdown",V,!0),document.removeEventListener("click",$,!0),document.removeEventListener("keydown",U)}},[i,l,M,D]);const z=s.useRef(M);s.useEffect(()=>{z.current=M});const q=!!i;s.useEffect(()=>{if(!(D||!q))return Io(()=>z.current())},[D,q]),s.useEffect(()=>{const V=()=>{M(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",V),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",V)}},[M]);const Y=s.useRef(null);s.useEffect(()=>{if(D||f===!1||!B)return;const V=g.current;if(!V)return;const $=V.querySelector(Oa);if($)return Y.current=document.activeElement,$.focus(),()=>{const U=Y.current;Y.current=null,U&&document.contains(U)&&U.focus()}},[D,f,B]),s.useEffect(()=>{u==="dialog"&&!d&&ra("tooltip-no-name",'[ihab/Tooltip] \uC774\uB984 \uC5C6\uB294 role="dialog" \uC785\uB2C8\uB2E4 \u2014 ariaLabel \uC744 \uC8FC\uC138\uC694. \uB0AD\uB3C5\uAE30\uAC00 "\uB300\uD654\uC0C1\uC790" \uB77C\uACE0\uB9CC \uC77D\uC2B5\uB2C8\uB2E4.')},[u,d]);const P=r.jsxs("div",{ref:g,className:`tooltip-content ${D?"tooltip-content--inline":""} ${C?"tooltip-content--bordered":""} ${w?"is-closing":""} ${c} ${S&&m?"is-mobile":""}`,role:u,"aria-label":d||void 0,style:D?{}:{...x,visibility:B?"visible":"hidden"},tabIndex:-1,"data-placement":A,"data-left":D?"":x.left,"data-top":D?"":x.top,"data-anchor-left":t?Math.round(t.left):"","data-anchor-top":t?Math.round(t.top):"","data-anchor-width":t?Math.round(t.width):"","data-anchor-height":t?Math.round(t.height):"",children:[v!=null&&r.jsx("div",{className:"tooltip-content__header h5",children:v}),h]});if(D||typeof document>"u")return P;if(p||S&&m){const V=r.jsxs("div",{className:"tooltip-portal",children:[r.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&M(!0)}}),P]});return ua.createPortal(V,document.body)}return ua.createPortal(P,document.body)}var d7='.ihabdevteam-core-scope .tooltip-info__content{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-main);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);color:var(--color-black);display:inline-flex;justify-content:center;line-height:1;overflow:hidden;padding:4px 12px;position:relative;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .tooltip-content.tooltip-info{pointer-events:none}.ihabdevteam-core-scope .tooltip-content.tooltip-info .tooltip-info__content{box-shadow:var(--shadow-tooltip)}.ihabdevteam-core-scope .tooltip-info[data-placement=bottom] .tooltip-info__content:after,.ihabdevteam-core-scope .tooltip-info[data-placement=top] .tooltip-info__content:after{content:"";height:0;margin:0;padding:0;position:absolute;width:0}';ce(d7);function Ea(e){const{anchorRect:t,text:a,offset:o=8,onClose:n,className:i="",ariaLabel:l}=e||{};return a?r.jsx(xa,{anchorRect:t,offset:o,onClose:n,closeOnOutsideClick:!1,className:`tooltip-info ${i}`,ariaLabel:l||a,children:r.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}var p7=".ihabdevteam-core-scope .tooltip-description__box{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);display:flex;flex-direction:column;gap:10px;max-width:640px;padding:16px 20px}.ihabdevteam-core-scope .tooltip-description__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .tooltip-description__items{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .tooltip-description__item{align-items:flex-start;color:var(--color-darkGray);display:flex;gap:var(--spacing-xs);margin:0}.ihabdevteam-core-scope .tooltip-description__index{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .tooltip-description__dot{border-radius:50%;flex-shrink:0;height:8px;margin-top:6px;width:8px}.ihabdevteam-core-scope .tooltip-description__item--active{color:var(--color-main);font-weight:600}.ihabdevteam-core-scope .tooltip-description__item--active .tooltip-description__index{color:var(--color-main)}";ce(p7);function Co(e){const{t}=_e.useTranslation(),{anchorRect:a,title:o,items:n,activeIndex:i=-1,showIndex:l=!0,onClose:c,offset:u=12,closeOnOutsideClick:d=!0}=e||{},h=(Array.isArray(n)?n:n?[n]:[]).map(p=>typeof p=="string"?{text:p}:p);return!h.length&&!o?null:r.jsx(xa,{anchorRect:a,offset:u,onClose:c,closeOnOutsideClick:d,useBorder:!1,className:"tooltip-description",ariaLabel:o||t("tooltip.description","\uC124\uBA85"),children:r.jsxs("div",{className:"tooltip-description__box",children:[o&&r.jsx("span",{className:"tooltip-description__title body-2",children:o}),r.jsx("ol",{className:"tooltip-description__items",children:h.map((p,m)=>r.jsxs("li",{className:`tooltip-description__item body-3${m===i?" tooltip-description__item--active":""}`,children:[l&&h.length>1&&r.jsxs("span",{className:"tooltip-description__index button-1",children:[m+1,"."]}),p.color&&r.jsx("span",{className:"tooltip-description__dot",style:{background:p.color},"aria-hidden":"true"}),r.jsx("span",{children:p.text})]},m))})]})})}function pn(e){const t=s.useRef(e);return s.useEffect(()=>{t.current=e}),t}let Dc=0,zb=!1;function Ib(){zb||typeof document>"u"||(zb=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(Dc=Date.now())},!0),document.addEventListener("touchstart",()=>{Dc=Date.now()},{capture:!0,passive:!0}))}Ib();function gr(e){return!!e&&e.pointerType==="touch"}function fr(e=1e3){return Ib(),Date.now()-Dc<e}function Nc(e,t,a,{enabled:o=!0,fallbackOnParent:n=!1}={}){const i=pn(e),l=pn(t),c=s.useRef(null),u=s.useRef(0);s.useEffect(()=>{if(!o||typeof document>"u")return;const h=p=>{const m=p,C=p.target,v=a.current,f=!!(C&&v&&v.contains(C));if(m.pointerType!=="touch"){f&&(c.current=null);return}if(f){c.current=i.current;return}c.current=null,i.current&&!(C&&C.closest?.(".tooltip-content"))&&l.current(!1,v)};return document.addEventListener("pointerdown",h,!0),()=>document.removeEventListener("pointerdown",h,!0)},[o,a,i,l]);const d=s.useCallback(h=>{const p=c.current;return p===null?!1:(c.current=null,u.current=Date.now(),l.current(!p,h??a.current),!0)},[a,l]);return s.useEffect(()=>{if(!o||!n)return;const h=a.current,p=h?.parentElement;if(!h||!p)return;let m=null;const C=g=>{const x=g.changedTouches?.[0];if(!x)return!1;const b=h.getBoundingClientRect();return x.clientX>=b.left&&x.clientX<=b.right&&x.clientY>=b.top&&x.clientY<=b.bottom},v=g=>{m=C(g)?i.current:null},f=g=>{const x=m;m=null,!(x===null||Date.now()-u.current<700||!C(g))&&(c.current=null,u.current=Date.now(),l.current(!x,h))};return p.addEventListener("touchstart",v,{passive:!0}),p.addEventListener("touchend",f),()=>{p.removeEventListener("touchstart",v),p.removeEventListener("touchend",f)}},[o,n,a,i,l]),{touchPress:d}}function h7(e,t){const{size:a=48,type:o,htmlType:n,href:i,target:l,rel:c,icon:u,rightIcon:d,label:h,count:p,subLabel:m,children:C,ariaLabel:v,variant:f="default",align:g="center",nowrap:x=!1,selected:b,toggleable:w=!1,ariaExpanded:_,ariaControls:A,disabled:y=!1,useLabel:B=!0,useBorder:k=!0,useBG:S=!0,useDisabledCovered:E=!1,useDisabledInvisible:D=!1,width:I,minWidth:j,onClick:W,onDisabledClick:L,showTooltipInfo:M=!1,tooltipInfoText:z=null,tooltipDescription:q=null,tooltipOnly:Y=!1,iconSize:P="medium",iconColor:V,shape:$="rounded",color:U,className:T,...F}=e,N=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),O=N.match(/^\d+$/)?`button${N}`:`button-${N}`,H=Number(a),Z=!isNaN(H)&&H<40?"button-2":"button-1",te=h??C,se=y||!!F.disabled,be=se?E?"disabled-covered":D?"disabled-invisibled":"disabled":f,X=be?`button--variant-${be}`:"",re=g?`button--align-${g}`:"",Ae=x?"button--nowrap":"",K=$?`button--shape-${$}`:"",ie=typeof V=="string"&&V.startsWith("--")?`var(${V})`:V,ue={...I?{width:typeof I=="number"?`${I}px`:I}:{},...j?{minWidth:typeof j=="number"?`${j}px`:j}:{},...k?{}:{"--button-border":se?"0":"1px solid transparent"},...ie?{"--button-icon-color":ie}:{},...U?{"--color-main":U}:{}},je=B===!1?"":te,ye=Array.isArray(je)?je.length>0:!!je,le=!!d,he=o??(ye||u||le?"bar":"dot"),ve=`${O}--${he}`,G=s.useRef(null);s.useEffect(()=>{!Xo||n!==void 0||G.current?.closest("form")&&ra(`button-in-form:${typeof te=="string"?te:""}`,'[ihab/Button] <form> \uC548\uC778\uB370 htmlType \uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 \uC774 \uB2E8\uCD94\uB294 type="button" \uC774\uB77C \uD3FC\uC744 \uBCF4\uB0B4\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uBCF4\uB0B4\uB294 \uB2E8\uCD94\uBA74 htmlType="submit" \uC744 \uC8FC\uC138\uC694. \uD3FC\uC5D0 \uBCF4\uB0B4\uB294 \uB2E8\uCD94\uAC00 \uD558\uB098\uB3C4 \uC5C6\uC73C\uBA74 **Enter \uB85C\uB3C4 \uC548 \uBCF4\uB0B4\uC9D1\uB2C8\uB2E4**(\uCE78\uC774 \uB458 \uC774\uC0C1\uC77C \uB54C).'+(typeof te=="string"&&te?` \uB2E8\uCD94: ${te}`:""))},[n,te]);const oe=s.useRef(t);oe.current=t;const me=s.useCallback(qe=>{G.current=qe;const tt=oe.current;typeof tt=="function"?tt(qe):tt&&(tt.current=qe)},[]),Te=s.useRef(se),[ke,Pe]=s.useState(!!b),[He,lt]=s.useState(!1),[rt,at]=s.useState(null),ht=s.useCallback(()=>lt(!1),[]),[De,Ue]=s.useState(!1),Se=s.useId();s.useEffect(()=>{typeof b=="boolean"&&Pe(b)},[b]),s.useEffect(()=>{if(Te.current&&!se&&G.current){const qe=G.current;let tt=!1;try{tt=qe.matches(":focus:not(:focus-visible)")}catch{tt=!1}tt&&qe.blur(),qe.style.pointerEvents="none";const Dt=requestAnimationFrame(()=>{requestAnimationFrame(()=>{G.current&&(G.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(Dt)}Te.current=se},[se]);const Ye=typeof b=="boolean"?!!b:ke,ee=typeof _=="boolean"?void 0:w||typeof b=="boolean"?Ye?"true":"false":F["aria-pressed"],pe=Ne("button",O,ve,X,re,Ae,K,Ye?"is-selected":null,S?null:"button--no-bg",Y?"button--tooltip-only":null,T),Ee=`button__icon button__icon--${P}`,Re=Array.isArray(m)?m:m!==void 0?[m]:[],Ve=()=>{if(Array.isArray(je))return je.map((tt,Dt)=>{const ca=Re[Dt];return r.jsxs("span",{className:`button__label-text${ca!==void 0?" button__label-text--has-sub":""}`,children:[tt,ca!==void 0&&r.jsx("span",{className:"button__sub-label-text caption-1",children:ca})]},Dt)});const qe=m!==void 0;return r.jsxs("span",{className:`button__label-text${qe?" button__label-text--has-sub":""}`,children:[je,p!=null&&r.jsx("span",{className:"button__count",children:p}),qe&&r.jsx("span",{className:"button__sub-label-text caption-1",children:m})]})},We=qe=>{typeof b!="boolean"&&!w&&Pe(!1),qe.currentTarget.blur()},ct=qe=>{se||(typeof F.onMouseLeave=="function"&&F.onMouseLeave(qe),We(qe))},mt=qe=>{if(Y&&ft&&et.touchPress(qe.currentTarget),se){ft&&et.touchPress(qe.currentTarget),qe.preventDefault(),L?.(qe);return}typeof b!="boolean"&&w&&Pe(tt=>!tt),W?.(qe)},gt=s.useCallback(()=>{(M||q)&&(lt(!0),at(G.current?.getBoundingClientRect()??null))},[M,q]),Et=s.useCallback(()=>{(M||q)&&(lt(!1),at(null))},[M,q]),ft=!!(M||q),et=Nc(He,qe=>{qe?gt():Et()},G,{enabled:ft&&(se||Y),fallbackOnParent:ft&&se}),Ie={...F};delete Ie.disabled,delete Ie.className,delete Ie.faded,delete Ie.useFaded,delete Ie.loading,delete Ie.onMouseLeave,delete Ie.onPointerEnter,delete Ie.onPointerLeave,delete Ie.onPointerUp,delete Ie.onFocus,delete Ie.onBlur,se&&(Object.keys(Ie).forEach(qe=>{/^on[A-Z]/.test(qe)&&typeof Ie[qe]=="function"&&delete Ie[qe]}),Ie["aria-disabled"]="true");const Oe=(typeof M=="string"?M:null)??(typeof z=="string"?z:null)??(typeof v=="string"?v:null)??(typeof te=="string"?te:null)??void 0,bt=typeof v=="string"?v:typeof te=="string"?te:Oe,it=q?[q.title,...q.items??[]].filter(Boolean).join(". "):M&&Oe&&Oe!==bt?Oe:"",wt=[typeof F["aria-describedby"]=="string"?F["aria-describedby"]:void 0,it?Se:null].filter(Boolean).join(" ")||void 0,Ze=(qe,tt)=>r.jsx(ot,{icon:qe,label:tt??bt,className:Ee,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),kt=()=>he==="dot"?r.jsxs(r.Fragment,{children:[Ze(u),ye&&r.jsx("span",{className:`button__label ${Z}`,children:Ve()})]}):g==="center"&&u?r.jsxs(r.Fragment,{children:[r.jsxs("span",{className:"button__center-group",children:[r.jsx("span",{className:"button__left",children:Ze(u)}),ye&&r.jsx("span",{className:`button__label ${Z}`,children:Ve()})]}),le&&r.jsx("span",{className:"button__right",children:Ze(d)})]}):r.jsxs(r.Fragment,{children:[u&&r.jsx("span",{className:"button__left",children:Ze(u,v??te)}),ye&&r.jsx("span",{className:`button__label ${Z}`,children:Ve()}),le&&r.jsx("span",{className:"button__right",children:Ze(d)})]}),Lt=!!i&&!se;return r.jsxs(r.Fragment,{children:[r.jsxs(Lt?"a":"button",{...Ie,ref:me,...Lt?{href:i,target:l,rel:c??(l==="_blank"?"noreferrer":void 0)}:{type:n??"button",disabled:se&&!L&&!De},className:pe,"aria-pressed":ee,"aria-expanded":typeof _=="boolean"?_:F["aria-expanded"],"aria-controls":A??F["aria-controls"],"aria-label":bt,"aria-disabled":se&&(Lt||L||De)?!0:void 0,"aria-describedby":wt,style:ue,onClick:mt,onMouseLeave:ct,onPointerEnter:qe=>{gr(qe)||gt(),!se&&typeof F.onPointerEnter=="function"&&F.onPointerEnter(qe)},onPointerLeave:qe=>{gr(qe)||Et(),!se&&typeof F.onPointerLeave=="function"&&F.onPointerLeave(qe)},onPointerUp:qe=>{se&&ft&&et.touchPress(qe.currentTarget),!se&&typeof F.onPointerUp=="function"&&F.onPointerUp(qe)},onFocus:qe=>{Ue(!0),fr()||gt(),!se&&typeof F.onFocus=="function"&&F.onFocus(qe)},onBlur:qe=>{Ue(!1),se||We(qe),Et(),!se&&typeof F.onBlur=="function"&&F.onBlur(qe)},children:[kt(),it?r.jsx("span",{id:Se,hidden:!0,"aria-label":it}):null]}),He&&q?r.jsx(Co,{anchorRect:rt,title:q.title,items:q.items,onClose:ht}):He&&Oe?r.jsx(Ea,{anchorRect:rt,text:Oe,onClose:ht}):null]})}const Ce=s.forwardRef(h7);Ce.displayName="Button";function Tt(e,t,a){const o=s.useRef(null);return s.useLayoutEffect(()=>{const n=o.current?.parentElement??null;return t(n,e),()=>a(n)},[e,t,a]),o}var m7=".ihabdevteam-core-scope .promo-banner-bg{border-radius:inherit;inset:0;pointer-events:none;position:absolute}";ce(m7);var b7=".ihabdevteam-core-scope .promo-banner-bg-main{background:linear-gradient(45deg,var(--color-main),var(--color-sub))}";ce(b7);const vr={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},Tc=new WeakMap;function _i(e){if(e)return Tc.get(e)}function Kt(e,t){e&&(e.style.setProperty(vr.title,t.title),e.style.setProperty(vr.description,t.description),Tc.set(e,t))}function Zt(e){e&&(e.style.removeProperty(vr.title),e.style.removeProperty(vr.description),Tc.delete(e))}const jc={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Lc(){const e=Tt(jc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}var g7=".ihabdevteam-core-scope .promo-banner-bg-soft{background:var(--color-main-a10)}";ce(g7);const Mc={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function $c(){const e=Tt(Mc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}var f7=".ihabdevteam-core-scope .promo-banner-bg-sub{background:var(--color-sub)}";ce(f7);const Rc={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Pc(){const e=Tt(Rc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}var v7=".ihabdevteam-core-scope .promo-banner-bg-deep{background:linear-gradient(135deg,var(--color-darkMain),var(--color-darkSub))}";ce(v7);const zc={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ic(){const e=Tt(zc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}var C7=".ihabdevteam-core-scope .promo-banner-bg-soft-sub{background:var(--color-sub-a10)}";ce(C7);const Oc={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Fc(){const e=Tt(Oc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}var x7=".ihabdevteam-core-scope .promo-banner-bg-warm{background:var(--color-warn)}";ce(x7);const Hc={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function Vc(){const e=Tt(Hc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}var _7=".ihabdevteam-core-scope .promo-banner-bg-dark{background:var(--color-lightBlack)}";ce(_7);const Wc={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Gc(){const e=Tt(Wc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}var y7=".ihabdevteam-core-scope .promo-banner-bg-radial{background:radial-gradient(circle at 15% 20%,var(--color-main) 0,var(--color-sub) 100%)}";ce(y7);const Uc={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function qc(){const e=Tt(Uc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}var w7=".ihabdevteam-core-scope .promo-banner-bg-diagonal{background-color:var(--color-lightMain);background-image:repeating-linear-gradient(45deg,var(--color-main-a10) 0,var(--color-main-a10) 10px,transparent 10px,transparent 20px)}";ce(w7);const Yc={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function Kc(){const e=Tt(Yc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}var k7=".ihabdevteam-core-scope .promo-banner-bg-dots{background-color:var(--color-lightSub);background-image:radial-gradient(var(--color-sub-a10) 2px,transparent 2px);background-size:14px 14px}";ce(k7);const Zc={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Xc(){const e=Tt(Zc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}var B7=".ihabdevteam-core-scope .promo-banner-bg-outline{background:var(--color-white);border:1px solid var(--color-whiteLine);box-sizing:border-box}.ihabdevteam-core-scope .promo-banner-bg-outline__dot{background:linear-gradient(45deg,var(--color-main),var(--color-sub));border-radius:50%;bottom:-40px;height:140px;opacity:.12;position:absolute;right:-40px;width:140px}";ce(B7);const Jc={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function Qc(){const e=Tt(Jc,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:r.jsx("span",{className:"promo-banner-bg-outline__dot"})})}var A7=".ihabdevteam-core-scope .promo-banner-bg-success{background:var(--color-success)}";ce(A7);const eu={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function tu(){const e=Tt(eu,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}var S7=".ihabdevteam-core-scope .promo-banner-bg-naver{background:linear-gradient(90deg,#03c75a 0,var(--color-main) 100%)}";ce(S7);const au={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function ou(){const e=Tt(au,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}var E7=".ihabdevteam-core-scope .promo-banner-bg-instagram{background:linear-gradient(45deg,#f9ce34,#ee2a7b 50%,#6228d7)}";ce(E7);const ru={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function nu(){const e=Tt(ru,Kt,Zt);return r.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const la=(e,t,a)=>({key:e,get label(){return xt.t(`promoBannerBg.${e}`,t)},textTone:a}),Ob=[la("main","\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),la("soft","\uC18C\uD504\uD2B8","dark"),la("sub","\uC11C\uBE0C \uCEEC\uB7EC","light"),la("deep","\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),la("softSub","\uC18C\uD504\uD2B8 \uC11C\uBE0C","dark"),la("warm","\uC6DC(\uAC15\uC870)","dark"),la("dark","\uB2E4\uD06C","light"),la("radial","\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),la("diagonal","\uB300\uAC01\uC120 \uD328\uD134","dark"),la("dots","\uB3C4\uD2B8 \uD328\uD134","dark"),la("outline","\uC544\uC6C3\uB77C\uC778","dark"),la("success","\uC131\uACF5/\uC644\uB8CC","light"),la("naver","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4","light"),la("instagram","\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4","light")],iu={main:Lc,soft:$c,sub:Pc,deep:Ic,softSub:Fc,warm:Vc,dark:Gc,radial:qc,diagonal:Kc,dots:Xc,outline:Qc,success:tu,naver:ou,instagram:nu};function yi({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:o=1.4,step:n=.1,lineHeightRatio:i=1.4}={}){const l=w=>Math.max(a,Math.min(o,Number(w))),c=w=>{try{const _=localStorage.getItem(w),A=_?Number(_):1;return Number.isFinite(A)?l(A):l(1)}catch{return l(1)}},[u,d]=s.useState(()=>c(e)),[h,p]=s.useState(e);h!==e&&(p(e),d(c(e))),s.useEffect(()=>{try{localStorage.setItem(e,String(u))}catch{}},[e,u]);const m=w=>{d(typeof w=="function"?_=>l(w(_)):l(w))},C=()=>m(w=>+(w+n).toFixed(6)),v=()=>m(w=>+(w-n).toFixed(6)),f=u<o-Number.EPSILON,g=u>a+Number.EPSILON,x=Math.round(t*u),b=Math.round(x*i);return{scale:u,setScale:m,increase:C,decrease:v,canIncrease:f,canDecrease:g,fontSize:x,lineHeight:b}}function hn(e,t){const a=pn(t);s.useEffect(()=>{const o=()=>a.current();try{window.addEventListener(e,o)}catch{}return()=>{try{window.removeEventListener(e,o)}catch{}}},[e,a])}const su=" \xB7 ",Fb=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(su)?e.split(su).pop()??e:e})(),lu=s.createContext(!1),Oo=[];let Hb=null;function cu(e){const t=s.useContext(lu);s.useEffect(()=>{if(t||typeof e!="string"||!e)return;Oo.length===0&&(Hb=document.title);const a={text:Fb?`${e}${su}${Fb}`:e};return Oo.push(a),document.title=a.text,()=>{const o=Oo.lastIndexOf(a);o>=0&&Oo.splice(o,1),document.title=Oo.length?Oo[Oo.length-1].text:Hb??document.title}},[e,t])}function D7(e,t){const[a,o,n]=e.split("-").map(Number),[i,l,c]=t.split("-").map(Number);return Math.round((Date.UTC(i,l-1,c)-Date.UTC(a,o-1,n))/864e5)}function Vb(){const{t:e}=_e.useTranslation();return s.useCallback(t=>{if(!t)return"";const a=Ia(t);if(!a)return"";const o=D7(a,Ca());return o<=0?e("myHomework.relativeDay.today","\uC624\uB298"):o===1?e("myHomework.relativeDay.yesterday","\uC5B4\uC81C"):e("myHomework.relativeDay.daysAgo",{n:o})},[e])}function Wb(e){const{t}=_e.useTranslation(),[a,o]=s.useState({current:"",next:"",confirm:""}),[n,i]=s.useState(null),[l,c]=s.useState(!1),u=s.useRef(null),d=s.useRef(!1);s.useEffect(()=>()=>{u.current!==null&&clearTimeout(u.current)},[]);const h=s.useCallback(()=>{o({current:"",next:"",confirm:""}),i(null)},[]),p=s.useCallback(async()=>{if(d.current)return;if(!a.current){i({type:"error",text:t("account.security.password.currentRequired","\uD604\uC7AC \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.")});return}if(!a.next){i({type:"error",text:t("account.security.password.newRequired","\uC0C8 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.")});return}if(a.next!==a.confirm){i({type:"error",text:t("account.security.password.mismatch","\uC0C8 \uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")});return}c(!0),d.current=!0;let m;try{m=e?await e(a.current,a.next):null}catch(C){m=en(C)}finally{d.current=!1,c(!1)}if(m){i({type:"error",text:m});return}i({type:"success",text:t("account.security.password.changed","\uBE44\uBC00\uBC88\uD638\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4.")}),o({current:"",next:"",confirm:""}),u.current!==null&&clearTimeout(u.current),u.current=setTimeout(()=>i(null),1500)},[a,e,t]);return{pw:a,setPw:o,pwMsg:n,setPwMsg:i,pwLoading:l,handleChangePw:p,reset:h}}const uu=[{id:"wordData",labelKey:"settings.cache.group.wordData.label",subKey:"settings.cache.group.wordData.sub",keys:["word_data_cache","word_data_version"]},{id:"pairIndex",labelKey:"settings.cache.group.pairIndex.label",subKey:"settings.cache.group.pairIndex.sub",keys:["word_pair_index_v2","word_pair_index_sig_v2"]},{id:"imageCache",labelKey:"settings.cache.group.imageCache.label",subKey:"settings.cache.group.imageCache.sub",keys:["word_image_existence_map_v1"]}];function du(e){return e.reduce((t,a)=>{try{const o=localStorage.getItem(a);return t+(o?new Blob([o]).size:0)}catch{return t}},0)}function Gb(e){return e===0?"0 B":e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(2)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}function Ub(e){const{t}=_e.useTranslation(),[a,o]=s.useState({}),[n,i]=s.useState(null),[l,c]=s.useState(null),[u,d]=s.useState(null),h=s.useCallback(()=>{const m={};uu.forEach(C=>{m[C.id]=du([...C.keys])}),o(m),typeof navigator<"u"&&navigator.storage?.estimate&&navigator.storage.estimate().then(C=>{d({usage:C.usage??0,quota:C.quota??0})}).catch(()=>{})},[]);s.useEffect(()=>{h()},[h]);const p=s.useCallback(async m=>{i(m);try{m==="wordData"?(localStorage.removeItem("word_data_cache"),localStorage.removeItem("word_data_version")):m==="pairIndex"?ll():m==="imageCache"&&Us(),h(),e?.(t("settings.cache.cleared","\uCE90\uC2DC\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."))}finally{i(null)}},[h,e,t]);return{cacheSizes:a,clearingId:n,confirmCacheId:l,setConfirmCacheId:c,storageEstimate:u,refreshCacheSizes:h,handleClearCache:p}}function qb(e){const[t,a]=s.useState(null),[o,n]=s.useState(null),i=s.useCallback(()=>{const l=Lo();if(l){const u=Object.values(l),d=u.filter(h=>h.cho.length+h.jung.length+h.jong.length>0).length;a({matched:d,total:u.length})}else a(null);const c=On();n(c?{exists:c.exists,total:c.total}:null)},[]);return s.useEffect(()=>{i();const l=setTimeout(i,1e3);return()=>clearTimeout(l)},[e?.length,i]),{pairStats:t,imgStats:o,setPairStats:a,setImgStats:n,refreshStats:i}}function Fo(e,t){if(e===t)return!0;const a=e?.id,o=t?.id;return a!=null&&a!==""&&a===o}function Yb(e,t=[]){const[a,o]=s.useState(t),[n,i]=s.useState(null),[l,c]=s.useState(!1),[u,d]=s.useState(e),h=s.useRef(!1),p=s.useRef(null);s.useEffect(()=>{if(l)return;if(h.current){h.current=!1;return}const x=p.current;x!==null&&x.length===t.length&&x.every((b,w)=>b===t[w])||(p.current=t,o(t),i(b=>b==null?b:t.find(w=>Fo(w,b))??b))},[t,l]),s.useEffect(()=>{!l&&n!=null&&d({...n})},[l,n]);const m=s.useCallback(x=>{i(x),c(!1),d({...x})},[]),C=s.useCallback(()=>c(!0),[]),v=s.useCallback(()=>c(!1),[]),f=s.useCallback((x,b)=>{o(x),i(b),c(w=>(w&&(h.current=!0),!1))},[]),g=s.useCallback(x=>{o(b=>b.filter(w=>!Fo(w,x))),i(null)},[]);return{list:a,setList:o,selected:n,setSelected:i,isEditing:l,setIsEditing:c,editForm:u,setEditForm:d,openDetail:m,startEditing:C,cancelEditing:v,commitEdit:f,remove:g}}const Cr=()=>{const[e,t,a]=Ca().split("-");return{year:e,month:t,day:a}},N7={year:"",month:"",day:"",hour:"09",minute:"00",memo:""};function Kb(e=[]){const{list:t,setList:a,selected:o,setSelected:n,isEditing:i,setIsEditing:l,editForm:c,setEditForm:u,openDetail:d,commitEdit:h}=Yb(N7,e),{year:p,month:m,day:C}=Cr(),[v,f]=s.useState({year:p,month:m,day:C,hour:"09",minute:"00",memo:""});return{visitHistory:t,visitForm:v,setVisitForm:f,setVisit:g=>x=>f(b=>({...b,[g]:x})),selectedVisit:o,setSelectedVisit:n,isEditingVisit:i,setIsEditingVisit:l,editVisitForm:c,setEditVisitForm:u,openVisitDetail:d,handleVisitSave:g=>{a(_=>[v,..._]);const{year:x,month:b,day:w}=Cr();f({year:x,month:b,day:w,hour:"09",minute:"00",memo:""}),g?.()},handleVisitEditSave:()=>{h(g=>g.map(x=>o!=null&&Fo(x,o)?c:x),c)},addVisit:g=>{a(x=>[g,...x])},removeVisit:g=>{a(x=>x.filter(b=>!Fo(b,g)))},revertVisitEdit:(g,x)=>{a(b=>b.map(w=>w===x?g:w)),n(b=>b===x?g:b)}}}const Zb=e=>`${e.year.padStart(4,"0")}-${e.month.padStart(2,"0")}-${e.day.padStart(2,"0")} ${e.hour.padStart(2,"0")}:${e.minute.padStart(2,"0")}`,mn=e=>[...e].sort((t,a)=>{const o=Zb(t),n=Zb(a);return o<n?-1:o>n?1:0}),T7={year:"",month:"",day:"",hour:"09",minute:"00",memo:""};function Xb(e,t=[]){const a=s.useMemo(()=>mn(t),[t]),{list:o,setList:n,selected:i,setSelected:l,isEditing:c,setIsEditing:u,editForm:d,setEditForm:h,openDetail:p,commitEdit:m,remove:C}=Yb(T7,a),[v,f]=s.useState([]),{year:g,month:x,day:b}=Cr(),[w,_]=s.useState({year:g,month:x,day:b,hour:"09",minute:"00",memo:""}),A=W=>L=>_(M=>({...M,[W]:L})),y=W=>{n(q=>mn([...q,w]));const{year:L,month:M,day:z}=Cr();_({year:L,month:M,day:z,hour:"09",minute:"00",memo:""}),W?.()},B=()=>{m(W=>mn(W.map(L=>i!=null&&Fo(L,i)?d:L)),d)},k=s.useCallback(W=>{C(W)},[C]),S=s.useCallback(W=>{e({year:W.year,month:W.month,day:W.day,hour:W.hour,minute:W.minute,memo:W.memo,...W.id!=null?{id:W.id}:{}}),C(W)},[e,C]),E=s.useCallback(W=>{n(L=>L.filter(M=>!Fo(M,W))),f(L=>[W,...L]),l(null)},[n,l]),D=s.useCallback(W=>{n(L=>mn([...L,W]))},[n]),I=s.useCallback(W=>{n(L=>L.filter(M=>!Fo(M,W)))},[n]),j=s.useCallback((W,L)=>{n(M=>mn(M.map(z=>z===L?W:z))),l(M=>M===L?W:M)},[n,l]);return{scheduleList:o,noShowList:v,addSchedule:D,removeSchedule:I,revertScheduleEdit:j,scheduleForm:w,setScheduleForm:_,setSchedule:A,selectedSchedule:i,setSelectedSchedule:l,isEditingSchedule:c,setIsEditingSchedule:u,editScheduleForm:d,setEditScheduleForm:h,openScheduleDetail:p,handleScheduleSave:y,handleScheduleEditSave:B,handleScheduleDelete:k,handleScheduleToVisit:S,handleScheduleNoVisit:E}}const bn=[{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 Jb(e){const{t}=_e.useTranslation(),[a,o]=s.useState(""),[n,i]=s.useState("25"),[l,c]=s.useState("all"),[u,d]=s.useState(1),h=s.useMemo(()=>e.filter(({item:f,status:g})=>!(a&&!f.memo.includes(a)||l!=="all"&&g!==l)),[e,a,l]),p=Math.max(1,Math.ceil(h.length/Number(n))),m=Math.min(u,p),C=s.useMemo(()=>h.slice((m-1)*Number(n),m*Number(n)),[h,m,n]),v=s.useMemo(()=>bn.map(f=>({...f,label:t("common.pageSizeLabel",{n:f.value,defaultValue:f.label})})),[t]);return{vapSearch:a,setVapSearch:o,vapPageSize:n,setVapPageSize:i,vapPageSizeOptions:v,vapStatus:l,setVapStatus:c,vapPage:m,setVapPage:d,vapFiltered:h,vapTotal:p,vapPageItems:C}}const j7=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function ma(e,t){return j7().compare(e,t)}const wi=new Map;function L7(e){const t=wi.get(e);if(t)return t;const a=[],o=/-?\d+(?:\.\d+)?/g;let n=0;for(let i=o.exec(e);i;i=o.exec(e)){let l=i.index,c=i[0];c[0]==="-"&&l>0&&!/\s/.test(e[l-1])&&(l+=1,c=c.slice(1)),l>n&&a.push(e.slice(n,l)),a.push(Number(c)),n=i.index+i[0].length}return n<e.length&&a.push(e.slice(n)),wi.size>5e3&&wi.clear(),wi.set(e,a),a}function M7(e){if(!/^[\d\s-]+$/.test(e))return null;const t=e.replace(/\D/g,"");return t.length<9||t.length>11?null:t[0]==="0"||t[0]==="1"&&e!==t?t:null}function $7(e,t){const a=d=>d==null||typeof d=="number"&&Number.isNaN(d)?"":String(d).trim(),o=a(e),n=a(t);if(o===n)return 0;const i=(d,h)=>{if(typeof d=="number"&&!Number.isNaN(d))return[d];const p=M7(h);return p!==null?[p]:L7(h)},l=i(e,o),c=i(t,n),u=Math.min(l.length,c.length);for(let d=0;d<u;d++){const h=l[d],p=c[d];if(typeof h=="number"&&typeof p=="number"){if(h!==p)return h-p;continue}if(typeof h=="number")return-1;if(typeof p=="number")return 1;const m=ma(h,p);if(m!==0)return m}return l.length!==c.length?l.length-c.length:ma(o,n)}const Qb=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function pu(e,t,a){const o=Qb(e),n=Qb(t);if(o||n)return o===n?0:o?1:-1;const i=$7(e,t);return a?i:-i}function hu(e,t,a){const{t:o}=_e.useTranslation(),[n,i]=s.useState(()=>{const v=a?.initialPageSize;return v&&bn.some(f=>f.value===v)?v:"25"}),[l,c]=s.useState(1),[u,d]=s.useState(t);Object.is(u,t)||(d(t),l!==1&&c(1));const h=s.useMemo(()=>bn.map(v=>({...v,label:o("visits.showN",{n:v.value})})),[o]),p=s.useCallback(v=>{i(v),c(1)},[]),m=Math.max(1,Math.ceil(e.length/Number(n)));(l>m||l<1||!Number.isFinite(l))&&c(Math.min(Math.max(1,Number.isFinite(l)?l:1),m));const C=Math.min(Math.max(1,Number.isFinite(l)?l:1),m);return{pageRows:s.useMemo(()=>e.slice((C-1)*Number(n),C*Number(n)),[e,C,n]),pageSizeProps:{options:h,value:n,onChange:p},paginationProps:{page:C,total:m,onChange:c},setPage:c}}function mu(e){const[t,a]=s.useState(null),o=s.useRef(t),n=s.useRef(e?.onSortChange);n.current=e?.onSortChange;const i=s.useCallback(u=>{const d=o.current,h=d?.key===u?{key:u,asc:!d.asc}:{key:u,asc:!0};o.current=h,a(h),n.current?.(h)},[]),l=s.useCallback((u,d)=>({label:u,sortDir:t?.key===d?t.asc?"asc":"desc":null,onClick:()=>i(d)}),[t,i]),c=s.useCallback((u,d)=>{if(!t)return u;const{key:h,asc:p}=t;return[...u].sort((m,C)=>pu(d(m,h),d(C,h),p))},[t]);return{sort:t,field:l,sortRows:c,\uC815\uB82C:t,\uCE78:l}}const eg=e=>e==="left"||e==="right"?e:null;function tg(){const[e,t]=s.useState(!1),[a,o]=s.useState("left"),[n,i]=s.useState({left:null,right:null}),[l,c]=s.useState({left:[],right:[]}),[u,d]=s.useState(!1),[h,p]=s.useState("left"),m=s.useCallback(v=>{const f=eg(v.direction);f&&(i(g=>({...g,[f]:v})),c(g=>({...g,[f]:[v,...g[f]]})),t(!1))},[]),C=s.useCallback(v=>{const f=eg(v.direction);f&&(i(g=>({...g,[f]:v})),d(!1))},[]);return{showDevice:e,setShowDevice:t,deviceDirection:a,setDeviceDirection:o,devices:n,setDevices:i,deviceHistory:l,setDeviceHistory:c,showDeviceList:u,setShowDeviceList:d,listForSide:h,setListForSide:p,handleDeviceSubmit:m,handleSelectFromList:C}}const jt="\uC804\uCCB4";function bu(){const{t:e}=_e.useTranslation();return s.useMemo(()=>({difficulty:e("wordSearch.filter.difficulty","\uB4F1\uAE09"),syllables:e("wordSearch.filter.syllables","\uC74C\uC808 \uC218"),syllable5plus:e("wordSearch.filter.syllable5plus","5\uC74C\uC808 \uC774\uC0C1"),partOfSpeech:e("wordSearch.filter.partOfSpeech","\uD488\uC0AC"),wordType:e("wordSearch.filter.wordType","\uC720\uD615"),posMap:{[e("wordSearch.filter.pos.noun","\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)")]:["\uBA85","\uC218"],[e("wordSearch.filter.pos.verb","\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)")]:["\uB3D9","\uD615"],[e("wordSearch.filter.pos.modifier","\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)")]:["\uBD80","\uAD00"]},typeMap:{[e("wordSearch.filter.type.native","\uACE0\uC720\uC5B4")]:"\uACE0\uC720",[e("wordSearch.filter.type.sino","\uD55C\uC790\uC5B4")]:"\uD55C\uC790",[e("wordSearch.filter.type.foreign","\uC678\uB798\uC5B4")]:"\uC678\uB798",[e("wordSearch.filter.type.mixed","\uD63C\uC885\uC5B4")]:"\uD63C\uC885"}}),[e])}function gu(e,t,a){return{label:t.difficulty,items:[...[1,2,3,4].map(o=>e("wordSearch.filter.grade",{n:o})),e("wordSearch.filter.gradeNone","\uC5C6\uC74C")],multiple:!0,allOption:!0,allLabel:a?.allLabel,labelAction:a?.labelAction,labelInfo:a?.labelInfo}}function fu(e){return{label:e.partOfSpeech,items:Object.keys(e.posMap),multiple:!0,allOption:!0}}function vu(e){return{label:e.wordType,items:Object.keys(e.typeMap),multiple:!0,allOption:!0}}function ag(e,t){return{label:t.syllables,items:[e("wordSearch.filter.syllable",{n:1}),e("wordSearch.filter.syllable",{n:2}),e("wordSearch.filter.syllable",{n:3}),e("wordSearch.filter.syllable",{n:4}),t.syllable5plus],multiple:!0,allOption:!0}}function og(e,t){const a=[e("wordPairs.filter.onlyHasImage","\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC")];return t?.includeStructure&&a.push(e("wordPairs.filter.onlySameStructure","\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC")),{label:e("wordPairs.filter.selectLabel","\uC120\uD0DD"),items:a,multiple:!0,labelAction:t?.labelAction,labelInfo:t?.labelInfo}}function rg(e,t){const{label:a,headValue:o,midValue:n,tailValue:i,includeMid:l=!0,headDisabled:c,midDisabled:u,tailDisabled:d,allOptionDisabled:h,groupLabel:p,labelAction:m}=t;return{label:a,...p?{groupLabel:p}:{},...m?{labelAction:m}:{},allOption:!0,allLabel:e("wordSearch.filter.positionAny",{defaultValue:"\uBB34\uAD00"}),...h?{allOptionDisabled:h}:{},items:[{value:o,displayLabel:e("wordSearch.filter.positionHead",{defaultValue:"\uC5B4\uB450"}),disabled:c},...l?[{value:n,displayLabel:e("wordSearch.filter.positionMid",{defaultValue:"\uC5B4\uC911"}),disabled:u}]:[],{value:i,displayLabel:e("wordSearch.filter.positionTail",{defaultValue:"\uC5B4\uB9D0"}),disabled:d}]}}function ng(e,t,a){const o=un(a),n=o&&t!==jt?zo(o,t):null;if(o&&(t===jt||n)){const c={},u={};for(const[C,v]of Object.entries(e))(un(C)===o?u:c)[C]=v;if(t===jt)return c;const d=ui(u)[o]??[],h=d.includes(n)?d.filter(C=>C!==n):[...d,n];if(h.length===0)return c;const p=di({[o]:h},y3(a)),m=Object.values(p)[0]??[];return{...c,[a]:m}}if(t===jt){const{[a]:c,...u}=e;return u}const i=e[a]??[],l=i.includes(t)?i.filter(c=>c!==t):[...i,t];if(l.length===0){const{[a]:c,...u}=e;return u}return{...e,[a]:l}}Object.fromEntries(Object.entries(qs).map(([e,{nucleus:t}])=>[e,t]));const R7={\uACE0\uC720\uC5B4:"\uACE0\uC720",\uD55C\uC790\uC5B4:"\uD55C\uC790",\uC678\uB798\uC5B4:"\uC678\uB798",\uD63C\uC885\uC5B4:"\uD63C\uC885"},P7={"\uCCB4\uC5B8(\uBA85\uC0AC,\uC218\uC0AC)":["\uBA85","\uC218"],"\uC6A9\uC5B8(\uB3D9\uC0AC,\uD615\uC6A9\uC0AC)":["\uB3D9","\uD615"],"\uC218\uC2DD\uC5B8(\uBD80\uC0AC,\uAD00\uD615\uC0AC)":["\uBD80","\uAD00"]},z7={difficulty:"\uB09C\uC774\uB3C4 \uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218",syllable5plus:"5\uC74C\uC808 \uC774\uC0C1",partOfSpeech:"\uD488\uC0AC",wordType:"\uC720\uD615",posMap:P7,typeMap:R7},ig=new WeakMap;function I7(e,t){const a=ig.get(e);if(a&&a.keys===t)return a.\uAC12;const o={grades:[],syls:[],poses:[],types:[]},n={grade:o.grades,syllables:o.syls,pos:o.poses,wordType:o.types};for(const[i,l]of Object.entries(e??{})){const c=i===t.difficulty?"grade":i===t.syllables?"syllables":i===t.partOfSpeech?"pos":i===t.wordType?"wordType":un(i);if(c)for(const u of Array.isArray(l)?l:typeof l=="string"?[l]:[])n[c].includes(u)||n[c].push(u)}return ig.set(e,{keys:t,\uAC12:o}),o}function O7(e,t,a=z7){const{grades:o,syls:n,poses:i,types:l}=I7(t,a);if(o.length){const c=o.map(u=>zo("grade",u)??u.replace(/\D/g,"")).filter(u=>u!=="");if(c.length===0||!mc(c,e.grade))return!1}if(n.length){const c=e.syllables??0;if(!n.some(u=>{const d=u===a.syllable5plus?"5+":zo("syllables",u);return d==="5+"?c>=5:c===parseInt(d??u)}))return!1}return!(i.length&&!i.flatMap(c=>a.posMap[c]??g3[zo("pos",c)??""]??[c]).some(c=>(e.pos??"").includes(c))||l.length&&!l.some(c=>e.wordType===(a.typeMap[c]??f3[zo("wordType",c)??""])))}const F7={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"})},H7={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"})},V7={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 sg(e,t){if("place"in t)return F7[t.place](e);const a=H7[t.vowel](e);return t.glide?`${a} \xB7 ${V7[t.glide](e)}`:a}const W7=(e,{defaultValue:t})=>t,lg=(e,t)=>({jamos:e,phonetic:t,tooltip:sg(W7,t)}),eo=(e,t)=>t.map(a=>lg([a],{place:e})),Vt=(e,t,a)=>lg([...e],a?{vowel:t,glide:a}:{vowel:t}),Cu={cho:[eo("labial",["\u3142","\u3143","\u314D","\u3141"]),eo("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),eo("alveolar",["\u3145","\u3146"]),eo("palatal",["\u3148","\u3149","\u314A"]),eo("velar",["\u3131","\u3132","\u314B"]),eo("glottal",["\u314E"])],jung:[[Vt("\u3163","frontHigh"),Vt("\u315F","frontHigh","w"),Vt("\u3162","frontHigh","velar")],[Vt("\u3161","backHighUnrounded")],[Vt("\u315C","backHighRounded"),Vt("\u3160","backHighRounded","j")],[Vt("\u3154\u3150","frontMid"),Vt("\u3156\u3152","frontMid","j"),Vt("\u3159\u315A\u315E","frontMid","w")],[Vt("\u3153","backMidUnrounded"),Vt("\u3155","backMidUnrounded","j"),Vt("\u315D","backMidUnrounded","w")],[Vt("\u3157","backMidRounded"),Vt("\u315B","backMidRounded","j")],[Vt("\u314F","low"),Vt("\u3151","low","j"),Vt("\u3158","low","w")]],jong:[eo("labial",["\u3142","\u3141"]),eo("alveolar",["\u3137","\u3134","\u3139"]),eo("velar",["\u3131","\u3147"])]},G7=[...pt],U7=[...yt],q7=Pt.filter(e=>e!==""),Fa=e=>e===Da?[]:Array.from(e),Da="__NO_CODA__",cg=[1,2,3,4],Na=5,Y7=12,ug="SYL_",xu=e=>`${ug}${e}`,K7=e=>Number(e.slice(ug.length));function ki(e){return e>=Na?Array.from({length:Y7-Na+1},(t,a)=>Na+a):[e]}const dg={cho:G7,jung:U7,jong:q7},_u=e=>e.map(t=>t.map(({jamos:a,phonetic:o,tooltip:n})=>({v:a.join(""),phonetic:o,tooltip:n}))),yu={cho:_u(Cu.cho),jung:_u(Cu.jung),jong:_u(Cu.jong)},pg={};yu.jung.flat().forEach(({v:e})=>{for(const t of Fa(e))pg[t]=e});const Z7=new Set(yu.cho.flat().map(e=>e.v));function wu(e,t){return e==="cho"?Z7.has(t)?t:null:e==="jung"?pg[t]??t:To(t)}function ku(e,t,a){if(e==="jung"){const o=Fa(t);return a&&o.includes(a)?a:o[0]??t}return e==="jong"&&a&&To(a)===t?a:t}function Bu(e,t,a,o){const n=(i,l)=>l?i==="jong"&&l===Da?Da:t==="pron"?wu(i,l):ku(i,l,i==="jung"?a:i==="jong"?o:null):null;return{...e,cho:n("cho",e.cho),jung:n("jung",e.jung),jong:n("jong",e.jong)}}const Bi={cho:null,jung:null,jong:null,syllable:null},Au=e=>Array.isArray(e)?e.filter(d3):[],X7="wt_filter",hg=e=>`wt_filter_${e}`,Su=["noun","verb","modifier"],Eu=["native","sino","foreign","mixed"];function mg(e,t,a,o,n){if(!Array.isArray(e))return[];const i=[];for(const l of e){if(typeof l!="string")continue;const c=t.includes(l)?l:t.find(u=>n.some(d=>o(d,a(u))===l));c&&!i.includes(c)&&i.push(c)}return i}function bg(e){try{const t=localStorage.getItem(hg(e))??localStorage.getItem(X7);if(t)return JSON.parse(t)}catch{}return null}function gg(e){const t=e?.phonemeView;return t==="pron"?"pron":t==="direct"?"direct":"char"}function J7(e){const t=e;return t?.composition?{cho:t.composition.cho??null,jung:t.composition.jung??null,jong:t.composition.jong??null,syllable:t.composition.syllable??null}:t?.choseong?{...Bi,cho:t.choseong}:Bi}const fg=["1\uB4F1\uAE09 : \uD559\uB839\uC804\uAE30\uC5D0 \uC2B5\uB4DD\uD558\uC5EC \uD3C9\uC0DD\uC5D0 \uAC78\uCCD0 \uC77C\uC0C1 \uC5B8\uC5B4\uC0DD\uD65C\uC744 \uD558\uB294 \uB370 \uC0AC\uC6A9\uB418\uB294 \uC5B4\uD718","2\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 1-2\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","3\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 3-4\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","4\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 5-6\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","\uB4F1\uAE09\uC5C6\uC74C : \uAD6D\uB9BD\uAD6D\uC5B4\uC6D0 \uD45C\uC900 \uC5B4\uD718 \uC678 \uACE0\uBE48\uB3C4 \uC0DD\uD65C \uC5B4\uD718, \uC2E0\uC870\uC5B4 \uBC0F \uC678\uB798\uC5B4"];function Du(e){const t=e("wordPairs.filter.difficultyInfo",{returnObjects:!0,defaultValue:fg});return Array.isArray(t)&&t.length>0&&t.every(a=>typeof a=="string")?t:fg}function vg(e,t,a){const{t:o,i18n:n}=_e.useTranslation(),[i]=s.useState(()=>a?.resetOnMount?null:bg(e)),[l,c]=s.useState(gg(i)),[u,d]=s.useState(()=>J7(i)),h=s.useCallback(()=>t.requireSyllable?{cho:"\u3131",jung:"\u314F",jong:Da,syllable:t.fixedSyllable??null}:{cho:null,jung:null,jong:t.fixedNoCoda?Da:null,syllable:t.fixedSyllable??null},[t.requireSyllable,t.fixedSyllable,t.fixedNoCoda]);s.useEffect(()=>{!t.requireSyllable&&t.fixedSyllable==null&&!t.fixedNoCoda||d(G=>G.cho||G.jung||G.syllable!=null||G.jong?G:h())},[]);const p=s.useMemo(()=>zt(u.cho)||zt(u.jung)||zt(u.jong)?"count":"random",[u.cho,u.jung,u.jong]),m=s.useRef(l==="char"?u.jung:null),C=s.useRef(l==="char"?u.jong:null);s.useEffect(()=>{l==="char"&&(m.current=u.jung,C.current=u.jong)},[l,u.jung,u.jong]);const[v,f]=s.useState(a?.resetOnMount?!!a?.defaultImageOnly:i?.excludeNoImage??!0),[g,x]=s.useState(a?.resetOnMount?!1:i?.sameStructureOnly??!0),[b,w]=s.useState(Au(i?.gradeFilter)),_=Array.from(new Set([n.language,"ko","en"].filter(Boolean))),A=(G,oe)=>n.getFixedT(G)(oe),y=G=>mg(G,Su,oe=>`wordSearch.filter.pos.${oe}`,A,_),B=G=>mg(G,Eu,oe=>`wordSearch.filter.type.${oe}`,A,_),[k,S]=s.useState(()=>y(i?.posFilter)),[E,D]=s.useState(()=>B(i?.wordTypeFilter)),I=s.useRef(a?.resetKey);s.useEffect(()=>{I.current!==a?.resetKey&&(I.current=a?.resetKey,d(h()),f(!!a?.defaultImageOnly),x(!1),w([]),S([]),D([]))},[a?.resetKey]);const j=bu(),W=s.useMemo(()=>Object.keys(j.posMap),[j]),L=s.useMemo(()=>Object.keys(j.typeMap),[j]),M=s.useMemo(()=>k.map(G=>W[Su.indexOf(G)]).filter(Boolean),[k,W]),z=s.useMemo(()=>E.map(G=>L[Eu.indexOf(G)]).filter(Boolean),[E,L]),[q,Y]=s.useState({cho:new Set,jung:new Set,jong:new Set,syllable:new Set}),[P,V]=s.useState(!1),[$,U]=s.useState(null),T=1,F=Math.max(1,[u.cho,u.jung,u.jong].filter(Boolean).length),[N,O]=s.useState(e);s.useEffect(()=>{if(N!==e){if(!a?.resetOnMount){const G=bg(e);d(G?.composition??h()),f(G?.excludeNoImage??!0),x(G?.sameStructureOnly??!0),c(gg(G)),w(Au(G?.gradeFilter)),S(y(G?.posFilter)),D(B(G?.wordTypeFilter))}O(e)}},[e,N,a?.resetOnMount]),s.useEffect(()=>{if(!a?.resetOnMount&&N===e)try{localStorage.setItem(hg(e),JSON.stringify({contrastCount:F,composition:u,excludeNoImage:v,sameStructureOnly:g,phonemeView:l,gradeFilter:b,posFilter:k,wordTypeFilter:E}))}catch{}},[a?.resetOnMount,e,N,F,u,v,g,l,b,k,E]);const[H,Z]=s.useState(0);hn("wordpool:update",()=>Z(G=>G+1));const te=s.useRef(n.language);s.useEffect(()=>{te.current!==n.language&&(te.current=n.language,Z(G=>G+1))},[n.language]),s.useEffect(()=>{if(!t.choseong)return;let G=!1;return Y3({difficulty:p,excludeNoImage:v}).then(oe=>{G||(Y(oe),oe.cho.size+oe.jung.size+oe.jong.size>0&&V(!0))}).catch(()=>{G||Y({cho:new Set,jung:new Set,jong:new Set,syllable:new Set})}),()=>{G=!0}},[t.choseong,p,v,H]),s.useEffect(()=>{let G=!1;const oe=u,me=oe.cho?Fa(oe.cho):null,Te=oe.jung?Fa(oe.jung):null,ke=oe.jong===Da,Pe=ke?null:oe.jong?Fa(oe.jong):null,He=oe.syllable!=null?ki(oe.syllable):null,lt=!!(me||Te||Pe||ke||He);return q3({difficulty:t.difficulty?p:null,contrastCount:t.difficulty?F:1,composition:t.choseong&<?{cho:me,jung:Te,jong:Pe,jongNone:ke,syllable:He}:null,excludeNoImage:v,sameStructureOnly:g,phonemeView:l==="pron"?"pron":"char",grade:b.length>0?b:null}).then(rt=>{G||U(rt)}).catch(()=>{G||U(null)}),()=>{G=!0}},[t.choseong,t.difficulty,p,F,u,l,v,g,H,b]),s.useEffect(()=>{P&&d(G=>{const oe={...G};let me=!1;return["cho","jung","jong"].forEach(Te=>{const ke=G[Te];!ke||ke===Da||Fa(ke).some(Pe=>q[Te].has(Pe))||(oe[Te]=null,me=!0)}),G.syllable!=null&&t.fixedSyllable==null&&(G.syllable>=Na?[...q.syllable].some(Te=>Te>=Na)||(oe.syllable=null,me=!0):(!q.syllable.has(G.syllable)||G.syllable<T)&&(oe.syllable=null,me=!0)),me?oe:G})},[q,P,T,t.fixedSyllable]);const se=s.useMemo(()=>{const G=oe=>{const me=new Set;for(const Te of dg[oe])q[oe].has(Te)&&me.add(Te);return me};return{cho:G("cho"),jung:G("jung"),jong:G("jong")}},[q]),be=s.useMemo(()=>({exact:new Set(cg.filter(G=>q.syllable.has(G))),min:[...q.syllable].some(G=>G>=Na)}),[q]),X=s.useMemo(()=>({composition:o("wordPairs.composition","\uC815\uB2F5 \uB2E8\uC5B4 \uAD6C\uC131"),syllableCount:o("wordPairs.syllableCount","\uC74C\uC808 \uC218"),onset:o("wordPairs.onset","\uCD08\uC131"),vowel:o("wordPairs.vowel","\uBAA8\uC74C"),coda:o("wordPairs.coda","\uC885\uC131"),phonemeGroup:o("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),trainOnset:o("training.filter.trainOnset",{defaultValue:"\uCD08\uC131"}),trainVowel:o("training.filter.trainVowel",{defaultValue:"\uBAA8\uC74C"}),trainCoda:o("training.filter.trainCoda",{defaultValue:"\uC885\uC131"}),random:o("training.filter.random","\uBB34\uC791\uC704"),exclude:o("wordSearch.filter.exclude","\uC81C\uC678"),selectLabel:o("training.filter.selectSection",{defaultValue:"\uC120\uD0DD"}),none:o("common.none","\uC5C6\uC74C"),noImage:o("wordSearch.filter.excludeNoImage","\uC774\uBBF8\uC9C0 \uC5C6\uC74C"),excludeImage:o("training.filter.excludeImage",{defaultValue:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC"}),sameStructure:o("training.filter.sameStructure",{defaultValue:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"}),noLimit:o("training.filter.noLimit",{defaultValue:"\uBB34\uAD00"}),codaExclude:o("training.filter.codaExclude",{defaultValue:"\uC81C\uC678"}),gradeLabel:o("training.filter.gradeLabel",{defaultValue:"\uB09C\uC774\uB3C4 \uB4F1\uAE09"})}),[o]),re=s.useMemo(()=>({[X.trainOnset]:"cho",[X.trainVowel]:"jung",[X.trainCoda]:"jong"}),[X]),Ae=s.useCallback((G,oe)=>({title:oe,items:G}),[]),K=s.useMemo(()=>[o("training.filter.excludeImageInfo",{defaultValue:"\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."}),o("training.filter.sameStructureInfo",{defaultValue:"\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."})],[o]),ie=s.useMemo(()=>{const G=[];if(t.choseong){const oe={value:Da,displayLabel:X.codaExclude},me=t.fixedNoCoda===!0,Te=(ke,Pe)=>{const He=me&&ke==="jong",lt={label:Pe,groupLabel:X.phonemeGroup,allOption:!t.requireSyllable,allLabel:X.noLimit,allOptionDisabled:He};if(l==="pron"){const at=yu[ke].map(ht=>ht.map(({v:De,phonetic:Ue})=>{const Se=Fa(De),Ye=sg(o,Ue),ee=He||!Se.some(pe=>q[ke].has(pe));return Se.length>1?{value:De,labels:Se,tooltip:Ye,disabled:ee}:{value:De,tooltip:Ye,disabled:ee}}));return ke==="jong"&&!t.requireCoda&&at.unshift([oe]),{...lt,groups:at}}const rt=dg[ke].map(at=>!He&&se[ke].has(at)?at:{value:at,disabled:!0});return{...lt,items:ke==="jong"&&!t.requireCoda?[oe,...rt]:rt}};G.push(Te("cho",X.trainOnset)),G.push(Te("jung",X.trainVowel)),G.push(Te("jong",X.trainCoda))}if(G.push({...gu(o,j,{labelInfo:Ae(Du(o))}),label:X.gradeLabel}),t.partOfSpeech&&G.push(fu(j)),t.wordType&&G.push(vu(j)),t.choseong||t.fixedSyllable!=null){const oe=t.fixedSyllable;G.push({label:X.syllableCount,items:[...cg.map(me=>({value:xu(me),displayLabel:o("wordPairs.syllableN",{n:me,defaultValue:"{{n}}\uC74C\uC808"}),disabled:oe!=null?me!==oe:!be.exact.has(me)||me<T})),{value:xu(Na),displayLabel:o("wordPairs.syllableNPlus",{n:Na,defaultValue:"{{n}}\uC74C\uC808 \uC774\uC0C1"}),disabled:oe!=null?Na!==oe:!be.min}],allOption:!0,allOptionDisabled:oe!=null})}return t.choseong?G.push({label:X.exclude,displayLabel:X.selectLabel,multiple:!0,items:[X.excludeImage,X.sameStructure],labelInfo:Ae(K)}):G.push({label:X.exclude,displayLabel:X.selectLabel,multiple:!0,items:[X.excludeImage],labelInfo:Ae([K[0]])}),G},[t.choseong,t.partOfSpeech,t.wordType,t.requireSyllable,t.fixedSyllable,t.fixedNoCoda,t.requireCoda,T,se,q,l,be,X,o,Ae,K,j]),ue={...(t.choseong||t.fixedSyllable!=null)&&u.syllable!=null?{[X.syllableCount]:xu(u.syllable)}:{},...t.choseong&&u.cho?{[X.trainOnset]:u.cho}:{},...t.choseong&&u.jung?{[X.trainVowel]:u.jung}:{},...t.choseong&&u.jong?{[X.trainCoda]:u.jong}:{},[X.exclude]:[...v?[X.excludeImage]:[],...g?[X.sameStructure]:[]],[X.gradeLabel]:b.map(G=>x3("grade",G)),...t.partOfSpeech?{[j.partOfSpeech]:M}:{},...t.wordType?{[j.wordType]:z}:{}},je=s.useCallback((G,oe)=>{if(oe===X.exclude)G===X.excludeImage?f(me=>!me):G===X.sameStructure&&x(me=>!me);else if(oe===X.syllableCount)d(me=>{if(!G||G===jt)return{...me,syllable:null};const Te=K7(G);return{...me,syllable:me.syllable===Te?null:Te}});else if(oe===X.gradeLabel){if(!G||G===jt){w([]);return}const me=zo("grade",G);if(me==null)return;w(Te=>Te.includes(me)?Te.filter(ke=>ke!==me):[...Te,me])}else if(oe===j.partOfSpeech){if(!G||G===jt){S([]);return}const me=Su[W.indexOf(G)]??y([G])[0];if(!me)return;S(Te=>Te.includes(me)?Te.filter(ke=>ke!==me):[...Te,me])}else if(oe===j.wordType){if(!G||G===jt){D([]);return}const me=Eu[L.indexOf(G)]??B([G])[0];if(!me)return;D(Te=>Te.includes(me)?Te.filter(ke=>ke!==me):[...Te,me])}else{const me=re[oe];if(!me)return;d(Te=>t.requireSyllable?G&&G!==jt?{...Te,[me]:G}:Te:!G||G===jt||Te[me]===G?{...Te,[me]:null}:{...Te,[me]:G})}},[X,re,j,W,L,t.requireSyllable]),ye=s.useCallback(G=>!t.partOfSpeech&&!t.wordType?!0:O7(G,{...t.partOfSpeech?{[j.partOfSpeech]:M}:{},...t.wordType?{[j.wordType]:z}:{}},j),[t.partOfSpeech,t.wordType,M,z,j]),le=s.useCallback(G=>{G!==l&&(G!=="direct"&&l!=="direct"&&d(oe=>Bu(oe,G,m.current,C.current)),c(G))},[l]),he=s.useCallback(()=>({composition:u,contrastCount:F,excludeNoImage:v,sameStructureOnly:g,phonemeView:l,gradeFilter:b,posFilter:k,wordTypeFilter:E}),[u,F,v,g,l,b,k,E]),ve=s.useCallback(G=>{d(G.composition),f(G.excludeNoImage),x(G.sameStructureOnly??!0),c(G.phonemeView),w(Au(G.gradeFilter)),Array.isArray(G.posFilter)&&S(y(G.posFilter)),Array.isArray(G.wordTypeFilter)&&D(B(G.wordTypeFilter))},[]);return{difficulty:p,contrastCount:F,composition:u,choseong:u.cho,excludeNoImage:v,sameStructureOnly:g,gradeFilter:b,posFilter:M,wordTypeFilter:z,matchesWordAttributes:ye,poolVersion:H,filterSections:ie,filterSelected:ue,handleFilterSelect:je,phonemeView:l,setPhonemeView:le,phonemeGroupLabel:X.phonemeGroup,wordCount:$,getFilterSnapshot:he,restoreFilterSnapshot:ve}}function Q7(e){const t=c=>c?Fa(c):null,a=t(e.cho),o=t(e.jung),n=e.jong===Da,i=n?null:t(e.jong),l=e.syllable!=null?ki(e.syllable):null;return!a&&!o&&!i&&!n&&!l?null:{cho:a,jung:o,jong:i,jongNone:n,syllable:l}}function Cg(e,t,a,o,n,i,l=!0,c="char",u=[]){const[d,h]=s.useState({}),[p,m]=s.useState(!1),{cho:C=null,jung:v=null,jong:f=null,syllable:g=null}=o??{},x=u.length>0?u.slice().sort().join(","):"",b=e.map(_=>_.key).join("|");s.useEffect(()=>{i>0&&U3(n).catch(()=>{})},[i,n]),s.useEffect(()=>{let _=!1;return m(!0),(async()=>{const A=Q7({cho:C,jung:v,jong:f,syllable:g}),y=`${C??""}_${v??""}_${f??""}_${g??""}_${x}`,B={};await Promise.all(e.map(async k=>{const S=sr[k.key];try{const E=await pb(k.key,{difficulty:S.difficulty?t:null,contrastCount:S.difficulty?a:1,composition:S.choseong?A:null,count:5,excludeNoImage:n,sameStructureOnly:l,phonemeView:c,grade:u.length>0?u:null});E&&E.length>0?B[k.key]={id:`wt-${k.key}-${t}-${y}-${Date.now()}`,name:k.label,training_type:k.key,category_main_code:"WORD",iconColor:k.color,subTitle:k.subTitle,items:E,itemCount:E.length}:B[k.key]={id:`wt-${k.key}-empty`,name:k.label,training_type:k.key,category_main_code:"WORD",iconColor:k.color,subTitle:k.subTitle,items:[],itemCount:0,__empty:!0}}catch{B[k.key]=null}})),_||(h(B),m(!1))})(),()=>{_=!0}},[t,a,C,v,f,g,n,l,c,i,x,b]);const w=JSON.stringify(e.map(_=>[_.key,_.label,_.color,_.subTitle]));return{perTypeData:s.useMemo(()=>{const _={};for(const[A,y]of Object.entries(d)){const B=e.find(k=>k.key===A);_[A]=y&&B?{...y,name:B.label,iconColor:B.color,subTitle:B.subTitle}:y}return _},[d,w]),generating:p}}function xg(e){let t=2166136261;for(let a=0;a<e.length;a++)t^=e.charCodeAt(a),t=Math.imul(t,16777619);return t>>>0}function ek(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let a=Math.imul(t^t>>>15,1|t);return a=a+Math.imul(a^a>>>7,61|a)^a,((a^a>>>14)>>>0)/4294967296}}const tk=Aa,ak=e=>{const[t,a,o]=e.split("-").map(Number);return Math.round(Date.UTC(t,(a||1)-1,o||1)/864e5)},ok=(e,t)=>{const a=e??{};return String(a.id??a.name??t)};function Ai(e,t,a,o,n){if(!e.length||t<=0)return[];const i=ek(xg(`${a}|${o}|${n}`)),l=ak(o)&1,c=e.filter((d,h)=>(xg(`${a}|${n}|${ok(d,h)}`)>>>7&1)===l),u=c.length>=t&&e.length-c.length>=t;return tk(u?c:e,t,i)}function Nu(e,t,a){const o=n=>Math.max(0,e[n]||0);return{LISTEN_IN_NOISE:Ai(ho,o("LISTEN_IN_NOISE"),t,a,"LISTEN_IN_NOISE"),SHORT_STORY:Ai(mo,o("SHORT_STORY"),t,a,"SHORT_STORY"),LONG_STORY:Ai(bo,o("LONG_STORY"),t,a,"LONG_STORY"),ORDERING_SENTENCE:Ai(go,o("ORDERING_SENTENCE"),t,a,"ORDERING_SENTENCE")}}function Tu(e){return e?!!(e.LISTEN_IN_NOISE?.length||e.SHORT_STORY?.length||e.LONG_STORY?.length||e.ORDERING_SENTENCE?.length):!1}const rk={LISTEN_IN_NOISE:3,SHORT_STORY:2,LONG_STORY:1,ORDERING_SENTENCE:2};function ju(e=!1,t=rk,a){const o=Ia(Date.now()),n=Ia(Date.now()-864e5),i=a??"";return ho.length>0||mo.length>0||bo.length>0||go.length>0?{today:Nu(t,i,o),yesterday:Nu(t,i,n)}:{today:Nu(t,i,o),yesterday:null}}function _g(e){const t=s.useRef({LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]}),a=s.useRef(null),[o,n]=s.useState(!1),[i,l]=s.useState(!1),[c,u]=s.useState(0),[d,h]=s.useState(!1),[p,m]=s.useState(()=>Ca());s.useEffect(()=>{const v=()=>{const g=Date.now(),x=new Date(g+9*36e5),b=Date.UTC(x.getUTCFullYear(),x.getUTCMonth(),x.getUTCDate()+1)-9*36e5;return Math.max(1e3,b-g+1e3)};let f=setTimeout(function g(){m(Ca()),f=setTimeout(g,v())},v());return()=>clearTimeout(f)},[]),s.useEffect(()=>{let v=!1,f=!1,g=!1,x,b=0,w=null,_=0;const A=40,y=()=>{x!==void 0&&(clearInterval(x),x=void 0)};let B=!1;try{const I=new URLSearchParams(window.location.search),j=I.get("forceRefresh")||I.get("force");B=j==="1"||j==="true"}catch{}const k=I=>{f||(g=!0,t.current=I.today,a.current=I.yesterday,n(!0),h(!0),u(j=>j+1),v=!0,y())},S=async()=>{if(v)return;if(!B){const j=ju(!1,void 0,e);if(Tu(j.today)){k(j);return}}if(w){++b>=A&&E();return}if(b>=_){_=b+8,w=dc(3e3).catch(()=>!1);try{await w}finally{w=null}if(v)return}const I=ju(B,void 0,e);if(Tu(I.today)){k(I);return}++b>=A&&E()};function E(){n(!0),h(!1),v=!0,y()}const D=()=>{if(f||g)return;const I=ju(B,void 0,e);Tu(I.today)&&k(I)};try{window.addEventListener("speechear.data.updated",D)}catch{}return S(),x=setInterval(S,250),()=>{v=!0,f=!0,y();try{window.removeEventListener("speechear.data.updated",D)}catch{}}},[e,p]);const C=s.useCallback(v=>{const f=i?a.current:t.current,g=i?t.current:a.current;return f?.[v]?.length?f[v]:g?.[v]?.length?g[v]:void 0},[i,c]);return{loaded:o,hasData:d,showYesterday:i,setShowYesterday:l,getTrainingPerType:C}}function Lu(e,t=!0){const a=pn(e);s.useEffect(()=>{if(t)return Io(()=>{a.current?.()})},[t,a])}const Si=(e,t)=>`${e}:${t??1}`,Ei=new Map,yg=new Set,wg=new Map,nk=6e4;function kg(e,t){const[a,o]=s.useState(0),n=Array.from(new Set(e.map(i=>Si(i.word,i.homonum)))).sort().join("|");return s.useEffect(()=>{const i=n?n.split("|"):[],l=Date.now(),c=i.filter(h=>!Ei.has(h)&&!yg.has(h)&&!(l-(wg.get(h)??-1/0)<nk));if(c.length===0)return;let u=!1;const d=Array.from(new Set(c.map(h=>h.slice(0,h.lastIndexOf(":")))));return t(d).then(h=>{for(const p of h)p.Meaning&&Ei.set(Si(p.Word,p.Homonum??void 0),p.Meaning);if(h.length>0)for(const p of c)Ei.has(p)||yg.add(p);else{const p=Date.now();for(const m of c)wg.set(m,p)}u||h.length===0||o(p=>p+1)}).catch(()=>{}),()=>{u=!0}},[n,t]),s.useMemo(()=>{const i=n?n.split("|"):[],l=new Map;for(const c of i){const u=Ei.get(c);u!=null&&l.set(c,u)}return l},[n,a])}function Ho(){const[e,t]=s.useState(null),a=s.useCallback(i=>t(i.getBoundingClientRect()),[]),o=s.useCallback(()=>t(null),[]),n=s.useCallback(i=>{const l=i.getBoundingClientRect();t(c=>c?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:o,toggleAt:n}}function Mu(e){const[t,a]=s.useState(null),[o,n]=s.useState(null),i=s.useRef(null);s.useEffect(()=>()=>{i.current&&clearTimeout(i.current)},[]);const l=s.useCallback((u,d)=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{a(u),n(d)},e)},[e]),c=s.useCallback(()=>{i.current&&clearTimeout(i.current),a(null),n(null)},[]);return{payload:t,anchorRect:o,openAfterDelay:l,close:c}}function Bg(e,t,a){const o=Number.isFinite(t)&&t>=1?Math.floor(t):1,n=Math.max(1,Math.ceil(e.length/o)),i=Number.isFinite(a)?Math.min(Math.max(1,Math.floor(a)),n):1;return{pageItems:s.useMemo(()=>e.slice((i-1)*o,i*o),[e,i,o]),totalPages:n,curPage:i}}function $u(e,t){const[a,o]=s.useState(e);a!==e&&(o(e),t(1))}function Ag(e={}){const{defaultPageSize:t="25",resetOn:a}=e,[o,n]=s.useState(""),[i,l]=s.useState(t),[c,u]=s.useState(1),d=Number(t)||25,h=Number(i)||d;return $u([o,i,...a??[]].map(String).join("|"),u),{query:o,setQuery:n,pageSize:i,setPageSize:l,perPage:h,page:c,setPage:u}}function Di(e="warning"){const[t,a]=s.useState(""),[o,n]=s.useState(e),[i,l]=s.useState(0),c=s.useCallback((p,m)=>{n(m),a(p),l(C=>C+1)},[]),u=s.useCallback(p=>c(p,"warning"),[c]),d=s.useCallback(p=>c(p,"normal"),[c]),h=s.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:o,toastKey:i,showToast:c,showWarning:u,showNormal:d,clearToast:h}}const gn={blue:"#60A5FA",green:"#4ADE80",amber:"#FBBF24",purple:"#A78BFA",pink:"#F472B6"},fn=gn.blue,Ni=gn.green,vn=gn.amber,Ti=gn.purple,ik=gn.pink,sk=[{key:"discrimination",label:"\uBCC0\uBCC4\uD6C8\uB828",disc:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0, \uB610\uB294 \uD2B9\uC815 \uC18C\uB9AC\uB97C \uAD6C\uBCC4\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"ear",types:[{key:"SAME_SOUND_PICK",label:"\uAC19\uC740 \uC18C\uB9AC \uACE0\uB974\uAE30",icon:"volume-2",color:fn,subTitle:"\uB4E4\uC740 \uC18C\uB9AC\uC640 \uAC19\uC740 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"SAME_OR_DIFF",label:"\uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0 \uB9DE\uD788\uAE30",icon:"diff",color:fn,subTitle:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0, \uB2E4\uB978\uC9C0 \uAD6C\uBD84\uD558\uC138\uC694."},{key:"HEAR_AND_PICK_SAME",label:"\uC77C\uCE58\uD558\uB294 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"headphones",color:fn,subTitle:"\uB4E4\uC740 \uC18C\uB9AC\uC758 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"HEAR_AND_PICK_INCLUDED",label:"\uD55C \uC74C\uC808 \uD3EC\uD568 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"scan-search",color:fn,subTitle:"\uB4E4\uC740 \uC74C\uC808\uC774 \uD3EC\uD568\uB41C \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"STARTS_WITH_SAME_SOUND",label:"\uCCAB \uC74C\uC808\uC774 \uAC19\uC740 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"play-circle",color:fn,subTitle:"\uB4E4\uC740 \uB2E8\uC5B4\uC640 \uAC19\uC740 \uC18C\uB9AC\uB85C \uC2DC\uC791\uD558\uB294 \uB2E8\uC5B4\uB97C \uACE0\uB974\uC138\uC694."}]},{key:"synthesis",label:"\uD569\uC131\uD6C8\uB828",disc:"\uB450 \uAC1C \uC774\uC0C1\uC758 \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uD569\uCCD0 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"git-merge",types:[{key:"MERGE_2_SYLLABLES",label:"\uC74C\uC808 2\uAC1C \uD569\uCE58\uAE30",icon:"link-2",color:Ni,subTitle:"\uB450 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_3_SYLLABLES",label:"\uC74C\uC808 3\uAC1C \uD569\uCE58\uAE30",icon:"git-merge",color:Ni,subTitle:"\uC138 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_2_PHONEMES",label:"\uC74C\uC18C 2\uAC1C \uD569\uCE58\uAE30",icon:"combine",color:Ni,subTitle:"\uB450 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_3_PHONEMES",label:"\uC74C\uC18C 3\uAC1C \uD569\uCE58\uAE30",icon:"braces",color:Ni,subTitle:"\uC138 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"}]},{key:"deletion",label:"\uD0C8\uB77D\uD6C8\uB828",disc:"\uB2E8\uC5B4\uC5D0\uC11C \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uC81C\uAC70\uD588\uC744 \uB54C \uB0A8\uB294 \uC18C\uB9AC\uB97C \uC778\uC2DD\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"scissors",types:[{key:"DROP_1_FROM_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C 1\uC74C\uC808 \uD0C8\uB77D",icon:"scissors",color:vn,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_1_FROM_3SYLL",label:"3\uC74C\uC808\uC5D0\uC11C 1\uC74C\uC808 \uD0C8\uB77D",icon:"minus-circle",color:vn,subTitle:"3\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_PART_FROM_COMPOUND",label:"\uD569\uC131\uC5B4\uC5D0\uC11C \uBD80\uBD84\uD0C8\uB77D",icon:"unlink",color:vn,subTitle:"\uD569\uC131\uC5B4\uC758 \uC77C\uBD80\uB97C \uBE7C\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_FINAL_CONSONANT_FROM_1SYLL",label:"1\uC74C\uC808\uC5D0\uC11C \uBC1B\uCE68 \uD0C8\uB77D",icon:"eraser",color:vn,subTitle:"\uBC1B\uCE68\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"REMOVE_CONSONANT_AND_IDENTIFY_PHONEME",label:"1\uC74C\uC808\uC5D0\uC11C \uC790\uC74C \uD0C8\uB77D",icon:"audio-lines",color:vn,subTitle:"\uC790\uC74C\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB0A8\uC744\uAE4C\uC694?"}]},{key:"substitution",label:"\uB300\uCE58\uD6C8\uB828",disc:"\uB2E8\uC5B4\uC758 \uC77C\uBD80 \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uBC14\uAFB8\uC5B4 \uC0C8\uB85C\uC6B4 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"replace",types:[{key:"CHANGE_1_SYLL_IN_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",icon:"replace",color:Ti,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_SYLL_IN_3SYLL",label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",icon:"shuffle",color:Ti,subTitle:"3\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_PHONEME_IN_1SYLL",label:"1\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC18C \uBC14\uAFB8\uAE30",icon:"arrow-right-left",color:Ti,subTitle:"1\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_PHONEME_IN_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC18C \uBC14\uAFB8\uAE30",icon:"flip-horizontal",color:Ti,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."}]},{key:"attention",label:"\uCCAD\uAC01\uC801\uC8FC\uC758\uB825\uD6C8\uB828",disc:"\uC5EC\uB7EC \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uC21C\uC11C\uB97C \uAE30\uC5B5\uD558\uB294 \uC8FC\uC758\uB825\uACFC \uB2E8\uAE30 \uAE30\uC5B5 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"list-ordered",types:[{key:"LISTEN_AND_REMEMBER_ORDER",label:"\uB4E3\uACE0 \uC21C\uC11C\uB300\uB85C \uAE30\uC5B5\uD558\uAE30",icon:"list-ordered",color:ik,subTitle:"\uC138 \uB2E8\uC5B4\uB97C \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694."}]}];function Sg(){const{t:e}=_e.useTranslation();return s.useMemo(()=>{const t=Object.fromEntries(Jm(e).map(o=>[o.key,o.label])),a={...t};return sk.flatMap(o=>o.types).forEach(o=>{a[o.key]=e(`trainingType.${o.key}.label`,{defaultValue:o.label})}),{sentence:t,all:a}},[e])}function Cn(e){let t=0;if(e&&typeof window<"u"&&typeof window.getComputedStyle=="function")for(let a=e;a&&a!==document.body&&a!==document.documentElement;a=a.parentElement){const o=parseInt(window.getComputedStyle(a).zIndex,10);!Number.isNaN(o)&&o>t&&(t=o)}return t>0?`max(var(--z-menu, 1500), ${t+1})`:"var(--z-menu, 1500)"}function Vo({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:o}){const[n,i]=s.useState(!1),[l,c]=s.useState({position:"fixed"}),u=s.useRef(null),d=s.useRef(null),h=s.useCallback(()=>{u.current&&c(e(u.current.getBoundingClientRect(),u.current))},[e]);s.useLayoutEffect(()=>{n&&h()},[n,h]),s.useEffect(()=>{if(!n)return;let C=d.current?.offsetHeight??0;C>0&&h();let v=0,f=null;typeof ResizeObserver<"u"&&d.current&&(f=new ResizeObserver(()=>{const B=d.current?.offsetHeight??0;if(B!==C){if(C=B,++v>4){f?.disconnect(),f=null;return}h()}}),f.observe(d.current));const g=B=>{const k=B.target;o&&k.closest?.(o)||u.current?.contains(k)||d.current?.contains(k)||i(!1)};document.addEventListener("mousedown",g),document.addEventListener("pointerdown",g);let x=null;const b=()=>{if(typeof requestAnimationFrame>"u"){h();return}x===null&&(x=requestAnimationFrame(()=>{x=null,h()}))},w=B=>{d.current?.contains(B.target)||(t==="reposition"?b():t==="close"&&i(!1))};t!=="ignore"&&window.addEventListener("scroll",w,!0);const _=()=>{a==="reposition"?b():a==="close"&&i(!1)};let A=null;const y=()=>{_(),A&&clearTimeout(A),A=setTimeout(()=>{A=null,a==="reposition"&&h()},250)};return a!=="ignore"&&(window.addEventListener("resize",_),window.addEventListener("orientationchange",y)),()=>{x!==null&&cancelAnimationFrame(x),f?.disconnect(),document.removeEventListener("mousedown",g),document.removeEventListener("pointerdown",g),t!=="ignore"&&window.removeEventListener("scroll",w,!0),a!=="ignore"&&(window.removeEventListener("resize",_),window.removeEventListener("orientationchange",y)),A&&clearTimeout(A)}},[n,h,t,a,o]),s.useEffect(()=>{if(n)return Io(()=>i(!1))},[n]);const p=s.useCallback(()=>i(C=>!C),[]),m=s.useCallback(()=>i(!1),[]);return{open:n,setOpen:i,toggle:p,close:m,style:l,triggerRef:u,menuRef:d}}function Ru(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:o,onComplete:n,playMs:i=1100,feedbackMs:l=1500}={}){const[c,u]=s.useState([]),[d,h]=s.useState(0),[p,m]=s.useState("idle"),[C,v]=s.useState(null),[f,g]=s.useState([]),[x,b]=s.useState(null),[w,_]=s.useState(0),A=s.useRef(0),y=s.useCallback($=>{A.current=typeof $=="function"?$(A.current):$,_(A.current)},[]),B=s.useRef(o),k=s.useRef(n);s.useEffect(()=>{B.current=o,k.current=n},[o,n]);const S=s.useRef([]),E=()=>{S.current.forEach(clearTimeout),S.current=[]},D=($,U)=>{S.current.push(setTimeout(U,$))};s.useEffect(()=>()=>E(),[]);const I=c[d]?.id??null,j=s.useRef(null),W=s.useCallback(()=>{E(),m("playing"),g([]),b(null),y(0);let $=0;e.forEach((U,T)=>{D($,()=>{h(T),v(U.id),B.current?.(U)}),D($+1e3,()=>{v(null),g(F=>[...F,U.id])}),$+=1300}),D($,()=>{m("done"),k.current?.({score:0,total:e.length})})},[e,y]),L=s.useCallback(($,U)=>{if(U>=$.length){m("done"),k.current?.({score:A.current,total:$.length});return}j.current=null,h(U),b(null),m("playing"),v($[U].id),B.current?.($[U]),D(i,()=>{v(null),m("waiting")})},[i]),M=s.useCallback(()=>{E();const $=nt(e);u($),y(0),g([]),L($,0)},[e,L,y]),z=s.useCallback(()=>{t==="playback"?(u(e),W()):M()},[t,e,W,M]),q=s.useCallback(()=>{E(),m("idle"),v(null),g([]),b(null),h(0),y(0),u([])},[y]),Y=e.map($=>$.id).join("|");s.useEffect(()=>(a?z():q(),()=>E()),[t,Y,a]);const P=s.useCallback($=>{p!=="waiting"||t==="playback"||j.current===d||(j.current=d,b($),$===c[d]?.id&&y(U=>U+1),t==="exam"?(m("playing"),D(400,()=>L(c,d+1))):(m("feedback"),D(l,()=>L(c,d+1))))},[p,t,c,d,L,l,y]),V=t==="playback"?e.length:c.length;return{bind:{activeSpeakerId:C,playedIds:f,selectedId:x,answerId:I,showFeedback:p==="feedback",clickable:p==="waiting",onSelectSpeaker:P},index:d,total:V,score:w,phase:p,done:p==="done",start:z,reset:q}}var lk=Object.freeze({__proto__:null,CACHE_GROUPS:uu,CORE_VERSION:Mn,DocumentTitleSuppressContext:lu,EMPTY_COMPOSITION:Bi,MediaQueryOverrideContext:xi,NO_CODA:Da,SYLLABLE_MIN:Na,VAP_PAGE_SIZE_OPTIONS:bn,buildGradeSection:gu,buildPartOfSpeechSection:fu,buildPositionSection:rg,buildSelectSection:og,buildSyllableSection:ag,buildWordTypeSection:vu,charToPronValue:wu,convertComposition:Bu,fmtBytes:Gb,gradeDescriptions:Du,lsBytes:du,meaningKey:Si,normalizeWordAttributeFilter:Qm,pronToCharValue:ku,syllableToFilter:ki,toWordAttributeFilterCodes:ui,today:Cr,toggleAttributeFilter:ng,useAnchoredMenu:Vo,useCacheManagement:Ub,useDailyTrainingSelection:_g,useDelayedHoverAnchor:Mu,useDeviceManagement:tg,useDocumentTitle:cu,useEscToClose:Lu,useFontScale:yi,useHoverAnchor:Ho,useListControls:Ag,useMediaQuery:sa,usePageResetOnChange:$u,usePagedList:Bg,usePasswordChange:Wb,useRelativeDay:Vb,useSoundCompassExam:Ru,useTablePaging:hu,useTableSort:mu,useToastState:Di,useTrainingTypeLabels:Sg,useVisitAllPanel:Jb,useVisitHistory:Kb,useVisitSchedule:Xb,useWindowEvent:hn,useWordAttributeFilterKeys:bu,useWordDataStats:qb,useWordMeanings:kg,useWordTrainingDataGeneration:Cg,useWordTrainingFilter:vg,valueToJamos:Fa,wordAttributeFilterFromCodes:di}),ck=".ihabdevteam-core-scope .promo-banner{align-items:center;border-radius:var(--radius-s);box-sizing:border-box;display:flex;gap:var(--spacing-m);justify-content:space-between;overflow:hidden;position:relative;text-align:left}.ihabdevteam-core-scope .promo-banner--medium{min-height:120px;padding:20px 24px}.ihabdevteam-core-scope .promo-banner--small{padding:14px 16px}.ihabdevteam-core-scope .promo-banner__title{color:inherit;color:var(--promo-banner-bg-title,inherit)}.ihabdevteam-core-scope .promo-banner__description{color:inherit;color:var(--promo-banner-bg-description,inherit)}.ihabdevteam-core-scope .promo-banner__text{display:flex;flex-direction:column;justify-content:center;min-width:0;position:relative;z-index:1}.ihabdevteam-core-scope .promo-banner__description{margin-left:2px;margin-top:1px}.ihabdevteam-core-scope .promo-banner>.button{flex-shrink:0;position:relative;z-index:1}";ce(ck);function Eg({title:e,description:t,actionLabel:a,onAction:o,bg:n,color:i,size:l="medium",actionVariant:c,titleColor:u,descriptionColor:d,className:h=""}){const p=n??i??"main",m=s.useRef(null),[C,v]=s.useState("main"),f=sa("(max-width: 767px)"),g=s.useRef({title:!1,description:!1});s.useLayoutEffect(()=>{const w=m.current;if(!w)return;const _=_i(w),A=(y,B,k)=>{if(k!==void 0)w.style.setProperty(B,k),g.current[y]=!0;else if(g.current[y]){const S=_?.[y];S?w.style.setProperty(B,S):w.style.removeProperty(B),g.current[y]=!1}};A("title","--promo-banner-bg-title",u),A("description","--promo-banner-bg-description",d)},[u,d,p]),s.useLayoutEffect(()=>{const w=m.current;if(!w)return;const _=_i(w);v(_?.actionVariant??"main")},[p]);const x=Ne("promo-banner",`promo-banner--${l}`,h),b=iu[p];return r.jsxs("div",{ref:m,className:x,role:"note",children:[r.jsx(b,{}),r.jsxs("div",{className:"promo-banner__text",children:[r.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),t&&r.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&o&&r.jsx(Ce,{htmlType:"button",size:40,variant:c??C,shape:"pill",useBorder:!0,onClick:o,ariaLabel:a,...f?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}var uk='.ihabdevteam-core-scope .top-banner{--top-banner-min-h:120px;display:flex;flex-direction:column;padding-bottom:var(--spacing-page);position:relative}.ihabdevteam-core-scope .top-banner__viewport{border-radius:var(--radius-m);min-height:var(--top-banner-min-h);overflow:hidden}.ihabdevteam-core-scope .top-banner__track{align-items:stretch;display:flex;min-height:var(--top-banner-min-h);transition:transform .4s ease}.ihabdevteam-core-scope .top-banner__slide{flex:0 0 100%;min-width:0}.ihabdevteam-core-scope .top-banner__slide>*{box-sizing:border-box;min-height:100%;width:100%}.ihabdevteam-core-scope .top-banner__dots{bottom:calc(var(--spacing-page) + 12px);display:flex;gap:6px;left:50%;position:absolute;transform:translateX(-50%)}.ihabdevteam-core-scope .top-banner__dot{background:var(--color-white-a30);border:none;border-radius:3px;cursor:pointer;height:6px;padding:0;position:relative;transition:width .25s ease,background-color .25s ease;width:6px}.ihabdevteam-core-scope .top-banner__dot:after{content:"";height:24px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:calc(100% + 6px)}.ihabdevteam-core-scope .top-banner__dot--active{background:var(--color-white);width:18px}.ihabdevteam-core-scope .top-banner__dots--dark .top-banner__dot{background:var(--color-lightGray-a80)}.ihabdevteam-core-scope .top-banner__dots--dark .top-banner__dot--active{background:var(--color-main)}';ce(uk);function Dg({children:e,interval:t=5e3,dotTone:a,className:o="","aria-label":n}){const{t:i}=_e.useTranslation(),l=n??i("topBanner.ariaLabel","\uBC30\uB108"),c=s.Children.toArray(e),u=c.length,[d,h]=s.useState(0),[p,m]=s.useState(!1),[C,v]=s.useState(!1),[f,g]=s.useState(!1),x=s.useRef(null),b=s.useRef(null),w=s.useRef(null),_=Ec(),A=p||C||f,y=u>0?Math.min(d,u-1):0;s.useEffect(()=>{if(u<2||t<=0||A||_)return;const k=window.setInterval(()=>h(S=>(Math.min(S,u-1)+1)%u),t);return()=>window.clearInterval(k)},[u,t,A,_]);const B=k=>{b.current!=null&&window.clearTimeout(b.current),b.current=window.setTimeout(()=>{b.current=null,g(!1)},k)};return s.useEffect(()=>()=>{b.current!=null&&window.clearTimeout(b.current)},[]),s.useEffect(()=>{if(!f)return;const k=S=>{S.pointerType==="touch"&&(w.current&&w.current.contains(S.target)||(b.current!=null&&(window.clearTimeout(b.current),b.current=null),g(!1)))};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[f]),u===0?null:r.jsxs("section",{ref:w,className:Ne("top-banner",o),"aria-label":l,"aria-roledescription":"carousel",onPointerEnter:k=>{x.current=k.pointerType},onPointerDown:k=>{x.current=k.pointerType,k.pointerType==="touch"&&(b.current!=null&&(window.clearTimeout(b.current),b.current=null),g(!0))},onPointerUp:k=>{k.pointerType==="touch"&&B(5e3)},onPointerCancel:k=>{k.pointerType==="touch"&&B(5e3)},onMouseEnter:()=>{x.current!=="touch"&&m(!0)},onMouseLeave:()=>m(!1),onFocus:k=>{let S=!0;try{S=k.target.matches(":focus-visible")}catch{S=!0}v(S)},onBlur:k=>{k.currentTarget.contains(k.relatedTarget)||v(!1)},children:[r.jsx("div",{className:"top-banner__viewport",children:r.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${y*100}%)`},children:c.map((k,S)=>r.jsx("div",{className:"top-banner__slide","aria-hidden":S!==y,...S!==y?{inert:!0}:{},children:k},S))})}),u>1&&r.jsx("div",{className:`top-banner__dots${(a?.[y]??"light")==="dark"?" top-banner__dots--dark":""}`,children:c.map((k,S)=>r.jsx("button",{type:"button",className:`top-banner__dot${S===y?" top-banner__dot--active":""}`,"aria-label":i("topBanner.dotAriaLabel",{count:u,index:S+1,defaultValue:`${u}\uAC1C \uC911 ${S+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":S===y,onClick:()=>h(S)},S))})]})}var dk=".ihabdevteam-core-scope .accordion-item{background:transparent;border-radius:var(--radius-m)}.ihabdevteam-core-scope .accordion-item__header{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;cursor:pointer;display:flex;gap:var(--spacing-s);min-height:56px;outline:none;padding:0 20px;transition:background-color .2s ease,border-color .2s ease}.ihabdevteam-core-scope .accordion-item__header:hover{background:var(--color-deepWhite);border-color:var(--color-main)}.ihabdevteam-core-scope .accordion-item__header:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .accordion-item__avatar{align-items:center;display:inline-flex;flex:none}.ihabdevteam-core-scope .accordion-item__title{flex:1;text-align:left}.ihabdevteam-core-scope .accordion-item__chevron{align-items:center;display:inline-flex;flex:none}.ihabdevteam-core-scope .accordion-item__chevron-icon{align-items:center;color:var(--color-lightGray);display:inline-flex}.ihabdevteam-core-scope .accordion-item__chevron-image{height:18px;opacity:.7;transition:transform .18s ease;width:18px}.ihabdevteam-core-scope .accordion-item.accordion-item--open{background:var(--color-main-a10);border-radius:var(--radius-m);overflow:hidden}.ihabdevteam-core-scope .accordion-item.accordion-item--open .accordion-item__header{background:var(--color-white);border:1px solid var(--color-main)}.ihabdevteam-core-scope .accordion-item.accordion-item--open .accordion-item__chevron-image{transform:rotate(180deg)}.ihabdevteam-core-scope .accordion-item__body p{margin:0}.ihabdevteam-core-scope .accordion-item__body{background:transparent;box-sizing:border-box;color:var(--color-darkGray);max-width:100%;overflow-wrap:break-word;padding:40px 32px;text-align:left;word-break:break-word}.ihabdevteam-core-scope .accordion-group--s48 .accordion-item__header{min-height:48px}.ihabdevteam-core-scope .accordion-group--s56 .accordion-item__header{min-height:56px}.ihabdevteam-core-scope .accordion-group--s72 .accordion-item__header{min-height:72px}.ihabdevteam-core-scope .accordion-group--s48 .accordion-item,.ihabdevteam-core-scope .accordion-group--s48 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s48 .accordion-item__header{border-radius:12px}.ihabdevteam-core-scope .accordion-group--s56 .accordion-item,.ihabdevteam-core-scope .accordion-group--s56 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s56 .accordion-item__header{border-radius:14px}.ihabdevteam-core-scope .accordion-group--s72 .accordion-item,.ihabdevteam-core-scope .accordion-group--s72 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s72 .accordion-item__header{border-radius:18px}.ihabdevteam-core-scope .accordion-group,.ihabdevteam-core-scope .accordion-group>.accordion-item{box-sizing:border-box;display:block;width:100%}.ihabdevteam-core-scope .accordion-group>.accordion-item+.accordion-item{margin-top:var(--spacing-s)}";ce(dk);function pk({title:e,body:t,open:a=!1,onToggle:o,avatar:n,titleClassName:i="body-2",bodyClassName:l="body-2",className:c=""}){const{t:u}=_e.useTranslation();return r.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${c}`.trim(),role:"listitem",children:[r.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:o,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),o?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const h=d.currentTarget.closest('[role="list"]');if(!h)return;const p=Array.from(h.querySelectorAll("[data-accordion-header]")),m=p.indexOf(d.currentTarget);(d.key==="ArrowDown"?p[m+1]:p[m-1])?.focus()}},children:[n&&r.jsx("div",{className:"accordion-item__avatar",children:n}),r.jsx("div",{className:`accordion-item__title ${i}`,children:e}),r.jsx("div",{className:"accordion-item__chevron",children:r.jsx(ot,{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&&r.jsx("div",{className:`accordion-item__body ${l}`,children:typeof t=="string"?r.jsx("p",{children:t}):t})]})}function Ng({items:e=[],defaultOpenIndex:t=0,size:a=72,className:o="",bodyClassName:n}){const[i,l]=s.useState({index:t}),c=(u,d)=>i.id!=null&&u.id!=null?u.id===i.id:i.id==null&&d===i.index;return r.jsx("div",{className:`accordion-group accordion-group--s${a} ${o}`.trim(),role:"list",children:e.map((u,d)=>r.jsx(pk,{title:u.title,body:u.body,avatar:u.avatar,open:c(u,d),onToggle:()=>l(c(u,d)?{index:-1}:{index:d,id:u.id}),bodyClassName:n},u.id??d))})}var hk=".ihabdevteam-core-scope .bottom-nav{align-items:flex-start;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);bottom:0;display:none;height:calc(72px + env(safe-area-inset-bottom));left:0;padding:8px calc(10px + env(safe-area-inset-right)) env(safe-area-inset-bottom) calc(10px + env(safe-area-inset-left));position:fixed;right:0;z-index:var(--z-nav)}.ihabdevteam-core-scope .bottom-nav__left{align-items:center;display:flex;flex-shrink:0}.ihabdevteam-core-scope .bottom-nav__divider{align-self:flex-start;background:var(--color-whiteLine);border-radius:1px;flex-shrink:0;height:24px;margin:14px 0 0;width:1px}.ihabdevteam-core-scope .bottom-nav__items{align-items:center;display:flex;flex:1;gap:10px;justify-content:center;overflow:hidden}.ihabdevteam-core-scope .bottom-nav__slot{display:flex;flex-shrink:0;height:52px;position:relative;width:52px}.ihabdevteam-core-scope .bottom-nav__slot .circle-badge--top-right{right:0;top:0}.ihabdevteam-core-scope .bottom-nav__right{align-items:center;display:flex;flex-shrink:0}@media (max-width:767px){.ihabdevteam-core-scope .bottom-nav{display:flex}}@media (min-width:768px){.ihabdevteam-core-scope .bottom-nav{display:none}}.ihabdevteam-core-scope .bottom-nav-item{align-items:center;background:transparent!important;border:none!important;border-radius:10px!important;color:var(--color-lightGray);cursor:pointer;display:flex!important;flex-direction:column;height:52px!important;justify-content:center;padding:0!important;transition:background .16s ease,color .16s ease!important;width:52px!important}.ihabdevteam-core-scope .bottom-nav-item:hover:not(.is-selected){background:var(--color-darkWhite)!important}.ihabdevteam-core-scope .bottom-nav-item.is-selected{animation:bottom-nav-active-bg .36s cubic-bezier(.4,0,.2,1) forwards;background-color:var(--color-sub)!important;box-shadow:0 6px 12px rgba(12,24,36,.06);color:#fff!important}.ihabdevteam-core-scope .bottom-nav-item.is-selected *{color:#fff!important}.ihabdevteam-core-scope .bottom-nav-item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .bottom-nav-item:disabled,.ihabdevteam-core-scope .bottom-nav-item[disabled]{opacity:.6;pointer-events:none}@keyframes bottom-nav-active-bg{0%{background-color:var(--color-sub)}to{background-color:var(--color-main)}}";ce(hk);var mk=".ihabdevteam-core-scope .badge{align-items:center;background:var(--badge-color,var(--color-main));border-radius:999px;box-shadow:none;box-shadow:var(--badge-shadow,none);color:#fff;color:var(--badge-on-color,#fff);display:inline-flex;gap:6px;justify-content:center;line-height:1;vertical-align:middle;white-space:nowrap}.ihabdevteam-core-scope .badge--small{font-size:12px;height:20px;padding:0 10px}.ihabdevteam-core-scope .badge--medium{font-size:14px;height:28px;padding:0 14px}.ihabdevteam-core-scope .badge--large{font-size:16px;height:32px;padding:0 18px}.ihabdevteam-core-scope .badge__icon{align-items:center;display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .badge--default{--badge-color:var(--color-lightGray);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--main{--badge-color:var(--color-main);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--sub{--badge-color:var(--color-sub);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--danger{--badge-color:var(--color-error);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--disabled{--badge-color:var(--color-disabled);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--like{--badge-color:var(--color-like);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--success{--badge-color:var(--color-success);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--warning{--badge-color:var(--color-warn);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--critical{--badge-color:#7c3aed;--badge-on-color:#fff}.ihabdevteam-core-scope .badge--outline{background:transparent;border:1px solid var(--badge-color);box-shadow:none;color:var(--badge-color)}.ihabdevteam-core-scope .badge--soft{background:color-mix(in srgb,var(--badge-color) 10%,transparent);box-shadow:none;color:var(--badge-color)}.ihabdevteam-core-scope .circle-badge{align-items:center;border:2px solid var(--color-pureWhite);border-radius:50%;box-sizing:border-box;display:inline-flex;flex-shrink:0;font-weight:700;justify-content:center;line-height:1;pointer-events:none;position:absolute;transition:background .12s,transform .12s;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:1}@keyframes circle-badge-pop{0%{opacity:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.ihabdevteam-core-scope .circle-badge--animate{animation:circle-badge-pop .24s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .circle-badge--animate{animation:none}}.ihabdevteam-core-scope .circle-badge--clickable{cursor:pointer;pointer-events:auto}.ihabdevteam-core-scope .circle-badge--clickable:hover{transform:scale(1.12)}.ihabdevteam-core-scope .circle-badge--top-right{right:-6px;top:-6px}.ihabdevteam-core-scope .circle-badge--top-left{left:-6px;top:-6px}.ihabdevteam-core-scope .circle-badge--inline{border:none;position:static}.ihabdevteam-core-scope .circle-badge--24{border-width:1px;font-size:11px;height:24px;width:24px}.ihabdevteam-core-scope .circle-badge--32{border-width:2px;font-size:14px;height:32px;width:32px}.ihabdevteam-core-scope .circle-badge--40{border-width:2px;font-size:16px;height:40px;width:40px}.ihabdevteam-core-scope .circle-badge--check,.ihabdevteam-core-scope .circle-badge--number{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .circle-badge--remove{background:var(--color-error);color:#fff}.ihabdevteam-core-scope .circle-badge--minus{background:var(--color-lightGray);color:#fff}.ihabdevteam-core-scope .circle-badge--24 svg{height:11px;width:11px}.ihabdevteam-core-scope .circle-badge--32 svg{height:15px;width:15px}.ihabdevteam-core-scope .circle-badge--40 svg{height:19px;width:19px}";ce(mk);function bk(){return r.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:r.jsx("polyline",{points:"2,6 5,9 10,3"})})}function gk(){return r.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[r.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),r.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function fk(){return r.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:r.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function St(e){const{t}=_e.useTranslation(),{type:a="bar",size:o,className:n="","aria-label":i,"aria-hidden":l}=e;if(a==="dot"){const{icon:A,number:y,position:B="top-right",onClick:k,animate:S=!1}=e,E=A??"check",D=y!==void 0?"number":E,I=typeof o=="number"?o:32,j=Ne("circle-badge",`circle-badge--${D}`,`circle-badge--${B}`,`circle-badge--${I}`,S?"circle-badge--animate":"",k?"circle-badge--clickable":"",n),W=y!==void 0?t("badge.nthSelected",{n:y,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:t("badge.selected","\uC120\uD0DD\uB428"),remove:t("badge.remove","\uC81C\uAC70"),minus:t("badge.exclude","\uC81C\uC678")}[E];return r.jsxs("span",{className:j,onClick:k,onKeyDown:k?L=>{L.key!=="Enter"&&L.key!==" "||(L.preventDefault(),L.currentTarget.click())}:void 0,"aria-label":l?void 0:i??W,"aria-hidden":l||void 0,role:k?"button":l?void 0:"img",tabIndex:k?0:void 0,children:[y!==void 0&&y,y===void 0&&E==="check"&&r.jsx(bk,{}),y===void 0&&E==="remove"&&r.jsx(gk,{}),y===void 0&&E==="minus"&&r.jsx(fk,{})]})}const{label:c,children:u,variant:d="default",fill:h="filled",minWidth:p,iconLeft:m,iconRight:C,color:v}=e,f=typeof o=="number"?"medium":o??"medium",g={small:"caption-2b",medium:"body-3b",large:"body-2b"}[f]??"body-2b",x={small:12,medium:14,large:16}[f]??14,b=Ne("badge",`badge--${d}`,`badge--${f}`,h!=="filled"?`badge--${h}`:"",g,n),w=v?.startsWith("--")?`var(${v})`:v,_=p!==void 0||w?{...p!==void 0?{minWidth:typeof p=="number"?`${p}px`:p}:{},...w?{"--badge-color":w}:{}}:void 0;return r.jsxs("span",{className:b,style:_,"aria-label":l?void 0:i,role:i&&!l?"img":void 0,"aria-hidden":l||void 0,children:[m&&r.jsx(ot,{icon:m,size:x,className:"badge__icon"}),c??u,C&&r.jsx(ot,{icon:C,size:x,className:"badge__icon"})]})}var vk=".ihabdevteam-core-scope .tooltip-menu{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:160px;padding:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-menu__header{align-items:center;border-bottom:1px solid var(--color-darkWhite);display:flex;gap:var(--spacing-xs);height:52px;padding:8px 12px}.ihabdevteam-core-scope .tooltip-menu__title{font-weight:600}.ihabdevteam-core-scope .tooltip-menu__columns{display:flex;gap:var(--spacing-s);padding:4px}.ihabdevteam-core-scope .tooltip-menu__column{display:flex;flex:1;flex-direction:column;gap:var(--spacing-xs);min-width:0}.ihabdevteam-core-scope .tooltip-menu__column-title{color:var(--color-lightGray);margin-bottom:4px}.ihabdevteam-core-scope .tooltip-menu__items{display:flex;flex-direction:column;gap:var(--spacing-l)}.ihabdevteam-core-scope .tooltip-menu--small{gap:2px;min-width:140px}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__items{gap:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__columns{gap:var(--spacing-xs);padding:2px}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__header{height:44px;padding:6px 10px}.ihabdevteam-core-scope .tooltip-menu__separator{background:var(--color-whiteLine);height:1px;margin:4px 0}.ihabdevteam-core-scope .tooltip-menu__item{width:100%}@media (max-width:600px){.ihabdevteam-core-scope .tooltip-menu__columns{flex-direction:column}}";ce(vk);function xr({columns:e=[],onClose:t,className:a="",size:o="medium"}){const{t:n}=_e.useTranslation(),i=o==="small"?40:48,[l,c]=s.useState([]),u=s.useMemo(()=>{const g=[{title:null,columns:e}];let x=e;for(const b of l){const w=x?.[b.ci]?.items?.[b.ii];if(!w||!Array.isArray(w.children)||!w.children.length)break;x=[{title:null,items:w.children}],g.push({title:w.label||null,columns:x})}return g},[e,l]),d=u[u.length-1],h=u.length-1,p=s.useCallback(()=>c(g=>g.slice(0,Math.max(0,Math.min(g.length,h)-1))),[h]),m=s.useRef(null),C=s.useRef(null),v=u.length;s.useEffect(()=>{C.current||(C.current=document.activeElement);let g=0,x=0;const b=()=>{const w=m.current?.querySelector("button:not([disabled])");if(w&&w.offsetParent){w.focus({preventScroll:!0});return}x++<20&&(g=requestAnimationFrame(b))};return g=requestAnimationFrame(b),()=>cancelAnimationFrame(g)},[v]),s.useEffect(()=>()=>{C.current?.focus?.({preventScroll:!0})},[]);const f=s.useCallback((g,x,b)=>{if(g){if(Array.isArray(g.children)&&g.children.length){c(w=>[...w.slice(0,h),{ci:x,ii:b}]);return}try{typeof g.onClick=="function"&&g.onClick()}catch{}try{g&&g.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,h]);return r.jsxs("div",{className:`tooltip-menu tooltip-menu--${o} ${a}`,children:[(u.length>1||d.title)&&r.jsxs("div",{className:"tooltip-menu__header",children:[u.length>1?r.jsx(Ce,{htmlType:"button",size:i,type:"dot",icon:"chevron-left",ariaLabel:n("common.back","\uB4A4\uB85C"),onClick:p,variant:"transparent-gray",useBorder:!1}):null,r.jsx("div",{className:"tooltip-menu__title button-1",children:d.title})]}),r.jsx("div",{className:"tooltip-menu__columns",ref:m,children:d.columns&&d.columns.map((g,x)=>r.jsxs("div",{className:"tooltip-menu__column",children:[g.title?r.jsx("div",{className:"tooltip-menu__column-title body-3",children:g.title}):null,r.jsx("div",{className:"tooltip-menu__items",children:(g.items||[]).map((b,w)=>r.jsxs(s.Fragment,{children:[b.separatorBefore&&w>0&&r.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),r.jsx(Ce,{htmlType:"button",className:"tooltip-menu__item",size:i,type:b.label?"bar":"dot",icon:b.selected?"check":b.icon||"none",rightIcon:Array.isArray(b.children)&&b.children.length?"chevron-right":b.badgeCount?r.jsx(St,{type:"dot",position:"inline",number:Math.min(b.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:b.label,ariaLabel:b.label&&b.badgeCount&&b.badgeCount>0?n("nav.badgeLabel",{label:b.label,count:b.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):b.label,onClick:()=>f(b,x,w),selected:b.selected,disabled:b.disabled,showTooltipInfo:b.tooltip||!1,useBorder:!1,align:"left"})]},w))})]},x))})]})}const Tg=".content-area";function Pu(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(Tg);if(a){a.scrollTop=0;return}const o=document.scrollingElement??document.documentElement;o&&o.scrollHeight<=o.clientHeight&&ra("nav-scroll-container",`[${t}] \uBCF8\uBB38\uC744 \uB9E8 \uC704\uB85C \uB418\uB3CC\uB9B4 \uD1B5\uC744 \uBABB \uCC3E\uC558\uB2E4(\uAE30\uBCF8 ${Tg}) \u2014 \uCC3D\uB3C4 \uAD6C\uB97C \uC218 \uC5C6\uC5B4 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4. scrollContainer \uB85C \uD1B5\uC744 \uC54C\uB824 \uC900\uB2E4.`),window.scrollTo({top:0})}catch{}}const zu=52,ji=10,jg=e=>e&&e>0?e:0;function Iu({items:e=[],activeKey:t,onChange:a,appMode:o,onAppModeChange:n,moreItems:i=[],scrollContainer:l}){const{t:c}=_e.useTranslation(),u=o==="manager"?"malgwi":"manager",d=o==="manager"?"arrow-left":"arrow-right",h=o==="manager"?c("nav.modeLabelMalgwi","\uB9D0\uADC0"):c("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=s.useRef(null),[m,C]=s.useState(0),v=e.length;s.useEffect(()=>{const $=p.current;if(!$)return;const U=()=>{const N=typeof getComputedStyle=="function"?getComputedStyle($):null,O=$.clientWidth-(parseFloat(N?.paddingLeft??"")||0)-(parseFloat(N?.paddingRight??"")||0),H=$.querySelector(".bottom-nav__left"),Z=H?.nextElementSibling,te=(H?.offsetWidth??0)+(H&&Z?.classList.contains("bottom-nav__divider")?Z.offsetWidth:0);C(Math.max(0,O-te))};if(U(),typeof ResizeObserver>"u")return;const T=new ResizeObserver(U);T.observe($);const F=$.querySelector(".bottom-nav__left");return F&&T.observe(F),()=>T.disconnect()},[n]);const f=zu+1,g=$=>Math.max(0,Math.floor(($+ji)/(zu+ji))),x=v*(zu+ji)-ji<=m,b=m<=0||i.length===0&&x?v:Math.min(v,g(m-f)),w=m>0&&b<v,_=w?b:v,A=e.slice(0,_),y=e.slice(_),B=w||i.length>0,k=s.useCallback(($,U)=>({position:"fixed",bottom:window.innerHeight-$.top+8,right:window.innerWidth-$.right,zIndex:Cn(U)}),[]),S=s.useId(),{open:E,toggle:D,close:I,style:j,triggerRef:W,menuRef:L}=Vo({computeStyle:k,onScroll:"ignore",onResize:"reposition"}),M=s.useCallback(($,U)=>U>0?c("nav.badgeLabel",{label:$,count:U,defaultValue:"{{label}}, {{count}}\uAC1C"}):$,[c]),z=s.useCallback(($,U)=>U>0?c("nav.badgeInsideLabel",{label:$,count:U,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):$,[c]),q=s.useCallback(()=>n?.(u),[n,u]),Y=s.useMemo(()=>y.find($=>!!$.key&&$.key===t)??i.find($=>$.selected||$.key&&$.key===t),[y,t,i]),P=s.useMemo(()=>[{items:[...y.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:!!$.key&&$.key===t,closeOnSelect:!0,disabled:$.state==="disabled",onClick:()=>{$.state!=="disabled"&&($.key&&a&&(a($.key),Pu(l,"BottomNav")),I())}})),...i.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:$.selected??(!!$.key&&$.key===t),closeOnSelect:!0,onClick:()=>{$.onClick?.(),I()}}))]}],[y,i,t,a,I]),V=[...y,...i].reduce(($,U)=>$+jg(U.badgeCount),0);return r.jsxs("nav",{className:"bottom-nav",ref:p,"aria-label":c("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[n&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"bottom-nav__left",children:r.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:d,ariaLabel:h,className:"bottom-nav-item",onClick:q})}),r.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),r.jsx("div",{className:"bottom-nav__items",children:A.map(($,U)=>{const T=jg($.badgeCount);return r.jsxs("span",{className:"bottom-nav__slot",children:[r.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:$.icon,ariaLabel:M($.label,T),selected:!!$.key&&$.key===t,disabled:$.state==="disabled",className:"bottom-nav-item",onClick:()=>{$.key&&(a?.($.key),Pu(l,"BottomNav"))}}),T>0&&r.jsx("span",{"aria-hidden":"true",children:r.jsx(St,{type:"dot",position:"top-right",number:Math.min(T,99),size:24})})]},$.key??`__slot-${U}`)})}),B&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),r.jsx("div",{className:"bottom-nav__right",children:r.jsxs("div",{ref:W,className:"bottom-nav__slot",children:[r.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:Y?.icon??"ellipsis",ariaLabel:z(Y?.label??c("nav.more","\uB354\uBCF4\uAE30"),V),selected:!!Y,className:"bottom-nav-item",onClick:D,"aria-expanded":E,"aria-controls":E?S:void 0}),V>0&&r.jsx("span",{"aria-hidden":"true",children:r.jsx(St,{type:"dot",position:"top-right",number:Math.min(V,99),size:24})}),E&&ua.createPortal(r.jsx("div",{id:S,role:"group","aria-label":c("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:j,ref:L,children:r.jsx(xr,{columns:P,onClose:I})}),document.body)]})})]})]})}var Ck='.ihabdevteam-core-scope .side-nav__menu{-webkit-overflow-scrolling:touch;background-clip:padding-box;border-left:1px solid transparent;border-right:1px solid transparent;display:flex;flex:1;flex-direction:column;margin-bottom:var(--spacing-s);margin-top:4px;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-left:calc(var(--spacing-s) - 1px);padding-right:calc(var(--spacing-s) - 1px);scrollbar-width:none}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .side-nav__scroll{height:0;margin-left:calc((var(--spacing-s) - 1px)*-1);margin-right:calc((var(--spacing-s) - 1px)*-1);overflow:visible;pointer-events:none;position:sticky;top:0;z-index:1}.ihabdevteam-core-scope .side-nav__scroll-thumb{background:var(--color-darkWhite);border-radius:3px;pointer-events:auto;position:absolute;right:calc(var(--spacing-s)/2 - 4.5px);touch-action:none;transition:background-color .16s ease,opacity .18s ease;width:6px}.ihabdevteam-core-scope .side-nav__scroll-thumb:before{content:"";inset:0 -4px;position:absolute}.ihabdevteam-core-scope .side-nav__scroll-thumb:active,.ihabdevteam-core-scope .side-nav__scroll-thumb:hover{background:var(--color-lightGray)}.ihabdevteam-core-scope .side-nav__menu-list{display:flex;flex:1 0 auto;flex-direction:column;gap:4px;overflow:visible;padding:0 0 4px}.ihabdevteam-core-scope .side-nav__notification-wrap{display:inline-flex;position:relative;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .side-nav__footer{align-items:stretch;display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-s);margin-top:var(--spacing-s);padding:0}.ihabdevteam-core-scope .side-nav__separator{background:var(--color-whiteLine);height:1px;margin:0 var(--spacing-s) var(--spacing-xs)}.ihabdevteam-core-scope .side-nav__separator--short{margin:4px var(--spacing-m);width:var(--spacing-xl)}@media (max-width:767px){.ihabdevteam-core-scope .side-nav__footer,.ihabdevteam-core-scope .side-nav__menu{display:none}}.ihabdevteam-core-scope .side-nav__item{align-items:center;background:transparent;border:none;border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;flex-shrink:0;font-family:var(--font-family);gap:var(--spacing-s);height:52px;justify-content:flex-start;padding:0 var(--spacing-m);text-align:left;width:100%}@keyframes ihabCoreSnSweep{0%{background-position:100% 0}to{background-position:0 0}}@keyframes ihabCoreSnIconBounce{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.ihabdevteam-core-scope .side-nav__item.active{animation:ihabCoreSnSweep 1s cubic-bezier(.4,0,.2,1) forwards;background:linear-gradient(90deg,var(--color-main) 50%,var(--color-sub) 100%);background-position:0 0;background-size:200% 100%;box-shadow:var(--shadow-button);color:#fff}.ihabdevteam-core-scope .side-nav__item.active .side-nav__icon{animation:ihabCoreSnIconBounce .48s cubic-bezier(.4,0,.2,1) forwards;color:#fff}.ihabdevteam-core-scope .side-nav__icon{align-items:center;color:var(--color-lightGray);display:inline-flex;height:24px;justify-content:center;width:24px}.ihabdevteam-core-scope .side-nav__item.active .circle-badge{background:var(--color-pureWhite);color:var(--color-main)}.ihabdevteam-core-scope .side-nav__item .circle-badge--inline{border:1px solid var(--color-pureWhite)}.ihabdevteam-core-scope .side-nav__icon-wrap{display:inline-flex;flex:0 0 24px;position:relative}.ihabdevteam-core-scope .side-nav__icon{flex:0 0 24px}.ihabdevteam-core-scope .side-nav__icon img{display:block;height:20px;-o-object-fit:contain;object-fit:contain;width:20px}.ihabdevteam-core-scope .side-nav__icon-image{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:20px;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:20px}.ihabdevteam-core-scope .side-nav__item .side-nav__icon img{filter:brightness(0) saturate(0) opacity(.45);transition:filter .16s ease,opacity .16s ease}.ihabdevteam-core-scope .side-nav__item.active .side-nav__icon img{filter:brightness(0) invert(1)}.ihabdevteam-core-scope .side-nav__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .side-nav__item{transition:background-color .16s ease,color .16s ease,transform 80ms ease}.ihabdevteam-core-scope .side-nav__item:focus-visible:not(.active),.ihabdevteam-core-scope .side-nav__item:focus:not(.active),.ihabdevteam-core-scope .side-nav__item:hover:not(.active){background:var(--color-darkWhite)}.ihabdevteam-core-scope .side-nav__item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .side-nav__item.disabled,.ihabdevteam-core-scope .side-nav__item.disabled:focus,.ihabdevteam-core-scope .side-nav__item.disabled:hover{background:transparent;color:var(--color-lightGray);cursor:default;opacity:.6;pointer-events:none;transform:none}.ihabdevteam-core-scope .side-nav__item.disabled .side-nav__icon{color:var(--color-lightGray)}.ihabdevteam-core-scope .side-nav__item.disabled .side-nav__icon img{filter:none;opacity:.8}.ihabdevteam-core-scope .side-nav__item--child{height:40px;padding-left:30px}.ihabdevteam-core-scope .side-nav__item--child .side-nav__icon{height:20px;width:20px}.ihabdevteam-core-scope .side-nav__item--child .side-nav__label{font-weight:400}';ce(Ck);function Lg(e){if(typeof e!="string")return!1;let t="";for(const o of e){const n=o.charCodeAt(0);n<=32||n>=127&&n<=159||(t+=o)}if(!t)return!1;const a=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);return a?["http","https","mailto","tel"].includes(a[1].toLowerCase()):!0}function Mg(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function xk(e){const{t}=_e.useTranslation(),{activeKey:a,unreadCount:o,onDebug:n,onNotification:i,onSetting:l,onHelp:c,onFeedback:u,onAccount:d}=e||{},h="default";return n||i||l||c||u||d?r.jsxs("div",{className:"side-nav__footer",children:[n&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:n,selected:a==="debug"}),i&&r.jsxs("span",{className:"side-nav__notification-wrap",children:[r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"bell",ariaLabel:Mg(t,t("nav.notifications","\uC54C\uB9BC"),o),onClick:i,selected:a==="notifications"}),!!o&&o>0&&r.jsx(St,{type:"dot",number:Math.min(o,99),size:24,"aria-hidden":!0})]}),l&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),c&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:c,selected:a==="help"}),u&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:u,selected:a==="feedback"}),d&&r.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:d,selected:a==="account"})]}):null}function $g(e){const{t}=_e.useTranslation(),{item:a,itemKey:o,label:n,icon:i,active:l,onClick:c,style:u,state:d,labelStyle:h}=e||{},p=a?.key??o??"",m=a?.label??n??"",C=a?.icon??i??"",v=a?.badge??0,f=r.jsx("span",{className:"side-nav__icon-wrap",children:r.jsx(ot,{icon:C,label:typeof m=="string"?m:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),g=d==="disabled",x=`side-nav__item ${l?"active":""} ${d||""} ${g?"disabled":""} ${a?.child?"side-nav__item--child":""}`,b=s.useCallback(w=>{if(g)return;const _=w.detail>0;if(_)try{w.currentTarget.blur()}catch{}c?.(p,w.currentTarget,_)},[g,p,c]);return r.jsxs("button",{type:"button",className:x,onClick:b,"aria-label":typeof m=="string"?Mg(t,m,v):void 0,"aria-current":l?"page":void 0,style:u,"aria-disabled":g,children:[f,r.jsx("span",{className:"side-nav__label button-1 f",style:h,children:m}),v>0&&r.jsx(St,{type:"dot",position:"inline",number:Math.min(v,99),size:24,"aria-hidden":!0}),d==="loading"&&r.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":t("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function Ou(e){const{t}=_e.useTranslation(),{items:a=[],activeKey:o,onChange:n,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:h,onFeedback:p,appMode:m,onAppModeChange:C,scrollContainer:v}=e||{},f=m==="manager",g=s.useCallback(()=>C?.(f?"malgwi":"manager"),[C,f]),x=s.useRef(null),[b,w]=s.useState(null);s.useEffect(()=>{const k=x.current;if(!k)return;let S=null;const E=()=>{const{scrollHeight:j,clientHeight:W,scrollTop:L}=k;if(j<=W+1){w(P=>P===null?P:null);return}const M=Math.max(24,W/j*W),z=W-M,q=j-W,Y={top:Math.round(L/q*z),height:Math.round(M)};w(P=>P&&P.top===Y.top&&P.height===Y.height?P:Y)},D=()=>{if(typeof requestAnimationFrame>"u"){E();return}S===null&&(S=requestAnimationFrame(()=>{S=null,E()}))};E(),k.addEventListener("scroll",D,{passive:!0});const I=typeof ResizeObserver<"u"?new ResizeObserver(D):null;I?.observe(k);for(const j of Array.from(k.children))I?.observe(j);return()=>{S!==null&&cancelAnimationFrame(S),k.removeEventListener("scroll",D),I?.disconnect()}},[a]);const _=s.useRef(null),A=s.useCallback(k=>{const S=x.current;S&&(k.preventDefault(),_.current={y:k.clientY,top:S.scrollTop},k.currentTarget.setPointerCapture(k.pointerId))},[]),y=s.useCallback(k=>{const S=x.current,E=_.current;!S||!E||(S.scrollTop=E.top+(k.clientY-E.y)*(S.scrollHeight/S.clientHeight))},[]),B=s.useCallback(k=>{_.current=null,k.currentTarget.hasPointerCapture(k.pointerId)&&k.currentTarget.releasePointerCapture(k.pointerId)},[]);return r.jsxs("nav",{ref:x,"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[b&&r.jsx("div",{className:"side-nav__scroll","aria-hidden":"true",children:r.jsx("div",{className:"side-nav__scroll-thumb",style:{top:b.top,height:b.height},onPointerDown:A,onPointerMove:y,onPointerUp:B,onPointerCancel:B})}),r.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(k=>!k.section&&(k.key||k.label)).map((k,S)=>r.jsxs(s.Fragment,{children:[k.divider&&r.jsx("div",{className:"side-nav__separator"}),r.jsx($g,{item:k,active:!!k.key&&k.key===o,state:k.disabled?"disabled":void 0,onClick:(E,D,I)=>{if(k.disabled)return;if(k.href){if(Lg(k.href)&&window.open(k.href,"_blank","noopener,noreferrer"),I)try{D?.blur()}catch{}return}if(n?.(k.key),Pu(v,"SideNav"),!I)return;try{D?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const j=document.querySelector(".header");if(j){const W=typeof j.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&W&&j.matches(":hover"))){j.classList.add("header--force-collapsed");const L=()=>{j.classList.remove("header--force-collapsed"),j.removeEventListener("mouseenter",L)};j.addEventListener("mouseenter",L)}}}})]},k.key??`side-nav__item-${S}`)),C&&r.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),C&&r.jsx($g,{item:{key:"__mode-switch__",label:f?t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:f?"arrow-left":"arrow-right"},onClick:g})]}),r.jsx(xk,{activeKey:o,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:h,onFeedback:p})]})}var Li='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',Fu='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',_k='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',yk='.ihabdevteam-core-scope .header{background:var(--color-deepWhite);border-left:1px solid var(--color-whiteLine);border-right:1px solid var(--color-whiteLine);bottom:0;display:flex;flex-direction:column;isolation:isolate;left:0;overflow:visible;overscroll-behavior:none;position:fixed;top:0;z-index:var(--z-sidebar)}.ihabdevteam-core-scope .header__menu-button{background:transparent;border:none;display:none;position:relative}.ihabdevteam-core-scope .header__bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);bottom:0;display:flex;height:56px;justify-content:center;left:0;padding:0;padding-bottom:calc(var(--spacing-content) + env(safe-area-inset-bottom));position:fixed;right:0}.ihabdevteam-core-scope .header__category-button{background:transparent;border:none}.ihabdevteam-core-scope .header:before{background:linear-gradient(160deg,var(--color-main) 0,var(--color-sub) 100%);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .2s ease;z-index:-1}.ihabdevteam-core-scope .header--manager{border-right-color:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .header--manager:before{opacity:1}.ihabdevteam-core-scope .header--manager .side-nav__separator{background:hsla(0,0%,100%,.25)}.ihabdevteam-core-scope .header--manager .side-nav__scroll-thumb{background:hsla(0,0%,100%,.4)}.ihabdevteam-core-scope .header--manager .side-nav__scroll-thumb:active,.ihabdevteam-core-scope .header--manager .side-nav__scroll-thumb:hover{background:hsla(0,0%,100%,.75)}.ihabdevteam-core-scope .header--manager .side-nav__icon,.ihabdevteam-core-scope .header--manager .side-nav__item,.ihabdevteam-core-scope .header--manager .side-nav__item.disabled,.ihabdevteam-core-scope .header--manager .side-nav__item.disabled .side-nav__icon{color:var(--color-deepWhite)}.ihabdevteam-core-scope .header--manager .side-nav__item:focus:not(.active),.ihabdevteam-core-scope .header--manager .side-nav__item:hover:not(.active){background:hsla(0,0%,100%,.15);color:#fff}.ihabdevteam-core-scope .header--manager .side-nav__item:focus:not(.active) .side-nav__icon,.ihabdevteam-core-scope .header--manager .side-nav__item:hover:not(.active) .side-nav__icon{color:#fff}.ihabdevteam-core-scope .header--manager .side-nav__item.active{animation:ihabCoreSnSweep 1s cubic-bezier(.4,0,.2,1) forwards;background:linear-gradient(90deg,var(--color-pureWhite) 50%,color-mix(in srgb,var(--color-main) 50%,#fff) 100%);background-position:0 0;background-size:200% 100%;box-shadow:var(--shadow-card);color:var(--color-darkGray)}.ihabdevteam-core-scope .header--manager .side-nav__item.active .side-nav__icon{animation:ihabCoreSnIconBounce .48s cubic-bezier(.4,0,.2,1) forwards;color:var(--color-lightGray)}.ihabdevteam-core-scope .header--manager .side-nav__item.active .side-nav__icon img{filter:none;opacity:1}.ihabdevteam-core-scope .header--manager .side-nav__footer [role=button],.ihabdevteam-core-scope .header--manager .side-nav__footer button{color:hsla(0,0%,100%,.55)}@media (min-width:1024px){.ihabdevteam-core-scope .header{width:220px}.ihabdevteam-core-scope .header__bottom,.ihabdevteam-core-scope .header__menu-button{display:none}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .header{overflow:visible;transition:width .18s ease;width:72px}.ihabdevteam-core-scope .header:focus-within,.ihabdevteam-core-scope .header:hover{width:220px}.ihabdevteam-core-scope .header.header--force-collapsed,.ihabdevteam-core-scope .header.header--force-collapsed:focus-within,.ihabdevteam-core-scope .header.header--force-collapsed:hover{width:72px}.ihabdevteam-core-scope .header__branding{height:80px}.ihabdevteam-core-scope .header .side-nav__menu{scrollbar-gutter:auto;scrollbar-width:none;transition:padding .18s ease}.ihabdevteam-core-scope .header .side-nav__menu::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .header .side-nav__item{transition:padding .18s ease,gap .18s ease,width .18s ease}.ihabdevteam-core-scope .header .side-nav__label{display:inline-block;overflow:hidden;transition:max-width .18s ease,opacity .18s ease,transform .18s ease;white-space:nowrap}.ihabdevteam-core-scope .header--force-collapsed .side-nav__menu,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__menu{padding:0 var(--spacing-xs)}.ihabdevteam-core-scope .header--force-collapsed .side-nav__item,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__item{border-radius:var(--radius-card);gap:0;margin:0 auto;padding:0 14px;position:relative;width:52px}.ihabdevteam-core-scope .header--force-collapsed .side-nav__item>.circle-badge,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__item>.circle-badge{border:1px solid var(--color-pureWhite);position:absolute;right:0;top:0}.ihabdevteam-core-scope .header--force-collapsed .side-nav__footer,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__footer{align-items:center}.ihabdevteam-core-scope .header--force-collapsed .side-nav__separator--short,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__separator--short{margin-left:auto;margin-right:auto}.ihabdevteam-core-scope .header--force-collapsed .side-nav__label,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .side-nav__label{max-width:0;opacity:0;pointer-events:none;transform:translateX(-6px)}.ihabdevteam-core-scope .header--force-collapsed .brand-identity__image--symbol,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .brand-identity__image--symbol{display:block}.ihabdevteam-core-scope .header--force-collapsed .brand-identity__image--logo,.ihabdevteam-core-scope .header:not(:hover):not(:focus-within) .brand-identity__image--logo{display:none}}@media (max-width:767px){.ihabdevteam-core-scope .header{align-items:center;border-bottom:1px solid var(--color-whiteLine);border-left:none;border-right:none;flex-direction:row;height:64px;justify-content:space-between;left:0;position:fixed;right:0;top:0;width:100%}.ihabdevteam-core-scope .header__top{align-items:center;display:flex;flex:1}.ihabdevteam-core-scope .header__branding{height:auto}.ihabdevteam-core-scope .header__menu-button{display:inline-flex}.ihabdevteam-core-scope .header__bi{align-items:center;display:flex;gap:var(--spacing-xs);padding:0 calc(12px + env(safe-area-inset-right)) 0 calc(12px + env(safe-area-inset-left));width:100%}.ihabdevteam-core-scope .header__bi .header__menu-button{margin-left:auto}.ihabdevteam-core-scope .header__bottom{display:none}}.ihabdevteam-core-scope .brand-identity__root{align-items:center;display:flex;height:100px;justify-content:center}.ihabdevteam-core-scope .brand-identity__image{height:48px;-o-object-fit:contain;object-fit:contain;width:auto}.ihabdevteam-core-scope .brand-identity__image--symbol{display:none}@media (min-width:1024px){.ihabdevteam-core-scope .brand-identity__root{height:100px}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .brand-identity__root{height:100px}}@media (max-width:767px){.ihabdevteam-core-scope .brand-identity__root{height:64px;padding:10px}.ihabdevteam-core-scope .brand-identity__image{height:40px}}';ce(yk);function Hu({appMode:e}){const{t}=_e.useTranslation(),a=e==="manager",o=a?Fu:Li,n=_k;return r.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[r.jsx("img",{src:n,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image brand-identity__image--symbol"}),r.jsx("img",{src:o,alt:a?t("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):t("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image brand-identity__image--logo"})]})}function Vu({activeKey:e,onChange:t,items:a,malgwiItems:o,managerItems:n,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:h,onFeedback:p,appMode:m,onAppModeChange:C,scrollContainer:v}){const{t:f}=_e.useTranslation(),g=sa("(max-width: 767px)"),x=s.useMemo(()=>(a??[]).filter(j=>!j.section&&(j.key||j.label)).map(j=>({key:j.key,label:typeof j.label=="string"?j.label:void 0,icon:j.icon,state:j.disabled?"disabled":void 0,badgeCount:j.badge})),[a]),b=s.useCallback(j=>{const W=a?.find(L=>L.key===j);if(!W?.disabled){if(W?.href){Lg(W.href)&&window.open(W.href,"_blank","noopener,noreferrer");return}t?.(j)}},[a,t]),w=s.useMemo(()=>{const j=[];return l&&j.push({key:"debug",icon:"terminal",label:f("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),c&&j.push({key:"notifications",icon:"bell",label:f("nav.notifications","\uC54C\uB9BC"),badgeCount:i,onClick:c}),d&&j.push({key:"settings",icon:"settings",label:f("nav.settings","\uC124\uC815"),onClick:d}),h&&j.push({key:"help",icon:"message-circle-question-mark",label:f("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:h}),p&&j.push({key:"feedback",icon:"bug",label:f("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:p}),u&&j.push({key:"account",icon:"user-round",label:f("nav.account","\uACC4\uC815"),onClick:u}),j},[f,l,c,d,h,p,u,i]),_=s.useCallback((j,W)=>({position:"fixed",top:j.bottom+8,right:Math.max(8,window.innerWidth-j.right),zIndex:Cn(W)}),[]),A=s.useId(),{open:y,toggle:B,close:k,style:S,triggerRef:E,menuRef:D}=Vo({computeStyle:_,onScroll:"ignore",onResize:"reposition"}),I=s.useMemo(()=>[{items:w.map(j=>({label:j.label,icon:j.icon,badgeCount:j.badgeCount,selected:j.selected??(!!j.key&&j.key===e),closeOnSelect:!0,onClick:()=>{j.onClick?.(),k()}}))}],[w,e,k]);return r.jsxs("aside",{className:`header${m==="manager"?" header--manager":""}`,children:[r.jsxs("div",{className:"header__bi",children:[r.jsx(Hu,{appMode:m}),r.jsxs("div",{className:"header__menu-button",ref:E,children:[r.jsx(Ce,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",useBorder:!1,icon:"menu",ariaLabel:c&&i&&i>0?f("nav.badgeInsideLabel",{label:f("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:i,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):f("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:B,"aria-expanded":y,"aria-controls":y?A:void 0}),!!c&&!!i&&i>0&&r.jsx(St,{type:"dot",number:Math.min(i,99),size:24,"aria-hidden":!0}),y&&ua.createPortal(r.jsx("div",{id:A,role:"group","aria-label":f("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:S,ref:D,children:r.jsx(xr,{columns:I,onClose:k})}),document.body)]})]}),r.jsx(Ou,{scrollContainer:v,items:a,activeKey:e??void 0,onChange:t,unreadCount:i,onDebug:l,onNotification:c,onAccount:u,onSetting:d,onHelp:h,onFeedback:p,appMode:m,onAppModeChange:C}),g&&r.jsx(Iu,{items:x,activeKey:e??void 0,onChange:b,scrollContainer:v,appMode:m,onAppModeChange:C})]})}const Rg=Vu;var wk='.ihabdevteam-core-scope .payment-plan__card{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;display:flex;flex:1 1 340px;flex-direction:column;gap:28px;max-width:360px;min-width:min(340px,100%);padding:20px;position:relative;text-align:left;transition:box-shadow .2s ease,transform .2s ease;width:100%}.ihabdevteam-core-scope .payment-plan__card:hover{box-shadow:var(--shadow-dropdown);transform:translateY(-4px)}.ihabdevteam-core-scope .payment-plan__card-badge{position:absolute;right:32px;top:32px}.ihabdevteam-core-scope .payment-plan__pricing-card{cursor:pointer;display:flex;justify-content:center}.ihabdevteam-core-scope .payment-plan__title{color:var(--color-black);display:flex;flex-direction:column;margin:0}.ihabdevteam-core-scope .payment-plan__quote{color:var(--color-sub);margin:0 0 4px;min-height:1.4em}.ihabdevteam-core-scope .payment-plan__title-heading{margin:0}.ihabdevteam-core-scope .payment-plan__subtitle{color:var(--color-gray);line-height:1.5;margin:8px 0 0;text-align:left}.ihabdevteam-core-scope .payment-plan__box,.ihabdevteam-core-scope .payment-plan__box-title{display:block}.ihabdevteam-core-scope .payment-plan__contact-button{width:100%}.ihabdevteam-core-scope .payment-plan__feature-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:12px 0 0;padding:0}.ihabdevteam-core-scope .payment-plan__feature-item{align-items:center;color:var(--color-darkGray);display:flex;gap:10px;line-height:1.45}.ihabdevteam-core-scope .payment-plan__feature-check{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center}.ihabdevteam-core-scope .payment-plan__card-pricing{display:flex;flex-direction:column;gap:6px;margin-top:auto;text-align:left;width:100%}.ihabdevteam-core-scope .payment-plan__pricing-list{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .payment-plan__pricing-row{grid-row-gap:4px;align-items:center;background:var(--plan-color,var(--color-darkWhite));border:1px solid transparent;border-radius:var(--radius-s);box-sizing:border-box;color:#fff;cursor:pointer;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:14px 18px;row-gap:4px;transition:filter .15s ease,transform .15s ease,box-shadow .15s ease;width:100%}.ihabdevteam-core-scope .payment-plan__pricing-row--static{cursor:default;pointer-events:none}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight{background:var(--color-white);border:1px solid var(--plan-color,var(--color-main));color:var(--color-darkGray)}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-current,.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-row-price{color:var(--plan-color,var(--color-main))}.ihabdevteam-core-scope .payment-plan__pricing-row:hover{box-shadow:var(--shadow-dropdown);filter:brightness(1.04);transform:translateY(-2px)}.ihabdevteam-core-scope .payment-plan__pricing-row-title{display:contents}.ihabdevteam-core-scope .payment-plan__pricing-row-label{grid-column:1;grid-row:1;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-row-price{align-items:center;color:#fff;display:flex;gap:var(--spacing-xs);grid-column:1/-1;grid-row:2;justify-content:flex-end;margin:0;text-align:right}.ihabdevteam-core-scope .payment-plan__pricing-current{color:#fff;margin:0;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-symbol{font-weight:600;margin-right:2px}.ihabdevteam-core-scope .payment-plan__list{grid-gap:var(--spacing-l);align-items:stretch;display:grid;gap:var(--spacing-l);grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),360px));justify-content:center;margin:0 auto var(--spacing-page);width:100%}.ihabdevteam-core-scope .payment-plan__list>.payment-plan__card{align-self:stretch}.ihabdevteam-core-scope .payment-plan__card.recommended{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .payment-plan__feature{align-items:center;color:var(--color-darkGray);display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .payment-plan__feature:before{color:var(--color-success);content:"\u2713";font-weight:700}@media (max-width:767px){.ihabdevteam-core-scope .payment-plan__list{align-items:center;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .payment-plan__list>.payment-plan__card{align-self:center;flex:none;max-width:360px;width:100%}}';ce(wk);const kk=()=>xt.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function Pg(e){if(!(e==null||e==="")){if(typeof e=="string"&&/^\s*\d[\d,]*\s*$/.test(e)){const t=Number(e.replace(/[,\s]/g,""));if(Number.isFinite(t))return hr(`${t.toLocaleString("ko-KR")}\uC6D0`)}return hr(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function Bk(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function Ak(e){if(e.durationDays&&e.durationDays>0){const i=e.durationDays;return i%365===0?`${i/365}\uB144`:`${i}\uC77C`}const t=(e.code??"").match(/(\d+)(d|y)\b/i);if(t)return t[2].toLowerCase()==="y"?`${t[1]}\uB144`:`${t[1]}\uC77C`;const a=e.name??"",o=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(o)return o[1].replace(/\s+/g,"");const n=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return n?n[2].toLowerCase()==="year"?`${n[1]}\uB144`:`${n[1]}\uC77C`:a||kk()}function Sk(e){const t=(e??"").match(/(\d+)(d|y)\b/i);if(!t)return null;const a=Number(t[1]);return t[2].toLowerCase()==="y"?a*365:a}function Wu(e){return{type:e.type??Bk(e),plan:Ak(e),label:e.label,price:Pg(e.price),originalPrice:Pg(e.originalPrice),discountLabel:e.discountLabel}}var Ek='.ihabdevteam-core-scope .pass-card-frame{container-type:inline-size;height:188px;max-width:100%;width:300px}.ihabdevteam-core-scope .pass-card{border-radius:16px;box-sizing:border-box;display:flex;flex-direction:column;height:188px;overflow:hidden;padding:var(--spacing-l);position:relative;width:300px}.ihabdevteam-core-scope .pass-card-frame>.pass-card{aspect-ratio:auto;border-radius:5.33cqw;height:100%;padding:6.67cqw;width:100%}.ihabdevteam-core-scope .pass-card--clickable{cursor:pointer}@media (max-width:360px){.ihabdevteam-core-scope .pass-card,.ihabdevteam-core-scope .pass-card-frame{max-width:300px;width:100%}}.ihabdevteam-core-scope .pass-card--active{box-shadow:0 4px 16px rgba(0,0,0,.08)}.ihabdevteam-core-scope .pass-card--pending{box-shadow:0 2px 8px rgba(0,0,0,.05)}.ihabdevteam-core-scope .pass-card--expired{--color-main:var(--color-disabled);--color-sub:var(--color-whiteLine);--pass-card-expired-shape:var(--color-whiteLine);box-shadow:none}.ihabdevteam-core-scope [data-theme=dark] .pass-card--expired,.ihabdevteam-core-scope[data-theme=dark] .pass-card--expired,[data-theme=dark] .pass-card--expired .ihabdevteam-core-scope{--pass-card-expired-shape:hsla(0,0%,100%,.18)}@media (prefers-color-scheme:dark){.ihabdevteam-core-scope :root:not([data-theme=light]):not([data-theme=dark]) .pass-card--expired{--pass-card-expired-shape:hsla(0,0%,100%,.18)}}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg{background:var(--color-darkWhite)}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg__symbol{background:var(--pass-card-expired-shape)}.ihabdevteam-core-scope .pass-card--expired .pass-card__copyright,.ihabdevteam-core-scope .pass-card--expired .pass-card__plan,.ihabdevteam-core-scope .pass-card--expired .pass-card__price-area,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage-percent,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage-remaining{color:var(--color-gray)}.ihabdevteam-core-scope .pass-card.pass-card--expired:after{box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.5),inset -1px -1px 0 color-mix(in srgb,var(--color-gray) 10%,transparent)}.ihabdevteam-core-scope .pass-card:after{border-radius:inherit;box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.5),inset -1px -1px 0 rgba(73,156,223,.2);content:"";inset:0;pointer-events:none;position:absolute;z-index:2}.ihabdevteam-core-scope .pass-card__top{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;margin-top:-1.67cqw;position:relative;z-index:1}.ihabdevteam-core-scope .pass-card__top-left{align-items:flex-start;display:flex;flex-direction:column;gap:0}.ihabdevteam-core-scope .pass-card__logo{height:10.67cqw;-o-object-fit:contain;object-fit:contain;width:auto}.ihabdevteam-core-scope .pass-card__plan{color:var(--pass-card-text,var(--color-pureBlack));display:flex;flex-direction:column;gap:0;margin-top:-.67cqw;position:relative;text-align:left;z-index:1}.ihabdevteam-core-scope .pass-card__plan .h0{font-size:13.33cqw;line-height:1.3}.ihabdevteam-core-scope .pass-card .pass-card__plan-number{font-size:17.33cqw;letter-spacing:-1cqw;line-height:1}.ihabdevteam-core-scope .pass-card__plan .h5b{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__plan-unit{margin-left:.67cqw;position:relative;top:-.67cqw}.ihabdevteam-core-scope .pass-card__plan-suffix{margin-left:.67cqw;margin-top:0}.ihabdevteam-core-scope .pass-card .pass-card__copyright{color:var(--pass-card-text,var(--color-black));font-size:3.67cqw;line-height:1.36;margin:auto 0 0;position:relative;text-align:left;z-index:1}.ihabdevteam-core-scope .pass-card__price-area{align-items:flex-end;bottom:4.67cqw;display:flex;flex-direction:column;gap:0;position:absolute;right:6.67cqw;z-index:1}.ihabdevteam-core-scope .pass-card__price-area .h1{font-size:10.67cqw;line-height:1.375}.ihabdevteam-core-scope .pass-card__price-area .h5{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__usage{align-items:flex-end;bottom:4.67cqw;color:var(--pass-card-text,var(--color-black));display:flex;flex-direction:column;gap:0;position:absolute;right:6.67cqw;z-index:1}.ihabdevteam-core-scope .pass-card__usage-percent{align-items:baseline;display:inline-flex;font-size:3.67cqw;gap:0;line-height:1.36;opacity:.9}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-remaining{font-size:5cqw;line-height:1.53;opacity:.9}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-value{font-size:10.67cqw;line-height:1.2}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-symbol{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__discount{color:var(--pass-card-text,var(--color-pureBlack));font-size:4.67cqw;line-height:1.2;text-align:right;white-space:pre-line}.ihabdevteam-core-scope .pass-card__price{align-items:baseline;color:var(--pass-card-text,var(--color-pureBlack));display:inline-flex;gap:2cqw;text-align:right}.ihabdevteam-core-scope .pass-card__price-original{color:color-mix(in srgb,var(--pass-card-text,var(--color-pureBlack)) 75%,transparent);font-size:4.67cqw;line-height:1.57;text-decoration:line-through;text-decoration-thickness:1px}';ce(Ek);var Dk='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',Nk='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>',Tk='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',jk='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',Lk='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>',Mk='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',$k=".ihabdevteam-core-scope .pass-card-bg{border-radius:inherit;inset:0;overflow:hidden;pointer-events:none;position:absolute}:where(.ihabdevteam-core-scope){--pass-card-symbol-opacity:1}.ihabdevteam-core-scope .pass-card-bg__symbol{background:var(--symbol-url) center /contain no-repeat;height:48px;-webkit-mask:var(--symbol-url) center /contain no-repeat;mask:var(--symbol-url) center /contain no-repeat;position:absolute;right:12px;top:12px;width:48px}.ihabdevteam-core-scope .pass-card-bg__circle{border-radius:50%;opacity:1;opacity:var(--pass-card-symbol-opacity,.75);position:absolute}.ihabdevteam-core-scope .pass-card-bg__circle--1{height:340px;right:-150px;top:-140px;width:340px}.ihabdevteam-core-scope .pass-card-bg__circle--2{bottom:-90px;height:220px;right:-50px;width:220px}.ihabdevteam-core-scope .pass-card-bg__circle--3{bottom:-70px;height:140px;left:-40px;width:140px}.ihabdevteam-core-scope .pass-card-bg--default{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg--default .pass-card-bg__circle--1{background:var(--color-main)}.ihabdevteam-core-scope .pass-card-bg--default .pass-card-bg__circle--2{background:var(--color-sub)}.ihabdevteam-core-scope .pass-card-bg--default .pass-card-bg__circle--3{background:var(--color-main-a20)}.ihabdevteam-core-scope .pass-card-bg--blue{background:var(--color-deepMain)}.ihabdevteam-core-scope .pass-card-bg--blue .pass-card-bg__circle--1{background:var(--color-white-a30)}.ihabdevteam-core-scope .pass-card-bg--blue .pass-card-bg__circle--2,.ihabdevteam-core-scope .pass-card-bg--blue .pass-card-bg__circle--3{background:var(--color-white-a10)}.ihabdevteam-core-scope .pass-card-bg--dark{background:var(--color-softBlack)}.ihabdevteam-core-scope .pass-card-bg--dark .pass-card-bg__circle--1{background:var(--color-main)}.ihabdevteam-core-scope .pass-card-bg--dark .pass-card-bg__circle--2{background:var(--color-sub)}.ihabdevteam-core-scope .pass-card-bg--dark .pass-card-bg__circle--3{background:var(--color-white-a10)}";ce($k);var Rk=".ihabdevteam-core-scope .pass-card-bg-two-circle{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg-two-circle__c1,.ihabdevteam-core-scope .pass-card-bg-two-circle__c3{border-radius:50%;opacity:.75;opacity:var(--pass-card-symbol-opacity,.75);position:absolute}.ihabdevteam-core-scope .pass-card-bg-two-circle__c1{background:var(--color-main);height:340px;right:-150px;top:-140px;width:340px}.ihabdevteam-core-scope .pass-card-bg-two-circle__c3{background:var(--color-sub);bottom:-90px;height:220px;right:-50px;width:220px}.ihabdevteam-core-scope .pass-card-bg-two-circle__symbol{background:var(--color-darkWhite)}";ce(Rk);var zg='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 xo={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},Gu=new WeakMap;function Pk(e){if(e)return Gu.get(e)}function Ha(e,t){e&&(e.style.setProperty(xo.text,t.text),e.style.setProperty(xo.sub,t.sub),t.copyrightColor&&e.style.setProperty(xo.copyright,t.copyrightColor),Gu.set(e,t))}function Va(e){e&&(e.style.removeProperty(xo.text),e.style.removeProperty(xo.sub),e.style.removeProperty(xo.copyright),Gu.delete(e))}const Uu={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function qu(e={}){const t=Tt(Uu,Ha,Va);return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[r.jsx("div",{className:"pass-card-bg-two-circle__c1"}),r.jsx("div",{className:"pass-card-bg-two-circle__c3"}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${zg}")`}})]})}const Ig="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 zk=".ihabdevteam-core-scope .pass-card-bg-sound-move{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg-sound-move__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";ce(zk);var xn='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 Ik={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},Ok=[{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 t=Tt(Ik,Ha,Va),a="var(--color-main)",o=270,n=170;return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[r.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:Ok.map(({scale:i,opacity:l},c)=>r.jsx("g",{transform:`translate(${o} ${n}) scale(${i}) translate(-50 -50)`,opacity:l,children:r.jsx("path",{d:Ig,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}var Fk=".ihabdevteam-core-scope .pass-card-bg-sound-move-v1{background:linear-gradient(135deg,var(--color-main),var(--color-sub))}.ihabdevteam-core-scope .pass-card-bg-sound-move-v1__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";ce(Fk);const Hk={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},Vk=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Wk(e={}){const t=Tt(Hk,Ha,Va),a="#ffffff",o=270,n=170;return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[r.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:Vk.map(({scale:i,opacity:l},c)=>r.jsx("g",{transform:`translate(${o} ${n}) scale(${i}) translate(-50 -50)`,opacity:l,children:r.jsx("path",{d:Ig,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${zg}")`}})]})}var Gk=".ihabdevteam-core-scope .pass-card-bg-talk{align-items:center;background:var(--color-pureWhite);display:flex;justify-content:center}.ihabdevteam-core-scope .pass-card-bg-talk__shape{height:76px;position:absolute;width:76px}.ihabdevteam-core-scope .pass-card-bg-talk__shape--left{background:var(--color-main);border-radius:42px 42px 42px 4px;transform:translateX(-18px)}.ihabdevteam-core-scope .pass-card-bg-talk__shape--right{background:var(--color-sub);border-radius:50%;opacity:.7;transform:translateX(18px)}";ce(Gk);const Uk={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function qk(e={}){const t=Tt(Uk,Ha,Va);return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[r.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),r.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}const Yk={Logo_speechear_kr:{"":Li,_white:Dk,_textWhite:Nk,_black:Tk},Logo_speechearManager_kr:{"":Fu,_white:jk,_textWhite:Lk,_black:Mk}};function Kk(e,t){if(e)return Yk[e]?.[t??""]??void 0}const Zk={speechear:Li,manager:Fu},Xk={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},Fg=10;function Jk(e){return e<=0?0:e>=86400?Math.floor(e/86400)*86400:e>=3600?Math.floor(e/3600)*3600:e>=60?Math.floor(e/60)*60:Math.floor(e)}function Hg(e,t){if(e<=0)return t("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return t("passCard.remainingDay",{n:a});const o=Math.floor(e/3600);if(o>0)return t("passCard.remainingHour",{n:o});const n=Math.floor(e/60);return n>0?t("passCard.remainingMinute",{n}):t("passCard.remainingSecond",{n:Math.floor(e)})}function Qk(e,t,a){if(e==="manager"){const o=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),n=a==="\uC624\uD508\uD2B9\uAC00"||a===xt.t("passCard.specialLabel");return o?r.jsx(qk,{}):n?r.jsx(Wk,{}):r.jsx(Og,{})}return r.jsx(qu,{})}function Yu({ariaLabel:e,product:t,showPrice:a=!1,plan:o,type:n,endDate:i,remainingSeconds:l,endInclusive:c=!1,state:u="active",bg:d,bgOnly:h=!1,textColor:p,subColor:m,copyrightColor:C,logoSrc:v,label:f,price:g,originalPrice:x,discountLabel:b,onUse:w,onRefund:_,onDelete:A}){const{t:y}=_e.useTranslation(),B=t?Wu(t):void 0,k=n??B?.type??"speechear",S=o??B?.plan??y("passCard.planSuffix","\uC774\uC6A9\uAD8C"),E=f??B?.label,D=g??(a?B?.price:void 0),I=x??(a?B?.originalPrice:void 0),j=b??B?.discountLabel,W=s.useMemo(()=>{if(D)return null;const K=t?.durationDays??Sk(t?.code);if(!K||K<=0)return l!=null?{percent:null,remainingLabel:Hg(l,y)}:null;const ie=K*86400;let ue;if(l!=null)ue=l;else if((u==="active"||u==="expired")&&i){const le=new Date(i).getTime();if(Number.isNaN(le))return null;const he=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(i)),ve=/^(\d{4})-(\d{2})-(\d{2})/.exec(Ca()),G=Math.round(he&&ve?(Date.UTC(+he[1],+he[2]-1,+he[3])-Date.UTC(+ve[1],+ve[2]-1,+ve[3]))/864e5:(le-Date.now())/864e5);ue=Math.max(0,c?G+1:G)*86400}else u==="expired"?ue=0:ue=ie;const je=Jk(ue),ye=Math.max(0,Math.min(100,Math.floor(Math.min(je,ie)/ie*100)));return u==="pending"&&ye>=100?null:{percent:ye,remainingLabel:u==="expired"?y("passCard.expired","\uB9CC\uB8CC\uB428"):Hg(ue,y)}},[D,u,i,l,c,t?.durationDays,t?.code,y]),L=s.useRef(null),[M,z]=s.useState({}),[q,Y]=s.useState(null),P=!!(w||_||A),V=s.useRef(!1),$=s.useRef(void 0),[U,T]=s.useState(v);s.useLayoutEffect(()=>{T(v)},[v]),s.useLayoutEffect(()=>{const K=L.current;K&&(p!==void 0&&K.style.setProperty("--pass-card-text",p),m!==void 0&&K.style.setProperty("--pass-card-sub",m),C!==void 0&&K.style.setProperty("--pass-card-copyright",C))},[p,m,C]),s.useLayoutEffect(()=>{const K=L.current;if(!K)return;const ie=Pk(K);if(!v){const ue=Xk[k],je=u==="expired"?"_black":ie?.logoColor??"",ye=Kk(ue,je);T(ye)}},[d,v,k,u]);const F=K=>{const ie=L.current;if(!ie)return null;const{left:ue,top:je,width:ye,height:le}=ie.getBoundingClientRect(),he=(K.clientX-ue)/ye-.5;return{rotateX:-((K.clientY-je)/le-.5)*Fg,rotateY:he*Fg}},N=(K,ie)=>{const ue=ie*-.7,je=K*.7+10,ye=20+(Math.abs(K)+Math.abs(ie))*.4;return`${ue}px ${je}px ${ye}px rgba(0, 0, 0, 0.18)`},O=s.useCallback(K=>{if(fr())return;V.current=!0,clearTimeout($.current),$.current=setTimeout(()=>{V.current=!1},200);const ie=F(K);ie&&z({transform:`perspective(800px) rotateX(${ie.rotateX}deg) rotateY(${ie.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:N(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)"})},[]),H=s.useCallback(K=>{if(fr())return;const ie=F(K);if(!ie)return;const ue=V.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";z({transform:`perspective(800px) rotateX(${ie.rotateX}deg) rotateY(${ie.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:N(ie.rotateX,ie.rotateY),transition:ue})},[]),Z=s.useCallback(()=>{clearTimeout($.current),V.current=!1,z({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)"})},[]),te=s.useCallback(()=>Y(null),[]),se=s.useMemo(()=>{const K=y("passCard.planSuffix","\uC774\uC6A9\uAD8C"),ie=S.replace("\uC774\uC6A9\uAD8C","").replace(K==="\uC774\uC6A9\uAD8C"?"":K,"").trim(),ue=ie.match(/^(.*?)(일|년)$/);return ue?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"h0 pass-card__plan-number",children:ue[1]}),r.jsx("span",{className:"h5b pass-card__plan-unit",children:ue[2]==="\uB144"?y("passCard.unitYear","\uB144"):y("passCard.unitDay","\uC77C")})]}):r.jsx("span",{className:"h0",children:ie})},[S,y]),be=s.useMemo(()=>{const K=hr(D);if(!K)return null;const ie=K.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!ie)return r.jsx("span",{className:"h1",children:K});const[,ue,je,ye]=ie;return r.jsxs(r.Fragment,{children:[ue&&r.jsx("span",{className:"h5 pass-card__price-symbol",children:ue}),r.jsx("span",{className:"h1 pass-card__price-amount",children:je}),ye.trim()&&r.jsx("span",{className:"h5 pass-card__price-symbol",children:ye.trim()})]})},[D]),X=s.useCallback(()=>{P&&Y(K=>{if(K)return null;const ie=L.current?.getBoundingClientRect();if(!ie)return null;const ue=50;return{left:ie.left,right:ie.right,width:ie.width,height:ie.height,x:ie.x,y:ie.y+ue,top:ie.top+ue,bottom:ie.bottom+ue}})},[P]),re=s.useCallback(K=>{P&&(K.key==="Enter"||K.key===" ")&&(K.preventDefault(),X())},[P,X]),Ae=[{items:[...w?[{label:y("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{w(),Y(null)},closeOnSelect:!0}]:[],..._?[{label:y("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{_(),Y(null)},closeOnSelect:!0}]:[],...A?[{label:y("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{A(),Y(null)},closeOnSelect:!0}]:[]]}];return r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"pass-card-frame",children:r.jsxs("div",{ref:L,className:`pass-card pass-card--${u}${P?" pass-card--clickable":""}`,style:M,onMouseEnter:O,onMouseMove:H,onMouseLeave:Z,onPointerUp:K=>{K.pointerType==="touch"&&Z()},onPointerCancel:K=>{K.pointerType==="touch"&&Z()},onClick:X,onKeyDown:P?re:void 0,role:P?"button":void 0,tabIndex:P?0:void 0,"aria-label":e,"aria-haspopup":P?"menu":void 0,"aria-expanded":P?!!q:void 0,children:[d??Qk(k,S,E),!h&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"pass-card__top",children:r.jsxs("div",{className:"pass-card__top-left",children:[r.jsx("img",{src:U??Zk[k],className:"pass-card__logo",alt:k==="manager"?y("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):y("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),r.jsxs("div",{className:"pass-card__plan",children:[r.jsx("div",{children:se}),r.jsx("span",{className:"h5b pass-card__plan-suffix",children:E?y("passCard.labeledPlan",{label:E}):y("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),D?r.jsxs("div",{className:"pass-card__price-area",children:[j&&r.jsx("span",{className:"pass-card__discount body-3",children:j}),r.jsxs("div",{className:"pass-card__price",children:[I&&r.jsx("span",{className:"pass-card__price-original body-3",children:hr(I)}),be]})]}):W?r.jsxs("div",{className:"pass-card__usage",children:[r.jsx("span",{className:"h5b pass-card__usage-remaining",children:W.remainingLabel}),W.percent!=null&&r.jsxs("span",{className:"pass-card__usage-percent",children:[r.jsx("span",{className:"h1 pass-card__usage-value",children:W.percent}),r.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):r.jsx("div",{className:"pass-card__copyright caption-2","aria-hidden":"true",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),q&&r.jsx(xa,{anchorRect:q,onClose:te,ariaLabel:y("tooltip.menu","\uBA54\uB274"),children:r.jsx(xr,{columns:Ae,onClose:te,size:"small"})})]})}var e6=".ihabdevteam-core-scope .pass-card-bg-sound-line{background:linear-gradient(60deg,var(--color-pureWhite) 0,color-mix(in srgb,var(--color-sub) 15%,var(--color-pureWhite)) 100%)}.ihabdevteam-core-scope .pass-card-bg-sound-line__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";ce(e6);const t6={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function a6(e={}){const t=`passcard-sound-line-grad-${s.useId()}`,a=Tt(t6,Ha,Va);return r.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[r.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:[r.jsx("defs",{children:r.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[r.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),r.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),r.jsx("g",{transform:"translate(25, 45)",children:r.jsx("path",{d:"M -30 150 C 40 80, 100 220, 160 150 S 280 80, 340 150 S 460 220, 510 150",fill:"none",stroke:`url(#${t})`,strokeWidth:"50",strokeLinecap:"round"})})]}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}var o6=".ihabdevteam-core-scope .pass-card-bg-talk-v1{align-items:center;background:var(--color-pureWhite);display:flex;justify-content:center}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape{height:76px;position:absolute;width:76px}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape--left{background:linear-gradient(70deg,var(--color-main),var(--color-sub));border-radius:999px;height:92px;transform:translateX(0) rotate(120deg);width:180px}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape--right{background:var(--color-sub);border-radius:50%;height:60px;opacity:1;transform:translate(38px,12px);width:60px}";ce(o6);const r6={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function n6(e={}){const t=Tt(r6,Ha,Va);return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[r.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),r.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}function i6(e,t){if(e){if(t==="manager_pro")return r.jsx(n6,{});if(t==="manager_standard")return r.jsx(a6,{});if(t==="manager_lite")return r.jsx(Og,{})}}function s6(e){const t=hr(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,o,n,i]=a;return r.jsxs(r.Fragment,{children:[o&&r.jsx("span",{className:"payment-plan__pricing-symbol h4",children:o}),n,i.trim()&&r.jsx("span",{className:"payment-plan__pricing-symbol h4",children:i.trim()})]})}function Vg(e){const{t}=_e.useTranslation(),a=t("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),o=t("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:n,onSelect:i,period:l="monthly",ownedCodes:c}=e||{},u=_=>!!_&&!!c?.includes(_),d=_=>_.onceOnly??/오픈\s*특가/.test(_.label??""),h=(n.tiers||[]).some(_=>d(_)&&u(_.code)),p=_=>{const A=_.prices?_.prices[l]:_.price;return A?(n.tiers||[]).some(y=>!!y.badge&&y.originals?.[l]===A):!1},m=n.colorToken?`var(--color-${n.colorToken})`:"var(--color-gray)",C=t("payment.plan.freePrice","\uBB34\uB8CC"),v=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),f=_=>_.prices?_.prices[l]:_.price,g=(n.tiers||[]).length>0&&(n.tiers||[]).every(_=>{const A=f(_);return A==="\uBB34\uB8CC"||A===C||A==="0\uC6D0"||typeof A=="string"&&/\d/.test(A)&&!/[1-9]/.test(A)}),x=(n.tiers||[]).length>0&&(n.tiers||[]).every(_=>{const A=f(_);return A==="\uBB38\uC758"||A===v}),b=n.group==="org",w=b?"manager":"speechear";return r.jsxs("div",{className:"payment-plan__card",style:{borderColor:m,"--plan-color":m},children:[n.cardBadge&&r.jsx("div",{className:"payment-plan__card-badge",children:r.jsx(St,{label:n.cardBadge,variant:"main",size:"medium",fill:"soft"})}),r.jsxs("div",{className:"payment-plan__title",children:[r.jsx("p",{className:"payment-plan__quote body-3b",style:{color:m},children:n.quote||"\xA0"}),r.jsx("h3",{className:"payment-plan__title-heading h1",children:n.tier??n.title}),r.jsx("p",{className:"payment-plan__subtitle body-3",children:n.subtitle})]}),r.jsxs("div",{className:"payment-plan__box",children:[r.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),r.jsx("ul",{className:"payment-plan__feature-list",children:(n.recommendedFor||[]).map((_,A)=>r.jsxs("li",{className:"payment-plan__feature-item body-3",children:[r.jsx(ot,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:m}}),_]},A))})]}),r.jsxs("div",{className:"payment-plan__box",children:[r.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),r.jsx("ul",{className:"payment-plan__feature-list",children:(n.features||[]).map((_,A)=>r.jsxs("li",{className:"payment-plan__feature-item body-3",children:[r.jsx(ot,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:m}}),_]},A))})]}),r.jsx("div",{className:"payment-plan__card-pricing",children:g?null:x?r.jsx(Ce,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>n.tiers?.[0]&&i?.({...n.tiers[0],productId:n.id,productTitle:n.title})}):r.jsx(r.Fragment,{children:r.jsx("div",{className:"payment-plan__pricing-list",children:(n.tiers||[]).map(_=>{const A=_.label||a,y=d(_),B=y||_.openPromo===!0,k=A.replace(/^오픈\s*특가\s*/,"")||a,S=_.prices?_.prices[l]:_.price,E=_.badge?B?`${o}
|
|
852
852
|
${_.badge}`:_.badge:void 0;if(y&&u(_.code))return null;if(!_.badge&&!h)return p(_)?null:r.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${_.highlight?" payment-plan__pricing-row--highlight":""}`,children:[r.jsx("div",{className:"payment-plan__pricing-row-title",children:r.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:_.label})}),r.jsx("div",{className:"payment-plan__pricing-row-price",children:r.jsx("span",{className:"payment-plan__pricing-current h1",children:s6(S)})})]},_.id);const D=n.tier??(b?n.title:void 0),I=r.jsx(Yu,{showPrice:!0,product:{type:w,code:_.code,name:k,label:D,price:S,originalPrice:_.originals?.[l]??void 0,discountLabel:E},bg:i6(b,n.id)}),j=()=>i?.({..._,productId:n.id,productTitle:n.title,preview:I});return r.jsx("div",{className:"payment-plan__pricing-card",onClick:j,onKeyDown:i?W=>{W.target===W.currentTarget&&(W.key==="Enter"||W.key===" ")&&(W.preventDefault(),j())}:void 0,role:i?"button":void 0,tabIndex:i?0:void 0,children:I},_.id)})})})})]})}function Wg({variant:e="default"}){return r.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[r.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),r.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),r.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var l6=".ihabdevteam-core-scope .pass-card-bg-ihab{background:var(--color-white)}.ihabdevteam-core-scope .pass-card-bg-ihab__symbol{bottom:-24px;height:140px;-o-object-fit:contain;object-fit:contain;opacity:.06;position:absolute;right:-24px;width:140px}.ihabdevteam-core-scope .pass-card-bg-ihab__symbol-top{transform:translate(-48px) rotate(-90deg);transform-origin:top right;width:126.72px}";ce(l6);var Ku='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 Zu={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function Gg(){const e=Tt(Zu,Ha,Va);return r.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${Ku}")`}})})}var c6=".ihabdevteam-core-scope .pass-card-bg-left-color-grid{background:var(--color-white)}.ihabdevteam-core-scope .pass-card-bg-left-color-grid__bar{background:linear-gradient(120deg,var(--color-main),var(--color-sub));border-radius:16px 0 0 16px;height:100%;left:0;position:absolute;top:0;width:76%}.ihabdevteam-core-scope .pass-card-bg-left-color-grid__grid{--grid-line:rgba(73,156,223,.06);background-image:linear-gradient(rgba(73,156,223,.06) 1px,transparent 0),linear-gradient(90deg,rgba(73,156,223,.06) 1px,transparent 0);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:24px 24px;inset:0;position:absolute}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg-left-color-grid__grid{--grid-line:transparent}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg-left-color-grid__bar{background:var(--pass-card-expired-shape)}";ce(c6);const Xu={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function Ug(e={}){const t=Tt(Xu,Ha,Va);return r.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[r.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),r.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),r.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${xn}")`}})]})}var u6=".ihabdevteam-core-scope .shortcut-badge{align-items:center;display:inline-flex;gap:4px;pointer-events:none;z-index:10}.ihabdevteam-core-scope .shortcut-badge--top-left{left:0;position:absolute;top:0;transform:translate(-25%,-25%) scale(1);transform:translate(-25%,-25%) scale(var(--shortcut-badge-scale,1))}.ihabdevteam-core-scope .shortcut-badge--top-right{position:absolute;right:0;top:0;transform:translate(25%,-25%) scale(1);transform:translate(25%,-25%) scale(var(--shortcut-badge-scale,1))}.ihabdevteam-core-scope .shortcut-badge--bottom-left{bottom:0;left:0;position:absolute;transform:translate(-25%,25%) scale(1);transform:translate(-25%,25%) scale(var(--shortcut-badge-scale,1))}.ihabdevteam-core-scope .shortcut-badge--bottom-right{bottom:0;position:absolute;right:0;transform:translate(25%,25%) scale(1);transform:translate(25%,25%) scale(var(--shortcut-badge-scale,1))}.ihabdevteam-core-scope .shortcut-badge--static,.ihabdevteam-core-scope .shortcut-badge--static .shortcut-badge__group{gap:4px;gap:calc(4px*var(--shortcut-badge-scale, 1))}.ihabdevteam-core-scope .shortcut-badge--static .shortcut-badge__key{border-width:2px;border-width:calc(2px*var(--shortcut-badge-scale, 1));font-size:11px;font-size:calc(11px*var(--shortcut-badge-scale, 1));min-height:24px;min-height:calc(24px*var(--shortcut-badge-scale, 1));min-width:24px;min-width:calc(24px*var(--shortcut-badge-scale, 1));padding:0 5px;padding:0 calc(5px*var(--shortcut-badge-scale, 1))}.ihabdevteam-core-scope .shortcut-badge--static .shortcut-badge__plus{font-size:11px;font-size:calc(11px*var(--shortcut-badge-scale, 1))}.ihabdevteam-core-scope .shortcut-badge__group{align-items:center;display:inline-flex;gap:4px}.ihabdevteam-core-scope .shortcut-badge__plus{color:var(--color-lightGray);font-size:11px;line-height:1}.ihabdevteam-core-scope .shortcut-badge__key{align-items:center;background:var(--color-lightBlack);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-white);display:inline-flex;font-family:inherit;font-size:11px;font-weight:400;justify-content:center;line-height:1;min-height:24px;min-width:24px;padding:0 5px;white-space:nowrap}";ce(u6);function Ju({keys:e,anchor:t="top-right",scale:a,className:o=""}){const n=Array.isArray(e)?e:[e];return r.jsx("span",{className:Ne("shortcut-badge",`shortcut-badge--${t}`,o),style:a===void 0?void 0:{"--shortcut-badge-scale":String(a)},children:n.map((i,l)=>r.jsxs("span",{className:"shortcut-badge__group",children:[l>0&&r.jsx("span",{className:"shortcut-badge__plus",children:"+"}),r.jsx("kbd",{className:"shortcut-badge__key",children:i})]},`${i}-${l}`))})}var d6=".ihabdevteam-core-scope .sound-compass{--scb-idle-bg:var(--color-deepWhite);--scb-idle-border:var(--color-whiteLine);--scb-idle-fg:var(--color-lightGray);--scb-active-bg:var(--color-main);--scb-active-border:var(--color-main);--scb-active-fg:#fff;--scb-played-bg:var(--color-sub);--scb-played-border:var(--color-sub);--scb-played-fg:#fff;--scb-wrong-bg:#ef4444;--scb-wrong-border:#ef4444;--scb-wrong-fg:#fff;--scb-idle-hover-bg:var(--color-whiteLine);--scb-idle-hover-border:var(--color-lightGray);--scb-idle-hover-fg:var(--scb-idle-fg);--scb-focus-ring:var(--color-main);--scc-bg:var(--color-white);--scc-border:var(--color-whiteLine);--scc-fg:var(--color-lightGray);--scc-hover-bg:var(--color-deepWhite);--scc-hover-border:var(--color-lightGray);--scc-hover-fg:var(--color-darkGray);--scc-disabled-bg:var(--color-deepWhite);--scc-disabled-border:var(--color-whiteLine);--scc-disabled-fg:var(--color-whiteLine);align-items:center;display:flex;flex-direction:column;width:100%}.ihabdevteam-core-scope .sound-compass__svg{left:0;overflow:visible;position:absolute;top:0}.ihabdevteam-core-scope .sound-compass__speaker-btn{all:unset;align-items:center;border-radius:50%;border-style:solid;border-width:1px;box-sizing:border-box;display:flex;flex-direction:column;gap:1px;justify-content:center;position:relative;transition:background-color .15s,border-color .15s,color .15s;z-index:1}.ihabdevteam-core-scope .sound-compass__speaker-btn--idle{background:var(--scb-idle-bg);border-color:var(--scb-idle-border);color:var(--scb-idle-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--active{background:var(--scb-active-bg);border-color:var(--scb-active-border);color:var(--scb-active-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--correct,.ihabdevteam-core-scope .sound-compass__speaker-btn--played{background:var(--scb-played-bg);border-color:var(--scb-played-border);color:var(--scb-played-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--wrong{background:var(--scb-wrong-bg);border-color:var(--scb-wrong-border);color:var(--scb-wrong-fg)}.ihabdevteam-core-scope .sound-compass__speaker-number{color:inherit;font-weight:700;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .sound-compass__compass-wrap{flex-shrink:0;margin-bottom:24px;overflow:visible;position:relative}.ihabdevteam-core-scope .sound-compass__center{align-items:center;background:var(--scc-bg);border:1px solid var(--scc-border);border-radius:50%;color:var(--scc-fg);display:flex;justify-content:center;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}@keyframes sound-compass-pulse{0%{opacity:0;transform:scale(.95)}8%{opacity:.45;transform:scale(1.05)}to{opacity:0;transform:scale(2.8);transform:scale(var(--sc-pulse-scale,2.8))}}.ihabdevteam-core-scope .sound-compass__center--button{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font:inherit;padding:0;pointer-events:auto;transition:background-color .15s,border-color .15s,color .15s}.ihabdevteam-core-scope .sound-compass__center--button:hover{background:var(--scc-hover-bg);border-color:var(--scc-hover-border);color:var(--scc-hover-fg)}.ihabdevteam-core-scope .sound-compass__center--button:focus-visible{outline:2px solid var(--scb-focus-ring);outline-offset:2px}.ihabdevteam-core-scope .sound-compass__center--disabled{background:var(--scc-disabled-bg);border-color:var(--scc-disabled-border);color:var(--scc-disabled-fg);cursor:default;pointer-events:none}.ihabdevteam-core-scope .sound-compass__pulse--center{z-index:0}.ihabdevteam-core-scope .sound-compass__pulse{animation:sound-compass-pulse 1s cubic-bezier(.33,1,.68,1) infinite;background:var(--sc-pulse-color,var(--scb-active-bg));border-radius:50%;height:40px;left:0;pointer-events:none;position:absolute;top:0;width:40px}.ihabdevteam-core-scope .sound-compass__pulse--idle{background:var(--sc-pulse-color,var(--scb-idle-bg))}.ihabdevteam-core-scope .sound-compass__pulse--active{background:var(--sc-pulse-color,var(--scb-active-bg))}.ihabdevteam-core-scope .sound-compass__pulse--correct,.ihabdevteam-core-scope .sound-compass__pulse--played{background:var(--sc-pulse-color,var(--scb-played-bg))}.ihabdevteam-core-scope .sound-compass__pulse--wrong{background:var(--sc-pulse-color,var(--scb-wrong-bg))}.ihabdevteam-core-scope .sound-compass__pulse--once{animation-duration:1s;animation-duration:var(--sc-pulse-duration-once,1s);animation-iteration-count:1}.ihabdevteam-core-scope .sound-compass__speaker-btn:hover{box-shadow:0 0 0 4px color-mix(in srgb,var(--scb-focus-ring) 14%,transparent)}.ihabdevteam-core-scope .sound-compass__speaker-btn--idle:hover{background:var(--scb-idle-hover-bg);border-color:var(--scb-idle-hover-border);color:var(--scb-idle-hover-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn:focus-visible{outline:2px solid var(--scb-focus-ring);outline-offset:2px}.ihabdevteam-core-scope .sound-compass__speaker-shortcut{pointer-events:none;z-index:2}.ihabdevteam-core-scope .sound-compass__speaker-pos{position:absolute}";ce(d6);const _n=(e,t,a)=>e+(t-e)*a;function qg({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:o=null,playedIds:n,selectedId:i=null,answerId:l=null,showFeedback:c=!1,pulseSelected:u=!1,pulseSelectedDuration:d,pulseScale:h,clickable:p=!1,onSelectSpeaker:m,buttonSize:C=40,showIcon:v=!0,onCenterClick:f,centerLabel:g,centerDisabled:x=!1,centerAttention:b=!1,shortcutAnchor:w="top-right",shortcutScale:_,scaleShortcut:A=!1}){const{t:y}=_e.useTranslation(),B=Math.max(0,Math.min(1,a)),k=t/2,S=110/300,E=.18,D=K=>t*(S+(K-1)*E),I=K=>{const ie=D(K.row??1),ue=K.angleDeg*Math.PI/180;return{x:k+ie*Math.cos(ue),y:k+ie*Math.sin(ue)}},j=Math.max(...e.map(K=>K.row??1),1),W=t*.08,L=t*.1,M=t*.24,z=t-2*W,q=t-L-M,Y=t-M/2,P=s.useMemo(()=>[...new Set(e.map(K=>K.deg))].sort((K,ie)=>K-ie),[e]),V=P.length,$=Math.max(68,V>1?z/(V-1):0),U=s.useMemo(()=>new Map(P.map((K,ie)=>[K,ie])),[P]),T=K=>{const ie=U.get(K.deg)??0,ue=k+(ie-(V-1)/2)*$,je=j>1?Math.min(68,q/(j-1)):0,ye=je*(j-1),le=L+(q-ye)/2,he=j===1?L+q*.4:le+(j-(K.row??1))*je;return{x:ue,y:he}},F=K=>{const ie=I(K),ue=T(K);return{x:_n(ie.x,ue.x,B),y:_n(ie.y,ue.y,B)}},N={x:k,y:_n(k,Y,B)},O=Math.round(C*1.2),H=Math.round(Math.max(16,Math.min(80,C*.7))),Z=[],te=new Map;for(const K of e){const ie=K.row??1;te.has(ie)||te.set(ie,[]),te.get(ie).push(K)}for(const[K,ie]of te.entries()){if(ie.length<2)continue;const ue=[...ie].sort((He,lt)=>He.deg-lt.deg),je=ue.map(He=>F(He)),ye=ue.map(He=>He.deg),le=ye[ye.length-1]-ye[0],he=le/(ye.length-1),ve=360-le,G=ue.length>=3&&he>0&&ve<=he*1.5,oe=Math.round(D(K)*1e3)/1e3,me=(He,lt,rt,at)=>{const ht=(lt.angleDeg-He.angleDeg+540)%360-180;if(ht===0)return`L ${at.x} ${at.y}`;if(B===0)return`A ${oe} ${oe} 0 0 ${ht>0?1:0} ${at.x} ${at.y}`;const De=(He.angleDeg+ht/2)*Math.PI/180,Ue={x:k+oe*Math.cos(De),y:k+oe*Math.sin(De)},Se={x:(rt.x+at.x)/2,y:(rt.y+at.y)/2},Ye={x:_n(Ue.x,Se.x,B),y:_n(Ue.y,Se.y,B)},ee={x:2*Ye.x-Se.x,y:2*Ye.y-Se.y};return`Q ${ee.x} ${ee.y} ${at.x} ${at.y}`},Te=G?[...ue,ue[0]]:ue,ke=G?[...je,je[0]]:je;let Pe=`M ${ke[0].x} ${ke[0].y}`;for(let He=1;He<ke.length;He++)Pe+=" "+me(Te[He-1],Te[He],ke[He-1],ke[He]);Z.push({key:`arc-${K}`,d:Pe})}const se=s.useMemo(()=>new Set(n??[]),[n]),be=K=>({idle:"",active:y("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:y("soundCompass.state.played","\uB4E4\uC74C"),correct:y("soundCompass.state.correct","\uC815\uB2F5"),wrong:y("soundCompass.state.wrong","\uC624\uB2F5")})[K],X=K=>{if(o===K.id)return"active";if(c){if(K.id===l)return"correct";if(K.id===i&&i!==l)return"wrong"}return se.has(K.id)?"played":"idle"},re=K=>o===K.id?"loop":c?K.id===l?"loop":null:u&&K.id===i?"once":null,Ae=(K,ie)=>{switch(K){case"played":case"correct":return r.jsx(Bp,{size:ie});case"wrong":return r.jsx($p,{size:ie});default:return r.jsx(Mp,{size:ie})}};return r.jsx("div",{className:"sound-compass",children:r.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[r.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[B===0&&e.map(K=>{const{x:ie,y:ue}=F(K);return r.jsx("line",{x1:N.x,y1:N.y,x2:ie,y2:ue,stroke:"#dde3ec",strokeWidth:"1"},K.id)}),Z.map(K=>r.jsx("path",{d:K.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},K.key))]}),b&&!x&&r.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:O,height:O,left:N.x-O/2,top:N.y-O/2}}),f?r.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${x?" sound-compass__center--disabled":""}`,style:{width:O,height:O,left:N.x,top:N.y},"aria-label":g,"aria-disabled":x||void 0,tabIndex:x?-1:0,onClick:x?void 0:f,children:r.jsx(Cs,{size:H,color:"currentColor",strokeWidth:1.5})}):r.jsx("div",{className:"sound-compass__center",style:{width:O,height:O,left:N.x,top:N.y},children:r.jsx(Cs,{size:H,color:"currentColor",strokeWidth:1.5})}),e.map((K,ie)=>{const{x:ue,y:je}=F(K),ye=X(K),le=re(K),he={..._!==void 0||A?{"--shortcut-badge-scale":String(_??Math.max(.75,Math.min(3,C/56)))}:null,pointerEvents:p?"auto":"none",cursor:p?"pointer":"default",zIndex:ye!=="idle"?10:1},ve=C,G=Math.round(Math.max(10,Math.min(56,ve*.38))),oe=Math.round(Math.max(7,Math.min(18,ve*.2))),me=Math.round(Math.max(10,Math.min(56,ve*.4))),Te=v==="answered"&&(ye==="played"||ye==="correct"||ye==="wrong"),ke=v===!0||Te,Pe=!Te;return r.jsxs("div",{className:"sound-compass__speaker-pos",style:{...he,left:ue-ve/2,top:je-ve/2},children:[le&&r.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${ye}`+(le==="once"?" sound-compass__pulse--once":""),style:{width:ve,height:ve,...le==="once"&&d!==void 0?{"--sc-pulse-duration-once":`${d}ms`}:null,...h!==void 0?{"--sc-pulse-scale":String(h)}:null}}),r.jsxs("button",{type:"button",tabIndex:p?0:-1,"aria-disabled":p?void 0:!0,onClick:p?()=>m?.(K.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${ye}`,style:{width:ve,height:ve},"aria-label":be(ye)?`${K.label}, ${be(ye)}`:K.label,"aria-pressed":i!=null?K.id===i:void 0,children:[ke&&Ae(ye,G),Pe&&r.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:v===!0?oe:me},children:ie+1})]}),K.shortcut&&r.jsx(Ju,{keys:K.shortcut,anchor:w,className:"sound-compass__speaker-shortcut"})]},K.id)})]})})}function Yg({children:e,position:t="top-left",size:a=24,className:o=""}){return r.jsx("span",{className:Ne("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${t}`,o),children:e})}var p6=".ihabdevteam-core-scope .divider--horizontal{align-items:center;border:none;border-top:1px solid var(--color-whiteLine);display:flex;width:100%}.ihabdevteam-core-scope .divider--vertical{border:none;border-left:1px solid var(--color-whiteLine);display:inline-block;height:1em;vertical-align:middle;width:1px}.ihabdevteam-core-scope .divider--labeled{border-top:none;gap:var(--spacing-s)}.ihabdevteam-core-scope .divider__line{background:var(--color-whiteLine);flex:1 1 auto;height:1px}.ihabdevteam-core-scope .divider__label{color:var(--color-gray);flex:0 0 auto;white-space:nowrap}";ce(p6);function Kg({orientation:e="horizontal",label:t,className:a=""}){const o=Ne("divider",`divider--${e}`,t&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?r.jsx("div",{className:o,role:"separator","aria-orientation":"vertical"}):t?r.jsxs("div",{className:o,role:"separator","aria-orientation":"horizontal",children:[r.jsx("span",{className:"divider__line"}),r.jsx("span",{className:"divider__label caption-1",children:t}),r.jsx("span",{className:"divider__line"})]}):r.jsx("div",{className:o,role:"separator","aria-orientation":"horizontal"})}var h6='.ihabdevteam-core-scope .radio{align-items:center;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .radio input{height:0;opacity:0;position:absolute;width:0}.ihabdevteam-core-scope .radio__dot{background:var(--color-pureWhite);border:1.5px solid var(--color-whiteLine);border-radius:50%;display:inline-block;flex-shrink:0;height:20px;position:relative;transition:border-color .15s,background .15s;width:20px}.ihabdevteam-core-scope .radio__dot:before{background:var(--color-pureWhite);border-radius:50%;content:"";inset:4px;position:absolute;transform:scale(0);transition:transform .15s}.ihabdevteam-core-scope .radio input:checked+.radio__dot{background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .radio input:checked+.radio__dot:before{transform:scale(1)}.ihabdevteam-core-scope .radio:not(.radio--disabled):hover .radio__dot{border-color:var(--color-main)}.ihabdevteam-core-scope .radio input:focus-visible+.radio__dot{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .radio__label{color:var(--color-black)}.ihabdevteam-core-scope .radio--disabled{cursor:not-allowed;opacity:.45}';ce(h6);function Qu({checked:e,onChange:t,name:a,value:o,disabled:n=!1,label:i,className:l=""}){const c=s.useId();return r.jsxs("label",{className:`radio${n?" radio--disabled":""} ${l}`.trim(),htmlFor:c,children:[r.jsx("input",{id:c,type:"radio",name:a,value:o,checked:e,disabled:n,onChange:u=>t?.(u.target.checked)}),r.jsx("span",{className:"radio__dot"}),i&&r.jsx("span",{className:"radio__label body-2",children:i})]})}var m6=".ihabdevteam-core-scope .radio-group{display:flex}.ihabdevteam-core-scope .radio-group--vertical{flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .radio-group--horizontal{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-l)}";ce(m6);function Zg({options:e,value:t,onChange:a,name:o,disabled:n=!1,direction:i="vertical",className:l="",ariaLabel:c}){const u=s.useId(),d=o??`radio-group-${u}`;return r.jsx("div",{className:`radio-group radio-group--${i} ${l}`.trim(),role:"radiogroup","aria-label":c,children:e.map(h=>r.jsx(Qu,{name:d,value:h.value,checked:t===h.value,disabled:n||h.disabled,label:h.label,onChange:p=>{p&&a?.(h.value)}},h.value))})}var b6=".ihabdevteam-core-scope .alert{align-items:flex-start;background:color-mix(in srgb,var(--alert-color) 10%,transparent);border:1px solid color-mix(in srgb,var(--alert-color) 25%,transparent);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-s);padding:var(--spacing-m)}.ihabdevteam-core-scope .alert__icon{align-items:center;color:var(--alert-color);display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .alert__body{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.ihabdevteam-core-scope .alert__header{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .alert__message--indented{margin-left:calc(20px + var(--spacing-xs))}.ihabdevteam-core-scope .alert__title{color:var(--color-black)}.ihabdevteam-core-scope .alert__message{color:var(--color-darkGray)}.ihabdevteam-core-scope .alert__dismiss{align-items:center;background:transparent;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:18px;height:24px;justify-content:center;line-height:1;padding:0;width:24px}.ihabdevteam-core-scope .alert__dismiss:hover{color:var(--color-darkGray)}.ihabdevteam-core-scope .alert--info{--alert-color:var(--color-main)}.ihabdevteam-core-scope .alert--success{--alert-color:var(--color-success)}.ihabdevteam-core-scope .alert--warning{--alert-color:var(--color-warn)}.ihabdevteam-core-scope .alert--danger{--alert-color:var(--color-error)}";ce(b6);const g6={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function Xg({tone:e="info",title:t,message:a,children:o,dismissible:n=!1,onDismiss:i,live:l,className:c=""}){const{t:u}=_e.useTranslation(),[d,h]=s.useState(!1),p=s.useRef(null),m=s.useCallback(()=>{const b=p.current;b&&b.contains(document.activeElement)&&vi(b),h(!0),i?.()},[i]);if(d)return null;const C=Ne("alert",`alert--${e}`,c),v=l??(e==="danger"||e==="warning"?"assertive":"polite"),f=v==="assertive"?"alert":v==="polite"?"status":void 0,g=!!t,x=!!(a||o);return r.jsxs("div",{ref:p,className:C,role:f,children:[r.jsxs("div",{className:"alert__body",children:[r.jsxs("div",{className:"alert__header",children:[r.jsx(ot,{icon:g6[e],size:20,className:"alert__icon"}),g&&r.jsx("span",{className:"alert__title body-2",children:t}),!g&&x&&r.jsx("div",{className:"alert__message body-3",children:a||o})]}),g&&x&&r.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||o})]}),n&&r.jsx("button",{type:"button",className:"alert__dismiss",onClick:m,"aria-label":u("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}var f6=".ihabdevteam-core-scope .search-summary{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);box-shadow:var(--shadow-card);box-sizing:border-box;color:var(--color-gray);display:inline-flex;gap:var(--spacing-xs);max-width:100%;padding:30px 20px;text-align:left}.ihabdevteam-core-scope .search-summary__icon{color:currentColor;display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .search-summary__text{min-width:0;overflow-wrap:anywhere;word-break:keep-all}.ihabdevteam-core-scope .search-summary__em{color:var(--color-main)}.ihabdevteam-core-scope .search-summary--ready{background:var(--color-white);color:var(--color-deepGray)}.ihabdevteam-core-scope .search-summary--ready .search-summary__em{color:var(--color-main)}.ihabdevteam-core-scope .search-summary--guide{background:var(--color-deepWhite);color:var(--color-gray)}.ihabdevteam-core-scope .search-summary--error{background:var(--color-white);color:var(--color-error)}.ihabdevteam-core-scope .search-summary--error .search-summary__em{color:var(--color-error)}";ce(f6);const v6={ready:"search",guide:"info",error:"circle-alert"};function C6(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const o=[];let n=0,i=0;for(const l of a){const c=e.indexOf(l,n);c<0||(c>n&&o.push(e.slice(n,c)),o.push(r.jsx("strong",{className:"search-summary__em body-2",children:l},i++)),n=c+l.length)}return n<e.length&&o.push(e.slice(n)),o}function Jg({status:e="guide",label:t,children:a,emphasis:o,icon:n,className:i=""}){const l=n===!1?null:n??v6[e],c=Ne("search-summary",`search-summary--${e}`,i),u=t??a,d=typeof u=="string"&&o&&o.length>0?C6(u,o):u;return r.jsxs("div",{className:c,role:"status","aria-live":"polite",children:[l!=null&&r.jsx(ot,{icon:l,size:18,className:"search-summary__icon"}),r.jsx("span",{className:"search-summary__text body-2",children:d})]})}function _r({title:e,items:t}){const{t:a}=_e.useTranslation(),{anchorRect:o,openAt:n,close:i}=Ho(),l=s.useRef(null),c=Nc(!!o,(u,d)=>{u&&d?n(l.current?.querySelector("button")??d):i()},l);return r.jsxs("span",{ref:l,style:{display:"contents"},children:[r.jsx(Ce,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!o,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:u=>{gr(u)||n(u.currentTarget)},onPointerLeave:u=>{gr(u)||i()},onClick:u=>{c.touchPress(u.currentTarget)},onFocus:u=>{fr()||n(u.currentTarget)},onBlur:i}),o&&r.jsx(Co,{title:e,items:t,showIndex:t.length>1,anchorRect:o,onClose:i})]})}var x6=".ihabdevteam-core-scope .tabs{display:flex;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .tabs__list{border-bottom:1px solid var(--color-whiteLine);display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .tabs__tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-gray);cursor:pointer;padding:0 var(--spacing-xs);transition:color .15s,border-color .15s;white-space:nowrap}.ihabdevteam-core-scope .tabs__list--32 .tabs__tab{height:32px}.ihabdevteam-core-scope .tabs__list--40 .tabs__tab{height:40px}.ihabdevteam-core-scope .tabs__list--48 .tabs__tab{height:48px}.ihabdevteam-core-scope .tabs__tab:hover:not(:disabled){color:var(--color-darkGray)}.ihabdevteam-core-scope .tabs__tab:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .tabs__tab--active{border-bottom-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .tabs__tab:disabled{color:var(--color-disabled);cursor:not-allowed}.ihabdevteam-core-scope .tabs__panel{outline:none}.ihabdevteam-core-scope .tabs__panel:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}";ce(x6);function Qg({items:e=[],value:t,onChange:a,className:o="",size:n=40}){const i=s.useId(),{t:l}=_e.useTranslation(),c=s.useRef(null),u=e.find(f=>!f.disabled)?.key,d=e.some(f=>f.key===t)?t:u??e[0]?.key,h=e.find(f=>f.key===d&&!f.disabled)?.key??u,p=()=>Array.from(c.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),m=(f,g=p())=>{if(g.length===0)return;const x=(f%g.length+g.length)%g.length;g[x]?.focus(),g[x]?.click()},C=f=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(f.key))return;f.preventDefault();const g=p(),x=g.indexOf(f.currentTarget);f.key==="ArrowRight"||f.key==="ArrowDown"?m(x+1,g):f.key==="ArrowLeft"||f.key==="ArrowUp"?m(x-1,g):f.key==="Home"?m(0,g):m(g.length-1,g)},v=e.find(f=>f.key===d);return r.jsxs("div",{className:`tabs ${o}`.trim(),children:[r.jsx("div",{ref:c,className:`tabs__list tabs__list--${n}`,role:"tablist","aria-label":l("tabs.ariaLabel","\uD0ED"),children:e.map(f=>r.jsx("button",{id:`tabs__tab-${i}-${f.key}`,type:"button",role:"tab","aria-selected":f.key===d,"aria-controls":`tabs__panel-${i}-${f.key}`,disabled:f.disabled,tabIndex:f.key===h?0:-1,className:`tabs__tab body-2${f.key===d?" tabs__tab--active":""}`,onClick:()=>{f.key!==t&&a?.(f.key)},onKeyDown:C,children:f.label},f.key))}),v&&r.jsx("div",{id:`tabs__panel-${i}-${v.key}`,role:"tabpanel","aria-labelledby":`tabs__tab-${i}-${v.key}`,tabIndex:0,className:"tabs__panel",children:v.panel},v.key)]})}var _6=".ihabdevteam-core-scope .avatar{align-items:center;background:var(--color-lightGray-a10);color:var(--color-gray);display:inline-flex;flex-shrink:0;height:var(--avatar-size);justify-content:center;overflow:hidden;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--avatar-size)}.ihabdevteam-core-scope .avatar--circle{border-radius:50%}.ihabdevteam-core-scope .avatar--rounded-square{border-radius:var(--radius-card)}.ihabdevteam-core-scope .avatar--xs{--avatar-size:24px}.ihabdevteam-core-scope .avatar--sm{--avatar-size:32px}.ihabdevteam-core-scope .avatar--md{--avatar-size:40px}.ihabdevteam-core-scope .avatar--lg{--avatar-size:56px}.ihabdevteam-core-scope .avatar--xl{--avatar-size:80px}.ihabdevteam-core-scope .avatar__image{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.ihabdevteam-core-scope .avatar__initials{font-size:calc(var(--avatar-size)*.4);font-weight:600;line-height:1}.ihabdevteam-core-scope .avatar__icon{align-items:center;display:inline-flex;justify-content:center}";ce(_6);const y6={xs:12,sm:16,md:20,lg:28,xl:36};function w6(e){const t=e.trim().split(/\s+/).filter(Boolean);return t.length===0?"":t.length===1?[...t[0]].slice(0,2).join("").toUpperCase():([...t[0]][0]+[...t[t.length-1]][0]).toUpperCase()}function e0({src:e,name:t,size:a="md",shape:o="circle",className:n=""}){const{t:i}=_e.useTranslation(),[l,c]=s.useState(null),u=!!e&&l===e,d=t?w6(t):"",h=!!e&&!u,p=!h&&!!d,m=t||i("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return r.jsxs("span",{className:`avatar avatar--${a} avatar--${o} ${n}`.trim(),role:"img","aria-label":m,children:[h&&r.jsx("img",{className:"avatar__image",src:e,alt:m,onError:()=>c(e??null)}),!h&&p&&r.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:d}),!h&&!p&&r.jsx(ot,{icon:"user-round",size:y6[a],className:"avatar__icon"})]})}var k6=".ihabdevteam-core-scope .file-upload{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .file-upload__dropzone{align-items:center;background:var(--color-deepWhite);border:1px dashed var(--color-whiteLine);border-radius:var(--radius-card);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-xs);justify-content:center;padding:var(--spacing-xl);position:relative;transition:border-color .15s,background .15s}.ihabdevteam-core-scope .file-upload__dropzone:hover:not(.file-upload__dropzone--disabled){border-color:var(--color-main)}.ihabdevteam-core-scope .file-upload__dropzone:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .file-upload__dropzone--dragging{background:var(--color-main-a10);border-color:var(--color-main)}.ihabdevteam-core-scope .file-upload__dropzone--disabled{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .file-upload__icon{color:var(--color-gray)}.ihabdevteam-core-scope .file-upload__prompt{color:var(--color-gray);text-align:center}.ihabdevteam-core-scope .file-upload__browse-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-pureWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);color:var(--color-main);cursor:pointer;min-height:24px;padding:var(--spacing-xs) var(--spacing-m)}.ihabdevteam-core-scope .file-upload__browse-button:disabled{color:var(--color-disabled);cursor:not-allowed}.ihabdevteam-core-scope .file-upload__input{height:1px;opacity:0;overflow:hidden;pointer-events:none;position:absolute;width:1px}.ihabdevteam-core-scope .file-upload__list{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .file-upload__list-item{align-items:center;background:var(--color-deepWhite);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-s);justify-content:space-between;padding:var(--spacing-xs) var(--spacing-s)}.ihabdevteam-core-scope .file-upload__file-name{color:var(--color-darkGray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .file-upload__remove-button{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center;min-height:24px;min-width:24px}.ihabdevteam-core-scope .file-upload__remove-button:hover{color:var(--color-error)}";ce(k6);function B6(e,t){if(!t)return!0;const a=t.split(",").map(i=>i.trim()).filter(Boolean);if(a.length===0)return!0;const o=e.name.toLowerCase(),n=e.type.toLowerCase();return a.some(i=>{const l=i.toLowerCase();return l.startsWith(".")?o.endsWith(l):l.endsWith("/*")?n.startsWith(l.slice(0,-1)):n===l})}function t0({onFilesSelected:e,accept:t,multiple:a=!1,disabled:o=!1,showFileList:n=!0,files:i,onRemove:l,className:c=""}){const{t:u}=_e.useTranslation(),d=s.useRef(null),[h,p]=s.useState(!1),[m,C]=s.useState([]),v=i??m,f=y=>{if(!y||y.length===0)return;const B=Array.from(y).filter(S=>B6(S,t));if(B.length===0)return;const k=a?B:B.slice(0,1);if(i===void 0){const S=a?[...v,...k]:k;C(S),e?.(S)}else e?.(k)},g=y=>{y.preventDefault(),!o&&p(!0)},x=y=>{y.preventDefault(),p(!1)},b=y=>{y.preventDefault(),p(!1),!o&&f(y.dataTransfer.files)},w=y=>{const B=y.target;try{f(B.files)}finally{B.value=""}},_=()=>{o||d.current?.click()},A=y=>{if(!o&&(l?.(y),i===void 0)){const B=v.filter((k,S)=>S!==y);C(B),l||e?.(B)}};return r.jsxs("div",{className:`file-upload ${c}`.trim(),children:[r.jsxs("div",{className:Ne("file-upload__dropzone",h&&"file-upload__dropzone--dragging",o&&"file-upload__dropzone--disabled"),role:"button",tabIndex:o?-1:0,"aria-disabled":o,onClick:_,onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),_())},onDragOver:g,onDragLeave:x,onDrop:b,children:[r.jsx(ot,{icon:"upload",size:24,className:"file-upload__icon"}),r.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")}),r.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:o,onClick:y=>{y.stopPropagation(),_()},children:u("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),r.jsx("input",{ref:d,type:"file",className:"file-upload__input",accept:t,multiple:a,disabled:o,onChange:w,tabIndex:-1})]}),n&&v.length>0&&r.jsx("ul",{className:"file-upload__list",children:v.map((y,B)=>r.jsxs("li",{className:"file-upload__list-item body-3",children:[r.jsx("span",{className:"file-upload__file-name body-3",children:y.name}),r.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":u("fileUpload.removeAriaLabel",{name:y.name}),disabled:o,onClick:()=>A(B),children:r.jsx(ot,{icon:"x",size:14})})]},`${y.name}-${B}`))})]})}var A6=".ihabdevteam-core-scope .breadcrumb{align-items:center;display:inline-flex}.ihabdevteam-core-scope .breadcrumb__list{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .breadcrumb__item{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .breadcrumb__link{align-items:center;background:none;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;justify-content:center;margin:0;min-height:24px;min-width:24px;padding:0}.ihabdevteam-core-scope .breadcrumb__link:hover{color:var(--color-main);text-decoration:underline}.ihabdevteam-core-scope .breadcrumb__link:focus-visible{border-radius:var(--radius-xs);outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .breadcrumb__current{color:var(--color-darkGray)}.ihabdevteam-core-scope .breadcrumb__text{color:var(--color-gray)}.ihabdevteam-core-scope a.breadcrumb__link{text-decoration:none}.ihabdevteam-core-scope .breadcrumb__separator{align-items:center;color:var(--color-disabled);display:inline-flex;flex-shrink:0}";ce(A6);function a0({items:e,className:t=""}){const{t:a}=_e.useTranslation();return r.jsx("nav",{className:`breadcrumb ${t}`.trim(),"aria-label":a("breadcrumb.ariaLabel","\uC774\uB3D9 \uACBD\uB85C"),children:r.jsx("ol",{className:"breadcrumb__list",children:e.map((o,n)=>{const i=n===e.length-1;return r.jsxs("li",{className:"breadcrumb__item",children:[i?r.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:o.label}):o.href?r.jsx("a",{className:"breadcrumb__link body-3",href:o.href,target:o.target,rel:o.rel??(o.target==="_blank"?"noopener noreferrer":void 0),onClick:o.onClick,children:o.label}):o.onClick?r.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:o.onClick,children:o.label}):r.jsx("span",{className:"breadcrumb__text body-3",children:o.label}),!i&&r.jsx(ot,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},n)})})})}var S6=".ihabdevteam-core-scope .rating{--rating-color:var(--color-warn);--rating-empty-color:var(--color-whiteLine);align-items:center;display:inline-flex;gap:2px}.ihabdevteam-core-scope .rating__item{align-items:center;background:none;border:none;display:inline-flex;justify-content:center;line-height:0;margin:0;padding:0}.ihabdevteam-core-scope .rating__item--interactive{cursor:pointer;min-height:24px;min-width:24px}.ihabdevteam-core-scope .rating__item--interactive:focus-visible{border-radius:var(--radius-xs);outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .rating--readOnly .rating__item{cursor:default}.ihabdevteam-core-scope .rating__star-wrap{display:inline-flex;line-height:0;position:relative}.ihabdevteam-core-scope .rating__star--empty{color:var(--rating-empty-color)}.ihabdevteam-core-scope .rating__star--empty svg{fill:var(--rating-empty-color)}.ihabdevteam-core-scope .rating__star-fill{display:inline-flex;height:100%;left:0;overflow:hidden;position:absolute;top:0;white-space:nowrap;width:100%}.ihabdevteam-core-scope .rating__star-fill--half{width:50%}.ihabdevteam-core-scope .rating__star--filled{color:var(--rating-color)}.ihabdevteam-core-scope .rating__star--filled svg{fill:var(--rating-color)}";ce(S6);const E6={small:14,medium:20,large:28};function o0({value:e,onChange:t,max:a=5,readOnly:o=!1,size:n="medium",ariaLabel:i,className:l=""}){const{t:c}=_e.useTranslation(),u=o||!t,[d,h]=s.useState(null),p=u?e:Number.isFinite(e)?Math.round(e):0,m=d??p,C=E6[n],v=y=>{y!==e&&t?.(y)},f=y=>{u||v(y)},g=y=>{u||fr()||h(y)},x=s.useRef(null),b=y=>{const B=Math.min(a,Math.max(1,y));v(B),Array.from(x.current?.querySelectorAll("[data-star]")??[]).find(k=>k.dataset.star===String(B))?.focus()},w=y=>{if(!u){switch(y.key){case"ArrowRight":case"ArrowUp":b((p||0)+1);break;case"ArrowLeft":case"ArrowDown":b((p||1)-1);break;case"Home":b(1);break;case"End":b(a);break;default:return}y.preventDefault()}},_=p>=1&&p<=a?Math.round(p):1,A=()=>{u||h(null)};return r.jsx("div",{className:`rating rating--${n}${u?" rating--readOnly":""} ${l}`.trim(),ref:x,onKeyDown:w,role:u?"img":"radiogroup","aria-label":u?c("rating.valueLabel",{value:e,max:a}):i??c("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:A,onPointerUp:y=>{y.pointerType==="touch"&&A()},onPointerCancel:y=>{y.pointerType==="touch"&&A()},children:Array.from({length:a},(y,B)=>{const k=B+1,S=Math.max(0,Math.min(1,m-B)),E=S>0&&S<1,D=r.jsxs("span",{className:"rating__star-wrap",children:[r.jsx(ot,{icon:"star",size:C,className:"rating__star rating__star--empty"}),S>0&&r.jsx("span",{className:`rating__star-fill${E?" rating__star-fill--half":""}`,style:E?{width:`${S*100}%`}:void 0,children:r.jsx(ot,{icon:"star",size:C,className:"rating__star rating__star--filled"})})]});return u?r.jsx("span",{className:"rating__item","aria-hidden":"true",children:D},k):r.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":p===k,"aria-label":c("rating.starLabel",{n:k}),"data-star":k,tabIndex:k===_?0:-1,onClick:()=>f(k),onMouseEnter:()=>g(k),children:D},k)})})}var D6=".ihabdevteam-core-scope .color-picker{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.ihabdevteam-core-scope .color-picker__swatch{align-items:center;border:none;cursor:pointer;display:inline-flex;justify-content:center;padding:0;position:relative;transition:transform .12s,box-shadow .12s}.ihabdevteam-core-scope .color-picker__swatch--32{border-radius:8px;height:32px;width:32px}.ihabdevteam-core-scope .color-picker__swatch--40{border-radius:10px;height:40px;width:40px}.ihabdevteam-core-scope .color-picker__swatch--48{border-radius:12px;height:48px;width:48px}.ihabdevteam-core-scope .color-picker__swatch:hover{transform:scale(1.08)}.ihabdevteam-core-scope .color-picker__swatch:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .color-picker__check{color:#fff}.ihabdevteam-core-scope .color-picker__check svg{display:block}";ce(D6);const N6=20,T6=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function r0({value:e,onChange:t,palette:a=T6,size:o=40,className:n="",ariaLabel:i}){const{t:l}=_e.useTranslation();return r.jsx("div",{className:`color-picker ${n}`.trim(),role:"group","aria-label":i,children:a.map(c=>{const u=e?.toLowerCase()===c.toLowerCase();return r.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${o}`,style:{backgroundColor:c},onClick:()=>t(c),"aria-pressed":u,"aria-label":u?`${c} ${l("colorPicker.selected","\uC120\uD0DD\uB428")}`:c,children:u&&r.jsx(ot,{icon:"check",size:N6,className:"color-picker__check"})},c)})})}var j6=".ihabdevteam-core-scope .count-tile{background:var(--color-deepWhite);border:1px solid var(--color-darkWhite);border-radius:16px;box-sizing:border-box;flex-shrink:0;height:72px;padding:12px;position:relative;transition:border-color .15s,background .15s;width:72px}.ihabdevteam-core-scope .count-tile__icon{color:var(--color-main);left:12px;position:absolute;top:12px}.ihabdevteam-core-scope .count-tile__count{bottom:12px;color:var(--color-darkGray);line-height:1;position:absolute;right:12px}.ihabdevteam-core-scope .count-tile--interactive:hover{background:var(--color-white);border-color:var(--color-lightGray)}.ihabdevteam-core-scope .count-tile--accent:hover{border-color:var(--color-main)}.ihabdevteam-core-scope .count-tile--clickable{cursor:pointer}@media (max-width:767px){.ihabdevteam-core-scope .count-tile{border-radius:14px;height:60px;padding:10px;width:60px}.ihabdevteam-core-scope .count-tile__icon{left:8px;top:8px}.ihabdevteam-core-scope .count-tile__count{bottom:8px;right:8px}}";ce(j6);var L6=".ihabdevteam-core-scope .tooltip-content.tooltip-training{pointer-events:none}.ihabdevteam-core-scope .tooltip-training__box{background:var(--color-white);border-radius:var(--radius-m);box-shadow:0 4px 16px rgba(0,0,0,.12);padding:10px 14px}.ihabdevteam-core-scope .tooltip-training__groups{align-items:stretch;display:flex;flex-direction:row;gap:0}.ihabdevteam-core-scope .tooltip-training__section{display:flex;flex-direction:column;flex-shrink:0;gap:6px;width:100px}.ihabdevteam-core-scope .tooltip-training__section-header{align-items:center;display:flex}.ihabdevteam-core-scope .tooltip-training__type-label{color:var(--color-darkGray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .tooltip-training__divider{align-self:center;background:var(--color-whiteLine);flex-shrink:0;height:20px;margin:0 10px;width:1px}.ihabdevteam-core-scope .tooltip-training__items{display:flex;flex-direction:column;gap:2px;pointer-events:none}.ihabdevteam-core-scope .tooltip-training__items .training-block-button--compact{cursor:default}";ce(L6);var M6=".ihabdevteam-core-scope .category-icon{align-items:center;background:var(--t-item-bg,color-mix(in srgb,var(--t-item-fg,var(--color-lightGray)) 10%,transparent));border-radius:var(--radius-s);color:var(--t-item-fg,var(--color-lightGray));display:flex;flex-shrink:0;font-size:18px;height:40px;justify-content:center;width:40px}.ihabdevteam-core-scope .category-icon--small{border-radius:var(--radius-sm);height:28px;width:28px}.ihabdevteam-core-scope .category-icon__mask{background-color:currentColor;background-color:var(--t-item-fg,currentColor);border-radius:var(--radius-sm);display:inline-block;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.ihabdevteam-core-scope .category-icon__image{border-radius:var(--radius-sm);display:block;-o-object-fit:contain;object-fit:contain}.ihabdevteam-core-scope .category-icon__svg svg{fill:currentColor;display:block}.ihabdevteam-core-scope .category-icon__wrap{cursor:default;display:inline-flex;position:relative}.ihabdevteam-core-scope .category-icon__wrap--interactive:hover .category-icon{box-shadow:inset 0 0 0 1px var(--t-item-fg,var(--color-lightGray))}.ihabdevteam-core-scope .category-icon__tooltip{pointer-events:none;white-space:nowrap}";ce(M6);function n0({icon:e,label:t,tooltip:a,wrapperStyle:o,color:n,bgColor:i,useHover:l=!0,iconSize:c="medium"}){const{t:u}=_e.useTranslation(),d=c==="small",h=Ne("category-icon",d?"category-icon--small":""),p=d?16:20,m=s.useRef(null),[C,v]=s.useState(!1),f=s.useMemo(()=>{const k=o&&typeof o=="object"?{...o}:{};return!n&&!i?k:{...k,...n?{color:n,"--t-item-fg":n}:{},...i?{"--t-item-bg":i}:{}}},[o,n,i]),g=a||t,x=l&&!!g,[b,w]=s.useState(null);s.useLayoutEffect(()=>{C&&w(m.current?.getBoundingClientRect()??null)},[C]),s.useEffect(()=>{if(!l&&C)try{v(!1)}catch{}},[l,C]),s.useEffect(()=>{if(!C)return;const k=S=>{const E=m.current;if(!E)return;const D=S.target;D&&!E.contains(D)&&v(!1)};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[C]);const _=s.useCallback(()=>{l&&v(!0)},[l]),A=s.useCallback(()=>{l&&v(!1)},[l]),y=s.useCallback(()=>v(!1),[]),B=s.useCallback(k=>{if(k.key==="Escape"){v(!1);return}(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),v(S=>!S))},[]);return r.jsxs("span",{ref:m,className:Ne("category-icon__wrap",x&&"category-icon__wrap--interactive"),onPointerEnter:_,onPointerLeave:A,onFocus:_,onBlur:A,onKeyDown:B,role:"button",tabIndex:0,"aria-label":typeof g=="string"?u("common.descriptionFor",{name:g,defaultValue:`${g} \uC124\uBA85`}):void 0,"aria-haspopup":!!g,"aria-expanded":C,"data-tooltip-ignore":!0,children:[r.jsx(ot,{icon:e,label:t,className:h,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:f,size:p}),C&&g&&r.jsx(Ea,{anchorRect:b,text:typeof g=="string"?g:void 0,offset:8,onClose:y,className:"category-icon__tooltip",ariaLabel:typeof g=="string"?g:void 0})]})}var $6='.ihabdevteam-core-scope .training-block-button{background:var(--color-white);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-m);box-shadow:var(--shadow-card);box-sizing:border-box;cursor:pointer;display:inline-block;height:200px;padding:var(--spacing-l);position:relative;text-align:left;transition:all .12s;vertical-align:top;width:200px}.ihabdevteam-core-scope .training-block-button:hover{border-color:var(--color-main);box-shadow:var(--shadow-card)}.ihabdevteam-core-scope .training-block-button--completed{box-shadow:var(--shadow-card)}.ihabdevteam-core-scope .training-block-button__more{position:absolute;right:var(--spacing-l);top:calc(var(--spacing-l) - 2px);z-index:2}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .training-block-button{height:190px;width:190px}}@media (max-width:767px){.ihabdevteam-core-scope .training-block-button{height:170px;width:calc(50% - 5px)}.ihabdevteam-core-scope .training-block-button__title.h3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;line-height:20px;overflow:hidden}}.ihabdevteam-core-scope .training-block-button__left{display:block}.ihabdevteam-core-scope .training-block-button__title.h3{color:var(--color-black);left:20px;margin:0;position:absolute;right:20px;top:68px}.ihabdevteam-core-scope .training-block-button__description{align-items:center;bottom:20px;display:flex;gap:var(--spacing-xs);height:20px;justify-content:space-between;left:20px;position:absolute;right:20px}.ihabdevteam-core-scope .training-block-button__count{color:var(--color-darkGray)}.ihabdevteam-core-scope .training-block-button__chevron{align-items:center;color:var(--color-lightGray);display:inline-flex;height:20px;justify-content:center;margin-left:auto}.ihabdevteam-core-scope .training-block-button__chevron-icon,.ihabdevteam-core-scope .training-block-button__chevron-icon-image,.ihabdevteam-core-scope .training-block-button__chevron-icon-mask,.ihabdevteam-core-scope .training-block-button__chevron-icon-svg{align-items:center;color:var(--color-lightGray);display:inline-flex;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .training-block-button__chevron-icon-mask{background-color:currentColor;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.ihabdevteam-core-scope .training-block-button__chevron-icon-image{display:block;-o-object-fit:contain;object-fit:contain}.ihabdevteam-core-scope .training-block-button__chevron-icon-svg svg{fill:currentColor;display:block;height:20px;width:20px}.ihabdevteam-core-scope .training-block-button .category-icon__wrap{left:18px;position:absolute;top:18px}.ihabdevteam-core-scope .training-block-button .category-icon{position:static}.ihabdevteam-core-scope .training-block-button__type-label{color:var(--color-gray);left:20px;overflow:hidden;position:absolute;right:20px;text-overflow:ellipsis;top:68px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--withType .training-block-button__title.h3{top:86px}.ihabdevteam-core-scope .training-block-button--small{height:120px;width:120px}.ihabdevteam-core-scope .training-block-button--small .category-icon__wrap{left:12px;top:12px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__type-label{color:var(--color-gray);left:12px;overflow:hidden;position:absolute;right:12px;text-overflow:ellipsis;top:44px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--small .training-block-button__title{color:var(--color-black);left:12px;margin:0;overflow:hidden;position:absolute;right:12px;text-overflow:ellipsis;top:60px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--small.training-block-button--no-type-label .training-block-button__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;top:44px;white-space:normal}.ihabdevteam-core-scope .training-block-button--small .training-block-button__description{bottom:10px;height:16px;left:12px;right:12px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__more{right:6px;top:6px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon,.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon-svg,.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon-svg svg{height:12px;width:12px}.ihabdevteam-core-scope .training-block-button--list{box-shadow:none;min-height:68px;padding:0 12px;width:200px}.ihabdevteam-core-scope .training-block-button--list .training-block-button__left{align-items:center;display:flex;gap:var(--spacing-s);height:100%;width:100%}.ihabdevteam-core-scope .training-block-button--list .category-icon__wrap{flex-shrink:0;order:1;position:static}.ihabdevteam-core-scope .training-block-button--list .training-block-button__title{color:var(--color-black);flex:1;min-width:0;order:2;overflow:hidden;position:static;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--list .training-block-button__description{display:none}.ihabdevteam-core-scope .training-block-button--list .training-block-button__preview{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;order:4}.ihabdevteam-core-scope .training-block-button--row{align-items:center;display:flex;height:auto;min-height:68px;width:100%}.ihabdevteam-core-scope .training-block-button--row .training-block-button__left{grid-column-gap:var(--spacing-s);grid-row-gap:4px;align-content:center;align-items:center;-moz-column-gap:var(--spacing-s);column-gap:var(--spacing-s);display:grid;grid-template-areas:"icon type count" "icon title count";grid-template-columns:auto 1fr auto;height:auto;padding:8px 0;row-gap:4px}.ihabdevteam-core-scope .training-block-button--row .category-icon__wrap{align-self:center;grid-area:icon}.ihabdevteam-core-scope .training-block-button--row .training-block-button__type-label{align-self:end;grid-area:type;inset:auto;position:static}.ihabdevteam-core-scope .training-block-button--row .training-block-button__title{align-self:start;grid-area:title;inset:auto;overflow:hidden;position:static;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--row .training-block-button__description{align-items:center;display:flex;gap:4px;grid-area:count;height:auto;inset:auto;position:static}.ihabdevteam-core-scope .training-block-button--row:not(.training-block-button--withType) .training-block-button__title{align-self:center;grid-row:1/span 2}.ihabdevteam-core-scope .training-block-button--small .training-block-button__preview{align-items:center;display:inline-flex;justify-content:center;position:absolute;right:12px;top:12px;z-index:1}.ihabdevteam-core-scope .training-block-button--compact{background:transparent;border-color:transparent;box-shadow:none;height:40px;padding:0;width:100%}.ihabdevteam-core-scope .training-block-button--compact:hover{background:var(--color-darkWhite);border-color:transparent;box-shadow:none}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__left{align-items:center;display:flex;gap:var(--spacing-xs);height:100%;width:100%}.ihabdevteam-core-scope .training-block-button--compact .category-icon__wrap{flex-shrink:0;order:1;position:static}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__title{color:var(--color-black);flex:1;min-width:0;order:2;overflow:hidden;position:static;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__description{display:none}@media (hover:hover){.ihabdevteam-core-scope .training-block-button__remove:not(.is-hover){display:none}}@media (hover:none){.ihabdevteam-core-scope .training-block-button__check--removable{display:none}}';ce($6);let _o=null;function Mi(e){if(_o&&_o!==e)try{_o()}catch{}return _o=e,()=>{_o===e&&(_o=null)}}function $i(e){if(_o===e){_o=null;try{e()}catch{}}}function ed(e,t){let a=()=>{};const o=new Promise(c=>{a=c});let n=!1;const i=c=>{if(!n){n=!0;try{t?.(c)}catch{}a(c)}};let l;try{l=new Audio(e)}catch{return i(!1),{el:{},stop:()=>{},done:o}}l.onended=()=>i(!0),l.onerror=()=>i(!1);try{l.play().catch(()=>i(!1))}catch{i(!1)}return{el:l,stop:()=>{try{l.pause()}catch{}i(!1)},done:o}}function R6(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,o=l=>l.map(c=>c?.contextCode||c?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const l=a.sentences||a.items||[],c=Array.isArray(l)&&l.length>0?o(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}if(t==="SHORT_STORY"){const l=a.items||a.sentences||[],c=Array.isArray(l)&&l.length>0?o(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"SHORT_S"}}if(t==="LONG_STORY"){const l=a.items||a.sentences||[],c=Array.isArray(l)&&l.length>0?o(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LONG"}}if(t==="ORDERING_SENTENCE"){const l=a.sentences||a.items||[],c=Array.isArray(l)&&l.length>0?o(l):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}const n=a.sentences||a.items||[],i=o(Array.isArray(n)?n:[]);return i.length===0&&(a.contextCode||a.context_code)&&i.push(String(a.contextCode||a.context_code)),{previewCodes:i,previewBucket:null}}function P6(e,t){const[a,o]=s.useState(!1),[n,i]=s.useState(-1),[l,c]=s.useState({key:"",urls:[]}),u=s.useRef(null),d=s.useRef(!1),h=s.useRef(null),p=s.useRef(null),[m,C]=s.useState(!1),v=s.useRef([]),{previewCodes:f,previewBucket:g}=R6(e,t),x=`${f.join(",")}|${g??""}`,b=s.useMemo(()=>l.key===x?l.urls:[],[l,x]);s.useEffect(()=>{if(!f.length)return;let _=!1;return(async()=>{const A=[],y=[];for(const B of f)try{const k=Rn(B,g);if(!k){A.push("");continue}let S=null;try{S=await zr(k)}catch{}if(!S)try{const E=await Pn(k);E&&(S=URL.createObjectURL(E),y.push(S))}catch{}A.push(S??"")}catch{A.push("")}_?y.forEach(B=>{try{URL.revokeObjectURL(B)}catch{}}):(v.current.forEach(B=>{try{URL.revokeObjectURL(B)}catch{}}),v.current=y,c({key:x,urls:A}))})(),()=>{_=!0}},[f.join(","),g]),s.useEffect(()=>()=>{v.current.forEach(_=>{try{URL.revokeObjectURL(_)}catch{}}),v.current=[]},[]);const w=s.useCallback(async _=>{if(_.stopPropagation(),_.preventDefault(),d.current){h.current&&$i(h.current),d.current=!1;try{u.current?.pause()}catch{}o(!1),i(-1);return}if(!b.filter(Boolean).length)return;let A=null;const y=()=>{d.current=!1,A?.stop()};h.current=y;const B=Mi(y);d.current=!0,o(!0);for(let k=0;k<b.length&&d.current;k++){const S=b[k];if(S&&(i(k),A=ed(S),u.current=A.el,!await A.done))break}B(),h.current===y&&(h.current=null,d.current=!1,o(!1),i(-1))},[b]);return s.useEffect(()=>()=>{h.current&&$i(h.current),d.current=!1;try{u.current?.pause()}catch{}u.current=null},[]),{playing:a,playingIndex:n,previewUrls:b,previewHover:m,setPreviewHover:C,previewBtnRef:p,handlePreview:w}}const z6=e=>{if(!e)return[];const t=typeof e.context=="string"&&e.context.trim()||typeof e.sentence=="string"&&e.sentence.trim()||typeof e.text=="string"&&e.text.trim()||"";if(t)return[String(t)];const a=e.sentences||e.items||e.questions||[];return Array.isArray(a)&&a.length>0?a.map(o=>{if(typeof o=="string")return o;if(o&&typeof o=="object"){const n=o;return n.sentence||n.text||n.context||n.question||n.title||""}return""}).filter(o=>typeof o=="string"&&o.trim().length>0).map(o=>o.trim()):[]};function Ri(e){const{index:t,type:a,trainingData:o,ariaLabel:n,depth:i,renderPopup:l,completed:c,completedIds:u,selectedIds:d,tooltipText:h,useDescriptionTooltip:p=!1,onRemove:m,hideCheckBadge:C=!1,showTypeLabel:v=!1,onComplete:f,onSelect:g,onMore:x,countLabelOverride:b,size:w="square"}=e||{},{t:_}=_e.useTranslation(),[A,y]=s.useState(!1),B=s.useRef(null),[k,S]=s.useState(!1);s.useEffect(()=>{B.current?.matches(":hover")&&S(!0)},[]);const{playing:E,playingIndex:D,previewUrls:I,previewHover:j,setPreviewHover:W,previewBtnRef:L,handlePreview:M}=P6(o,a?.key),z=s.useCallback(()=>{g?g():y(!0)},[g]),q=s.useCallback(()=>y(!1),[]),Y=s.useCallback(()=>S(!0),[]),P=s.useCallback(()=>S(!1),[]),V=s.useCallback(()=>W(!0),[W]),$=s.useCallback(()=>W(!1),[W]),[U,T]=s.useState(null);s.useLayoutEffect(()=>{j&&T(L.current?.getBoundingClientRect()??null)},[j,L]);const[F,N]=s.useState(null);s.useLayoutEffect(()=>{k&&!A&&p&&N(B.current?.getBoundingClientRect()??null)},[k,A,p]);const O=s.useCallback(Se=>{Se.target===Se.currentTarget&&(Se.key==="Enter"||Se.key===" ")&&(Se.preventDefault(),z())},[z]),H=o||null,Z=s.useMemo(()=>{if(!p)return null;const Se=h?(Array.isArray(h)?h:[h]).filter(Boolean):null,Ye=Se&&Se.length>0?Se:z6(H);return Ye&&Ye.length>0?Ye:null},[p,h,H]),te=s.useCallback(Se=>{Se.stopPropagation(),m?.()},[m]),se=s.useCallback(Se=>Se.stopPropagation(),[]),be=s.useCallback(Se=>{typeof f=="function"&&f(Se)},[f]),X=c||(u&&o?.id!=null?u.has(String(o.id)):!1),re=!X&&(d!=null&&o?.id!=null?d.has(String(o.id)):!1);hn("speechear.popup.close",q);const Ae=si(),K=`${a?.label||""} ${t+1}`,ie=H?.title||H?.name||K;let ue=a?.icon,je,ye="",le="";try{const Se=H?.category_0||H?.category_main_code||H?.category_main,Ye=H?.category_1||H?.category_sub_code||H?.category_sub,ee=Ae.find(pe=>pe.key===Se);ee?.icon&&(ue=ee.icon),!je&&ee?.color&&(je={"--t-item-fg":ee.color}),!je&&H?.iconColor&&(je={"--t-item-fg":H.iconColor}),ye=ee?_(`topic.${ee.key}`,{defaultValue:ee.label||""}):"";try{const pe=ee?.subs?.find(Ee=>Ee.key===Ye);le=pe?_(`topic.sub.${pe.key}`,{defaultValue:pe.label||""}):""}catch{}}catch{}const he=le?`${ye} / ${le}`:ye||a?.label||ie,ve=Se=>_("training.countQuestions",{n:Se,count:Se}),G=Se=>_("training.countSentences",{n:Se,count:Se});let oe="";try{if(H)if(a?.key==="LISTEN_IN_NOISE"){let Se=0;Array.isArray(H.items)&&H.items.length>0?Se=H.items.length:Array.isArray(H.sentences)&&H.sentences.length>0?Se=H.sentences.length:H.sentences&&(Se=1),oe=G(Se)}else if(a?.key==="SHORT_STORY"){let Se=1;Array.isArray(o?.items)?Se=o.items.length:Array.isArray(o?.raw&&o.raw?.items)?Se=o.raw.items.length:Array.isArray(H?.questions)?Se=H.questions.length:Array.isArray(H?.sentences)&&(Se=H.sentences.length),oe=ve(Se)}else if(a?.key==="LONG_STORY"){let Se=1;if(Array.isArray(H.items)&&H.items.length>0){const Ye=H.items.reduce((ee,pe)=>{const Ee=pe.questionItems;return Array.isArray(Ee)?ee+Ee.length:Array.isArray(pe.questions)?ee+pe.questions.length:ee},0);Se=Ye>0?Ye:H.items.length}else Array.isArray(H.questions)&&H.questions.length>0?Se=H.questions.length:Array.isArray(H.sentences)&&H.sentences.length>0&&(Se=H.sentences.length);oe=ve(Se)}else if(a?.key==="ORDERING_SENTENCE"){let Se=1;Array.isArray(H.items)&&H.items.length>0?Se=H.items.length:Array.isArray(H.sentences)&&H.sentences.length>0&&(Se=H.sentences.length),oe=G(Se)}else Array.isArray(H.items)&&(oe=H.items.length>0?ve(H.items.length):"")}catch{}const me=w==="row",Te=w==="list"||me,ke=w==="compact",Pe=w==="small",He=Pe&&a?.key?ac().find(Se=>Se.key===a.key):void 0,lt=He?ci[He.key]:void 0,rt=He?lt?_(`trainingType.${lt}.title`,{defaultValue:He.label}):He.label??"":"",at=v&&a?.label&&a.label!==String(ie)?String(a.label):Pe&&rt&&rt!==String(ie)?rt:"",ht=!!at,De=b!==void 0?b:oe,Ue=[at,typeof ie=="string"?ie:"",De].map(Se=>String(Se??"").trim()).filter(Boolean).join(" ");return r.jsxs(r.Fragment,{children:[r.jsxs("div",{ref:B,className:`training-block-button${Te?" training-block-button--list":""}${me?" training-block-button--row":""}${ke?" training-block-button--compact":""}${Pe?" training-block-button--small":""}${X?" training-block-button--completed":""}${re?" training-block-button--selected":""}${ht&&!Pe?" training-block-button--withType":""}${Pe&&!ht?" training-block-button--no-type-label":""}`,onClick:z,onPointerEnter:Y,onPointerLeave:P,role:"button",tabIndex:0,onKeyDown:O,"aria-label":typeof n=="string"?n:Ue||void 0,title:!p&&h&&(Array.isArray(h)?h.filter(Boolean).join(`
|
|
853
853
|
`):h)||void 0,children:[r.jsxs("div",{className:"training-block-button__left",children:[v&&a?.label&&a.label!==String(ie)&&r.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Pe&&rt&&rt!==String(ie)&&r.jsx("span",{className:"training-block-button__type-label caption-2",children:rt}),r.jsx(n0,{icon:ue,label:ie,tooltip:he,wrapperStyle:je,iconSize:Pe||ke?"small":"medium"}),!C&&(X||re)&&!(m&&k)&&r.jsx(St,{className:m?"training-block-button__check--removable":void 0,type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":X?_("training.completed","\uD6C8\uB828 \uC644\uB8CC"):_("training.selected","\uC120\uD0DD\uB428")}),m&&r.jsx(St,{className:`training-block-button__remove${k?" is-hover":""}`,type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":_("common.remove","\uC81C\uAC70"),onClick:te}),r.jsx("div",{className:`training-block-button__title ${ke?"body-3":Pe?"body-3b":"h3"}`,children:String(ie)}),r.jsxs("div",{className:"training-block-button__description",children:[De?r.jsx("div",{className:`training-block-button__count ${Pe?"caption-2":"caption-1"}`,children:De}):null,r.jsx("div",{className:"training-block-button__chevron",children:r.jsx(ot,{icon:"chevron-right",label:_("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})})]}),(Te&&!me||Pe)&&I.length>0&&r.jsx("div",{ref:L,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:se,onPointerEnter:V,onPointerLeave:$,children:r.jsx(Ce,{htmlType:"button",size:Pe?28:32,type:"dot",icon:E?"pause":"play",variant:Pe?"transparent-lightGray":"default",useBorder:!1,selected:E,ariaLabel:String(ie).trim()?E?_("training.stopFor",{name:ie,defaultValue:`${ie} \uC815\uC9C0`}):_("training.previewFor",{name:ie,defaultValue:`${ie} \uBBF8\uB9AC \uB4E3\uAE30`}):E?_("training.stop","\uC815\uC9C0"):_("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:M})})]}),x&&r.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:Se=>{Se.stopPropagation(),x(Se)},children:r.jsx(Ce,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:String(ie).trim()?_("common.moreFor",{name:ie}):_("common.more","\uB354\uBCF4\uAE30")})})]}),j&&r.jsx(Ea,{anchorRect:U,text:E?_("training.stop","\uC815\uC9C0"):_("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:$}),k&&!A&&p&&(Z?r.jsx(Co,{anchorRect:F,items:Z,activeIndex:D,onClose:P}):H?.subTitle?r.jsx(Ea,{anchorRect:F,text:H.subTitle,offset:8,onClose:P}):null),A&&l&&l({trainingData:H,typeKey:a?.key??"",onClose:q,onComplete:be,popupTitle:String(ie),popupSubTitle:a?.subTitle,depth:i!=null?String(i):void 0,popupIcon:ue,popupIconTooltip:String(he),popupWrapperStyle:je})]})}const td=200;function I6(e){return e.itemId?(cc()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function ad({plan:e,groups:t,anchorRect:a,offset:o=12,onClose:n}){const{t:i}=_e.useTranslation(),l=s.useMemo(()=>t?t.map((u,d)=>({key:u.key??u.type?.key??String(d),label:u.label,type:u.type,data:u.items??[]})).filter(u=>u.data.length>0):Jm(i).map(u=>{const d=(e?.items??[]).filter(h=>h.trainingType===u.key);return{key:u.key,label:u.label,type:u,\uACE0\uB978\uC218:d.length,data:d.map(I6).filter(h=>h!=null)}}).filter(u=>u.\uACE0\uB978\uC218>0),[t,e?.items,i]);if(l.length===0)return null;const c=r.jsx("div",{className:"tooltip-training__box",children:r.jsx("div",{className:"tooltip-training__groups",children:l.flatMap(({key:u,label:d,type:h,data:p},m)=>[m>0?r.jsx("div",{className:"tooltip-training__divider"},`div-${u}`):null,r.jsxs("div",{className:"tooltip-training__section",children:[r.jsx("div",{className:"tooltip-training__section-header",children:r.jsx("span",{className:"tooltip-training__type-label body-3b",children:d})}),r.jsx("div",{className:"tooltip-training__items",children:p.map((C,v)=>r.jsx(Ri,{index:v,type:h,trainingData:C,size:"compact",hideCheckBadge:!0},String(C.id??v)))})]},u)])})});return a?r.jsx(xa,{anchorRect:a,offset:o,onClose:n,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:i("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:c}):c}const O6=200;function i0({icon:e,count:t,title:a,plan:o,tooltip:n=!0,hoverAccent:i=!1,className:l="",onClick:c,onMouseEnter:u,onMouseLeave:d}){const h=!!c||!!u||n&&!!o,p=Ne("count-tile",h&&"count-tile--interactive",h&&i&&"count-tile--accent",c&&"count-tile--clickable",l),m=s.useRef(null),[C,v]=s.useState(null),f=s.useRef(null),g=s.useRef(null),x=!!(C&&o&&n),b=s.useCallback(()=>{f.current&&(clearTimeout(f.current),f.current=null),g.current&&(clearTimeout(g.current),g.current=null)},[]),w=s.useCallback(()=>{b(),v(null)},[b]),_=s.useCallback(()=>{!n||!o||(b(),f.current=setTimeout(()=>{f.current=null,v(m.current?.getBoundingClientRect()??null)},td))},[n,o,b]),A=s.useCallback(()=>{f.current&&(clearTimeout(f.current),f.current=null),!g.current&&(g.current=setTimeout(()=>{g.current=null,v(null)},O6))},[]);return s.useEffect(()=>()=>{b()},[b]),s.useEffect(()=>{(!n||!o)&&w()},[n,o,w]),s.useEffect(()=>{if(!x)return;const y=k=>k instanceof Element&&(m.current?.contains(k)||!!k.closest(".tooltip-training")),B=k=>{y(k.target)?b():A()};return document.addEventListener("pointerover",B,!0),()=>document.removeEventListener("pointerover",B,!0)},[x,b,A]),r.jsxs(r.Fragment,{children:[r.jsxs("div",{ref:m,className:p,onClick:c?y=>{w(),c(y)}:void 0,onKeyDown:c?y=>{y.key!=="Enter"&&y.key!==" "||(y.preventDefault(),y.currentTarget.click())}:void 0,onPointerEnter:y=>{y.pointerType==="touch"||y.pointerType==="pen"?w():_()},onMouseEnter:u,onMouseLeave:y=>{A(),d?.(y)},role:c?"button":"img",tabIndex:c?0:void 0,"aria-label":`${a} ${t}`,children:[r.jsx(ot,{icon:e,size:20,className:"count-tile__icon"}),r.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]}),C&&o&&r.jsx(ad,{plan:o,anchorRect:C,onClose:w})]})}let yn=0,s0="",od="",wn=0;function l0(){return c0(!1)}function F6(){return c0(!0)}function c0(e){const t=typeof document<"u";yn===0&&t&&(s0=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(wn===0&&(od=document.body.style.paddingRight),wn++,document.body.style.paddingRight="0px"),yn++;let a=!1;return()=>{a||(a=!0,yn=Math.max(0,yn-1),e&&t&&(wn=Math.max(0,wn-1),wn===0&&(od?document.body.style.paddingRight=od:document.body.style.removeProperty("padding-right"))),yn===0&&t&&(document.body.style.overflow=s0))}}var H6=".ihabdevteam-core-scope .dialog{align-items:center;background:rgba(16,24,32,.6);display:flex;inset:0;justify-content:center;padding:32px;position:fixed;z-index:2200;z-index:var(--z-modal,2200)}@supports (color:rgb(0 0 0/0)) and (top:var(--f )){.ihabdevteam-core-scope .dialog{background:var(--color-popupBlock,rgba(16,24,32,.6))}}.ihabdevteam-core-scope .dialog__surface{background:#fff;background:var(--color-pureWhite,#fff);border-radius:20px;border-radius:var(--radius-dialog,20px);box-shadow:var(--shadow-popup);max-height:calc(100vh - 64px);outline:none;overflow:auto;position:relative;width:100%}.ihabdevteam-core-scope .dialog__surface--sm{max-width:420px}.ihabdevteam-core-scope .dialog__surface--md{max-width:640px}.ihabdevteam-core-scope .dialog__surface--lg{max-width:1000px}.ihabdevteam-core-scope .dialog__surface--full{background:none;box-shadow:none;max-width:1000px;overflow:visible}.ihabdevteam-core-scope .dialog__header{padding:24px 24px 0}.ihabdevteam-core-scope .dialog__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .dialog__close{align-items:center;background:none;border:0;border-radius:999px;border-radius:var(--radius-full,999px);color:var(--color-gray);cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:12px;top:12px;transition:background .15s ease,color .15s ease;width:40px}.ihabdevteam-core-scope .dialog__close:hover{background:var(--color-darkWhite);color:var(--color-black)}.ihabdevteam-core-scope .dialog__close>svg{height:20px;width:20px}.ihabdevteam-core-scope .dialog__surface--full .dialog__close{background:hsla(0,0%,100%,.1);color:var(--color-pureWhite);right:0;top:-48px}.ihabdevteam-core-scope .dialog__surface--full .dialog__close:hover{background:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .dialog__body{padding:24px}.ihabdevteam-core-scope .dialog__surface--full .dialog__body{padding:0}@media (max-width:639px){.ihabdevteam-core-scope .dialog{padding:16px}.ihabdevteam-core-scope .dialog__body{padding:20px}}";ce(H6);function V6(){return r.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:r.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function u0({open:e,onClose:t,ariaLabel:a,title:o,children:n,size:i="md",closeOnBackdrop:l=!0,closeOnEscape:c=!0,showClose:u=!0,className:d,contentClassName:h}){const{t:p}=_e.useTranslation(),m=s.useId(),C=s.useRef(null),v=s.useCallback(()=>t(),[t]);s.useEffect(()=>{if(!e)return;const b=document.activeElement,w=l0(),_=C.current;return Ac(_,b),_?.focus(),()=>{w();const A=document.activeElement;(!A||A===document.body||_&&_.contains(A))&&Sc(b)?.focus?.()}},[e]);const f=s.useRef(v),g=s.useRef(c);s.useEffect(()=>{f.current=v,g.current=c}),s.useEffect(()=>{if(e)return Io(()=>{g.current&&f.current()})},[e]);const x=s.useRef(!1);return kc(C,e),!e||typeof document>"u"?null:ua.createPortal(r.jsx("div",{className:Ne("dialog",d),onPointerDown:l?b=>{x.current=b.target===b.currentTarget}:void 0,onMouseDown:b=>{b.target===b.currentTarget&&b.preventDefault()},onClick:l?b=>{const w=x.current;x.current=!1,w&&b.target===b.currentTarget&&v()}:void 0,children:r.jsxs("div",{ref:C,role:"dialog","aria-modal":"true","aria-label":o?void 0:a,"aria-labelledby":o?m:void 0,tabIndex:-1,className:Ne("dialog__surface",`dialog__surface--${i}`,h),onClick:b=>b.stopPropagation(),children:[o?r.jsx("div",{className:"dialog__header",children:r.jsx("h2",{id:m,className:"dialog__title h4b",children:o})}):null,u?r.jsx("button",{type:"button",className:"dialog__close","aria-label":p("common.close","\uB2EB\uAE30"),onClick:v,children:r.jsx(V6,{})}):null,r.jsx("div",{className:"dialog__body",children:n})]})}),document.body)}var W6=".ihabdevteam-core-scope .board{width:100%}.ihabdevteam-core-scope .board__head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--spacing-m);justify-content:space-between;margin-bottom:var(--spacing-m)}.ihabdevteam-core-scope .board__title{color:var(--color-text-primary);font-size:var(--text-body-2-size);font-weight:500;line-height:var(--text-body-2-line);margin:0}.ihabdevteam-core-scope .board__toolbar{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .board__table{border-collapse:collapse;border-top:1px solid var(--color-text-primary);text-align:left;width:100%}.ihabdevteam-core-scope .board__caption{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .board__th{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--text-body-3-size);font-weight:500;line-height:var(--text-body-3-line);padding:14px 0}.ihabdevteam-core-scope .board__row{border-bottom:1px solid var(--color-border);transition:background .15s ease;transition:background var(--duration-fast,.15s) var(--ease-out,ease)}.ihabdevteam-core-scope .board__row:hover{background:var(--color-surface-raised)}.ihabdevteam-core-scope .board__td{color:var(--color-text-primary);font-size:var(--text-body-3-size);line-height:var(--text-body-3-line);padding:var(--spacing-m) 0}.ihabdevteam-core-scope .board__cell--left{text-align:left}.ihabdevteam-core-scope .board__cell--center{text-align:center}.ihabdevteam-core-scope .board__cell--right{text-align:right}.ihabdevteam-core-scope .board__state{color:var(--color-text-secondary);font-size:var(--text-body-3-size);padding:56px 0;text-align:center}";ce(W6);function d0({columns:e,rows:t,rowKey:a,title:o,toolbar:n,empty:i,loading:l,caption:c,className:u=""}){const{t:d}=_e.useTranslation(),h=!l&&t.length===0;return r.jsxs("div",{className:Ne("board",u),children:[o||n?r.jsxs("div",{className:"board__head",children:[o?r.jsx("h2",{className:"board__title",children:o}):r.jsx("span",{}),n?r.jsx("div",{className:"board__toolbar",children:n}):null]}):null,r.jsxs("table",{className:"board__table",children:[c?r.jsx("caption",{className:"board__caption",children:c}):null,r.jsx("thead",{children:r.jsx("tr",{children:e.map(p=>r.jsx("th",{scope:"col",className:Ne("board__th",`board__cell--${p.headerAlign??p.align??"left"}`),style:p.width?{width:p.width}:void 0,children:p.header},p.key))})}),r.jsx("tbody",{children:l?r.jsx("tr",{children:r.jsx("td",{className:"board__state",colSpan:e.length,children:l})}):h?r.jsx("tr",{children:r.jsx("td",{className:"board__state",colSpan:e.length,children:i??d("board.empty","\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):t.map((p,m)=>r.jsx("tr",{className:"board__row",children:e.map(C=>r.jsx("td",{className:Ne("board__td",`board__cell--${C.align??"left"}`),children:C.render(p,m)},C.key))},a(p,m)))})]})]})}var G6=".ihabdevteam-core-scope .person-card{display:flex;flex-direction:column}.ihabdevteam-core-scope .person-card__photo{background:var(--color-surface-raised);border-radius:var(--radius-full);flex-shrink:0;margin-inline:auto;max-width:100%;overflow:hidden}.ihabdevteam-core-scope .person-card__photo>*,.ihabdevteam-core-scope .person-card__photo>img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.ihabdevteam-core-scope .person-card__name{color:var(--color-text-primary);font-size:var(--text-h4-size);font-weight:var(--text-h4-weight-bold);line-height:var(--text-h4-line);margin-top:var(--spacing-xl);text-align:center}.ihabdevteam-core-scope .person-card__role{color:var(--color-darkGray);font-size:var(--text-body-3-size);font-weight:var(--text-body-3-weight);line-height:var(--text-body-3-line);margin-top:6px;text-align:center}.ihabdevteam-core-scope .person-card__credentials{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:var(--spacing-xl) auto 0;max-width:100%;padding:0;text-align:left;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .person-card__credentials>li{color:var(--color-darkGray);font-size:var(--text-body-3-size);line-height:var(--text-body-3-line)}@media (max-width:767px){.ihabdevteam-core-scope .person-card__credentials,.ihabdevteam-core-scope .person-card__name{margin-top:var(--spacing-l)}}";ce(G6);function p0({name:e,role:t,photo:a,media:o,credentials:n,size:i=190,className:l=""}){return r.jsxs("div",{className:Ne("person-card",l),children:[r.jsx("div",{className:"person-card__photo",style:{width:i,height:i},children:o??(a?r.jsx("img",{src:a,alt:t?`${e} ${t}`:e}):null)}),r.jsx("h3",{className:"person-card__name",children:e}),t?r.jsx("p",{className:"person-card__role",children:t}):null,n?.length?r.jsx("ul",{className:"person-card__credentials",children:n.map(c=>r.jsx("li",{children:c},c))}):null]})}var U6=".ihabdevteam-core-scope .timeline{display:flex;flex-direction:column;gap:56px}.ihabdevteam-core-scope .timeline__title{color:var(--color-text-primary);font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);letter-spacing:var(--text-h1-spacing);line-height:var(--text-h1-line);margin:0}.ihabdevteam-core-scope .timeline__rows{border-top:1px solid var(--color-border);list-style:none;margin:var(--spacing-m) 0 0;padding:0}.ihabdevteam-core-scope .timeline__row{border-bottom:1px solid var(--color-border);display:flex;gap:40px;padding:var(--spacing-l) 0}.ihabdevteam-core-scope .timeline__label{color:var(--color-text-primary);flex-shrink:0;font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight-bold);line-height:var(--text-body-2-line);padding-top:1px;width:28px}.ihabdevteam-core-scope .timeline__items{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .timeline__items>p{color:var(--color-text-primary);font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight);line-height:var(--text-body-2-line);margin:0}@media (max-width:767px){.ihabdevteam-core-scope .timeline{gap:40px}.ihabdevteam-core-scope .timeline__row{gap:var(--spacing-xl)}}";ce(U6);function h0({groups:e,className:t=""}){return r.jsx("div",{className:Ne("timeline",t),children:e.map(a=>r.jsxs("section",{className:"timeline__group",children:[r.jsx("h3",{className:"timeline__title",children:a.title}),r.jsx("ul",{className:"timeline__rows",children:a.entries.map((o,n)=>r.jsxs("li",{className:"timeline__row",children:[o.label?r.jsx("span",{className:"timeline__label",children:o.label}):null,r.jsx("div",{className:"timeline__items",children:o.items.map((i,l)=>r.jsx("p",{children:i},l))})]},`${o.label??""}-${n}`))})]},a.title))})}var q6=".ihabdevteam-core-scope .publication-card{background:var(--color-surface-raised);border-radius:var(--radius-m);box-sizing:border-box;display:flex;flex-direction:column;padding:36px var(--spacing-xl) 32px;position:relative}.ihabdevteam-core-scope .publication-card__badge{height:88px;pointer-events:none;position:absolute;right:var(--spacing-xl);top:0}.ihabdevteam-core-scope .publication-card__badge>*,.ihabdevteam-core-scope .publication-card__badge>img{height:100%;width:auto}.ihabdevteam-core-scope .publication-card__title{color:var(--color-text-primary);font-size:var(--text-h4-size);font-weight:var(--text-h4-weight-bold);line-height:var(--text-h4-line);margin:0;padding-right:96px;position:relative;z-index:1}.ihabdevteam-core-scope .publication-card__kind{color:var(--color-darkGray);font-size:var(--text-body-3-size);font-weight:var(--text-body-3-weight);line-height:var(--text-body-3-line);margin:var(--spacing-m) 0 0}.ihabdevteam-core-scope .publication-card__body{color:var(--color-darkGray);font-size:var(--text-caption-1-size);line-height:1.65;margin:var(--spacing-m) 0 0}@media (max-width:767px){.ihabdevteam-core-scope .publication-card{padding:32px var(--spacing-l) 28px}.ihabdevteam-core-scope .publication-card__kind{margin-top:var(--spacing-m)}}.ihabdevteam-core-scope .publication-card__footer{margin-top:auto;padding-top:var(--spacing-l)}";ce(q6);function m0({title:e,kind:t,body:a,badge:o,badgeSrc:n,footer:i,width:l,className:c=""}){const u=o??(n?r.jsx("img",{src:n,alt:""}):null);return r.jsxs("div",{className:Ne("publication-card",c),style:l?{width:l,flexShrink:0}:void 0,children:[u?r.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:u}):null,r.jsx("h3",{className:"publication-card__title",children:e}),t?r.jsx("p",{className:"publication-card__kind",children:t}):null,r.jsx("p",{className:"publication-card__body",children:a}),i?r.jsx("div",{className:"publication-card__footer",children:i}):null]})}var Y6="@keyframes splash-logo{0%{opacity:0;transform:scale(.92)}18%{opacity:1;transform:scale(1)}75%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.04)}}.ihabdevteam-core-scope .splash-logo{align-items:center;background:var(--color-pureWhite);display:flex;inset:0;justify-content:center;position:absolute;z-index:1000;z-index:var(--z-modal,1000)}.ihabdevteam-core-scope .splash-logo__image{animation:splash-logo 3s cubic-bezier(.4,0,.2,1) forwards;animation:splash-logo var(--splash-logo-duration,3s) cubic-bezier(.4,0,.2,1) forwards;height:80px;height:var(--splash-logo-height,80px);width:auto}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .splash-logo__image{animation:none;opacity:1}}";ce(Y6);function b0({logo:e,alt:t,onDone:a,durationMs:o=3e3}){const n=pn(a);return s.useEffect(()=>{const i=setTimeout(()=>n.current?.(),o);return()=>clearTimeout(i)},[o,n]),r.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${o}ms`},"aria-hidden":"true",children:r.jsx("img",{src:e,alt:t,className:"splash-logo__image"})})}var K6='.ihabdevteam-core-scope .section-header{text-align:center}.ihabdevteam-core-scope .section-header__eyebrow{align-items:center;display:flex;font-size:var(--text-caption-1-size);font-weight:600;gap:10px;justify-content:center;letter-spacing:.18em;line-height:var(--text-caption-1-line);margin:0}.ihabdevteam-core-scope .section-header__index{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.6}.ihabdevteam-core-scope .section-header__rule{background:currentColor;height:1px;opacity:.3;width:24px}.ihabdevteam-core-scope .section-header__title{font-family:inherit;font-family:var(--font-display,inherit);font-size:clamp(2rem,1.35rem + 2.1vw,2.9rem);font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:0}.ihabdevteam-core-scope .section-header__eyebrow+.section-header__title{margin-top:var(--spacing-xl)}.ihabdevteam-core-scope .section-header__description{font-size:var(--text-body-2-size);line-height:1.9;margin-top:var(--spacing-m)}.ihabdevteam-core-scope .section-header--dark .section-header__eyebrow{color:var(--color-main)}.ihabdevteam-core-scope .section-header--dark .section-header__title{color:var(--color-text-primary)}.ihabdevteam-core-scope .section-header--dark .section-header__description{color:var(--color-darkGray)}.ihabdevteam-core-scope .section-header--light .section-header__eyebrow{color:hsla(0,0%,100%,.85)}.ihabdevteam-core-scope .section-header--light .section-header__title{color:var(--color-pureWhite)}.ihabdevteam-core-scope .section-header--light .section-header__description{color:hsla(0,0%,100%,.85)}';ce(K6);function g0({eyebrow:e,eyebrowIndex:t,title:a,description:o,level:n=2,tone:i="dark",className:l=""}){const c=n===1?"h1":"h2";return r.jsxs("div",{className:Ne("section-header",`section-header--${i}`,l),children:[e?r.jsxs("p",{className:"section-header__eyebrow",children:[t?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"section-header__index",children:t}),r.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?r.jsx(c,{className:"section-header__title",children:a}):null,o?r.jsx("div",{className:"section-header__description",children:o}):null]})}var Z6=".ihabdevteam-core-scope .company-meta{align-items:center;color:var(--color-gray);display:flex;flex-direction:column;font-size:var(--text-caption-1-size);gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .company-meta__item{align-items:center;display:flex}.ihabdevteam-core-scope .company-meta__divider{color:var(--color-whiteLine);display:none;padding-inline:var(--spacing-m)}@media (min-width:640px){.ihabdevteam-core-scope .company-meta{flex-direction:row;gap:0}.ihabdevteam-core-scope .company-meta__divider{display:inline}}";ce(Z6);function f0({items:e,className:t=""}){return r.jsx("ul",{className:Ne("company-meta",t),children:e.map((a,o)=>r.jsxs("li",{className:"company-meta__item",children:[o>0?r.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function v0(e){return typeof e=="string"?e:e.label}function rd({value:e,onChange:t,suggestions:a,openOnFocus:o=!1,filterSuggestions:n,onSelectSuggestion:i,autoActiveFirst:l=!1}){const c=s.useId(),[u,d]=s.useState(!1),[h,p]=s.useState(-1),m=s.useRef(null),C=s.useMemo(()=>{if(!a.length)return[];const D=e??"";return n===!1?a:D?typeof n=="function"?n(a,D):a.filter(I=>v0(I).toLowerCase().includes(D.toLowerCase())):o?a:[]},[a,e,o,n]),[v,f]=s.useState(!1),g=s.useRef([]),x=v&&C.length===0?g.current:C;s.useEffect(()=>{x.length&&(g.current=x)},[x]);const b=s.useCallback(()=>f(!0),[]),w=s.useCallback(()=>f(!1),[]),_=l?0:-1;s.useEffect(()=>{u||p(_)},[u,_]),s.useEffect(()=>()=>{m.current&&clearTimeout(m.current)},[]);const A=h<x.length?h:_<x.length?_:-1,y=s.useCallback(D=>{i?i(D):t?.(v0(D)),d(!1)},[t,i]),B=s.useCallback(()=>d(!0),[]),k=s.useCallback(()=>{d(!0),p(_)},[_]),S=s.useCallback(()=>{m.current=setTimeout(()=>d(!1),120)},[]),E=s.useCallback(D=>{D.nativeEvent.isComposing||D.keyCode===229||(D.key==="ArrowDown"?(D.preventDefault(),d(!0),p(I=>Math.min(x.length-1,(I<x.length?I:_)+1))):D.key==="ArrowUp"?(D.preventDefault(),p(I=>Math.max(_,(I<x.length?I:x.length)-1))):D.key==="Enter"?A>=0&&y(x[A]):D.key==="Escape"&&u&&(D.preventDefault(),d(!1)))},[x,A,u,y,_]);return{listId:c,open:u,activeIdx:A,filtered:x,handleFocus:B,handleBlur:S,handleInput:k,handleKeyDown:E,handleSelect:y,handleCompositionStart:b,handleCompositionEnd:w}}const nd=typeof window<"u"?s.useLayoutEffect:s.useEffect;var X6=".ihabdevteam-core-scope .text-field{box-sizing:border-box;display:inline-flex;flex-direction:column;gap:6px;position:relative}.ihabdevteam-core-scope .text-field--full-width{display:flex;width:100%}.ihabdevteam-core-scope .text-field__label{align-items:center;color:var(--color-darkGray);display:flex;gap:4px}.ihabdevteam-core-scope .text-field__required{color:var(--color-main);line-height:1}.ihabdevteam-core-scope .text-field__wrap{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:12px;box-sizing:border-box;display:flex;overflow:hidden;position:relative;transition:border-color .12s,background .12s,box-shadow .12s}.ihabdevteam-core-scope .text-field--s32 .text-field__wrap{border-radius:8px}.ihabdevteam-core-scope .text-field--s40 .text-field__wrap{border-radius:10px}.ihabdevteam-core-scope .text-field--s48 .text-field__wrap{border-radius:12px}.ihabdevteam-core-scope .text-field--s64 .text-field__wrap{border-radius:14px}.ihabdevteam-core-scope .text-field__wrap:focus-within{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10)}.ihabdevteam-core-scope .text-field__input:focus-visible{outline:none}@media (forced-colors:active){.ihabdevteam-core-scope .text-field__input:focus-visible{outline:2px solid Highlight;outline-offset:-2px}}.ihabdevteam-core-scope .text-field--error .text-field__wrap{border-color:var(--color-error)}.ihabdevteam-core-scope .text-field--error .text-field__wrap:focus-within{box-shadow:0 0 0 3px var(--color-error-a10)}.ihabdevteam-core-scope .text-field--disabled .text-field__wrap{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .text-field--readonly .text-field__input{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .text-field--readonly .text-field__wrap{border-color:var(--color-darkWhite)}.ihabdevteam-core-scope .text-field__input{background:transparent;border:none;box-sizing:border-box;color:var(--color-darkGray);flex:1;margin:0;min-width:0;outline:none;padding:0 12px}.ihabdevteam-core-scope .text-field__input::-moz-placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .text-field__input::placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .text-field__input:disabled{cursor:not-allowed}.ihabdevteam-core-scope .text-field__input[readonly]{cursor:default}.ihabdevteam-core-scope .text-field__input--textarea{align-self:stretch;line-height:1.6;min-height:80px;padding:10px 12px;resize:vertical}.ihabdevteam-core-scope .text-field__input--auto{align-self:stretch;line-height:1.5;overflow:hidden;padding:0 12px;resize:none}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__wrap,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__wrap{align-items:flex-start}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__clear,.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__icon,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__clear,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__icon{margin-top:var(--spacing-s)}.ihabdevteam-core-scope .text-field--s32 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:30px}.ihabdevteam-core-scope .text-field--s40 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:38px}.ihabdevteam-core-scope .text-field--s48 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:46px}.ihabdevteam-core-scope .text-field--s64 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:62px;line-height:normal}.ihabdevteam-core-scope .text-field--display .text-field__input{font-weight:700;text-align:center}.ihabdevteam-core-scope .text-field--display .text-field__input::-moz-placeholder{color:transparent}.ihabdevteam-core-scope .text-field--display .text-field__input::placeholder{color:transparent}.ihabdevteam-core-scope .text-field--display .text-field__placeholder{align-items:center;color:var(--color-lightGray);display:flex;font-weight:400;inset:0;justify-content:center;pointer-events:none;position:absolute}.ihabdevteam-core-scope .text-field--display .text-field__input:not(:-moz-placeholder)~.text-field__placeholder{display:none}.ihabdevteam-core-scope .text-field--display .text-field__input:not(:placeholder-shown)~.text-field__placeholder{display:none}.ihabdevteam-core-scope .text-field--display.text-field--s48 .text-field__input{font-size:22px}.ihabdevteam-core-scope .text-field--display.text-field--s48 .text-field__placeholder{font-size:15px}.ihabdevteam-core-scope .text-field--display.text-field--s64 .text-field__input{font-size:28px;letter-spacing:-.3px}.ihabdevteam-core-scope .text-field--display.text-field--s64 .text-field__placeholder{font-size:16px}.ihabdevteam-core-scope .text-field--s32 .text-field__input--auto{height:30px;min-height:30px;padding-bottom:3px;padding-top:3px}.ihabdevteam-core-scope .text-field--s40 .text-field__input--auto{height:38px;min-height:38px;padding-bottom:7px;padding-top:7px}.ihabdevteam-core-scope .text-field--s48 .text-field__input--auto{height:46px;min-height:46px;padding-bottom:11px;padding-top:11px}.ihabdevteam-core-scope .text-field__icon{align-items:center;color:var(--color-lightGray);display:inline-flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .text-field__icon--left{margin-left:var(--spacing-s)}.ihabdevteam-core-scope .text-field__icon--right{margin-right:var(--spacing-s)}.ihabdevteam-core-scope .text-field__icon-svg{display:block}.ihabdevteam-core-scope .text-field--has-left-icon .text-field__input{padding-left:6px}.ihabdevteam-core-scope .text-field--has-right-icon .text-field__input{padding-right:6px}.ihabdevteam-core-scope .text-field--s32 .text-field__icon{height:16px;width:16px}.ihabdevteam-core-scope .text-field--s32 .text-field__input{font-size:14px;line-height:22px}.ihabdevteam-core-scope .text-field__clear{flex-shrink:0;margin-right:10px}.ihabdevteam-core-scope .text-field__suggestions{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);box-shadow:var(--shadow-dropdown);box-sizing:border-box;margin:0;max-height:220px;overflow:auto;padding:4px 0;position:fixed;z-index:var(--z-dropdown)}.ihabdevteam-core-scope .text-field__suggestion{align-items:center;color:var(--color-darkGray);cursor:pointer;display:flex;padding:8px 12px}.ihabdevteam-core-scope .text-field__suggestion.is-active,.ihabdevteam-core-scope .text-field__suggestion:hover{background:var(--color-deepWhite);color:var(--color-main)}.ihabdevteam-core-scope .text-field__footer{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .text-field__helper{color:var(--color-lightGray);flex:1}.ihabdevteam-core-scope .text-field--error .text-field__helper{color:var(--color-error)}.ihabdevteam-core-scope .text-field__count{color:var(--color-gray);flex-shrink:0;margin-right:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ihabdevteam-core-scope .text-field--has-right-icon .text-field__count,.ihabdevteam-core-scope .text-field:has(.text-field__clear) .text-field__count{margin-right:8px}.ihabdevteam-core-scope .text-field__count--over{color:var(--color-error)}.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__count{bottom:6px;margin:0;pointer-events:none;position:absolute;right:20px}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__count{align-self:flex-end;margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .text-field__suggestion-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .text-field__suggestion-hint{color:var(--color-lightGray);flex-shrink:0;margin-left:8px;white-space:nowrap}.ihabdevteam-core-scope .text-field__status{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}";ce(X6);function yo(e){const{value:t,defaultValue:a,name:o,inputRef:n,onChange:i,label:l,ariaLabel:c,ariaDescribedBy:u,required:d,placeholder:h,ghostText:p,ghostHint:m,type:C="text",disabled:v=!1,readOnly:f=!1,error:g,helperText:x,maxLength:b,size:w=48,variant:_="input",fullWidth:A=!1,newline:y=!1,multiline:B=!1,rows:k=3,leftIcon:S,rightIcon:E,clearable:D=!1,list:I,showCount:j=!0,className:W="",onFocus:L,onBlur:M,onKeyDown:z,onEnter:q,inputMode:Y,autoComplete:P,autoFocus:V,suggestions:$,filterSuggestions:U,onSelectSuggestion:T,autoActiveFirst:F,openOnFocus:N=!1}=e,O=f||v?void 0:$,{t:H}=_e.useTranslation(),Z=s.useId();!l&&!c&&ra(`TextField:unnamed:${Z}`,"[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 te=`tf-${Z}`,se=`tf-helper-${Z}`,be=s.useRef(null),X=rd({value:t??"",onChange:i,suggestions:O??[],openOnFocus:N,filterSuggestions:U,onSelectSuggestion:T,autoActiveFirst:F}),re=!!O&&X.open&&X.filtered.length>0,Ae=s.useRef(null),[K,ie]=s.useState(null),ue=s.useCallback(()=>{const De=Ae.current;if(!De||typeof window>"u")return;const Ue=De.getBoundingClientRect(),Se=230,Ye=window.innerHeight-Ue.bottom<Se+8&&Ue.top>Se+8;ie({position:"fixed",left:Ue.left,width:Ue.width,...Ye?{bottom:window.innerHeight-Ue.top+8}:{top:Ue.bottom+8},zIndex:Cn(De)})},[]);nd(()=>{if(!re)return;ue();let De=null;const Ue=()=>{if(typeof requestAnimationFrame>"u"){ue();return}De===null&&(De=requestAnimationFrame(()=>{De=null,ue()}))},Se=Ye=>{const ee=Ye.target;ee&&ee.nodeType===1&&ee.closest?.(".text-field__suggestions")||Ue()};return window.addEventListener("scroll",Se,!0),window.addEventListener("resize",Ue),()=>{De!==null&&cancelAnimationFrame(De),window.removeEventListener("scroll",Se,!0),window.removeEventListener("resize",Ue)}},[re,ue]);const je=s.useCallback(De=>{be.current=De,typeof n=="function"?n(De):n&&(n.current=De)},[n]),ye=p?`${p}${m??H("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)")}`:h,le=t!==void 0,he=le&&C==="password",[ve,G]=s.useState((a??"").length),oe=le?(t??"").length:ve,me=s.useRef(t);nd(()=>{me.current=t}),s.useEffect(()=>{const De=be.current;if(!he||!De)return;const Ue=t??"";De.value!==Ue&&(De.value=Ue)},[he,t]),s.useEffect(()=>{if(!y||!be.current)return;const De=be.current;De.style.height="",De.scrollHeight>De.clientHeight&&(De.style.height=`${De.scrollHeight}px`)},[t,ve,y]);const Te=b!=null&&oe>b,ke=w===32?16:20,Pe=Ne("text-field",`text-field--s${w}`,_==="display"?"text-field--display":"",A?"text-field--full-width":"",v?"text-field--disabled":"",f?"text-field--readonly":"",g?"text-field--error":"",S?"text-field--has-left-icon":"",E||D?"text-field--has-right-icon":"",W),He={id:te,...he?{}:le?{value:t}:{defaultValue:a},ref:je,placeholder:ye,name:o,disabled:v,readOnly:f,autoFocus:V,maxLength:b,list:I,inputMode:Y,autoComplete:P,"aria-label":!l&&c?c:void 0,"aria-required":d,"aria-invalid":!!g,"aria-describedby":[x||g?se:null,u].filter(Boolean).join(" ")||void 0,role:O?"combobox":void 0,"aria-autocomplete":O?"list":void 0,"aria-haspopup":O?"listbox":void 0,"aria-expanded":O?re:void 0,"aria-controls":re?X.listId:void 0,"aria-activedescendant":re&&X.activeIdx>=0?`${X.listId}-option-${X.activeIdx}`:void 0,onChange:De=>{const Ue=De.target;le||G(Ue.value.length),i?.(Ue.value),O&&X.handleInput(),he&&queueMicrotask(()=>{const Se=me.current??"";Ue.value!==Se&&(Ue.value=Se)})},onCompositionStart:O?X.handleCompositionStart:void 0,onCompositionEnd:O?X.handleCompositionEnd:void 0,onFocus:(De=>{L?.(De),O&&X.handleFocus()}),onBlur:(De=>{M?.(De),O&&X.handleBlur()}),onKeyDown:(De=>{const Ue=(De.key==="Tab"&&!De.shiftKey||De.key===" ")&&!De.nativeEvent.isComposing;if(p&&Ue&&!f&&!v&&!(De.currentTarget.value??"").trim()){De.preventDefault();const Se=De.currentTarget;le||(Se.value=p,G(p.length)),i?.(p);return}O&&De.key==="Enter"&&!De.nativeEvent.isComposing&&X.activeIdx>=0?De.preventDefault():q&&De.key==="Enter"&&!De.nativeEvent.isComposing&&(De.preventDefault(),q()),z?.(De),O&&X.handleKeyDown(De)})},lt=D&&!v&&!f&&oe>0,rt=()=>y?r.jsx("textarea",{...He,className:"text-field__input text-field__input--auto body-2",rows:1}):B?r.jsx("textarea",{...He,className:"text-field__input text-field__input--textarea body-2",rows:k}):r.jsx("input",{...He,type:C,className:"text-field__input body-2"}),at=_==="display"&&!y&&!B&&!!ye,ht=()=>r.jsxs(r.Fragment,{children:[rt(),at&&r.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:ye})]});return r.jsxs("div",{ref:Ae,className:Pe,children:[l&&r.jsxs("label",{htmlFor:te,className:"text-field__label caption-1",children:[l,d&&r.jsx("span",{className:"text-field__required",children:"*"})]}),r.jsxs("div",{className:"text-field__wrap",children:[S&&r.jsx("span",{className:"text-field__icon text-field__icon--left",children:r.jsx(ot,{icon:S,label:"",className:"",svgClassName:"text-field__icon-svg",size:ke})}),ht(),b!=null&&j&&r.jsxs("span",{className:`text-field__count caption-2${Te?" text-field__count--over":""}`,children:[oe,"/",b]}),lt&&r.jsx(Ce,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:H("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:De=>{De.preventDefault()},onClick:()=>{!le&&be.current&&(be.current.value="",G(0)),i?.("")},tabIndex:-1}),E&&!lt&&r.jsx("span",{className:"text-field__icon text-field__icon--right",children:r.jsx(ot,{icon:E,label:"",className:"",svgClassName:"text-field__icon-svg",size:ke})})]}),!!O&&r.jsx("span",{className:"text-field__status",role:"status","aria-live":"polite",children:X.open&&(t??"").length>0&&X.filtered.length===0?H("common.noMatches","\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"):""}),re&&(typeof document>"u"?null:ua.createPortal(r.jsx("ul",{id:X.listId,className:"text-field__suggestions",role:"listbox",style:K??{position:"fixed",visibility:"hidden"},"data-tooltip-ignore":!0,children:X.filtered.map((De,Ue)=>r.jsx("li",{id:`${X.listId}-option-${Ue}`,role:"option","aria-selected":Ue===X.activeIdx,className:`text-field__suggestion body-2${Ue===X.activeIdx?" is-active":""}`,onMouseDown:Se=>Se.preventDefault(),onClick:()=>{X.handleSelect(De),be.current?.focus()},children:typeof De=="string"?De:r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"text-field__suggestion-label",children:De.label}),De.hint&&r.jsx("span",{className:"text-field__suggestion-hint caption-1",children:De.hint})]})},typeof De=="string"?`${De}-${Ue}`:De.id))}),document.body)),(x||g)&&r.jsx("div",{className:"text-field__footer",children:r.jsx("span",{id:se,className:"text-field__helper caption-1",role:g?"alert":void 0,children:g||x})})]})}var J6=".ihabdevteam-core-scope .dropdown{display:inline-block;position:relative}.ihabdevteam-core-scope .dropdown--block{display:block;width:100%}.ihabdevteam-core-scope .dropdown--block .dropdown__trigger{min-width:0}.ihabdevteam-core-scope .dropdown--s40 .dropdown__trigger{border-radius:10px;height:40px}.ihabdevteam-core-scope .dropdown--s48 .dropdown__trigger{border-radius:12px;height:48px}.ihabdevteam-core-scope .dropdown__trigger{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:12px;box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;font-family:var(--font-family);gap:var(--spacing-xs);height:48px;justify-content:space-between;min-width:120px;padding:0 12px;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s;white-space:nowrap;width:100%}.ihabdevteam-core-scope .dropdown__trigger:hover:not(:disabled){border-color:var(--color-main)}.ihabdevteam-core-scope .dropdown__trigger:focus-visible{border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10);outline:none}.ihabdevteam-core-scope .dropdown__trigger:disabled{background:var(--color-deepWhite);cursor:default;opacity:.5}.ihabdevteam-core-scope .dropdown--open .dropdown__trigger{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10)}.ihabdevteam-core-scope .dropdown--error .dropdown__trigger{border:1px solid var(--color-error)}.ihabdevteam-core-scope .dropdown--error .dropdown__trigger:hover:not(:disabled),.ihabdevteam-core-scope .dropdown--error.dropdown--open .dropdown__trigger{border-color:var(--color-error);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-error) 15%,transparent)}.ihabdevteam-core-scope .dropdown__trigger-label{flex:1;overflow:hidden;text-overflow:ellipsis}.ihabdevteam-core-scope .dropdown__trigger-label--placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .dropdown__chevron{color:var(--color-gray);flex-shrink:0;height:16px;transition:transform .2s;width:16px}.ihabdevteam-core-scope .dropdown--open .dropdown__chevron{transform:rotate(180deg)}.ihabdevteam-core-scope .dropdown__menu{animation:dropdown-appear .12s ease;background:var(--color-white);border:1.5px solid var(--color-whiteLine);border-radius:var(--radius-card);box-shadow:var(--shadow-dropdown);box-sizing:border-box;max-height:260px;overflow-y:auto;overscroll-behavior-y:contain;padding:6px}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ihabdevteam-core-scope .dropdown__option{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;font-family:var(--font-family);gap:var(--spacing-xs);padding:9px 12px;text-align:left;transition:background .1s,color .1s;white-space:nowrap;width:100%}.ihabdevteam-core-scope .dropdown__option:hover{background:var(--color-deepWhite)}.ihabdevteam-core-scope .dropdown__option--active{background:var(--color-main-a10);color:var(--color-main)}.ihabdevteam-core-scope .dropdown__option--disabled{cursor:default;opacity:.4;pointer-events:none}.ihabdevteam-core-scope .dropdown__option-check{align-items:center;color:var(--color-main);display:flex;flex-shrink:0;height:14px;justify-content:center;width:14px}.ihabdevteam-core-scope .dropdown__option-check svg{height:14px;width:14px}";ce(J6);function _a({options:e,value:t,onChange:a,placeholder:o,disabled:n=!1,block:i=!1,size:l=48,error:c=!1,className:u="",ariaLabel:d,ariaDescribedBy:h}){const{t:p}=_e.useTranslation(),m=o??p("dropdown.placeholder","\uC120\uD0DD"),C=s.useId(),v=s.useId(),f=s.useRef(null),g=s.useCallback((L,M)=>{const z=window.innerHeight-L.bottom<260&&L.top>260;return{position:"fixed",left:L.left,minWidth:L.width,...z?{bottom:window.innerHeight-L.top+6}:{top:L.bottom+6},zIndex:Cn(M)}},[]),{open:x,setOpen:b,toggle:w,style:_,triggerRef:A,menuRef:y}=Vo({computeStyle:g}),[B,k]=s.useState(-1),S=s.useCallback(()=>k(-1),[]),E=e.find(L=>L.value===t);s.useEffect(()=>{if(x){const L=e.findIndex(M=>M.value===t);k(L>=0?L:e.length?0:-1),requestAnimationFrame(()=>{const M=y.current;if(!M)return;const z=M.querySelectorAll(".dropdown__option")[L];z&&(M.scrollTop=Math.max(0,z.offsetTop-M.clientHeight/2+z.clientHeight/2))})}},[x]),s.useEffect(()=>{x&&k(L=>{if(L>=0&&L<e.length)return L;const M=e.findIndex(z=>z.value===t);return M>=0?M:e.length?0:-1})},[x,e.length]);const D=s.useCallback(()=>{n||w()},[n,w]),I=s.useCallback(L=>{L.disabled||n||(L.value!==t&&a?.(L.value),b(!1))},[a,b,n,t]);s.useEffect(()=>{n&&b(!1)},[n,b]);const j=s.useCallback(L=>{if(!n){if(!x){(L.key==="Enter"||L.key===" "||L.key==="ArrowDown")&&(L.preventDefault(),b(!0));return}if(L.key==="Escape"){L.preventDefault(),b(!1);return}L.key==="ArrowDown"?(L.preventDefault(),k(M=>{let z=M+1;for(;z<e.length&&e[z].disabled;)z++;return z<e.length?z:M})):L.key==="ArrowUp"?(L.preventDefault(),k(M=>{let z=M-1;for(;z>=0&&e[z].disabled;)z--;return z>=0?z:M})):(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),e[B]?I(e[B]):b(!1))}},[n,x,e,B,I,b]),W=x?r.jsx("div",{ref:y,id:C,className:"dropdown__menu","data-tooltip-ignore":!0,role:"listbox",style:_,onMouseLeave:S,onMouseDown:L=>L.preventDefault(),children:e.map((L,M)=>r.jsxs("button",{id:`${C}-option-${M}`,type:"button",role:"option","aria-selected":L.value===t,className:Ne("dropdown__option body-2",L.value===t?"dropdown__option--active":"",M===B?"dropdown__option--active":"",L.disabled?"dropdown__option--disabled":""),onMouseDown:z=>z.preventDefault(),onClick:()=>I(L),onMouseEnter:()=>k(M),disabled:L.disabled,children:[r.jsx("span",{className:"dropdown__option-check",children:L.value===t&&r.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:r.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),L.label]},L.value))}):null;return r.jsxs("div",{ref:f,className:Ne("dropdown",`dropdown--s${l}`,x?"dropdown--open":"",i?"dropdown--block":"",c?"dropdown--error":"",u),onKeyDown:j,children:[r.jsxs("button",{ref:A,type:"button",className:"dropdown__trigger",role:"combobox","aria-haspopup":"listbox","aria-expanded":x,"aria-controls":x?C:void 0,"aria-activedescendant":x&&B>=0?`${C}-option-${B}`:void 0,"aria-label":d,"aria-describedby":[d&&E?v:"",h??""].filter(Boolean).join(" ")||void 0,"aria-invalid":c||void 0,disabled:n,onClick:D,onBlur:L=>{x&&!y.current?.contains(L.relatedTarget)&&b(!1)},children:[r.jsx("span",{id:v,className:`dropdown__trigger-label body-2${E?"":" dropdown__trigger-label--placeholder"}`,children:E?E.label:m}),r.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:r.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&ua.createPortal(W,f.current?.closest(".ihabdevteam-core-scope")??document.body)]})}var Q6=".ihabdevteam-core-scope .pagination{align-items:center;display:flex;gap:4px}.ihabdevteam-core-scope .pagination__info{color:var(--color-darkGray);font-weight:600;min-width:48px;text-align:center}";ce(Q6);function kn({page:e,totalPages:t,onChange:a,prevLabel:o,nextLabel:n,className:i=""}){const{t:l}=_e.useTranslation(),c=o??l("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),u=n??l("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=Math.max(1,t),h=()=>a(Math.max(1,Math.min(d,e-1))),p=()=>a(Math.min(d,e+1));return r.jsxs("div",{className:Ne("pagination",i),children:[r.jsx(Ce,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:c,disabled:e<=1,onClick:h}),r.jsxs("span",{className:"pagination__info body-3","aria-live":"polite","aria-atomic":"true",children:[Math.min(Math.max(1,e),d)," / ",d]}),r.jsx(Ce,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:u,disabled:e>=t,onClick:p})]})}var e9=".ihabdevteam-core-scope .segmented-control{background:var(--color-darkWhite);display:inline-flex;flex-shrink:0;flex-wrap:wrap;gap:0;overflow:hidden;padding:0}.ihabdevteam-core-scope .segmented-control--pill{border-radius:999px}.ihabdevteam-core-scope .segmented-control--rounded{border-radius:8px}.ihabdevteam-core-scope .segmented-control--24.segmented-control--rounded{border-radius:6px}.ihabdevteam-core-scope .segmented-control .button{min-width:96px}.ihabdevteam-core-scope .segmented-control.segmented-control--min .button{min-width:var(--segmented-min-button-w)}.ihabdevteam-core-scope .segmented-control--24 .button{min-width:48px}.ihabdevteam-core-scope .segmented-control--32 .button,.ihabdevteam-core-scope .segmented-control--40 .button{min-width:80px}.ihabdevteam-core-scope .segmented-control--48 .button{min-width:96px}.ihabdevteam-core-scope .segmented-control--no-bg{background:transparent}.ihabdevteam-core-scope .segmented-control--full{display:flex;flex-wrap:nowrap;width:100%}.ihabdevteam-core-scope .segmented-control--full .button{flex:1 1 0;min-width:0}@media (max-width:767px){.ihabdevteam-core-scope .segmented-control{flex-shrink:1;min-width:0}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(4):last-child){border-radius:8px;display:grid;grid-template-columns:repeat(2,1fr);width:100%}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(4):last-child)>.button{justify-content:center;width:100%}.ihabdevteam-core-scope .segmented-control--pill:has(>.button:nth-child(5)){border-radius:8px}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(5)){justify-content:center}}";ce(e9);const Bn=new Map;function Ta(e){const{t}=_e.useTranslation(),{options:a=[],value:o=a.find(_=>!_.disabled)?.key??a[0]?.key,onChange:n=_=>{},className:i="",size:l=40,shape:c="pill",useBG:u=!0,fullWidth:d=!1,minButtonWidth:h,ariaLabel:p}=e||{},m=s.useRef(null),C=a.filter(_=>!_.disabled),v=s.useId(),f=a.map(_=>_.key).join("\xB7");s.useEffect(()=>{if(!(!Xo||p!=null&&p!=="")){if(Bn.set(v,f||"(\uBCF4\uAE30 \uC5C6\uC74C)"),Bn.size>1){const _=[...Bn.values()].sort();ra(`segmented-control-unnamed:${_.join("|")}`,`[ihab/SegmentedControl] \uC774\uB984 \uC5C6\uB294 \uB77C\uB514\uC624\uADF8\uB8F9\uC774 \uD55C \uD654\uBA74\uC5D0 ${Bn.size} \uAC1C \uC11C \uC788\uC2B5\uB2C8\uB2E4 \u2014 \uB0AD\uB3C5\uAE30\uB294 \uBAA8\uB450 "\uC120\uD0DD \uD0ED" \uC73C\uB85C \uC77D\uC5B4 \uC5B4\uB290 \uAC83\uC774 \uBB34\uC5C7\uC778\uC9C0 \uAC00\uB9B4 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. ariaLabel \uC744 \uC8FC\uC138\uC694. \uC9C0\uAE08 \uC120 \uAC83(\uBCF4\uAE30 \uC774\uB984\uC73C\uB85C \uC801\uC74C): ${_.join(" / ")}`)}return()=>{Bn.delete(v)}}},[p,f,v]);const g=_=>{if(!C.length)return;const A=Math.max(0,C.findIndex(B=>B.key===o)),y=_==="first"?C[0]:_==="last"?C[C.length-1]:C[(A+_+C.length)%C.length];y&&(n(y.key),Array.from(m.current?.querySelectorAll("[data-segkey]")??[]).find(B=>B.dataset.segkey===y.key)?.focus())},x=_=>{switch(_.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}_.preventDefault()},b=_=>{const A=y=>typeof y=="string"||typeof y=="number";if(!(!A(_.label)||_.count==null||_.count===!1||!A(_.count)))return`${_.label}, ${_.count}`},w=C.some(_=>_.key===o)?o:C[0]?.key;return r.jsx("div",{ref:m,onKeyDown:x,className:Ne("segmented-control",`segmented-control--${c}`,`segmented-control--${l}`,d&&"segmented-control--full",!u&&"segmented-control--no-bg",h!=null&&"segmented-control--min",i),style:h!=null?{"--segmented-min-button-w":`${h}px`}:void 0,role:"radiogroup","aria-label":p??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(_=>r.jsx(Ce,{htmlType:"button",role:"radio","aria-checked":_.key===o,"data-segkey":_.key,tabIndex:_.key===w?0:-1,label:_.label,count:_.count,ariaLabel:b(_),disabled:_.disabled,className:_.key===o?"is-selected":"",onClick:()=>{_.disabled||n(_.key)},size:l,shape:c,useBorder:!1,useBG:!1},_.key))})}var t9=".ihabdevteam-core-scope .toolbar{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-s);min-height:64px;padding-bottom:8px;padding-top:8px;width:100%}.ihabdevteam-core-scope .toolbar__row{display:contents}.ihabdevteam-core-scope .toolbar__row-end{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s);justify-content:flex-end;margin-left:auto}.ihabdevteam-core-scope .toolbar__row-end>*{justify-content:flex-end}.ihabdevteam-core-scope .toolbar__pager{align-items:center;display:flex;flex-shrink:0;flex-wrap:nowrap;gap:var(--spacing-s)}.ihabdevteam-core-scope .toolbar__count{color:var(--color-gray);flex-shrink:0;margin:0;white-space:nowrap}.ihabdevteam-core-scope .toolbar .toolbar__search{flex-shrink:0;min-width:200px}@media (max-width:767px){.ihabdevteam-core-scope .toolbar{align-items:stretch;flex-direction:column;flex-wrap:wrap;padding-bottom:12px;padding-top:12px}.ihabdevteam-core-scope .toolbar__row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s)}.ihabdevteam-core-scope .toolbar .toolbar__search{flex:1;min-width:150px}}.ihabdevteam-core-scope .toolbar__count-highlight{color:var(--color-main)}";ce(t9);function Pi({count:e,search:t,segment:a,filters:o,pageSize:n,pagination:i,actions:l,className:c}){const{t:u}=_e.useTranslation(),d=e!=null&&r.jsxs("p",{className:"toolbar__count body-1",role:"status","aria-atomic":"true",children:[e.prefix??u("common.totalPrefix","\uCD1D "),r.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),h=!!(t||o?.length||n||i||l);return r.jsxs("div",{className:Ne("toolbar",c),children:[r.jsxs("div",{className:"toolbar__row",children:[d,a&&(Array.isArray(a)?a:[a]).map((p,m)=>r.jsx(Ta,{size:40,...p},p.ariaLabel??m))]}),h&&r.jsx("div",{className:"toolbar__row",children:r.jsxs("div",{className:"toolbar__row-end",children:[t&&r.jsx(yo,{className:"toolbar__search",size:40,value:t.value,onChange:t.onChange,placeholder:t.placeholder??u("common.search","\uAC80\uC0C9"),ariaLabel:t.placeholder??u("common.search","\uAC80\uC0C9"),autoFocus:t.autoFocus,clearable:!0}),o?.map((p,m)=>r.jsx(_a,{size:40,options:p.options,value:p.value,onChange:p.onChange,ariaLabel:p.ariaLabel},m)),(n||i)&&r.jsxs("div",{className:"toolbar__pager",children:[n&&r.jsx(_a,{size:40,options:n.options,value:n.value,onChange:n.onChange,ariaLabel:n.ariaLabel??u("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),i&&r.jsx(kn,{page:i.page,totalPages:i.total,onChange:i.onChange,prevLabel:i.prevLabel,nextLabel:i.nextLabel})]}),l]})})]})}var a9=".ihabdevteam-core-scope .code-box{background:#eff8ff;background:var(--color-code-bg,#eff8ff);border:1px solid rgba(4,34,51,.06);border-radius:10px;color:#042233;color:var(--color-code-text,#042233);margin:0;overflow:hidden;padding:16px 20px}.ihabdevteam-core-scope .code-box__header{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:40px}.ihabdevteam-core-scope .code-box__title{align-items:center;color:rgba(4,34,51,.75);display:flex;letter-spacing:.02em}.ihabdevteam-core-scope .code-box__copy{flex-shrink:0}.ihabdevteam-core-scope .code-box__inner{background:transparent;color:#042233;color:var(--color-code-text,#042233);font-family:var(--font-mono);font-size:13px;line-height:1.6;margin:0;overflow-wrap:anywhere;overflow-x:auto;padding:8px 0 0;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-box__inner code{display:block;font-family:inherit;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-box--small .code-box__inner{font-size:12px}.ihabdevteam-core-scope .code-token{overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-token.keyword{color:#6b46ff;font-weight:600}.ihabdevteam-core-scope .code-token.string{color:#0a9d58}.ihabdevteam-core-scope .code-token.comment{color:#6b7280;font-style:italic}.ihabdevteam-core-scope .code-token.command{color:#0b78d1}.ihabdevteam-core-scope .code-token.number{color:#d97706}.ihabdevteam-core-scope .code-token.operator{color:#dc2626}.ihabdevteam-core-scope .code-token.identifier,.ihabdevteam-core-scope .code-token.punctuation{color:#042233;color:var(--color-code-text,#042233)}";ce(a9);function C0(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(C0).join(""):""}function o9(e){let t=e.replace(/\r\n/g,`
|
|
854
854
|
`).replace(/\r/g,`
|
|
@@ -856,7 +856,7 @@ ${_.badge}`:_.badge:void 0;if(y&&u(_.code))return null;if(!_.badge&&!h)return p(
|
|
|
856
856
|
`).map(i=>i.replace(/\t/g," ")),o=a.filter(i=>i.trim().length>0),n=o.length>0?Math.min(...o.map(i=>i.match(/^ */)?.[0].length??0)):0;return a.map(i=>i.slice(n)).join(`
|
|
857
857
|
`)}const r9=new Set(["pnpm","npm","yarn","node","git","curl","docker","cat","ls","cd","rm","mv","cp","echo","export"]),n9=/^(?: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 i9(e,t){let a=e;const o=[],n=/^(?:sh|bash|zsh|shell|console)$/.test(t.toLowerCase()),i=(l,c)=>o.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(!n&&a.startsWith("//")){const v=a.indexOf(`
|
|
858
858
|
`),f=v===-1?a:a.slice(0,v);i("comment",f),a=a.slice(f.length);continue}if(n&&a.startsWith("#")){const v=a.indexOf(`
|
|
859
|
-
`),f=v===-1?a:a.slice(0,v);i("comment",f),a=a.slice(f.length);continue}const c=a.match(/^\/\*[\s\S]*?\*\//);if(c){i("comment",c[0]),a=a.slice(c[0].length);continue}const 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 h=a.match(n9);if(h){i("keyword",h[0]),a=a.slice(h[0].length);continue}const p=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(p){const v=p[0];i(n&&r9.has(v)?"command":"identifier",v),a=a.slice(v.length);continue}const m=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(m){i("operator",m[0]),a=a.slice(m[0].length);continue}const C=a.match(/^[()[\]{};.,]/);if(C){i("punctuation",C[0]),a=a.slice(1);continue}i("other",a[0]),a=a.slice(1)}return o}function x0({children:e,language:t="bash",title:a="",showCopy:o=!0,size:n="default",className:i=""}){const{t:l}=_e.useTranslation(),[c,u]=s.useState(!1),d=o9(C0(e)),h=s.useRef(null);s.useEffect(()=>()=>{h.current&&clearTimeout(h.current)},[]);const p=async()=>{try{if(!await Zl(d))return;u(!0),h.current&&clearTimeout(h.current),h.current=setTimeout(()=>u(!1),2e3)}catch{}},m=i9(d,t),C=n==="small"?"caption-1":"body-3";return r.jsxs("div",{className:Ne("code-box",n==="small"?"code-box--small":"",i),children:[(a||o)&&r.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":l("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[r.jsx("div",{className:"code-box__title caption-1",children:a}),o&&r.jsx(Ce,{htmlType:"button",className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:c?"check":"copy",onClick:p,ariaLabel:c?l("common.copied","\uBCF5\uC0AC\uB428"):l("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),r.jsx("pre",{className:"code-box__inner","data-lang":t,children:r.jsx("code",{children:m.map((v,f)=>r.jsx("span",{className:`code-token ${v.type} ${C}`,children:v.content},f))})})]})}var s9=".ihabdevteam-core-scope .loader-spinner{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .loader-spinner__svg{animation:loader-rotate 1s linear infinite;transform-origin:center}.ihabdevteam-core-scope .loader-spinner__bg{stroke:rgba(0,0,0,.08)}.ihabdevteam-core-scope .loader-spinner__fg{stroke:var(--color-main);stroke-dasharray:125;stroke-dashoffset:80;animation:loader-dash 1.2s ease-in-out infinite}@keyframes loader-rotate{to{transform:rotate(1turn)}}@keyframes loader-dash{0%{stroke-dashoffset:125}50%{stroke-dashoffset:35}to{stroke-dashoffset:125}}.ihabdevteam-core-scope .loader-bar{background:rgba(0,0,0,.06);border-radius:999px;height:8px;overflow:hidden;width:100%}.ihabdevteam-core-scope .loader-bar__inner{background:var(--color-main);height:100%;transition:width .22s cubic-bezier(.2,.8,.2,1);width:0}.ihabdevteam-core-scope .loader-bar--indeterminate .loader-bar__inner{animation:loader-bar-indeterminate 1.4s ease-in-out infinite;width:40%}@keyframes loader-bar-indeterminate{0%{transform:translateX(-150%)}to{transform:translateX(400%)}}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .loader-spinner__svg{animation-duration:2.4s!important;animation-iteration-count:infinite!important}.ihabdevteam-core-scope .loader-spinner__fg{animation:none!important}.ihabdevteam-core-scope .loader-bar--indeterminate .loader-bar__inner{animation:none!important;transform:none;width:100%}}@keyframes core-loader-rotate{to{transform:rotate(1turn)}}@keyframes core-loader-dash{0%{stroke-dashoffset:125}50%{stroke-dashoffset:35}to{stroke-dashoffset:125}}.ihabdevteam-core-scope .page-loading-center{display:flex;justify-content:center;padding:40px 0}";ce(s9);const l9={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0};function yr(e){const{t}=_e.useTranslation(),{variant:a="spinner",size:o=24,progress:n=null,label:i}=e||{},l=i||t("loader.loading","Loading");if(a==="bar"){const u=n==null||!Number.isFinite(Number(n)),d=u?0:Math.max(0,Math.min(100,Number(n)));return r.jsx("div",{className:`loader-bar${u?" loader-bar--indeterminate":""}`,role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":u?void 0:d,"aria-label":l,children:r.jsx("div",{className:"loader-bar__inner",style:u?void 0:{width:`${d}%`}})})}const c=typeof o=="number"?`${o}px`:o;return r.jsxs("div",{className:"loader-spinner",style:{width:c,height:c},role:"status","aria-label":l,children:[r.jsx("span",{style:l9,children:l}),r.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:o,height:o,children:[r.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),r.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})]})}var c9='.ihabdevteam-core-scope .toggle{align-items:center;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .toggle input{height:0;opacity:0;position:absolute;width:0}.ihabdevteam-core-scope .toggle__slider{background:#e2e8f0;background:var(--color-whiteLine,#e2e8f0);border-radius:26px;display:inline-block;flex-shrink:0;height:26px;position:relative;transition:background .2s;width:44px}.ihabdevteam-core-scope .toggle__slider:before{background:var(--color-pureWhite);border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.15);content:"";height:20px;left:3px;position:absolute;top:3px;transition:transform .2s;width:20px}.ihabdevteam-core-scope .toggle input:checked+.toggle__slider{background:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .toggle input:checked+.toggle__slider:before{transform:translateX(18px)}.ihabdevteam-core-scope .toggle input:focus-visible+.toggle__slider{outline:2px solid var(--color-main,var(--color-main));outline-offset:2px}.ihabdevteam-core-scope .toggle__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .toggle--disabled{cursor:not-allowed;opacity:.45}';ce(c9);function id({checked:e,onChange:t,disabled:a=!1,label:o,ariaLabel:n,labelPosition:i="right",className:l="",id:c}){const u=o&&r.jsx("span",{className:"toggle__label body-3",children:o});return r.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${l}`.trim(),children:[i==="left"&&u,r.jsx("input",{id:c,type:"checkbox",role:"switch",checked:e,disabled:a,onChange:d=>t?.(d.target.checked),"aria-label":!o&&n?n:void 0}),r.jsx("span",{className:"toggle__slider"}),i==="right"&&u]})}var u9=`.ihabdevteam-core-scope .checkbox{align-items:center;cursor:pointer;display:inline-flex;gap:8px;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .checkbox--disabled{cursor:not-allowed;opacity:.4}.ihabdevteam-core-scope .checkbox__input{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .checkbox__box{background:var(--color-white,var(--color-pureWhite));border:1.5px solid var(--color-whiteLine);border-radius:8px;border-radius:var(--radius-sm,8px);flex-shrink:0;height:24px;position:relative;transition:border-color .15s,background .15s;width:24px}.ihabdevteam-core-scope .checkbox__input:checked+.checkbox__box{background:var(--color-main,var(--color-main));border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:checked+.checkbox__box:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m4 9 3.5 3.5L14 6'/%3E%3C/svg%3E") 50%/cover no-repeat;content:"";inset:0;position:absolute}.ihabdevteam-core-scope .checkbox__input:indeterminate+.checkbox__box{background:var(--color-main,var(--color-main));border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:indeterminate+.checkbox__box:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-width='2' d='M4.5 9h9'/%3E%3C/svg%3E") 50%/cover no-repeat;content:"";inset:0;position:absolute}.ihabdevteam-core-scope .checkbox:not(.checkbox--disabled):hover .checkbox__box{border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:focus-visible+.checkbox__box{outline:2px solid var(--color-main,var(--color-main));outline-offset:2px}.ihabdevteam-core-scope .checkbox--large .checkbox__box{border-radius:10px;border-radius:var(--radius-s,10px);height:30px;width:30px}.ihabdevteam-core-scope .checkbox--small .checkbox__box{border-radius:4px;border-radius:var(--radius-xs,4px);height:16px;width:16px}.ihabdevteam-core-scope .checkbox__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .checkbox--small .checkbox__label{font-size:13px}`;ce(u9);function sd({checked:e=!1,onChange:t,disabled:a,indeterminate:o,label:n,size:i="medium",className:l,title:c,ariaLabel:u}){const d=s.useRef(null),h=s.useId(),p=s.useRef(!!o);return p.current=!!o,s.useEffect(()=>{d.current&&(d.current.indeterminate=!!o)}),r.jsxs("label",{className:Ne("checkbox",i==="small"&&"checkbox--small",i==="large"&&"checkbox--large",a&&"checkbox--disabled",l),htmlFor:h,title:c,children:[r.jsx("input",{ref:d,id:h,type:"checkbox",className:"checkbox__input",checked:e,onChange:m=>{t?.(m.target.checked),d.current&&(d.current.indeterminate=p.current)},disabled:a,"aria-label":!n&&u?u:void 0}),r.jsx("span",{className:"checkbox__box"}),n&&r.jsx("span",{className:"checkbox__label body-3",children:n})]})}var d9=".ihabdevteam-core-scope .bulk-bar{align-items:center;background:var(--color-pureWhite,var(--color-pureWhite));border:1px solid var(--color-main);border-radius:12px;border-radius:var(--radius-m,12px);bottom:24px;box-shadow:0 4px 20px rgba(0,0,0,.12);box-sizing:border-box;color:#1a1a1a;color:var(--color-gray900,#1a1a1a);display:flex;gap:12px;justify-content:space-between;margin-top:16px;min-height:60px;opacity:0;padding:10px 16px;pointer-events:none;position:sticky;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease;z-index:600;z-index:var(--z-bulk-bar,600)}.ihabdevteam-core-scope .bulk-bar--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.ihabdevteam-core-scope .bulk-bar__count{color:#1a1a1a;color:var(--color-gray900,#1a1a1a);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .bulk-bar__count b{color:var(--color-main)}.ihabdevteam-core-scope .bulk-bar__actions{display:flex;flex-shrink:0;gap:8px}.ihabdevteam-core-scope .bulk-bar__chips{align-items:center;display:flex;flex-wrap:wrap;gap:8px;gap:var(--spacing-xs,8px);min-width:0}.ihabdevteam-core-scope .bulk-bar__chips .button{white-space:nowrap}@media (max-width:767px){.ihabdevteam-core-scope .bulk-bar{flex-wrap:wrap}.ihabdevteam-core-scope .bulk-bar__actions{flex-wrap:wrap;justify-content:flex-end;width:100%}}.ihabdevteam-core-scope .bulk-bar__actions--stacked{align-items:stretch;flex-direction:column}";ce(d9);function _0({count:e,actions:t,onClear:a,clearLabel:o,visible:n,content:i,max:l}){const{t:c}=_e.useTranslation(),u=n!==void 0?n:e>0,d=o??c("bulkBar.clearSelection","\uC120\uD0DD \uD574\uC81C"),h=s.useRef(null),p=s.useRef(null),m=s.useRef(null),C=s.useRef(u);s.useLayoutEffect(()=>{const b=p.current,w=C.current;if(C.current=u,u&&!w){const _=typeof document<"u"?document.activeElement:null;m.current=_&&_!==document.body&&!b?.contains(_)?_:null}else!u&&w&&b&&b.contains(document.activeElement)&&vi(b,m.current)},[u]);const[v,f]=s.useState(!1),g=s.useRef(!1),x=s.useRef(null);return s.useEffect(()=>{const b=h.current;if(!b)return;const w=S=>{g.current=S,f(S)},_=()=>{const S=b.firstElementChild??b,E=Array.from(S.children);if(E.length<2){w(!1);return}const D=E[0].offsetTop,I=E.some(z=>z.offsetTop!==D);if(!g.current){x.current=b.clientWidth,I&&w(!0);return}if(I)return;const j=E[0],W=E[E.length-1],L=W.offsetLeft+W.offsetWidth-j.offsetLeft,M=x.current;(M==null||L<=M)&&w(!1)};if(_(),typeof ResizeObserver>"u")return;const A=new ResizeObserver(_);A.observe(b);const y=b.parentElement;let B=y?.clientWidth??0;const k=new ResizeObserver(()=>{const S=y?.clientWidth??0;S!==B&&(B=S,x.current=null,_())});return y&&k.observe(y),()=>{A.disconnect(),k.disconnect()}},[i,e]),r.jsxs("div",{ref:p,className:`bulk-bar ${u?"bulk-bar--visible":""}`,inert:!u||void 0,"aria-hidden":u?void 0:!0,children:[r.jsx("span",{ref:h,className:"bulk-bar__count body-2",role:"status",children:i??r.jsx("b",{children:c("common.selectedCount",{count:e})})}),l!==void 0&&r.jsx(St,{size:"small",fill:"soft",variant:"main",label:`${e} / ${l}`,"aria-label":c("common.selectedOfMax",{count:e,max:l,defaultValue:`\uCD5C\uB300 ${l}\uAC1C \uC911 ${e}\uAC1C`})}),r.jsxs("div",{className:`bulk-bar__actions${v?" bulk-bar__actions--stacked":""}`,children:[r.jsx(Ce,{htmlType:"button",size:40,label:d,onClick:a}),t.map((b,w)=>r.jsx(Ce,{htmlType:"button",size:40,variant:b.variant??"default",icon:b.icon,label:b.label,onClick:b.onClick},w))]})]})}var p9=".ihabdevteam-core-scope .item-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}";ce(p9);const h9=[{\uC5F4\uC1E0:"edit",icon:"edit-2",\uB2EB\uACE0\uD560\uAE4C:!0},{\uC5F4\uC1E0:"duplicate",icon:"copy",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"publish",icon:"book-marked",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"copyLink",icon:"link",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"remove",icon:"trash-2",\uB2EB\uACE0\uD560\uAE4C:!0}];function y0(e){const{onClose:t,className:a}=e;return r.jsx("div",{className:Ne("item-actions",a),children:h9.map(({\uC5F4\uC1E0:o,icon:n,\uB2EB\uACE0\uD560\uAE4C:i})=>{const l=e[o];if(!l)return null;const c=o==="publish"?l.published?l.unpublish:l.publish:l;return r.jsx(Ce,{htmlType:"button",size:40,type:"dot",icon:n,ariaLabel:c.label,showTooltipInfo:c.label,onClick:()=>{i&&t(),c.onClick()}},o)})})}function ld(e,t){const a=()=>{if(e){const[f,g]=e.split("-");return{y:+f,m:+g-1}}const[C,v]=Xl(t).split("-");return{y:+C,m:+v-1}},[o,n]=s.useState(()=>a().y),[i,l]=s.useState(()=>a().m),c=s.useRef(e);s.useEffect(()=>{if(e===c.current)return;c.current=e;const C=a();n(C.y),l(C.m)},[e]);const u=s.useRef({y:o,m:i});s.useEffect(()=>{u.current={y:o,m:i}},[o,i]);const d=s.useCallback(C=>{const v=u.current.y*12+u.current.m+C,f=Math.floor(v/12),g=v-f*12;u.current={y:f,m:g},n(f),l(g)},[]),h=s.useCallback(()=>d(-1),[d]),p=s.useCallback(()=>d(1),[d]),m=s.useCallback((C,v)=>{u.current={y:C,m:v},n(C),l(v)},[]);return{viewY:o,viewM:i,prevMonth:h,nextMonth:p,setViewYM:m}}var m9=".ihabdevteam-core-scope .date-picker{position:relative;width:100%}.ihabdevteam-core-scope .date-picker__trigger{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;justify-content:space-between;padding:0 12px;text-align:left;transition:border-color .12s,background .12s,box-shadow .12s;width:100%}.ihabdevteam-core-scope .date-picker--s40 .date-picker__trigger{border-radius:10px;height:40px}.ihabdevteam-core-scope .date-picker--s48 .date-picker__trigger{border-radius:12px;height:48px}.ihabdevteam-core-scope .date-picker--s64 .date-picker__trigger{border-radius:14px;height:64px}.ihabdevteam-core-scope .date-picker--open .date-picker__trigger,.ihabdevteam-core-scope .date-picker__trigger:focus{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10);outline:none}.ihabdevteam-core-scope .date-picker__trigger:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .date-picker__trigger:disabled{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .date-picker__placeholder{color:var(--color-lightGray);white-space:nowrap}.ihabdevteam-core-scope .date-picker__value{color:var(--color-darkGray);white-space:nowrap}.ihabdevteam-core-scope .date-picker__icon{color:var(--color-lightGray);flex-shrink:0;transition:color .12s}.ihabdevteam-core-scope .date-picker--open .date-picker__icon{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__dropdown{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);box-sizing:border-box;min-width:260px;padding:12px;z-index:200}.ihabdevteam-core-scope .date-picker__nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.ihabdevteam-core-scope .date-picker__nav-dropdown{flex:1;margin:0 4px}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger{background:transparent!important;border:none!important;border-radius:6px!important;box-shadow:none!important;gap:4px!important;height:32px!important;justify-content:center!important;transition:background .12s,color .12s!important}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger:hover,.ihabdevteam-core-scope .date-picker__nav-dropdown.dropdown--open .dropdown__trigger{background:var(--color-deepWhite)!important}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger-label{color:var(--color-darkGray)!important;flex:initial!important;font-weight:600!important}.ihabdevteam-core-scope .date-picker__nav-btn{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:8px;color:var(--color-darkGray);cursor:pointer;display:flex;height:28px;justify-content:center;transition:border-color .12s,color .12s;width:28px}.ihabdevteam-core-scope .date-picker__nav-btn:hover{border-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .date-picker__grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.ihabdevteam-core-scope .date-picker__dow{color:var(--color-lightGray);font-weight:600;padding:4px 0 6px;text-align:center}.ihabdevteam-core-scope .date-picker__dow:first-child{color:var(--color-error)}.ihabdevteam-core-scope .date-picker__dow:last-child{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day{align-items:center;aspect-ratio:1;background:transparent;border:none;border-radius:6px;color:var(--color-darkGray);cursor:pointer;display:flex;justify-content:center;transition:background .1s,color .1s;width:100%}.ihabdevteam-core-scope .date-picker__day:hover:not(:disabled){background:var(--color-main-a10);color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--sun:hover:not(:disabled){color:var(--color-error)}.ihabdevteam-core-scope .date-picker__day--sat:hover:not(:disabled){color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--sun{color:var(--color-error)}.ihabdevteam-core-scope .date-picker__day--sat{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--today{font-weight:700;outline:1.5px solid var(--color-main);outline-offset:-1.5px}.ihabdevteam-core-scope .date-picker__day:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .date-picker__day--selected{background:var(--color-main)!important;color:#fff!important;font-weight:700}.ihabdevteam-core-scope .date-picker__day--disabled{cursor:not-allowed;opacity:.3}";ce(m9);function zi(e,t){return new Date(e,t+1,0).getDate()}function b9(e,t){return new Date(e,t,1).getDay()}function Ii(e,t,a){return`${e}-${String(t+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function g9(e){if(!e)return"";const[t,a,o]=e.split("-");return`${t}. ${a}. ${o}.`}function f9(e,t,a,o){const n=a?+a.split("-")[0]:e-10,i=o?+o.split("-")[0]:e+10,l=[];for(let c=n;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)||o&&d>o.slice(0,7)||l.push({value:d,label:t(c,u+1)})}return l}function w0({value:e,onChange:t,size:a=48,min:o,max:n,disabled:i,placeholder:l,className:c,today:u}){const{t:d}=_e.useTranslation(),h=l??d("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),p=s.useMemo(()=>d("calendar.dow",{returnObjects:!0}),[d]),m=Xl(u),{viewY:C,viewM:v,prevMonth:f,nextMonth:g,setViewYM:x}=ld(e,u),b=s.useId(),w=s.useCallback((T,F)=>{const N=window.innerHeight,O=window.innerWidth,H=typeof document<"u"?document.getElementById(b):null,Z=Math.max(H?.offsetHeight||0,H?.scrollHeight||0)||300,te=Math.max(T.width,H?.offsetWidth||0,260),se=N-T.bottom,be=T.top,X=se<Z&&be>se,re=8,Ae=(K,ie)=>Math.min(Math.max(re,K),Math.max(re,ie));return{position:"fixed",left:Ae(T.left,O-te-re),width:T.width,minWidth:260,...X?{top:"auto",bottom:Ae(N-T.top+6,N-Z-re)}:{bottom:"auto",top:Ae(T.bottom+6,N-Z-re)},zIndex:Cn(F)}},[b]),{open:_,setOpen:A,toggle:y,style:B,triggerRef:k,menuRef:S}=Vo({computeStyle:w,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"});s.useEffect(()=>{if(!_)return;const T=S.current;return(T?.querySelector(".date-picker__day--selected:not(:disabled)")??T?.querySelector(".date-picker__day--today:not(:disabled)")??T?.querySelector(".date-picker__day:not(:disabled)")??T?.querySelector(Oa)??T)?.focus?.(),()=>{const F=document.activeElement;(!F||F===document.body)&&k.current?.focus?.()}},[_,S,k]);const[E,D]=s.useState(1),I=s.useRef(null),j=s.useRef(null);s.useEffect(()=>{if(!_)return;const T=e&&e.slice(0,7)===`${C}-${String(v+1).padStart(2,"0")}`?+e.slice(8):m.slice(0,7)===`${C}-${String(v+1).padStart(2,"0")}`?+m.slice(8):1;D(T)},[_]),s.useEffect(()=>{if(j.current==null)return;const T=j.current;j.current=null,I.current?.querySelector(`[data-day="${T}"]`)?.focus()}),s.useEffect(()=>{D(T=>Math.min(T,zi(C,v)))},[C,v]);const W=s.useCallback(T=>{let F=Ii(T.getFullYear(),T.getMonth(),T.getDate());o&&F<o&&(F=o),n&&F>n&&(F=n);const[N,O,H]=F.split("-").map(Number);(N!==C||O-1!==v)&&x(N,O-1),D(H),j.current=H},[o,n,C,v,x]),L=s.useCallback(T=>{const F=new Date(C,v,E),N=H=>{F.setDate(F.getDate()+H),W(F)},O=H=>{const Z=F.getFullYear()*12+F.getMonth()+H,te=Math.floor(Z/12),se=Z-te*12;W(new Date(te,se,Math.min(F.getDate(),zi(te,se))))};switch(T.key){case"ArrowLeft":N(-1);break;case"ArrowRight":N(1);break;case"ArrowUp":N(-7);break;case"ArrowDown":N(7);break;case"Home":N(-F.getDay());break;case"End":N(6-F.getDay());break;case"PageUp":T.shiftKey?O(-12):O(-1);break;case"PageDown":T.shiftKey?O(12):O(1);break;default:return}T.preventDefault()},[C,v,E,W]),M=s.useCallback(T=>{i||(t(Ii(C,v,T)),A(!1))},[C,v,t,A,i]);s.useEffect(()=>{i&&A(!1)},[i,A]);const z=T=>{const F=Ii(C,v,T);return!!(o&&F<o||n&&F>n)},q=(()=>{const T=zi(C,v);if(E>=1&&E<=T&&!z(E))return E;for(let F=1;F<=T;F++)if(!z(F))return F;return-1})(),Y=[];for(let T=0;T<b9(C,v);T++)Y.push(null);for(let T=1;T<=zi(C,v);T++)Y.push(T);const P=a===64?20:a===40?16:18,V=f9(C,(T,F)=>d("calendar.yearMonth",{year:T,month:F,defaultValue:"{{year}}\uB144 {{month}}\uC6D4"}),o,n),$=`${C}-${String(v+1).padStart(2,"0")}`,U=_?ua.createPortal(r.jsxs("div",{ref:S,id:b,className:"date-picker__dropdown",style:B,"data-tooltip-ignore":!0,role:"dialog","aria-label":d("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),tabIndex:-1,children:[r.jsxs("div",{className:"date-picker__nav",children:[r.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:f,"aria-label":d("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:r.jsx(Ap,{size:16,strokeWidth:2})}),r.jsx(_a,{className:"date-picker__nav-dropdown",ariaLabel:d("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:V,value:$,onChange:T=>{const[F,N]=T.split("-");x(+F,+N-1)},block:!0,size:40}),r.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:g,"aria-label":d("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:r.jsx(Sp,{size:16,strokeWidth:2})})]}),r.jsxs("div",{className:"date-picker__grid",ref:I,onKeyDown:L,children:[p.map(T=>r.jsx("div",{className:"date-picker__dow caption-1",children:T},T)),Y.map((T,F)=>{if(T===null)return r.jsx("div",{},`e${F}`);const N=Ii(C,v,T),O=N===e,H=N===m,Z=z(T),te=F%7;return r.jsx("button",{type:"button",disabled:Z,"data-day":T,tabIndex:T===q?0:-1,"aria-current":H?"date":void 0,onClick:()=>!Z&&M(T),className:Ne("date-picker__day caption-1",O&&"date-picker__day--selected",H&&!O&&"date-picker__day--today",Z&&"date-picker__day--disabled",te===0&&"date-picker__day--sun",te===6&&"date-picker__day--sat"),children:T},T)})]})]}),document.body):null;return r.jsxs("div",{className:Ne("date-picker",`date-picker--s${a}`,_&&"date-picker--open",c),children:[r.jsxs("button",{ref:k,type:"button",className:"date-picker__trigger body-2",onClick:()=>!i&&y(),disabled:i,"aria-haspopup":"true","aria-expanded":_,children:[r.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?g9(e):h}),r.jsx(Rp,{size:P,className:"date-picker__icon",strokeWidth:1.5})]}),U]})}var v9=".ihabdevteam-core-scope .month-dropdown .dropdown__trigger{max-width:200px;min-width:200px;width:200px}.ihabdevteam-core-scope .month-dropdown .dropdown__menu{max-height:280px;overflow-y:auto;scrollbar-color:var(--color-darkWhite) transparent;scrollbar-width:thin}.ihabdevteam-core-scope .month-dropdown .dropdown__menu::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .month-dropdown .dropdown__menu::-webkit-scrollbar-thumb{background:var(--color-darkWhite);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .manager-bar-chart-wrap{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .manager-bar-chart-gridline{background:var(--color-darkWhite);height:1px;left:0;pointer-events:none;position:absolute;right:0;z-index:-1}.ihabdevteam-core-scope .manager-bar-chart-gridline__label{color:var(--color-deepGray);font-size:11px;left:0;position:absolute;top:100%;white-space:nowrap}.ihabdevteam-core-scope .manager-bar-chart-inner{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-scroll{-webkit-overflow-scrolling:touch;flex:1;overflow-x:auto;overflow-y:visible;scrollbar-width:none}.ihabdevteam-core-scope .manager-bar-chart-scroll::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .manager-bar-chart-area{display:flex;flex-direction:column;min-width:-moz-max-content;min-width:max-content}.ihabdevteam-core-scope .manager-bar-chart-area svg{display:block}.ihabdevteam-core-scope .manager-bar-chart-x-axis{color:var(--color-deepGray);display:flex;font-size:11px;padding-top:6px}.ihabdevteam-core-scope .manager-bar-chart-x-axis__label{align-items:center;display:flex;flex:1;flex-direction:column;gap:1px;justify-content:flex-start;min-width:0;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .manager-bar-chart-x-axis__label--future .caption-1{color:var(--color-whiteLine)}.ihabdevteam-core-scope .manager-bar-chart-x-axis__main{position:relative}.ihabdevteam-core-scope .manager-bar-chart-x-axis__today-dot{border-radius:50%;height:8px;position:absolute;right:calc(100% + 3px);top:50%;transform:translateY(-50%);width:8px}.ihabdevteam-core-scope .manager-bar-chart-plot{align-items:flex-end;display:flex;gap:0;isolation:isolate;position:relative}.ihabdevteam-core-scope .manager-bar-chart-col{align-items:flex-end;display:flex;flex:1;gap:2px;height:100%;justify-content:center}.ihabdevteam-core-scope .manager-bar-chart-bar,.ihabdevteam-core-scope .manager-bar-chart-stack{flex:0 1 var(--bar-width);max-width:var(--bar-width)}.ihabdevteam-core-scope .manager-bar-chart-stack{display:flex;flex-direction:column-reverse;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-bar{border-radius:6px 6px 0 0;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-stack-segment{width:100%}.ihabdevteam-core-scope .manager-bar-chart-detail-btn{margin-left:auto}.ihabdevteam-core-scope .manager-bar-chart-slot{display:flex;flex:0 1 var(--bar-width);flex-direction:column;height:100%;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-slot__half{display:flex;height:50%;justify-content:center}.ihabdevteam-core-scope .manager-bar-chart-slot__half--up{align-items:flex-end}.ihabdevteam-core-scope .manager-bar-chart-slot__half--down{align-items:flex-start}.ihabdevteam-core-scope .manager-bar-chart-bar--full{flex:1 1 auto;width:100%}.ihabdevteam-core-scope .manager-bar-chart-bar--down{border-radius:0 0 6px 6px}.ihabdevteam-core-scope .manager-bar-chart-gridline--baseline{opacity:1}.ihabdevteam-core-scope .manager-bar-chart-col--group{gap:1px;gap:var(--bar-group-gap,1px);padding:0 4px}";ce(v9);var C9=".ihabdevteam-core-scope .manager-section{--card-pad:19px;background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:none;margin-bottom:14px;min-width:320px;padding:19px;padding:var(--card-pad);position:relative}.ihabdevteam-core-scope .manager-section--clickable{cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease}.ihabdevteam-core-scope .manager-section--clickable:hover{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .manager-section__head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:space-between;margin-bottom:var(--spacing-xs)}.ihabdevteam-core-scope .manager-section__disc,.ihabdevteam-core-scope .manager-section__title-row{padding-right:0;padding-right:calc(var(--section-head-float-w, -12px) + 12px)}.ihabdevteam-core-scope .manager-section__title{min-width:0}.ihabdevteam-core-scope .manager-section__title-row{align-items:center;display:flex;flex:1 1 auto;gap:var(--spacing-s);min-width:0}.ihabdevteam-core-scope .manager-section__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .manager-section__disc{color:var(--color-gray);flex:0 0 100%;margin:0;min-width:0}.ihabdevteam-core-scope .manager-section__head-right{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:flex-end;margin-left:auto}.ihabdevteam-core-scope .chart-section-icon{display:inline-flex;opacity:.35}.ihabdevteam-core-scope .chart-section-icon-inner{color:var(--color-darkGray);height:22px;width:22px}@media (max-width:767px){.ihabdevteam-core-scope .manager-section__head{align-items:flex-start;flex-direction:column;flex-wrap:nowrap;gap:var(--spacing-s)}.ihabdevteam-core-scope .manager-section-controls{flex-wrap:wrap}.ihabdevteam-core-scope .manager-section-controls .segmented-control{flex-wrap:nowrap}.ihabdevteam-core-scope .manager-section{--card-pad:17px;min-width:0;padding:17px;padding:var(--card-pad)}}.ihabdevteam-core-scope .manager-section-controls{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-plot--loading,.ihabdevteam-core-scope .ring-chart--loading{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .manager-bar-chart-area--loading .manager-bar-chart-x-axis{justify-content:center}.ihabdevteam-core-scope .barchart-sub-row{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .barchart-sub-row--center{align-items:center}.ihabdevteam-core-scope .barchart-sub-row--end{align-items:flex-end}.ihabdevteam-core-scope .barchart-total{align-items:baseline;display:flex;gap:4px}.ihabdevteam-core-scope .barchart-total--stacked{align-items:flex-start;flex-direction:column;gap:2px}.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__label,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__num,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__unit,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__value{line-height:1.1;margin:0}.ihabdevteam-core-scope .barchart-total__label{color:var(--color-gray)}.ihabdevteam-core-scope .barchart-total__value{align-items:baseline;display:flex;gap:4px}.ihabdevteam-core-scope .barchart-total__num{color:var(--color-black)}.ihabdevteam-core-scope .barchart-total__unit{color:var(--color-gray)}.ihabdevteam-core-scope .manager-bar-chart-legend{align-items:flex-end;color:var(--color-gray);display:flex;flex-direction:column;font-size:12px;gap:6px;padding-right:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-legend-item{align-items:center;display:inline-flex}.ihabdevteam-core-scope .manager-bar-chart-legend-dot{border-radius:50%;display:inline-block;height:8px;margin-right:4px;width:8px}.ihabdevteam-core-scope .manager-section--compact{--card-pad:19px;min-width:160px;padding:19px;padding:var(--card-pad)}.ihabdevteam-core-scope .manager-section--compact .manager-section__head{margin-bottom:4px;min-height:28px}.ihabdevteam-core-scope .chart-section-title--small{color:var(--color-deepGray)}.ihabdevteam-core-scope .manager-section--compact .barchart-total__num{font-size:32px;line-height:1}.ihabdevteam-core-scope .manager-section--compact .barchart-total{flex-shrink:0}.ihabdevteam-core-scope .manager-section--compact .barchart-sub-row{margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .manager-section--compact .manager-bar-chart-legend{align-items:stretch;flex:1 1 auto;min-width:0}.ihabdevteam-core-scope .manager-section--compact .manager-bar-chart-legend-item{display:flex;justify-content:flex-end;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.ihabdevteam-core-scope .manager-section--full{flex:1 1 100%;width:100%}@media (max-width:767px){.ihabdevteam-core-scope .manager-section--compact{min-width:0}}.ihabdevteam-core-scope .manager-section--grid{display:flex;flex-direction:column;margin-bottom:0;min-width:0}.ihabdevteam-core-scope .manager-section--grid>.manager-bar-chart-loading,.ihabdevteam-core-scope .manager-section--grid>.manager-bar-chart-wrap,.ihabdevteam-core-scope .manager-section--grid>.ring-chart-section-body{margin-top:auto}";ce(C9);var x9=".ihabdevteam-core-scope .section-head-float{align-items:center;display:flex;gap:var(--spacing-m);justify-content:flex-end;max-width:50%;position:absolute;right:19px;right:var(--card-pad,19px);top:19px;top:var(--card-pad,19px);z-index:1}@media (max-width:600px){.ihabdevteam-core-scope .section-head-float{flex-wrap:wrap;margin-top:var(--spacing-m);max-width:none;position:static}}";ce(x9);function cd({children:e,className:t}){const a=s.useRef(null),[o,n]=s.useState(null);return s.useEffect(()=>{n(a.current?.parentElement??null)},[]),s.useEffect(()=>{const i=a.current;if(!i||!o)return;const l=()=>{const u=typeof window<"u"&&window.getComputedStyle(i).position==="absolute"?Math.ceil(i.getBoundingClientRect().width):0;u>0?o.style.setProperty("--section-head-float-w",`${u}px`):o.style.removeProperty("--section-head-float-w")};if(l(),typeof ResizeObserver>"u")return()=>{o.style.removeProperty("--section-head-float-w")};const c=new ResizeObserver(()=>l());return c.observe(i),c.observe(o),()=>{c.disconnect(),o.style.removeProperty("--section-head-float-w")}},[o,e]),r.jsx("div",{ref:a,className:Ne("section-head-float",t),children:e})}function Oi({items:e,className:t}){return r.jsx("div",{className:t?`manager-bar-chart-legend ${t}`:"manager-bar-chart-legend",children:e.map((a,o)=>r.jsxs("span",{className:"manager-bar-chart-legend-item",children:[r.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},o))})}function wr({label:e,children:t}){return e?r.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[r.jsx("span",{className:"barchart-total__label body-3",children:e}),r.jsx("span",{className:"barchart-total__value",children:t})]}):r.jsx("div",{className:"barchart-total",children:t})}function Fi({title:e,titleClassName:t="h3",titleLevel:a=3,icon:o,disc:n,headRight:i,headFloat:l,headSegment:c,headMenuItems:u,collapseBelow:d=420,onClick:h,ariaLabel:p,tooltip:m,totalNum:C,totalUnit:v,totalLabel:f,subRow:g,subRowAlign:x="start",className:b,inGrid:w=!1,children:_}){const{t:A}=_e.useTranslation(),y=s.useRef(null),{anchorRect:B,openAt:k,close:S}=Ho(),E=s.useCallback(()=>{m&&y.current&&k(y.current)},[m,k]),[D,I]=s.useState(!1);nd(()=>{const N=y.current;if(!N||!c)return;const O=Z=>I(Z>0&&Z<d);if(O(N.clientWidth),typeof ResizeObserver>"u")return;const H=new ResizeObserver(Z=>O(Z[0].contentRect.width));return H.observe(N),()=>H.disconnect()},[c,d]);const[j,W]=s.useState(null),L=s.useCallback(()=>W(null),[]),M=s.useCallback(N=>{const O=N.currentTarget.getBoundingClientRect();W(H=>H?null:{left:O.left,right:O.right,top:O.top,bottom:O.bottom,width:O.width,height:O.height,x:O.x,y:O.y})},[]),z=!!c&&D;s.useEffect(()=>{z||W(null)},[z]);const q=c?[...c.options.map(N=>({label:N.label,icon:N.icon,selected:N.key===c.value,disabled:N.disabled,onClick:()=>c.onChange(N.key),closeOnSelect:!0})),...(u??[]).map((N,O)=>O===0?{...N,separatorBefore:!0}:N)]:[],Y=s.useCallback(N=>{if(!h)return;const O=N.target;O&&typeof O.closest=="function"&&O.closest('button, a, input, select, textarea, [role="radiogroup"]')||h()},[h]),P=s.useCallback(N=>{h&&N.target===N.currentTarget&&(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),h())},[h]),V=typeof i=="function"?i({collapsed:z}):i,$=C!=null||f?r.jsxs(wr,{label:f,children:[C!=null&&r.jsx("span",{className:"barchart-total__num h0",children:C}),v&&r.jsx("span",{className:"barchart-total__unit h5",children:v})]}):null,U=V||c?r.jsxs("div",{className:"manager-section__head-right",children:[c&&(z?r.jsx(Ce,{htmlType:"button",size:32,type:"dot",icon:"ellipsis",ariaLabel:c.ariaLabel??A("common.more","\uB354\uBCF4\uAE30"),showTooltipInfo:c.ariaLabel??A("common.more","\uB354\uBCF4\uAE30"),"aria-haspopup":"menu","aria-expanded":!!j,onClick:M}):r.jsx(Ta,{size:32,ariaLabel:c.ariaLabel,options:c.options.map(N=>({key:N.key,label:N.label,disabled:N.disabled})),value:c.value,onChange:c.onChange})),V]}):null,T=s.useId(),F=a?`h${a}`:"div";return r.jsxs("section",{ref:y,className:["manager-section",w&&"manager-section--grid",h&&"manager-section--clickable",b].filter(Boolean).join(" "),onClick:h?Y:void 0,onKeyDown:h?P:void 0,onPointerEnter:m?E:void 0,onPointerLeave:m?S:void 0,onFocus:m?E:void 0,onBlur:m?S:void 0,role:h?"button":void 0,tabIndex:h?0:void 0,"aria-label":h?p??(typeof e=="string"?e:void 0):void 0,"aria-labelledby":!h&&e!=null?T:void 0,children:[m&&B&&r.jsx(Ea,{anchorRect:{left:B.left,top:B.top+21,right:B.right,bottom:B.bottom,width:B.width,height:B.height},text:m}),l&&r.jsx(cd,{children:l}),r.jsxs("div",{className:"manager-section__head",children:[r.jsxs("div",{className:"manager-section__title-row",children:[o&&r.jsx(ot,{icon:o,label:typeof e=="string"?e:void 0,className:"manager-section__icon"}),r.jsx(F,{id:T,className:["manager-section__title",t].filter(Boolean).join(" "),children:e})]}),U,n&&r.jsx("div",{className:"manager-section__disc body-3",children:n})]}),($||g)&&r.jsxs("div",{className:["barchart-sub-row",x!=="start"&&`barchart-sub-row--${x}`].filter(Boolean).join(" "),children:[$,g]}),_,j&&r.jsx(xa,{anchorRect:j,onClose:L,ariaLabel:c?.ariaLabel??A("tooltip.menu","\uBA54\uB274"),children:r.jsx(xr,{columns:[{items:q}],onClose:L,size:"small"})})]})}function Wa(e,t){const a=new Date(e,t,1).getDay();return 1+(8-(a===0?7:a))%7}function _9(){const e=po();let t=e.getFullYear(),a=e.getMonth(),o=e.getDate();if(o<Wa(t,a)){const l=new Date(t,a,0);t=l.getFullYear(),a=l.getMonth(),o=l.getDate()}const n=Math.floor((o-Wa(t,a))/7),i=`${t}\uB144 ${a+1}\uC6D4`;return{monthKey:i,value:`${i}#${n}`}}function k0(e){const t=po(),a=`${t.getFullYear()}\uB144 ${t.getMonth()+1}\uC6D4`,o=(u,d)=>`${u}\uB144 ${d+1}\uC6D4`,n=new Map;n.set(a,[]);for(const u of e){if(isNaN(u.date.getTime()))continue;const d=o(u.date.getFullYear(),u.date.getMonth());n.has(d)||n.set(d,[]),n.get(d).push(u)}for(const[u,d]of[...n.entries()]){const h=u.match(/^(\d+)년 (\d+)월$/);if(!h)continue;const p=Number(h[1]),m=Number(h[2])-1,C=Wa(p,m);if(!(u===a&&t.getDate()<C)&&!d.some(g=>g.date.getDate()<C))continue;const v=new Date(p,m,0),f=o(v.getFullYear(),v.getMonth());n.has(f)||n.set(f,[])}const i=new Map;for(const[u,d]of n){const h=u.match(/^(\d+)년 (\d+)월$/);if(!h)continue;const p=Number(h[1]),m=Number(h[2])-1,C=new Date(p,m+1,0).getDate(),v=d.reduce((_,A)=>Math.max(_,A.parts?.length??0,A.partsB?.length??0),0),f=d.some(_=>_.partsB),g=new Array(C+1).fill(0),x=new Array(C+1).fill(0),b=Array.from({length:C+1},()=>new Array(v).fill(0)),w=Array.from({length:C+1},()=>new Array(v).fill(0));for(const _ of d){const A=_.date.getDate();if(g[A]+=_.a,x[A]+=_.b,_.parts)for(let y=0;y<v;y++)b[A][y]+=_.parts[y]??0;if(_.partsB)for(let y=0;y<v;y++)w[A][y]+=_.partsB[y]??0}i.set(u,{year:p,month:m,daysInMonth:C,partsLen:v,hasPartsB:f,dayA:g,dayB:x,dayParts:b,dayPartsB:w})}const l=(u,d,h)=>new Date(u,d,h).getTime()>new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),c={};for(const[u,d]of i){const{year:h,month:p,daysInMonth:m,dayA:C,dayB:v,dayParts:f,dayPartsB:g}=d,x=h===t.getFullYear()&&p===t.getMonth(),b=t.getDate(),w=i.get(o(p===11?h+1:h,(p+1)%12)),_=d.partsLen,A=[];for(let B=1;B<=m;B++){const k=x&&B>b;A.push({label:String(B),...k&&C[B]===0&&v[B]===0?{future:!0}:{},a:k&&C[B]===0&&v[B]===0?-1:C[B],b:v[B],..._?{parts:f[B]}:{},..._&&d.hasPartsB?{partsB:g[B]}:{}})}const y=[];for(let B=Wa(h,p);B<=m;B+=7){const k=Math.max(0,B+6-m),S=k&&w?Math.max(_,w.partsLen):_,E=d.hasPartsB||!!(k&&w?.hasPartsB);let D=0,I=0;const j=new Array(S).fill(0),W=new Array(S).fill(0);for(let M=B;M<=Math.min(B+6,m);M++){D+=C[M],I+=v[M];for(let z=0;z<_;z++)j[z]+=f[M][z],W[z]+=g[M][z]}if(k&&w)for(let M=1;M<=k&&!l(w.year,w.month,M);M++){D+=w.dayA[M],I+=w.dayB[M];for(let z=0;z<w.partsLen;z++)j[z]+=w.dayParts[M][z],W[z]+=w.dayPartsB[M][z]}const L=k?`${(p+1)%12+1}/${k}`:`${B+6}`;y.push({label:`${y.length+1}\uC8FC`,sublabel:`[${B}\uC77C~${L}\uC77C]`,a:D,b:I,...S?{parts:j}:{},...S&&E?{partsB:W}:{}})}c[u]={weekly:y,daily:A}}return c}function B0(){const e=po(),t=e.getFullYear(),a=e.getMonth()+1,o=[];for(let n=2024;n<=t;n++){const i=n===t?a:12;for(let l=1;l<=i;l++){const c=`${n}\uB144 ${l}\uC6D4`;o.push({value:c,label:c,year:n,month:l})}}return o.reverse()}B0();function y9(){return B0()}const A0=["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"];function ud(e){const{t,i18n:a}=_e.useTranslation(),[o,n]=s.useState("week"),i=s.useMemo(()=>y9().filter(S=>S.value in e),[e]),l=s.useMemo(()=>{const S=[];for(const E of i){const D=new Date(E.year,E.month,0).getDate(),I=Wa(E.year,E.month-1),j=Math.ceil((D-I+1)/7);for(let W=j-1;W>=0;W--)S.push({value:`${E.value}#${W}`,monthKey:E.value,year:E.year,month:E.month,week:W})}return S},[i]),c=s.useCallback(S=>{const E=t("calendar.yearMonth",{year:S.year,month:S.month});return a.language?.startsWith("ko")?`${E} ${A0[S.week]??`${S.week+1}`}\uC8FC`:`${E} Week ${S.week+1}`},[t,a.language]),u=s.useMemo(()=>i.map(S=>({value:S.value,label:t("calendar.yearMonth",{year:S.year,month:S.month})})),[t,i]),d=s.useMemo(()=>l.map(S=>({value:S.value,label:c(S)})),[l,c]),h=s.useMemo(()=>_9(),[e]),p=s.useMemo(()=>i.find(S=>S.value===h.monthKey)?.value??i[0]?.value??"",[i,h]),m=s.useMemo(()=>l.find(S=>S.value===h.value)?.value??l[0]?.value??"",[l,h]),[C,v]=s.useState(""),[f,g]=s.useState("");s.useEffect(()=>{i.find(S=>S.value===C)||v(p)},[i,C,p]),s.useEffect(()=>{l.find(S=>S.value===f)||g(m)},[l,f,m]);const x=o==="month"?u:d,b=o==="month"?C:f,w=o==="month"?v:g,_=s.useMemo(()=>{const S=t("calendar.dow",{returnObjects:!0});return Array.isArray(S)?S:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[t]),A=x.findIndex(S=>S.value===b),y=s.useCallback(()=>{const S=x.findIndex(E=>E.value===b);S<x.length-1&&w(x[S+1].value)},[x,b,w]),B=s.useCallback(()=>{const S=x.findIndex(E=>E.value===b);S>0&&w(x[S-1].value)},[x,b,w]),k=s.useMemo(()=>[{key:"week",label:t("manager.chart.periodWeek","\uC8FC")},{key:"month",label:t("manager.chart.periodMonth","\uC6D4")}],[t]);return{period:o,setPeriod:n,range:b,setRange:w,activeOptions:x,activeIdx:A,handlePrev:y,handleNext:B,periodOptions:k,monthRange:C,weekRange:f,weekRanges:l,DOW:_}}const Bt=e=>typeof e=="number"&&Number.isFinite(e)?e:0;function to(e,t=!0){return e.future===!0||t&&e.a===-1}function w9({data:e,colorA:t,colorB:a,labelA:o,labelB:n,barWidth:i=10,barGap:l=1,height:c=140,maxOverride:u,tightMax:d,seriesColors:h,seriesLabels:p,rateLabels:m,grouped:C=!1,baseline:v,focusableBars:f=!1}){const g=!a,x=!!(h&&h.length>0),b=v,w=s.useMemo(()=>x?Math.max(0,...e.filter(P=>!to(P,b==null)).map(P=>C?Math.max(0,...(P.parts??[]).map(Bt)):(P.parts??[]).reduce((V,$)=>V+Math.max(0,Bt($)),0))):Math.max(0,...e.filter(P=>!to(P,b==null)).flatMap(P=>g?[Bt(P.a)]:[Bt(P.a),Bt(P.b)])),[e,g,x,C]),_=s.useMemo(()=>{if(b==null)return 0;const P=e.filter(V=>!to(V,b==null)).flatMap(V=>x?(V.parts??[]).map(Bt):g?[Bt(V.a)]:[Bt(V.a),Bt(V.b)]);return Math.max(0,...P.map(V=>Math.abs(V-b)))},[e,b,x,g]),A=s.useMemo(()=>{const P=b!=null?_:w;return u??(d?P>0?P:10:Math.ceil(P/10)*10||10)},[w,_,b,u,d]),y=c,B=x?C?Math.max(1,h.length):1:g?1:2,k={"--bar-width":`${s.useMemo(()=>{const P=Math.max(1,e.length);return Math.max(2,Math.min(i,Math.round(120/(P*B)+6)))},[e.length,B,i])}px`},S={"--bar-group-gap":`${Math.max(0,l)}px`},E=s.useMemo(()=>{const P=Math.round(A/2);return b!=null?[b+A,...P!==A?[b+P]:[],b,...P!==A?[b-P]:[],b-A]:P!==A?[A,P,0]:[A,0]},[A,b]),D=P=>b!=null?1-(P-(b-A))/(2*A):1-P/A,[I,j]=s.useState(null),W=s.useCallback(()=>j(null),[]),L=s.useCallback((P,V)=>{const $=[P.label,P.sublabel].filter(Boolean).join(" ");let U;if(x&&C&&P.rawPartsB)U=(p??[]).map((T,F)=>{const N=P.rawPartsB[F]??0;return{text:N>0?`${T}: ${V[F]??0}% (${P.rawParts?.[F]??0}/${N})`:`${T}: -`,color:(h??[])[F]}});else if(x&&C)U=(p??[]).map((T,F)=>({text:`${T}: ${q(V[F]??0)}`,color:(h??[])[F]}));else if(x){const T=(p??[]).map((N,O)=>({text:`${N}: ${V[O]??0}`,color:(h??[])[O]})),F=T.filter((N,O)=>(V[O]??0)>0);U=F.length?F:T}else m&&!g?U=[{text:`${o} ${Bt(P.a)}%`,color:t},{text:`${n} ${Bt(P.b)}%`,color:a}]:m&&P.rawB!==void 0?U=[{text:`${m.total} ${P.rawB}`},{text:`${m.done} ${P.rawA??0}`,color:t}]:g?U=[{text:`${o}: ${Bt(P.a)}`,color:t}]:U=[{text:`${o}: ${Bt(P.a)}`,color:t},{text:`${n}: ${Bt(P.b)}`,color:a}];return{title:$,items:U}},[x,C,p,h,m,g,o,n,t,a,b]),M=s.useCallback((P,V,$)=>{const U=P.getBoundingClientRect(),{title:T,items:F}=L(V,$);j({rect:{left:U.left,top:U.top,right:U.right,bottom:U.bottom,width:U.width,height:U.height},title:T,items:F})},[L]),z=s.useCallback((P,V)=>{const{title:$,items:U}=L(P,V);return[$,...U.map(T=>T.text)].filter(Boolean).join(", ")},[L]),q=P=>b!=null&&P>b?`+${P}`:`${P}`,Y=I!=null;return s.useEffect(()=>{if(!Y)return;const P=()=>j(null),V=$=>{const U=$.target;U&&typeof U.closest=="function"&&U.closest(".manager-bar-chart-col")||j(null)};return window.addEventListener("scroll",P,!0),document.addEventListener("pointerdown",V,!0),()=>{window.removeEventListener("scroll",P,!0),document.removeEventListener("pointerdown",V,!0)}},[Y]),r.jsxs("div",{className:"manager-bar-chart-wrap",style:S,children:[r.jsx("div",{className:"manager-bar-chart-inner",children:r.jsx("div",{className:"manager-bar-chart-scroll",children:r.jsxs("div",{className:"manager-bar-chart-area",children:[r.jsxs("div",{className:"manager-bar-chart-plot",style:{height:y},children:[E.slice(0,-1).map((P,V)=>r.jsx("div",{className:`manager-bar-chart-gridline${b!=null&&P===b?" manager-bar-chart-gridline--baseline":""}`,style:{top:D(P)*y},children:r.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:P})},V)),e.map((P,V)=>{const $=to(P,b==null),U=y/2,T=H=>b!=null?Math.min(U,Math.abs(Bt(H)-b)/A*U):Math.min(y,Math.max(0,Bt(H)/A*y)),F=$?0:T(P.a),N=$?0:T(P.b),O=(P.parts??[]).map(Bt);return r.jsx("div",{className:`manager-bar-chart-col${C&&x?" manager-bar-chart-col--group":""}`,style:{cursor:$?"default":"pointer"},tabIndex:f&&!$?0:void 0,role:f&&!$?"img":void 0,"aria-label":f&&!$?z(P,O):void 0,onMouseEnter:$?void 0:H=>M(H.currentTarget,P,O),onFocus:$||!f?void 0:H=>M(H.currentTarget,P,O),onBlur:f?W:void 0,onMouseLeave:W,children:!$&&(x&&C?(h??[]).map((H,Z)=>{const te=O[Z]??0;if(b==null)return r.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:T(te),background:H}},Z);const se=Bt(te)<b;return r.jsxs("div",{className:"manager-bar-chart-slot",style:k,children:[r.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:!se&&r.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:T(te),background:H}})}),r.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:se&&r.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:T(te),background:H}})})]},Z)}):x?r.jsx("div",{className:"manager-bar-chart-stack",style:k,children:(()=>{const H=O.reduce((te,se,be)=>se>0?be:te,-1);let Z=y;return O.map((te,se)=>{if(te<=0)return null;const be=Math.min(Z,te/A*y);return Z-=be,r.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:be,background:(h??[])[se],borderRadius:se===H?"6px 6px 0 0":void 0}},se)})})()}):b!=null?r.jsx(r.Fragment,{children:[{v:Bt(P.a),c:t},...g?[]:[{v:Bt(P.b),c:a}]].map(({v:H,c:Z},te)=>r.jsxs("div",{className:"manager-bar-chart-slot",style:k,children:[r.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:H>=b&&r.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:T(H),background:Z}})}),r.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:H<b&&r.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:T(H),background:Z}})})]},te))}):r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:F,background:t}}),!g&&r.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:N,background:a}})]}))},V)})]}),r.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((P,V)=>{const $=to(P,b==null);return r.jsxs("span",{className:`manager-bar-chart-x-axis__label${$?" manager-bar-chart-x-axis__label--future":""}`,children:[r.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[P.isToday&&r.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:t}}),P.label]}),P.sublabel&&r.jsx("span",{className:"caption-1",children:P.sublabel})]},V)})})]})})}),I&&r.jsx(Co,{anchorRect:I.rect,title:I.title,items:I.items,showIndex:!1,closeOnOutsideClick:!1})]})}function dd({control:e}){const{t}=_e.useTranslation(),{activeOptions:a,activeIdx:o,range:n,setRange:i,handlePrev:l,handleNext:c,periodOptions:u,period:d,setPeriod:h}=e,p=d==="week"?t("calendar.prevWeek","\uC774\uC804 \uC8FC"):t("calendar.prevMonth","\uC774\uC804 \uB2EC"),m=d==="week"?t("calendar.nextWeek","\uB2E4\uC74C \uC8FC"):t("calendar.nextMonth","\uB2E4\uC74C \uB2EC");return r.jsxs("div",{className:"manager-section-controls",children:[r.jsx(Ce,{htmlType:"button",size:32,type:"dot",icon:"chevron-left",ariaLabel:p,showTooltipInfo:p,disabled:o===a.length-1,onClick:l}),r.jsx(_a,{value:n,onChange:i,options:a,size:40,className:"month-dropdown",ariaLabel:t("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),r.jsx(Ce,{htmlType:"button",size:32,type:"dot",icon:"chevron-right",ariaLabel:m,showTooltipInfo:m,disabled:o<=0,onClick:c}),r.jsx(Ta,{ariaLabel:t("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:u,value:d,onChange:C=>h(C),size:40})]})}function pd(e,t,a,o=!0){const n=new Date(a.getFullYear(),a.getMonth(),a.getDate());return Array.from({length:7},(i,l)=>{const c=new Date(t);c.setDate(t.getDate()+l);const u=(e[`${c.getFullYear()}\uB144 ${c.getMonth()+1}\uC6D4`]?.daily??[])[c.getDate()-1],d=u!=null&&to(u,o)||c>n;return{dt:c,entry:u,isFuture:d}})}function k9(e,t,a,o,n=!0){const{period:i,monthRange:l,weekRange:c,weekRanges:u,DOW:d}=t,h=o?.startsWith("ko"),p=po(),m=p.getFullYear(),C=p.getMonth()+1,v=p.getDate();if(i==="month"){const x=e[l]??{weekly:[],daily:[]},b=l.match(/^(\d+)년 (\d+)월$/),w=b?Number(b[1]):null,_=b?Number(b[2]):null,A=w&&_?Wa(w,_-1):1;return x.weekly.map((y,B)=>{const k=B+1;let S=y.label,E=!1,D=!1;if(w&&_){const I=A+B*7,j=new Date(w,_-1,I+6),W=j.getMonth()+1,L=j.getDate(),M=W===_?`${L}`:`${W}/${L}`;S=a("manager.chart.weekRange",{start:I,end:M});const z=new Date(m,C-1,v).getTime();E=z>=new Date(w,_-1,I).getTime()&&z<=j.getTime(),D=w>m||w===m&&(_>C||_===C&&I>v)}return{...y,label:S,sublabel:h?`${A0[k-1]??k}\uC8FC`:`Week ${k}`,isToday:E,future:y.future===!0||D||void 0,a:D?-1:y.a,b:D?0:y.b}})}const f=u.find(x=>x.value===c);if(!f)return[];const g=new Date(f.year,f.month-1,Wa(f.year,f.month-1)+f.week*7);return pd(e,g,p,n).map(({dt:x,entry:b,isFuture:w})=>{const _=x.getMonth()+1,A=x.getDate(),y=x.getFullYear();return{label:_===f.month&&y===f.year?`${A}`:`${_}/${A}`,sublabel:d[x.getDay()]??"",future:w||void 0,a:w?-1:b&&b.a>0?b.a:0,b:w?0:b&&b.b>0?b.b:0,isToday:y===m&&_===C&&A===v,...b?.parts?{parts:w?b.parts.map(()=>0):b.parts}:{},...b?.partsB?{partsB:w?b.partsB.map(()=>0):b.partsB}:{}}})}const B9={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function S0({focusableBars:e,size:t="medium",barWidth:a,titleKey:o,titleLevel:n,data:i,colorA:l,colorB:c,labelAKey:u,labelBKey:d,showTotal:h=!1,totalUnitKey:p,totalLabelKey:m,control:C,hideControls:v=!1,rate:f=!1,rateAgg:g="dayMean",tightMax:x=!1,avgMode:b=!1,totalFormat:w,series:_,seriesMode:A="stack",loading:y=!1,onDetail:B,headExtra:k,headSegment:S,icon:E,disc:D,onClick:I,cardAriaLabel:j,cardTooltip:W,detailSize:L=32,barGap:M,baseline:z,className:q,inGrid:Y=!1}){const{t:P,i18n:V}=_e.useTranslation(),$=B9[t],U=ud(i),T=C??U,F=s.useMemo(()=>k9(i,T,P,V.language,z==null),[i,T,P,V.language,z]),N=A==="group"&&!!_&&_.length>0;M!=null&&!N&&ra("bar-chart-bargap-without-group","[BarChart] barGap \uC740 seriesMode='group' + series \uC5D0\uC11C\uB9CC \uC4F0\uC778\uB2E4 \u2014 \uADF8 \uBC16\uC5D0\uC11C\uB294 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4.");const O=s.useMemo(()=>{if(!f)return F;const re=T.period==="month"?T.monthRange.match(/^(\d+)년 (\d+)월$/):null,Ae=po(),K=_?.length??0,ie=ue=>{const je=[],ye=[],le=[];for(let he=0;he<K;he++){let ve=0,G=0,oe=0;for(const me of ue){const Te=Bt(me.a[he]),ke=Bt(me.b[he]);ke<=0||(ve+=Te,G+=ke,oe+=Te/ke*100)}je.push(g==="weighted"?G>0?Math.round(ve/G*100):0:ue.length?Math.round(oe/ue.length):0),ye.push(ve),le.push(G)}return{pct:je,ra:ye,rb:le}};return F.map((ue,je)=>{let ye=ue.a===-1?-1:ue.b>0?Math.round(ue.a/ue.b*100):0;if(re&&!to(ue)){const he=Number(re[1]),ve=Number(re[2])-1,G=pd(i,new Date(he,ve,Wa(he,ve)+je*7),Ae).filter(oe=>!oe.isFuture);if(g==="weighted"){let oe=0,me=0;for(const{entry:Te}of G)Te&&Te.b>0&&(oe+=Te.a,me+=Te.b);ye=me>0?Math.round(oe/me*100):0}else ye=G.length?Math.round(G.reduce((oe,{entry:me})=>oe+(me&&me.b>0?me.a/me.b*100:0),0)/G.length):0}let le=null;if(N&&!to(ue)){let he;if(re){const G=Number(re[1]),oe=Number(re[2])-1;he=pd(i,new Date(G,oe,Wa(G,oe)+je*7),Ae).filter(me=>!me.isFuture).map(({entry:me})=>({a:me?.parts??[],b:me?.partsB??[]}))}else he=[{a:ue.parts??[],b:ue.partsB??[]}];const ve=ie(he);le={parts:ve.pct,rawParts:ve.ra,rawPartsB:ve.rb}}return{...ue,a:ye,b:ue.a===-1?0:d&&ue.parts&&ue.parts[1]>0?Math.round(ue.parts[0]/ue.parts[1]*100):0,rawA:ue.a===-1?-1:ue.a,rawB:ue.b,...le??{}}})},[F,f,g,d,T.period,T.monthRange,i,N,_?.length]),H=s.useMemo(()=>{if(f||b){const Ae=(T.period==="week"?F:i[T.monthRange]?.daily??[]).filter(ie=>ie.a!==-1);if(Ae.length===0)return 0;if(f&&g==="weighted"){let ie=0,ue=0;for(const je of Ae)je.b>0&&(ie+=je.a,ue+=je.b);return ue>0?Math.round(ie/ue*100):0}const K=f?Ae.reduce((ie,ue)=>ie+(ue.b>0?ue.a/ue.b*100:0),0):Ae.reduce((ie,ue)=>ie+(ue.a>0?ue.a:0),0);return Math.round(K/Ae.length)}const re=T.period==="month"?i[T.monthRange]?.daily??[]:O;return z!=null?re.reduce((Ae,K)=>Ae+(to(K,!1)?0:Bt(K.a)+(d?Bt(K.b):0)),0):re.reduce((Ae,K)=>Ae+(K.a>0?K.a:0)+(d&&K.b>0?K.b:0),0)},[O,F,f,g,b,z,d,T.period,T.monthRange,i]),Z=_&&_.length>0?_.map(re=>({color:re.color,label:re.label})):[{color:l,label:P(u)},...d?[{color:c,label:P(d)}]:[]],te=t==="small",se=[te?"manager-section--compact":t==="large"?"manager-section--full":void 0,q].filter(Boolean).join(" ")||void 0,be=o?P(o):"",X=be?P("trainingStatus.detailFor",{name:be,defaultValue:"{{name}} \uC0C1\uC138\uBCF4\uAE30"}):P("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30");return r.jsx(Fi,{className:se,inGrid:Y,icon:E,disc:D,onClick:I,ariaLabel:j,tooltip:W,headSegment:S,headMenuItems:B?[{label:X,icon:"list",onClick:B,closeOnSelect:!0}]:void 0,title:P(o),titleLevel:n,titleClassName:te?"h5 chart-section-title--small":void 0,headRight:te?k??void 0:({collapsed:re})=>r.jsxs(r.Fragment,{children:[!v&&r.jsx(dd,{control:T}),k,B&&!re&&r.jsx("span",{className:"manager-bar-chart-detail-btn",children:r.jsx(Ce,{htmlType:"button",size:L,type:"dot",icon:"list",ariaLabel:X,showTooltipInfo:X,onClick:B})})]}),subRow:r.jsxs(r.Fragment,{children:[h?f||b||m&&w?r.jsx(wr,{label:te?void 0:`${P(T.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${P(m??u)}`,children:w?(w(H).match(/([+-]?\d[\d.,]*|[^\d]+)/g)??[]).map((re,Ae)=>/\d/.test(re)?r.jsx("span",{className:"barchart-total__num h0",children:re},Ae):r.jsx("span",{className:"barchart-total__unit h5",children:re},Ae)):r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"barchart-total__num h0",children:H}),p&&r.jsx("span",{className:"barchart-total__unit h5",children:P(p)})]})}):r.jsxs(wr,{children:[r.jsx("span",{className:"barchart-total__num h0",children:H}),r.jsx("span",{className:"barchart-total__unit h5",children:P(u)}),p&&r.jsx("span",{className:"barchart-total__unit h5",children:P(p)})]}):r.jsx("span",{}),r.jsx(Oi,{items:Z,className:"caption-1"})]}),children:y?r.jsx("div",{className:"manager-bar-chart-wrap manager-bar-chart-loading","aria-busy":"true",children:r.jsx("div",{className:"manager-bar-chart-inner",children:r.jsxs("div",{className:"manager-bar-chart-area manager-bar-chart-area--loading",children:[r.jsx("div",{className:"manager-bar-chart-plot manager-bar-chart-plot--loading",style:{height:$.height},children:r.jsx(yr,{size:32})}),r.jsx("div",{className:"manager-bar-chart-x-axis","aria-hidden":"true",children:r.jsxs("span",{className:"manager-bar-chart-x-axis__label",children:[r.jsx("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:"\xA0"}),O.some(re=>!!re.sublabel)&&r.jsx("span",{className:"caption-1",children:"\xA0"})]})})]})})}):r.jsx(w9,{focusableBars:e,data:O,colorA:l,colorB:d?c:void 0,labelA:P(u),labelB:d?P(d):void 0,barWidth:a??$.barWidth,barGap:M,baseline:z,height:$.height,maxOverride:f?100:void 0,tightMax:x,seriesColors:_?.map(re=>re.color),seriesLabels:_?.map(re=>re.label),rateLabels:f?{total:P("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:P("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0,grouped:N})})}var A9=".ihabdevteam-core-scope .line-chart{display:block;height:auto;overflow:visible;width:100%}.ihabdevteam-core-scope .line-chart__axis-title,.ihabdevteam-core-scope .line-chart__tick{fill:var(--color-gray);font-size:12px}.ihabdevteam-core-scope .line-chart__grid{stroke:var(--color-whiteLine);stroke-width:1}.ihabdevteam-core-scope .line-chart__line{stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ihabdevteam-core-scope .line-chart__dot-hit{fill:transparent}.ihabdevteam-core-scope .line-chart__dot-main{stroke-width:1.5}.ihabdevteam-core-scope .line-chart__dot-main.is-hollow{fill:var(--color-white)}.ihabdevteam-core-scope .line-chart__tip{max-width:220px;white-space:normal}.ihabdevteam-core-scope .line-chart__dot{cursor:default}";ce(A9);const hd=120,S9={left:38,right:16,top:26,bottom:24};function E0({points:e=[],range:t,ticks:a=[],axisTitle:o,color:n,height:i=156,fallbackWidth:l=320,insets:c,overlay:u,ariaLabel:d,className:h}){const[p,m]=s.useState(null),[C,v]=s.useState(null);s.useEffect(()=>{if(!C)return;const z=Y=>m(Math.round(Y)||null);if(z(C.getBoundingClientRect().width),typeof ResizeObserver>"u")return;const q=new ResizeObserver(([Y])=>z(Y.contentRect.width));return q.observe(C),()=>{q.disconnect()}},[C]);const{payload:f,anchorRect:g,openAfterDelay:x,close:b}=Mu(hd),w=s.useCallback((z,q)=>{z&&x(z,q.getBoundingClientRect())},[x]),_=p??l,A=i,{left:y,right:B,top:k,bottom:S}={...S9,...c},[E,D]=t,I=z=>D===E?y:y+(_-y-B)*(z-E)/(D-E),j=z=>k+(A-k-S)*(100-z)/100,W={x:I,y:j,plot:{left:y,right:_-B,top:k,bottom:A-S,width:Math.max(0,_-y-B),height:Math.max(0,A-k-S)}},L=e.filter(z=>!z.hollow),M=n??"var(--color-main)";return r.jsxs(r.Fragment,{children:[r.jsxs("svg",{ref:v,className:Ne("line-chart",h),viewBox:`0 0 ${_} ${A}`,role:"img","aria-label":d??e.map(z=>z.description).filter(Boolean).join(", "),children:[o&&r.jsx("text",{className:"line-chart__axis-title",x:0,y:12,children:o}),[0,100].map(z=>r.jsxs("g",{children:[r.jsx("line",{className:"line-chart__grid",x1:y,x2:_-B,y1:j(z),y2:j(z)}),r.jsxs("text",{className:"line-chart__tick",x:y-6,y:j(z)+4,textAnchor:"end",children:[z,"%"]})]},z)),u?.(W),a.map(z=>r.jsx("text",{className:"line-chart__tick",x:I(z.x),y:A-5,textAnchor:"middle",children:z.label},z.x)),L.length>1&&r.jsx("polyline",{className:"line-chart__line",fill:"none",stroke:M,points:L.map(z=>`${I(z.x)},${j(z.pct)}`).join(" ")}),e.map(z=>r.jsxs("g",{className:"line-chart__dot",onPointerEnter:q=>w(z.description,q.currentTarget),onPointerLeave:b,children:[r.jsx("circle",{className:"line-chart__dot-hit",cx:I(z.x),cy:j(z.pct),r:12}),r.jsx("circle",{className:Ne("line-chart__dot-main",z.hollow&&"is-hollow"),cx:I(z.x),cy:j(z.pct),r:4,stroke:M,fill:z.hollow?void 0:M})]},z.x))]}),f!=null&&r.jsx(xa,{anchorRect:g,offset:10,closeOnOutsideClick:!1,className:"line-chart__tip",role:"tooltip",ariaLabel:f,children:f})]})}var E9=".ihabdevteam-core-scope .game-intro{align-items:center;display:flex;flex-direction:column;gap:14px;padding:0;text-align:center}.ihabdevteam-core-scope .game-intro__icon{font-size:56px;font-size:var(--game-intro-icon,56px)}.ihabdevteam-core-scope .game-intro__title{color:var(--color-onDark-title);margin:0}.ihabdevteam-core-scope .game-intro__description{color:var(--color-onDark-text);line-height:1.75;margin:0}.ihabdevteam-core-scope .game-intro__tips{background:var(--color-onDark-surface);border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-onDark-text);display:flex;flex-direction:column;gap:4px;padding:var(--spacing-l);text-align:left;width:100%}.ihabdevteam-core-scope .game-intro__tips-title{color:var(--color-onDark-muted);letter-spacing:.06em;margin-bottom:4px}.ihabdevteam-core-scope .game-intro__tip{align-items:flex-start;display:flex;gap:var(--spacing-xs)}";ce(E9);function D0({icon:e,iconSize:t=56,title:a,titleClass:o="h2",description:n,tipGroups:i,start:l,className:c}){return r.jsxs("div",{className:Ne("game-intro",c),children:[e!=null&&r.jsx("span",{className:"game-intro__icon","aria-hidden":"true",style:{"--game-intro-icon":`${t}px`},children:e}),r.jsx("h2",{className:Ne("game-intro__title",o),children:a}),n!=null&&r.jsx("p",{className:"game-intro__description body-3",children:n}),i?.map((u,d)=>r.jsxs("div",{className:"game-intro__tips",children:[u.title!=null&&r.jsx("span",{className:"game-intro__tips-title body-3",children:u.title}),u.tips.map((h,p)=>r.jsxs("span",{className:"game-intro__tip body-3",children:[h.icon!=null&&r.jsx("span",{"aria-hidden":"true",children:h.icon}),r.jsx("span",{children:h.text})]},p))]},d)),l&&r.jsx(Ce,{htmlType:"button",className:l.className,variant:"main",color:l.color,size:48,width:"100%",disabled:l.disabled,onClick:l.onClick,children:l.label})]})}const N0=(e,t,a)=>{const o=new Date(Date.UTC(e,t,a));return`${o.getUTCFullYear()}-${String(o.getUTCMonth()+1).padStart(2,"0")}-${String(o.getUTCDate()).padStart(2,"0")}`},T0=(e,t,a,o)=>({from:oi(e,t,a),to:new Date(oi(e,t,a+o).getTime()-1),fromYmd:N0(e,t,a),toYmd:N0(e,t,a+o-1)});function j0(e,t=0){if(e.period==="month"){const n=e.monthRange.match(/^(\d+)년 (\d+)월$/),i=po(),l=n?Number(n[1]):i.getFullYear(),c=(n?Number(n[2]):i.getMonth()+1)-1+t,u=new Date(Date.UTC(l,c+1,0)).getUTCDate();return T0(l,c,1,u)}const a=e.weekRanges.find(n=>n.value===e.weekRange);if(!a){const n=new Date,i=Ca();return{from:n,to:n,fromYmd:i,toYmd:i}}const o=Wa(a.year,a.month-1);return T0(a.year,a.month-1,o+(a.week+t)*7,7)}var D9=".ihabdevteam-core-scope .ring-chart{flex-shrink:0;position:relative}.ihabdevteam-core-scope .ring-chart svg{display:block}.ihabdevteam-core-scope .ring-chart__center{align-items:center;display:flex;flex-direction:column;inset:0;justify-content:center;pointer-events:none;position:absolute}.ihabdevteam-core-scope .ring-chart__center--small{transform:translateY(6.5px)}.ihabdevteam-core-scope .ring-chart__center--medium{transform:translateY(7.5px)}.ihabdevteam-core-scope .ring-chart__center--large{transform:translateY(8.5px)}.ihabdevteam-core-scope .ring-chart__pct{color:var(--color-darkGray);line-height:1}.ihabdevteam-core-scope .ring-chart__label{color:var(--color-lightGray)}.ihabdevteam-core-scope .ring-chart__label--tight{margin-top:-2px}.ihabdevteam-core-scope .ring-chart-section-body{display:flex;justify-content:center}.ihabdevteam-core-scope .ring-chart-section-body--offset{justify-content:flex-end}";ce(D9);const md={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function L0(e){return!Number.isFinite(e)||e<=0?0:e>=1?100:Math.min(99,Math.max(1,Math.round(e*100)))}function M0({done:e,total:t,segments:a,color:o="var(--color-main)",size:n="medium",strokeWidth:i,label:l="%",hideCenter:c=!1,hideLabel:u=!1}){const d=typeof n=="number"?n:md[n].diameter,h=i??(typeof n=="number"?12:md[n].strokeWidth),p=d/2,m=(d-h)/2,C=2*Math.PI*m;if(a&&a.length>0){const x=a.reduce((b,w)=>{const _=b.length>0?b[b.length-1].acc:0,A=Number.isFinite(w.ratio)?w.ratio:0,y=Math.max(0,Math.min(A,1-_));return b.push({color:w.color,rotate:-90+_*360,dash:C*y,acc:_+y}),b},[]);return r.jsx("div",{className:"ring-chart",style:{width:d,height:d},children:r.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[r.jsx("circle",{cx:p,cy:p,r:m,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:h}),x.map((b,w)=>b.dash>0&&r.jsx("circle",{cx:p,cy:p,r:m,fill:"none",stroke:b.color,strokeWidth:h,strokeDasharray:`${b.dash} ${C}`,strokeLinecap:"round",transform:`rotate(${b.rotate} ${p} ${p})`},w))]})})}const v=(t??0)>0?Math.min((e??0)/t,1):0,f=C*v,g=C-f;return r.jsxs("div",{className:"ring-chart",style:{width:d,height:d},children:[r.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[r.jsx("circle",{cx:p,cy:p,r:m,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:h}),v>0&&r.jsx("circle",{cx:p,cy:p,r:m,fill:"none",stroke:o,strokeWidth:h,strokeDasharray:`${f} ${g}`,strokeLinecap:v<.02||v>.98?"butt":"round",transform:`rotate(-90 ${p} ${p})`})]}),!c&&r.jsxs("div",{className:`ring-chart__center${u?"":` ${d<=96?"ring-chart__center--small":n==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[r.jsx("span",{className:`ring-chart__pct ${d<=96?"h2":"h1"}`,children:L0(v)}),!u&&r.jsx("span",{className:`ring-chart__label ${d<=96?"caption-2":"caption-1"}${d<=96||n==="medium"?" ring-chart__label--tight":""}`,children:l})]})]})}function $0({titleKey:e,titleLevel:t,headRight:a,icon:o,showTotal:n,totalLabelKey:i,legend:l,loading:c,className:u,inGrid:d=!1,onClick:h,ariaLabel:p,tooltip:m,...C}){const{t:v}=_e.useTranslation();if(!e)return r.jsx(M0,{...C});const f=(C.total??0)>0?L0(Math.min((C.done??0)/C.total,1)):0,g=C.size==="small",x=typeof C.size=="number"?C.size:md[C.size??"medium"].diameter,b=C.size==="large",w=[u,g?"manager-section--compact":b?"manager-section--full":""].filter(Boolean).join(" ")||void 0,_=o&&r.jsx("span",{className:"chart-section-icon",children:r.jsx(ot,{icon:o,className:"chart-section-icon-inner"})});return r.jsx(Fi,{className:w,inGrid:d,onClick:h,ariaLabel:p,tooltip:m,title:v(e),titleLevel:t,titleClassName:g?"h5 chart-section-title--small":void 0,headRight:_||(g?void 0:a),subRow:(n||l)&&r.jsxs(r.Fragment,{children:[n?r.jsxs(wr,{label:!g&&i?v(i):void 0,children:[r.jsx("span",{className:"barchart-total__num h0",children:f}),r.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):r.jsx("span",{}),l&&r.jsx(Oi,{items:l})]}),children:c?r.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:r.jsx("div",{className:"ring-chart ring-chart--loading",style:{width:x,height:x},"aria-busy":"true",children:r.jsx(yr,{size:32})})}):r.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:r.jsx(M0,{...C,hideCenter:C.hideCenter??g})})})}var N9=".ihabdevteam-core-scope .manager-stat-card{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-card);container-type:inline-size;display:flex;flex-direction:column;gap:4px;justify-content:flex-start;min-width:160px;padding:20px}.ihabdevteam-core-scope .manager-stat-card--clickable{border:1px solid transparent;cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease}.ihabdevteam-core-scope .manager-stat-card--clickable:hover{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .manager-stat-card__label-row{align-items:center;display:flex;justify-content:space-between;min-height:28px}.ihabdevteam-core-scope .manager-stat-card__label{color:var(--color-deepGray)}.ihabdevteam-core-scope .manager-stat-card__icon{display:inline-flex;opacity:.35}.ihabdevteam-core-scope .manager-stat-card__icon-inner{color:var(--color-darkGray);height:22px;width:22px}.ihabdevteam-core-scope .manager-stat-card__content{align-items:flex-start;display:flex;flex:1;flex-direction:column;gap:var(--spacing-xs);justify-content:space-between}.ihabdevteam-core-scope .manager-stat-card__body{align-items:stretch;display:flex;flex-direction:column;gap:4px;text-align:left;width:100%}.ihabdevteam-core-scope .manager-stat-card__left{align-items:flex-start;display:flex;flex:1;flex-direction:row;gap:8px;text-align:left}.ihabdevteam-core-scope .manager-stat-card__value{color:var(--color-black);flex-shrink:0;font-size:32px;font-weight:700;letter-spacing:-.5px;line-height:1;white-space:nowrap}.ihabdevteam-core-scope .manager-stat-card__change{font-size:12px;font-weight:500;line-height:1.2;margin-top:1px;min-width:0}.ihabdevteam-core-scope .manager-stat-card__change--up{color:var(--color-sub)}.ihabdevteam-core-scope .manager-stat-card__change--down{color:var(--color-error)}.ihabdevteam-core-scope .manager-stat-card__change--neutral{color:var(--color-gray)}@media (max-width:767px){.ihabdevteam-core-scope .manager-stat-card{padding:12px 14px 16px}.ihabdevteam-core-scope .manager-stat-card__value{font-size:24px}}";ce(N9);function R0({label:e,value:t,change:a,changeType:o,icon:n,tooltip:i,onClick:l,children:c}){const u=s.useRef(null),{anchorRect:d,openAt:h,close:p}=Ho(),m=s.useCallback(()=>{i&&u.current&&h(u.current)},[i,h]),C=o??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),v=a===void 0?void 0:a>0?`+${a}`:`${a}`,f=s.useCallback(g=>{l&&(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),l())},[l]);return r.jsxs("div",{ref:u,className:`manager-stat-card${l?" manager-stat-card--clickable":""}`,onClick:l,onKeyDown:l?f:void 0,onPointerEnter:m,onPointerLeave:p,onFocus:m,onBlur:p,role:l?"button":void 0,tabIndex:l?0:void 0,"aria-label":l?[e,t,v].filter(g=>g!==void 0&&g!=="").join(" "):void 0,children:[i&&d&&r.jsx(Ea,{anchorRect:{left:d.left,top:d.top+21,right:d.right,bottom:d.bottom,width:d.width,height:d.height},text:i}),r.jsxs("div",{className:"manager-stat-card__label-row",children:[r.jsx("span",{className:"manager-stat-card__label h5",children:e}),n&&r.jsx("span",{className:"manager-stat-card__icon",children:r.jsx(ot,{icon:n,className:"manager-stat-card__icon-inner"})})]}),r.jsxs("div",{className:"manager-stat-card__content",children:[r.jsxs("div",{className:"manager-stat-card__left",children:[r.jsx("div",{className:"manager-stat-card__value h2",children:t}),v&&r.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${C??"neutral"} caption-1`,children:v})]}),c&&r.jsx("div",{className:"manager-stat-card__body",children:c})]})]})}var T9='.ihabdevteam-core-scope .slider{--slider-thumb:40px;--slider-fill:calc(var(--slider-thumb)/2 + var(--slider-ratio, 0)*(100% - var(--slider-thumb)));--slider-fill-color:var(--color-main);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border-radius:999px;cursor:pointer;margin:0;outline:none}.ihabdevteam-core-scope .slider:disabled{--slider-fill-color:var(--color-gray);cursor:not-allowed}.ihabdevteam-core-scope .slider:focus-visible{outline:2px solid var(--color-main);outline-offset:4px}.ihabdevteam-core-scope .slider--horizontal{background:linear-gradient(to right,var(--slider-fill-color) var(--slider-fill),var(--color-darkWhite) var(--slider-fill));height:var(--slider-thumb);width:100%}.ihabdevteam-core-scope .slider--vertical{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to top,var(--slider-fill-color) var(--slider-fill),var(--color-darkWhite) var(--slider-fill));direction:rtl;height:160px;width:var(--slider-thumb);writing-mode:vertical-lr}.ihabdevteam-core-scope .slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-white);border:2px solid var(--slider-fill-color);border-radius:50%;box-shadow:var(--shadow-dropdown);cursor:pointer;height:var(--slider-thumb);width:var(--slider-thumb)}.ihabdevteam-core-scope .slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.ihabdevteam-core-scope .slider::-moz-range-thumb{background:var(--color-white);border:2px solid var(--slider-fill-color);border-radius:50%;box-shadow:var(--shadow-dropdown);cursor:pointer;height:var(--slider-thumb);width:var(--slider-thumb)}.ihabdevteam-core-scope .slider::-moz-range-track{background:transparent}.ihabdevteam-core-scope .slider--static{pointer-events:none}.ihabdevteam-core-scope .slider--static::-webkit-slider-thumb{visibility:hidden}.ihabdevteam-core-scope .slider--static::-moz-range-thumb{visibility:hidden}.ihabdevteam-core-scope .slider-wrap{align-items:center;display:flex;gap:10px}.ihabdevteam-core-scope .slider-wrap--label-left,.ihabdevteam-core-scope .slider-wrap--label-right{flex-direction:row}.ihabdevteam-core-scope .slider-wrap--label-left>.slider,.ihabdevteam-core-scope .slider-wrap--label-left>.slider-track-group,.ihabdevteam-core-scope .slider-wrap--label-right>.slider,.ihabdevteam-core-scope .slider-wrap--label-right>.slider-track-group{flex:1;min-width:0}.ihabdevteam-core-scope .slider-wrap--label-bottom,.ihabdevteam-core-scope .slider-wrap--label-top{flex-direction:column;gap:6px}.ihabdevteam-core-scope .slider-wrap--label-left .slider-wrap__value,.ihabdevteam-core-scope .slider-wrap--label-top .slider-wrap__value{order:-1}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-left,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-left{align-items:flex-start}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-center,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-center{align-items:center}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-right,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-right{align-items:flex-end}.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-bottom>.slider,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-bottom>.slider-track-group,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-top>.slider,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-top>.slider-track-group{align-self:stretch}.ihabdevteam-core-scope .slider-wrap__value{font-feature-settings:"tnum";color:var(--color-main);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}.ihabdevteam-core-scope .slider-wrap--label-left .slider-wrap__value,.ihabdevteam-core-scope .slider-wrap--label-right .slider-wrap__value{min-width:2.5em;text-align:right}.ihabdevteam-core-scope .slider-track-group{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .slider-track-group--horizontal{flex-direction:row}.ihabdevteam-core-scope .slider-track-group--horizontal .slider{flex:1;min-width:0}.ihabdevteam-core-scope .slider-track-group--vertical{flex-direction:column}.ihabdevteam-core-scope .slider-wrap__minmax{font-feature-settings:"tnum";color:var(--color-lightGray);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}';ce(T9);function bd({value:e,onChange:t,min:a=0,max:o=100,step:n=1,orientation:i="horizontal",size:l=24,disabled:c=!1,ariaLabel:u,length:d,className:h,label:p,formatValue:m,labelPos:C,labelAlign:v="right",showMinMax:f=!1,minLabel:g,maxLabel:x,showBgTick:b=!1,showFillTick:w=!1,tickStep:_,tickShape:A="dot"}){t&&!u&&ra("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 y=Math.min(o,Math.max(a,e)),B=o>a?(y-a)/(o-a):0,k=i==="vertical",S=!t,E=T=>t?.(Number(T.target.value)),D=typeof d=="number"?`${d}px`:d,I={"--slider-ratio":String(B),"--slider-thumb":`${l}px`,...D?k?{height:D}:{width:D}:{}},j=_??n,W=(b||w)&&j>0&&o>a?Math.floor((o-a)/j+1e-6):0;if(W>0&&W<=100){const T=A!=="dash",F=te=>T?`radial-gradient(circle, ${te} 0.5px, transparent 1px)`:k?`linear-gradient(to bottom, transparent calc(50% - 2px), ${te} calc(50% - 2px), ${te} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${te} calc(50% - 2px), ${te} calc(50% + 2px), transparent calc(50% + 2px))`,N=T?"2px":"4px",O=[],H=[],Z=[];for(let te=0;te<=W;te++){const se=te*j/(o-a);if(se>1+1e-6)break;const be=`${((k?1-se:se)*100).toFixed(4)}%`,X=se<=B+1e-6;if(X?!w:!b)continue;const re=X?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";O.push(F(re)),H.push(k?`${N} var(--slider-thumb)`:`var(--slider-thumb) ${N}`),Z.push(k?`center ${be}`:`${be} center`)}O.push(k?"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))"),H.push("100% 100%"),Z.push("0 0"),I.backgroundImage=O.join(", "),I.backgroundSize=H.join(", "),I.backgroundPosition=Z.join(", "),I.backgroundRepeat="no-repeat"}const L=m?m(y):p==="percent"?`${Math.round(o>a?(y-a)/(o-a)*100:0)}%`:p==="count"?`${y} / ${o}`:y===a&&g?g:y===o&&x?x:void 0,M=r.jsx("input",{type:"range",className:Ne("slider",`slider--${i}`,S&&"slider--static",!p&&!f&&h),min:a,max:o,step:n,value:y,disabled:c,readOnly:S,tabIndex:S?-1:void 0,"aria-label":u,"aria-valuetext":L,"aria-orientation":i,onChange:E,style:I});if(!p&&!f)return M;const z=r.jsx("span",{className:"slider-wrap__minmax caption-1",children:g??a}),q=r.jsx("span",{className:"slider-wrap__minmax caption-1",children:x??o}),Y=f?r.jsxs("div",{className:Ne("slider-track-group",`slider-track-group--${i}`,!p&&h),children:[k?q:z,M,k?z:q]}):M;if(!p)return Y;const P=C??(k?"bottom":"right"),V=`${Math.round(o>a?(y-a)/(o-a)*100:0)}%`,$=m?m(y):p==="percent"?V:p==="count"?`${y} / ${o}`:String(y),U=r.jsx("span",{className:"slider-wrap__value body-3b",children:$});return r.jsxs("div",{className:Ne("slider-wrap",`slider-wrap--${i}`,`slider-wrap--label-${P}`,`slider-wrap--align-${v}`,h),children:[Y,U]})}var j9='.ihabdevteam-core-scope .audio-meter{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .audio-meter__track{--meter-level:0;background:var(--color-darkWhite);border-radius:999px;flex-shrink:0;overflow:hidden;position:relative}.ihabdevteam-core-scope .audio-meter__fill{inset:0;position:absolute}.ihabdevteam-core-scope .audio-meter__value{font-feature-settings:"tnum";color:var(--color-gray);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;width:40px}.ihabdevteam-core-scope .audio-meter--horizontal .audio-meter__track{height:8px;width:120px}.ihabdevteam-core-scope .audio-meter--horizontal .audio-meter__fill{background:linear-gradient(to right,var(--color-success) 0,var(--color-success) 55%,var(--color-warn) 80%,var(--color-error) 100%);transform:scaleX(var(--meter-level));transform-origin:left}.ihabdevteam-core-scope .audio-meter--vertical{flex-direction:column}.ihabdevteam-core-scope .audio-meter--vertical .audio-meter__track{height:120px;width:8px}.ihabdevteam-core-scope .audio-meter--vertical .audio-meter__fill{background:linear-gradient(to top,var(--color-success) 0,var(--color-success) 55%,var(--color-warn) 80%,var(--color-error) 100%);transform:scaleY(var(--meter-level));transform-origin:bottom}.ihabdevteam-core-scope .audio-meter.audio-meter--label-left,.ihabdevteam-core-scope .audio-meter.audio-meter--label-right{flex-direction:row}.ihabdevteam-core-scope .audio-meter.audio-meter--label-bottom,.ihabdevteam-core-scope .audio-meter.audio-meter--label-top{flex-direction:column}.ihabdevteam-core-scope .audio-meter--label-left .audio-meter__value,.ihabdevteam-core-scope .audio-meter--label-top .audio-meter__value{order:-1}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-left,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-left{align-items:flex-start}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-center,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-center{align-items:center}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-right,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-right{align-items:flex-end}';ce(j9);const L9=.86,M9=250,gd=(e,t,a,o)=>Math.round(Math.min(o,Math.max(a,e-t))),fd=(e,t,a,o)=>{const n=gd(e,t,a,o);return`${n<0?"-":"+"}${Math.abs(n)} dB`};function Hi({analyser:e,audioElement:t,orientation:a="horizontal",length:o,label:n,labelPos:i,labelAlign:l="right",floorDb:c=-60,refDb:u=-35,displayMin:d=-5,displayMax:h=25,className:p,ariaLabel:m}){const C=s.useRef(null),v=s.useRef(null),f=s.useRef(null),g=s.useRef(null),[x,b]=s.useState(null);s.useEffect(()=>{const y=M=>{const z=fd(M,u,d,h);f.current&&(f.current.textContent=z);const q=C.current;q&&(q.setAttribute("aria-valuenow",String(gd(M,u,d,h))),q.setAttribute("aria-valuetext",z))},B=e??Vs(t)??(x&&x.el===t?x.node:null),k=v.current;if(!B||!k){k?.style.setProperty("--meter-level","0"),y(c);let M=!1;return!e&&t&&tr(t).then(z=>{!M&&z&&b({el:t,node:z})}),()=>{M=!0}}Fr();const S=new Float32Array(B.fftSize);let E=0,D=0,I=0,j=0,W=null;const L=M=>{const z=Ws(B,S);E=z>E?z:E*L9;const q=E>1e-5?20*Math.log10(E):-1/0,Y=Math.max(c,q),P=Y-u,V=Math.min(1,Math.max(0,(P-d)/(h-d)));if(k.style.setProperty("--meter-level",V.toFixed(3)),D+=Y,I+=1,M-j>=M9){const $=D/I;W=W==null?$:W*.6+$*.4,y(W),D=0,I=0,j=M}g.current=requestAnimationFrame(L)};return g.current=requestAnimationFrame(L),()=>{g.current!=null&&cancelAnimationFrame(g.current),g.current=null}},[e,t,x,c,u,d,h]);const w=typeof o=="number"?`${o}px`:o,_=r.jsx("div",{className:"audio-meter__track",style:w?a==="vertical"?{height:w}:{width:w}:{},children:r.jsx("div",{ref:v,className:"audio-meter__fill"})}),A=i??(a==="vertical"?"bottom":"right");return r.jsxs("div",{ref:C,className:Ne("audio-meter",`audio-meter--${a}`,n&&`audio-meter--label-${A}`,n&&`audio-meter--align-${l}`,p),role:"meter","aria-label":m,"aria-valuemin":d,"aria-valuemax":h,"aria-valuenow":gd(c,u,d,h),"aria-valuetext":fd(c,u,d,h),children:[_,n&&r.jsx("span",{ref:f,className:"audio-meter__value caption-2",children:fd(c,u,d,h)})]})}const P0=260;function vd({message:e,position:t,duration:a,onClose:o}){const[n,i]=s.useState(!1),[l,c]=s.useState(!1),u=s.useRef(l),d=s.useRef(n);s.useEffect(()=>{u.current=l},[l]),s.useEffect(()=>{d.current=n},[n]);const h=s.useRef(null),p=s.useRef(""),m=s.useRef(o);s.useEffect(()=>{m.current=o});const C=a,v=s.useRef(null),f=s.useRef(0),g=s.useRef(0),x=s.useRef(!1),b=s.useRef(null),w=s.useRef(null),_=s.useRef(null),A=s.useRef(null),y=s.useRef(()=>{});y.current=S=>{S<0||(f.current=Date.now(),g.current=S,v.current=setTimeout(()=>{v.current=null,i(!1),b.current=setTimeout(()=>{c(!1);try{m.current()}catch{}},P0)},S))};const B=s.useCallback(()=>{x.current||!v.current||(x.current=!0,clearTimeout(v.current),v.current=null,g.current=Math.max(0,g.current-(Date.now()-f.current)))},[]),k=s.useCallback(()=>{x.current&&(x.current=!1,y.current(g.current))},[]);return s.useEffect(()=>{if(e!==p.current&&(v.current&&(clearTimeout(v.current),v.current=null),b.current&&(clearTimeout(b.current),b.current=null)),e){if(d.current)return C>0&&!v.current&&(x.current?g.current=C:y.current(C)),p.current=e,()=>{v.current&&(clearTimeout(v.current),v.current=null),b.current&&(clearTimeout(b.current),b.current=null)};const S=()=>{const E=h.current;if(E)try{E.classList.remove("is-visible"),E.style.transition="none",t==="top"?E.style.transform="translateX(-50%) translateY(-16px)":E.style.transform="translateX(-50%) translateY(16px)",E.style.opacity="0",E.offsetWidth,E.style.transition="",E.classList.add("is-visible"),A.current&&clearTimeout(A.current),A.current=setTimeout(()=>{A.current=null;try{E.style.opacity="",E.style.transform="",E.style.transition=""}catch{}},60)}catch{}};u.current?(S(),i(!0)):(c(!0),w.current=requestAnimationFrame(()=>{_.current=requestAnimationFrame(()=>{S(),i(!0)})})),C>0&&(x.current=!1,y.current(C))}else i(!1),b.current=setTimeout(()=>c(!1),P0);return p.current=e,()=>{v.current&&clearTimeout(v.current),b.current&&clearTimeout(b.current),w.current&&cancelAnimationFrame(w.current),_.current&&cancelAnimationFrame(_.current),A.current&&clearTimeout(A.current),v.current=null,b.current=null,w.current=null,_.current=null,A.current=null}},[e,C,t]),{mounted:l,showing:n,popupRef:h,pause:B,resume:k}}var $9=".ihabdevteam-core-scope .toast{left:50%;pointer-events:none;position:fixed;transform:translateX(-50%);will-change:transform,opacity;z-index:var(--z-toast)}.ihabdevteam-core-scope .toast__inner{align-items:center;background:var(--color-main);border-radius:var(--radius-m);box-shadow:var(--shadow-popup);box-sizing:border-box;color:#fff;display:flex;justify-content:center;margin:0;max-width:min(520px,calc(100vw - 32px));min-height:60px;min-width:min(360px,calc(100vw - 32px));overflow:hidden;padding:var(--spacing-content);pointer-events:auto;text-align:center;white-space:pre-line}.ihabdevteam-core-scope .toast__text{-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;display:-webkit-box;overflow:hidden;overflow-wrap:anywhere;white-space:pre-line}.ihabdevteam-core-scope .toast__inner--normal{background:linear-gradient(var(--color-white),var(--color-white)) padding-box,linear-gradient(135deg,var(--color-main),var(--color-sub)) border-box;border:2px solid transparent;color:var(--color-black)}.ihabdevteam-core-scope .toast__inner--notice{background:linear-gradient(135deg,var(--color-main),var(--color-sub));color:#fff}.ihabdevteam-core-scope .toast__inner--warning{background:var(--color-error);color:#fff}.ihabdevteam-core-scope .toast--top{opacity:0;top:18px;transform:translateX(-50%) translateY(-100%);transition:transform .26s cubic-bezier(.22,.9,.3,1),opacity .18s ease-out}.ihabdevteam-core-scope .toast:not(.is-visible) .toast__inner{pointer-events:none}.ihabdevteam-core-scope .toast--top.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}.ihabdevteam-core-scope .toast--bottom{bottom:18px;opacity:0;transform:translateX(-50%) translateY(100%);transition:transform .26s cubic-bezier(.22,.9,.3,1),opacity .18s ease-out}.ihabdevteam-core-scope .toast--bottom.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}";ce($9);function Wo({message:e="",position:t="top",type:a="normal",onClose:o=()=>{},duration:n=2e3}){const{mounted:i,showing:l,popupRef:c,pause:u,resume:d}=vd({message:e,position:t,duration:n,onClose:o}),h=s.useRef(null),[p,m]=s.useState(!1);if(s.useEffect(()=>{l?m(!0):i||m(!1)},[l,i]),!i)return null;const C=a==="notice"||a==="warning"?a:"normal",v=r.jsx("div",{ref:c,className:`toast toast--${t} ${l?"is-visible":""}`,role:"status","aria-live":"polite",onPointerEnter:f=>{h.current=f.pointerType},onMouseEnter:()=>{h.current!=="touch"&&u()},onMouseLeave:d,onFocusCapture:u,onBlurCapture:d,children:r.jsx("div",{className:`toast__inner toast__inner--${C} body-2`,"aria-hidden":p||l?void 0:!0,children:r.jsx("span",{className:"toast__text",children:e})})});return typeof document<"u"?ua.createPortal(v,document.body):v}var R9='.ihabdevteam-core-scope .progress-bar{flex-shrink:0}.ihabdevteam-core-scope .progress-bar__track{background:var(--progress-bar-track,var(--color-darkWhite));border-radius:999px;height:8px;height:var(--progress-bar-height,8px);overflow:hidden;width:100%}.ihabdevteam-core-scope .progress-bar__fill{background:var(--progress-bar-fill,var(--color-main));border-radius:inherit;height:100%;transition:width .3s ease;transition:width var(--progress-bar-duration,.3s) ease}.ihabdevteam-core-scope .progress-bar__label{font-feature-settings:"tnum";color:var(--progress-bar-label-color,var(--color-gray));font-variant-numeric:tabular-nums}.ihabdevteam-core-scope .progress-bar--4{--progress-bar-height:4px}.ihabdevteam-core-scope .progress-bar--8{--progress-bar-height:8px}.ihabdevteam-core-scope .progress-bar--16{--progress-bar-height:16px}.ihabdevteam-core-scope .progress-bar--24{--progress-bar-height:24px}.ihabdevteam-core-scope .progress-bar--32{--progress-bar-height:32px}.ihabdevteam-core-scope .progress-bar--label-left,.ihabdevteam-core-scope .progress-bar--label-right{align-items:center;display:flex;gap:10px}.ihabdevteam-core-scope .progress-bar--label-left>.progress-bar__track,.ihabdevteam-core-scope .progress-bar--label-right>.progress-bar__track{flex:1;min-width:0}.ihabdevteam-core-scope .progress-bar--label-left .progress-bar__label{order:-1}.ihabdevteam-core-scope .progress-bar--label-bottom,.ihabdevteam-core-scope .progress-bar--label-top{display:flex;flex-direction:column;gap:6px}.ihabdevteam-core-scope .progress-bar--label-top .progress-bar__label{order:-1}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-left,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-left{align-items:flex-start}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-center,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-center{align-items:center}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-right,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-right{align-items:flex-end}.ihabdevteam-core-scope .progress-bar--label-bottom>.progress-bar__track,.ihabdevteam-core-scope .progress-bar--label-top>.progress-bar__track{align-self:stretch}.ihabdevteam-core-scope .progress-bar--label-inside{position:relative}.ihabdevteam-core-scope .progress-bar--label-inside .progress-bar__label{pointer-events:none;position:absolute;top:50%}.ihabdevteam-core-scope .progress-bar--label-on-fill .progress-bar__label{color:var(--progress-bar-label-color-on-fill,var(--color-deepWhite))}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-left .progress-bar__label{left:10px;transform:translateY(-50%)}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-center .progress-bar__label{left:50%;transform:translate(-50%,-50%)}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-right .progress-bar__label{right:10px;transform:translateY(-50%)}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .progress-bar__fill{transition:none}}';ce(R9);const P9=24;function z0({value:e,max:t=100,size:a=8,color:o,trackColor:n,label:i,formatValue:l,labelPos:c,labelAlign:u="right",ariaLabel:d,className:h}){const p=Number.isFinite(t)&&t>0?t:1,m=Math.max(0,Math.min(Number.isFinite(e)?e:0,p)),C=m/p*100,v=Number.isFinite(t)&&t>0?t:0,f=c??(a>=P9?"inside":"bottom"),g=f==="center"?"inside":f,x=g==="inside"&&(u==="left"?C>=15:u==="center"?C>=50:C>=85),b={};return o&&(b["--progress-bar-fill"]=o),n&&(b["--progress-bar-track"]=n),r.jsxs("div",{className:Ne("progress-bar",`progress-bar--${a}`,`progress-bar--label-${g}`,i&&`progress-bar--align-${u}`,i&&x&&"progress-bar--label-on-fill",h),style:b,children:[r.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":m,"aria-valuemin":0,"aria-valuemax":v,"aria-valuetext":i?l?l(m):i==="percent"?void 0:i==="raw"?String(m):`${m} / ${v}`:void 0,"aria-label":d,children:r.jsx("div",{className:"progress-bar__fill",style:{width:`${C}%`}})}),i&&r.jsx("span",{className:"progress-bar__label caption-1b",children:l?l(m):i==="percent"?`${Math.round(C)}%`:i==="raw"?String(m):`${m} / ${v}`})]})}var z9=".ihabdevteam-core-scope .progress-indicator{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .progress-indicator-dot{align-items:center;background:var(--pi-inactive-bg,var(--color-whiteLine));border-radius:var(--radius-card);color:var(--pi-inactive-color,var(--color-gray));display:inline-flex;height:28px;justify-content:center;width:52px}.ihabdevteam-core-scope .progress-indicator-dot.done{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .progress-indicator-dot.active{background:var(--color-sub);color:#fff}@media (max-width:1024px){.ihabdevteam-core-scope .progress-indicator{gap:6px}.ihabdevteam-core-scope .progress-indicator-dot{height:28px;width:44px}}@media (max-width:767px){.ihabdevteam-core-scope .progress-indicator--mobile .progress-indicator-dot{height:28px;padding:0 12px;width:auto}}.ihabdevteam-core-scope .progress-indicator--dot{flex-wrap:wrap;gap:var(--spacing-xs);max-width:100%;min-width:0}.ihabdevteam-core-scope .progress-indicator-dot--dot{background:var(--pi-inactive-bg,var(--color-darkWhite));border-radius:var(--radius-full);height:8px;transition:width .2s ease-out,background .2s ease-out;width:8px}.ihabdevteam-core-scope .progress-indicator-dot--dot.done{background:color-mix(in srgb,var(--color-main) 40%,transparent)}.ihabdevteam-core-scope .progress-indicator-dot--dot.active{background:var(--color-main);width:24px}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .progress-indicator-dot--dot{transition:none}}";ce(z9);const I0={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},I9="rgba(255, 255, 255, 0.16)";function Cd({max:e,index:t,inactiveBg:a,inactiveColor:o,transparent:n,variant:i="numbered",announce:l=!1,ariaLabel:c}){const{t:u}=_e.useTranslation(),d=sa("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const h=Number.isInteger(t)?Math.max(0,Math.min(t,e-1)):0,p=c??u("progress.steps",{current:h+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),m={};if(a&&(m["--pi-inactive-bg"]=a),o&&(m["--pi-inactive-color"]=o),n&&(a||(m["--pi-inactive-bg"]=I9),o||(m["--pi-inactive-color"]="var(--color-white)")),i==="dot")return r.jsxs("div",{className:"progress-indicator progress-indicator--dot",style:m,role:l?"status":"img","aria-label":l?void 0:p,children:[l&&r.jsx("span",{style:I0,children:p}),Array.from({length:e}).map((v,f)=>r.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${f<h?" done":f===h?" active":""}`},f))]});const C=l?r.jsx("span",{role:"status",style:I0,children:p}):null;return d?r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:m,role:"list","aria-label":p,children:r.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[h+1," / ",e]})}),C]}):r.jsxs(r.Fragment,{children:[C,r.jsx("div",{className:"progress-indicator",style:m,role:"list","aria-label":p,children:Array.from({length:e}).map((v,f)=>r.jsx("span",{role:"listitem","aria-current":f===h?"step":void 0,className:`progress-indicator-dot ${f<h?" done":f===h?" active":""} body-3`,children:f+1},f))})]})}function O9(e){if(!e)return[];const t=[];let a=0,o="";for(const n of e.trim()){if(n==="("?a++:n===")"&&a--,/\s/.test(n)&&a===0){o&&(t.push(o),o="");continue}o+=n}return o&&t.push(o),t}var F9=".ihabdevteam-core-scope .table-wrap{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);overflow-x:auto}.ihabdevteam-core-scope .table{width:100%}.ihabdevteam-core-scope .table-header{align-items:center;border-bottom:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;gap:8px;padding:0 16px;text-align:left;width:100%}.ihabdevteam-core-scope .table-header--clickable{cursor:pointer;transition:background .15s}.ihabdevteam-core-scope .table-header--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-header__chevron{align-items:center;color:var(--color-gray);display:flex;flex-shrink:0}.ihabdevteam-core-scope .table-header__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .table-header__title{color:var(--color-darkGray)}.ihabdevteam-core-scope .table-header__count{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .table-header__actions{align-items:center;display:flex;flex-shrink:0;gap:4px;margin-left:auto}.ihabdevteam-core-scope .table-wrap--collapsed .table-header{border-bottom:none}.ihabdevteam-core-scope .table-wrap--dragover{outline:2px dashed var(--color-main);outline-offset:-2px}.ihabdevteam-core-scope .table-wrap--dragover .table-header{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-fields-strip{position:relative}.ihabdevteam-core-scope .table-wrap--resizable .table-fields,.ihabdevteam-core-scope .table-wrap--resizable .table-row{padding-right:40px}.ihabdevteam-core-scope .table-fields__reset{position:absolute;right:2px;top:50%;transform:translateY(-50%)}.ihabdevteam-core-scope .table-fields{border-bottom:1px solid var(--color-whiteLine);display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-template-columns:var(--table-grid-cols-override,var(--table-grid-cols,repeat(auto-fit,minmax(80px,1fr))))}.ihabdevteam-core-scope .table-body{display:flex;flex-direction:column}.ihabdevteam-core-scope .table-row-wrap{border-bottom:1px solid var(--color-darkWhite);display:flex;flex-direction:column}.ihabdevteam-core-scope .table-row-wrap:last-child{border-bottom:none}.ihabdevteam-core-scope .table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-template-columns:var(--table-grid-cols-override,var(--table-grid-cols,repeat(auto-fit,minmax(80px,1fr))))}.ihabdevteam-core-scope .table-row-expand{background:var(--color-darkWhite);border-top:1px solid var(--color-whiteLine);display:flex;flex-wrap:wrap;gap:12px;padding:16px 20px}.ihabdevteam-core-scope .table-row-expand__cell,.ihabdevteam-core-scope .table-row__full-cell{display:contents}.ihabdevteam-core-scope .table-row-hint{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .table-wrap--small .table-fields,.ihabdevteam-core-scope .table-wrap--small .table-header,.ihabdevteam-core-scope .table-wrap--small .table-row{min-height:48px}.ihabdevteam-core-scope .table-wrap--medium .table-fields,.ihabdevteam-core-scope .table-wrap--medium .table-header,.ihabdevteam-core-scope .table-wrap--medium .table-row{min-height:56px}.ihabdevteam-core-scope .table-wrap--large .table-fields,.ihabdevteam-core-scope .table-wrap--large .table-header,.ihabdevteam-core-scope .table-wrap--large .table-row{min-height:64px}.ihabdevteam-core-scope .table-fields.table-fields--groups{min-height:34px}.ihabdevteam-core-scope .table-row--clickable{cursor:pointer;transition:background .1s,box-shadow .1s}.ihabdevteam-core-scope .table-row--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-row--draggable{cursor:grab}.ihabdevteam-core-scope .table-row--draggable:active{cursor:grabbing}.ihabdevteam-core-scope .table-row--dragging{opacity:.4}.ihabdevteam-core-scope .table-row--empty,.ihabdevteam-core-scope .table-row--loading{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .table-row--empty{color:var(--color-lightGray);padding:0 20px}.ihabdevteam-core-scope .table-wrap--small .table-row--empty,.ihabdevteam-core-scope .table-wrap--small .table-row--loading{min-height:48px}.ihabdevteam-core-scope .table-wrap--medium .table-row--empty,.ihabdevteam-core-scope .table-wrap--medium .table-row--loading{min-height:56px}.ihabdevteam-core-scope .table-wrap--large .table-row--empty,.ihabdevteam-core-scope .table-wrap--large .table-row--loading{min-height:64px}";ce(F9);var H9=".ihabdevteam-core-scope .table-cell{align-items:center;color:var(--color-darkGray);display:flex;min-width:0;overflow:hidden;overflow-wrap:break-word;padding:0 16px;word-break:break-word}.ihabdevteam-core-scope .table-cell__row-button{align-items:center;align-self:stretch;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:inherit;cursor:pointer;display:flex;font:inherit;margin:0;min-width:0;overflow:hidden;overflow-wrap:inherit;padding:0;text-align:inherit;width:100%;word-break:inherit}";ce(H9);var V9='.ihabdevteam-core-scope .table-field{color:var(--color-gray);padding:0 16px}.ihabdevteam-core-scope .table-field,.ihabdevteam-core-scope .table-field__button{align-items:center;display:flex;gap:0;min-width:0;overflow:hidden;text-align:left;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ihabdevteam-core-scope .table-field__button{align-self:stretch;background:none;border:0;color:inherit;cursor:pointer;flex:1 1 auto;font:inherit;margin:0;padding:0}.ihabdevteam-core-scope .table-field--resizable{position:relative}.ihabdevteam-core-scope .table-field__resizer{align-items:center;cursor:col-resize;display:flex;height:100%;justify-content:flex-end;position:absolute;right:0;top:0;touch-action:none;width:10px;z-index:3}.ihabdevteam-core-scope .table-field__resizer:after{background:var(--color-whiteLine);content:"";height:55%;transition:background-color .12s,width .12s,height .12s;width:1px}.ihabdevteam-core-scope .table-field__resizer:active:after,.ihabdevteam-core-scope .table-field__resizer:hover:after{background:var(--color-main);height:100%;width:2px}.ihabdevteam-core-scope .table-field--sorted,.ihabdevteam-core-scope .table-field:hover{color:var(--color-main)}.ihabdevteam-core-scope .table-field__sort-arrow{flex-shrink:0}';ce(V9);function W9({children:e,className:t,style:a,rowLabel:o,onRowClick:n}){return r.jsx("div",{role:"cell",className:t?`table-cell ${t}`:"table-cell",style:a,children:o&&n?r.jsx("button",{type:"button",className:"table-cell__row-button","aria-label":o,children:e}):e})}function xd({variant:e="default",children:t,className:a,draggable:o,onClick:n,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:u,expandedContent:d,colSpan:h,describedBy:p,rowHasButton:m}){const C=s.useCallback(v=>{n&&v.target===v.currentTarget&&(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),n())},[n]);return e==="loading"?r.jsx("div",{role:"presentation",className:"table-row-wrap",children:r.jsx("div",{role:"row",className:"table-row table-row--loading",children:r.jsx("div",{role:"cell","aria-colspan":h,className:"table-row__full-cell",children:r.jsx(yr,{size:28})})})}):e==="empty"?r.jsx("div",{role:"presentation",className:"table-row-wrap",children:r.jsx("div",{role:"row",className:"table-row table-row--empty body-3",children:r.jsx("div",{role:"cell","aria-colspan":h,className:"table-row__full-cell",children:t})})}):r.jsxs("div",{role:"presentation",className:"table-row-wrap",children:[r.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:o,onClick:n,onKeyDown:n?C:void 0,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:u,role:"row",tabIndex:n&&!m?0:void 0,"aria-describedby":n&&!m?p:void 0,children:t}),d&&r.jsx("div",{role:"row",className:"table-row-expand",children:r.jsx("div",{role:"cell","aria-colspan":h,className:"table-row-expand__cell",children:d})})]})}function G9({dir:e}){return r.jsx(e==="asc"?zp:Pp,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function U9({children:e,onClick:t,className:a,sortDir:o,ariaSort:n,onResizeStart:i}){const l=r.jsxs(r.Fragment,{children:[e,o&&r.jsx(G9,{dir:o})]});return r.jsxs("div",{onClick:t,role:"columnheader","aria-sort":n,className:Ne("table-field body-3",a,o?"table-field--sorted":"",i?"table-field--resizable":""),children:[t?r.jsx("button",{type:"button",className:"table-field__button",children:l}):l,i&&r.jsx("span",{className:"table-field__resizer",onPointerDown:i,onClick:c=>c.stopPropagation(),"aria-hidden":"true"})]})}function Vi({fields:e=[],headerGroups:t,items:a=[],renderRow:o,onRowClick:n,isRowClickable:i,onRowMouseEnter:l,onRowMouseLeave:c,onRowDragStart:u,onRowDragEnd:d,draggingId:h,gridTemplateColumns:p,mobileGridTemplateColumns:m,resizable:C=!1,resizeMode:v="grow",resizeStorageKey:f,size:g="small",title:x,icon:b,count:w,collapsed:_=!1,onToggleCollapse:A,headerActions:y,empty:B,loading:k,dragOver:S=!1,onDragOver:E,onDragLeave:D,onDrop:I,renderExpandedRow:j,expandedId:W}){const{t:L}=_e.useTranslation(),M=s.useId(),z=`table-title-${M}`,q=`table-row-hint-${M}`,Y=sa("(max-width: 767px)"),P=m&&Y?m:null,V=C&&!Y,$=48,U=s.useRef(()=>$),T=f?`table-cols:${f}`:null,F=s.useRef(null),N=s.useRef(null),O=s.useRef(null),H=s.useRef(null),[Z,te]=s.useState(!1),se=s.useCallback(()=>{const ee=O.current;ee&&te(ee.scrollWidth>ee.clientWidth+1)},[]),be=s.useCallback((ee,pe)=>{const Ee=ee.current;Ee&&N.current&&N.current.unobserve(Ee),ee.current=pe,pe?(!N.current&&typeof ResizeObserver<"u"&&(N.current=new ResizeObserver(()=>se())),N.current?.observe(pe)):!O.current&&!H.current&&(N.current?.disconnect(),N.current=null),se()},[se]),X=s.useCallback(ee=>be(O,ee),[be]),re=s.useCallback(ee=>be(H,ee),[be]);s.useEffect(()=>{se()}),s.useEffect(()=>{if(typeof window>"u")return;const ee=typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>se()):null;return window.addEventListener("resize",se),()=>{ee!=null&&cancelAnimationFrame(ee),window.removeEventListener("resize",se)}},[se]);const Ae=s.useRef(()=>!1),K=s.useRef([]),ie=s.useRef(null),ue=ee=>{if(!ee||typeof window>"u")return null;try{const pe=JSON.parse(window.localStorage.getItem(ee)??"null");return Array.isArray(pe)&&pe.length>0&&pe.every(Ee=>typeof Ee=="number"&&Number.isFinite(Ee)&&Ee>0)?pe:null}catch{return null}},[je,ye]=s.useState(()=>ue(T)),[le,he]=s.useState(T);le!==T&&(he(T),ye(ue(T)));const ve=s.useRef(je);s.useEffect(()=>{ve.current=je},[je]);const G=s.useCallback(ee=>{const pe=ie.current;if(!pe)return;const Ee=ve.current;if(Ee){const Re=[...Ee];if(pe.next!=null&&pe.startWNext!=null){const Ve=ee.clientX-pe.startX,We=Math.max(U.current(pe.index)-pe.startW,Math.min(pe.startWNext-U.current(pe.next),Ve));Re[pe.index]=pe.startW+We,Re[pe.next]=pe.startWNext-We}else Re[pe.index]=Math.max(U.current(pe.index),pe.startW+(ee.clientX-pe.startX));ve.current=Re,ye(Re)}},[]),oe=s.useCallback(()=>{if(ie.current=null,window.removeEventListener("pointermove",G),window.removeEventListener("pointerup",oe),window.removeEventListener("pointercancel",oe),document.body.style.cursor="",document.body.style.userSelect="",T&&ve.current)try{window.localStorage.setItem(T,JSON.stringify(ve.current))}catch{}},[G,T]),me=s.useCallback((ee,pe)=>{pe.preventDefault(),pe.stopPropagation();const Ee=F.current;if(!Ee)return;const Re=Array.from(Ee.children).map(We=>We.getBoundingClientRect().width),Ve=v==="fit"?e.findIndex((We,ct)=>ct>ee&&We.resizable!==!1):-1;ie.current=Ve>=0?{index:ee,startX:pe.clientX,startW:Re[ee],next:Ve,startWNext:Re[Ve]}:{index:ee,startX:pe.clientX,startW:Re[ee]},ve.current=Re,ye(Re),window.addEventListener("pointermove",G),window.addEventListener("pointerup",oe),window.addEventListener("pointercancel",oe),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[G,oe,v,e]),Te=s.useCallback(()=>{const ee=F.current,pe=ee?.closest(".table-wrap");if(!ee||!pe)return;const Ee=pe.style.getPropertyValue("--table-grid-cols");pe.style.setProperty("--table-grid-cols",e.map((et,Ie)=>Ae.current(Ie)?K.current[Ie]:"max-content").join(" "));const Re=Array.from(pe.querySelectorAll(".table-row")).filter(et=>!et.classList.contains("table-row--loading")&&!et.classList.contains("table-row--empty")),Ve=e.map((et,Ie)=>{let Oe=ee.children[Ie]?.getBoundingClientRect().width??0;for(const it of Re){const wt=it.children[Ie];wt&&(Oe=Math.max(Oe,wt.getBoundingClientRect().width))}const bt=Ae.current(Ie)?parseFloat(K.current[Ie]):NaN;return Number.isFinite(bt)?bt:Math.max(U.current(Ie),Math.ceil(Oe))}),We=window.getComputedStyle(ee),ct=ee.clientWidth-(parseFloat(We.paddingLeft)||0)-(parseFloat(We.paddingRight)||0);Ee?pe.style.setProperty("--table-grid-cols",Ee):pe.style.removeProperty("--table-grid-cols");let mt=Ve;const gt=Ve.reduce((et,Ie,Oe)=>et+(Ae.current(Oe)?Ie:0),0),Et=Ve.reduce((et,Ie,Oe)=>et+(Ae.current(Oe)?0:Ie),0),ft=ct-gt;if(ct>0&&Et>0&&ft>0){const et=ft/Et;mt=Ve.map((Oe,bt)=>Ae.current(bt)?Oe:Math.max(U.current(bt),Math.round(Oe*et)));const Ie=Math.round(ft-mt.reduce((Oe,bt,it)=>Oe+(Ae.current(it)?0:bt),0));if(Ie!==0){let Oe=-1;mt.forEach((bt,it)=>{!Ae.current(it)&&(Oe<0||bt>mt[Oe])&&(Oe=it)}),Oe>=0&&(mt[Oe]=Math.max(U.current(Oe),mt[Oe]+Ie))}}if(ye(mt),T)try{window.localStorage.setItem(T,JSON.stringify(mt))}catch{}},[e,v,T]);s.useEffect(()=>()=>{ie.current&&(window.removeEventListener("pointermove",G),window.removeEventListener("pointerup",oe),window.removeEventListener("pointercancel",oe),document.body.style.cursor="",document.body.style.userSelect="")},[G,oe]);const ke=O9(p),Pe=ke.filter(ee=>/\b(auto|min-content|max-content)\b|fit-content\(/.test(ee));Pe.length>0&&ra(`table-content-track:${p}`,`[ihabdevteam-core] Table \uC758 gridTemplateColumns \uC5D0 \uB0B4\uC6A9\uC73C\uB85C \uD06C\uAE30\uAC00 \uC815\uD574\uC9C0\uB294 \uD2B8\uB799(${Pe.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: ${p})`);const He=e.findIndex(ee=>!!ee.sortDir);e.filter(ee=>!!ee.sortDir).length>1&&ra("table-multi-sort","[ihabdevteam-core] Table \uC758 fields \uC5D0 sortDir \uC774 \uB458 \uC774\uC0C1 \uC788\uC2B5\uB2C8\uB2E4. aria-sort \uB294 \uD45C \uD558\uB098\uC5D0 \uD55C \uCE78\uB9CC \uAC00\uC9C8 \uC218 \uC788\uC5B4 \uCCAB \uCE78\uB9CC \uBC29\uD5A5\uC73C\uB85C \uC54C\uB9AC\uACE0 \uB098\uBA38\uC9C0\uB294 none \uC73C\uB85C \uB461\uB2C8\uB2E4.");const lt=ee=>ee===He?e[ee].sortDir==="asc"?"ascending":"descending":e[ee].onClick?"none":void 0,rt=ee=>/^\d+(\.\d+)?px$/.test(ke[ee]??""),at=ee=>{const pe=ke[ee]??"",Ee=/^minmax\(\s*(\d+(?:\.\d+)?)px\s*,/.exec(pe)??/^(\d+(?:\.\d+)?)px$/.exec(pe);return Ee?parseFloat(Ee[1]):$};Ae.current=rt,U.current=at,K.current=ke;const ht=ee=>v==="fit"&&!rt(ee)?"fr":"px",De=je&&je.length===e.length&&!Y&&(v==="fit"||a.length>0),Ue=P??(De?e.map((ee,pe)=>ee.resizable===!1&&ke[pe]?ke[pe]:`${je[pe]}${ht(pe)}`).join(" "):p),Se=Ue?{"--table-grid-cols":Ue}:void 0,Ye=x!==void 0;return r.jsxs("div",{ref:X,className:`table-wrap table-wrap--${g}${V?" table-wrap--resizable":""}${S?" table-wrap--dragover":""}${_?" table-wrap--collapsed":""}`,style:Se,onDragOver:E,onDragLeave:D,onDrop:I,tabIndex:Z?0:void 0,role:Z?"region":void 0,"aria-label":Z?typeof x=="string"?x:L("table.scrollRegion","\uAC00\uB85C\uB85C \uAD74\uB9B4 \uC218 \uC788\uB294 \uD45C"):void 0,children:[!!n&&r.jsx("span",{id:q,className:"table-row-hint",children:L("table.rowActionHint","\uC904\uC744 \uB204\uB974\uBA74 \uC790\uC138\uD788 \uBD05\uB2C8\uB2E4")}),r.jsxs("div",{ref:re,role:"table","aria-labelledby":Ye&&typeof x=="string"?z:void 0,className:"table body-2",children:[Ye&&r.jsxs("div",{className:Ne("table-header",A&&"table-header--clickable"),onClick:A,role:"caption",children:[A&&r.jsx(Ce,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:_?"chevron-right":"chevron-down",ariaLabel:_?L("common.expand","\uD3BC\uCE58\uAE30"):L("common.collapse","\uC811\uAE30"),ariaExpanded:!_,className:"table-header__chevron"}),b&&r.jsx(ot,{icon:b,label:typeof x=="string"?x:void 0,className:"table-header__icon"}),r.jsx("span",{id:z,className:"table-header__title h5b",children:x}),w!==void 0&&r.jsx("span",{className:"table-header__count body-3b",children:w}),y&&r.jsx("span",{className:"table-header__actions",onClick:ee=>ee.stopPropagation(),children:y})]}),!_&&r.jsxs(r.Fragment,{children:[t&&t.length>0&&r.jsx("div",{role:"row",className:"table-fields table-fields--groups",children:t.map((ee,pe)=>r.jsx("div",{role:"columnheader","aria-colspan":ee.span,className:Ne("table-field body-3",ee.className),style:{gridColumn:`span ${ee.span}`},children:ee.label},pe))}),r.jsxs("div",{role:"presentation",className:Ne("table-fields-strip",V&&"table-fields-strip--resizable"),children:[r.jsx("div",{role:"row",className:"table-fields",ref:F,children:e.map((ee,pe)=>r.jsx(U9,{onClick:ee.onClick,className:ee.className,sortDir:ee.sortDir,ariaSort:lt(pe),onResizeStart:V&&pe<e.length-1&&ee.resizable!==!1&&(v!=="fit"||e.some((Ee,Re)=>Re>pe&&Ee.resizable!==!1))?Ee=>me(pe,Ee):void 0,children:ee.label},pe))}),V&&r.jsx(Ce,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"chevrons-left-right-ellipsis",ariaLabel:L("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),showTooltipInfo:L("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),className:"table-fields__reset",onClick:Te})]}),r.jsx("div",{role:"rowgroup",className:"table-body",children:k?r.jsx(xd,{variant:"loading",colSpan:e.length||void 0}):a.length===0&&B?r.jsx(xd,{variant:"empty",colSpan:e.length||void 0,children:B}):a.map((ee,pe)=>{const Ee=h!=null&&ee.id===h,Re=!!n&&(i?i(ee):!0),Ve=W!=null&&ee.id!=null&&(W instanceof Set?W.has(ee.id)||[...W].some(We=>String(We)===String(ee.id)):String(ee.id)===String(W));return r.jsx(xd,{className:`${Re?" table-row--clickable":""}${u?" table-row--draggable":""}${Ee?" table-row--dragging":""}`.trim(),draggable:!!u,onClick:Re?()=>n(ee):void 0,colSpan:e.length||void 0,rowHasButton:o(ee).some(We=>!!We.rowLabel),describedBy:q,onMouseEnter:l?We=>l(ee,We):void 0,onMouseLeave:c?We=>c(ee,We):void 0,onDragStart:u?We=>u(ee,We):void 0,onDragEnd:d?We=>d(ee,We):void 0,expandedContent:Ve&&j?j(ee):void 0,children:o(ee).map((We,ct)=>r.jsx(W9,{className:We.className,style:We.style,rowLabel:Re?We.rowLabel:void 0,onRowClick:Re?()=>n(ee):void 0,children:We.content},ct))},ee.id!=null?`${typeof ee.id}:${ee.id}`:`__idx:${pe}`)})})]})]})]})}function O0(e){switch(e){case"\uBCF4\uCCAD\uAE30":return"main";case"\uC778\uACF5\uC640\uC6B0":return"sub";default:return"default"}}const kr=e=>e==null?"":String(e).trim();function _d(e,t,a,o){const n=kr(e),i=kr(t),l=kr(a);if(o&&n&&i&&l){const u=`${n.padStart(4,"0")}-${i.padStart(2,"0")}-${l.padStart(2,"0")}`,d=new Date(u);if(!Number.isNaN(d.getTime())&&d.toISOString().slice(0,10)===u){const h=ai(u,o);if(h)return h}}const c=[n,i,l];for(;c.length>0&&c[c.length-1]==="";)c.pop();return c.join(".")}function q9(e,t,a){const o=kr(e);return o?`${o}-${kr(t).padStart(2,"0")}-${kr(a).padStart(2,"0")}`:""}var Y9=".ihabdevteam-core-scope .dlp-popup .popup-panel{max-width:600px}.ihabdevteam-core-scope .dlp-row{border-bottom:1px solid var(--color-darkWhite);cursor:pointer;transition:background .1s}.ihabdevteam-core-scope .dlp-row:hover{background:#f5f5f5;background:var(--color-hoverBg,#f5f5f5)}.ihabdevteam-core-scope .dlp-row:last-child{border-bottom:none}.ihabdevteam-core-scope .dlp-date{color:var(--color-lightGray);white-space:nowrap}.ihabdevteam-core-scope .dlp-side-table{margin-top:0}.ihabdevteam-core-scope .dlp-worn-check{align-items:center;display:inline-flex}.ihabdevteam-core-scope .dlp-row-actions{align-items:center;display:flex;justify-content:flex-end}";ce(Y9);const K9={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function Z9(e,t){const a=K9[e];return a?t(`device.type.${a}`,{defaultValue:e}):e}function F0(e,t){return t!=="wornAt"?String(e[t]??""):q9(e.wornYear,e.wornMonth,e.wornDay)}function H0({rows:e,loading:t,onSelect:a,onDelete:o,onWear:n,onRelease:i,onAdd:l}){const{t:c,i18n:u}=_e.useTranslation(),d=g=>g==="\uC88C"?c("device.direction.left","\uC88C"):c("device.direction.right","\uC6B0"),{\uC815\uB82C:h,\uCE78:p}=mu(),m=s.useMemo(()=>{if(!h)return e;const{key:g,asc:x}=h;return[...e].sort((b,w)=>{if(g==="worn"){const _=Number(w.worn)-Number(b.worn);return x?_:-_}return pu(F0(b,g),F0(w,g),x)})},[e,h]),{pageRows:C,pageSizeProps:v,paginationProps:f}=hu(m,h);return r.jsxs("div",{className:"dlp-side-table",children:[r.jsx(Pi,{count:{value:e.length,unit:c("customers.device.unit","\uAC1C")},pageSize:v,pagination:f,actions:l&&r.jsx(Ce,{htmlType:"button",size:40,type:"bar",variant:"main",icon:"plus",label:c("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:l})}),r.jsx(Vi,{loading:t,resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...p(c("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},p(c("device.direction.label","\uBC29\uD5A5"),"side"),p(c("device.deviceType","\uC885\uB958"),"device"),p(c("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),p(c("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),p(c("device.productName","\uC81C\uD488\uBA85"),"productName"),p(c("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...o?[{label:"",resizable:!1}]:[]],items:C.map((g,x)=>({id:g.id??`${g.side}-${x}`,row:g})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${o?" 80px":""}`,renderRow:({row:g})=>[{content:r.jsx("span",{className:"dlp-worn-check",onClick:x=>x.stopPropagation(),children:r.jsx(sd,{checked:g.worn,disabled:g.worn?!i:!n,ariaLabel:g.worn?c("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):c("customers.device.wear","\uCC29\uC6A9"),onChange:x=>{x?n?.(g):i?.(g)}})})},{content:r.jsx("span",{children:d(g.side)})},{content:g.device?r.jsx(St,{size:"small",variant:O0(g.device),fill:"soft",label:Z9(g.device,c)}):r.jsx("span",{})},{content:r.jsx("span",{children:g.brand})},{content:r.jsx("span",{children:g.fitType||"-"})},{content:r.jsx("span",{children:g.productName||"-"})},{content:r.jsx("span",{className:"dlp-date",children:_d(g.wornYear,g.wornMonth,g.wornDay,u.language)||"-"})},...o?[{content:r.jsx("span",{className:"dlp-row-actions",children:r.jsx(Ce,{htmlType:"button",size:28,type:"bar",variant:"transparent-gray",label:c("common.delete","\uC0AD\uC81C"),onClick:x=>{x?.stopPropagation(),o(g)}})})}]:[]],onRowClick:({row:g})=>a(g),empty:c("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}var X9=`.ihabdevteam-core-scope .calendar-nav{align-items:center;display:flex;gap:var(--spacing-m);justify-content:center;margin-bottom:var(--spacing-m);position:relative}.ihabdevteam-core-scope .calendar-nav__legend{align-items:center;color:var(--color-gray);display:flex;gap:6px;position:absolute;right:0}.ihabdevteam-core-scope .calendar-nav__legend-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.ihabdevteam-core-scope .calendar-nav__legend-dot--main{background:var(--color-main)}.ihabdevteam-core-scope .calendar-nav__legend-dot--sub{background:var(--color-sub)}.ihabdevteam-core-scope .calendar-nav__legend-dot--disabled{background:var(--color-disabled)}.ihabdevteam-core-scope .calendar-nav__button{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);color:var(--color-darkGray);cursor:pointer;display:flex;font-size:18px;height:32px;line-height:1;transition:border-color .15s,color .15s;width:32px}.ihabdevteam-core-scope .calendar-nav__button:hover{border-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .calendar-nav__title{color:var(--color-darkGray);font-weight:700;min-width:100px;text-align:center}.ihabdevteam-core-scope .calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.ihabdevteam-core-scope .calendar-day-header{color:var(--color-lightGray);font-weight:600;padding:6px 0;text-align:center}.ihabdevteam-core-scope .calendar-day-header:first-child{color:var(--color-error)}.ihabdevteam-core-scope .calendar-day-header:last-child{color:var(--color-main)}.ihabdevteam-core-scope .calendar-cell{background:transparent;border-radius:var(--radius-s);box-sizing:border-box;container-type:inline-size;cursor:default;min-height:118px;min-width:0;padding:8px}.ihabdevteam-core-scope .calendar-cell.empty{background:transparent;cursor:default}
|
|
859
|
+
`),f=v===-1?a:a.slice(0,v);i("comment",f),a=a.slice(f.length);continue}const c=a.match(/^\/\*[\s\S]*?\*\//);if(c){i("comment",c[0]),a=a.slice(c[0].length);continue}const 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 h=a.match(n9);if(h){i("keyword",h[0]),a=a.slice(h[0].length);continue}const p=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(p){const v=p[0];i(n&&r9.has(v)?"command":"identifier",v),a=a.slice(v.length);continue}const m=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(m){i("operator",m[0]),a=a.slice(m[0].length);continue}const C=a.match(/^[()[\]{};.,]/);if(C){i("punctuation",C[0]),a=a.slice(1);continue}i("other",a[0]),a=a.slice(1)}return o}function x0({children:e,language:t="bash",title:a="",showCopy:o=!0,size:n="default",className:i=""}){const{t:l}=_e.useTranslation(),[c,u]=s.useState(!1),d=o9(C0(e)),h=s.useRef(null);s.useEffect(()=>()=>{h.current&&clearTimeout(h.current)},[]);const p=async()=>{try{if(!await Zl(d))return;u(!0),h.current&&clearTimeout(h.current),h.current=setTimeout(()=>u(!1),2e3)}catch{}},m=i9(d,t),C=n==="small"?"caption-1":"body-3";return r.jsxs("div",{className:Ne("code-box",n==="small"?"code-box--small":"",i),children:[(a||o)&&r.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":l("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[r.jsx("div",{className:"code-box__title caption-1",children:a}),o&&r.jsx(Ce,{htmlType:"button",className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:c?"check":"copy",onClick:p,ariaLabel:c?l("common.copied","\uBCF5\uC0AC\uB428"):l("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),r.jsx("pre",{className:"code-box__inner","data-lang":t,children:r.jsx("code",{children:m.map((v,f)=>r.jsx("span",{className:`code-token ${v.type} ${C}`,children:v.content},f))})})]})}var s9=".ihabdevteam-core-scope .loader-spinner{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .loader-spinner__svg{animation:loader-rotate 1s linear infinite;transform-origin:center}.ihabdevteam-core-scope .loader-spinner__bg{stroke:rgba(0,0,0,.08)}.ihabdevteam-core-scope .loader-spinner__fg{stroke:var(--color-main);stroke-dasharray:125;stroke-dashoffset:80;animation:loader-dash 1.2s ease-in-out infinite}@keyframes loader-rotate{to{transform:rotate(1turn)}}@keyframes loader-dash{0%{stroke-dashoffset:125}50%{stroke-dashoffset:35}to{stroke-dashoffset:125}}.ihabdevteam-core-scope .loader-bar{background:rgba(0,0,0,.06);border-radius:999px;height:8px;overflow:hidden;width:100%}.ihabdevteam-core-scope .loader-bar__inner{background:var(--color-main);height:100%;transition:width .22s cubic-bezier(.2,.8,.2,1);width:0}.ihabdevteam-core-scope .loader-bar--indeterminate .loader-bar__inner{animation:loader-bar-indeterminate 1.4s ease-in-out infinite;width:40%}@keyframes loader-bar-indeterminate{0%{transform:translateX(-150%)}to{transform:translateX(400%)}}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .loader-spinner__svg{animation-duration:2.4s!important;animation-iteration-count:infinite!important}.ihabdevteam-core-scope .loader-spinner__fg{animation:none!important}.ihabdevteam-core-scope .loader-bar--indeterminate .loader-bar__inner{animation:none!important;transform:none;width:100%}}@keyframes core-loader-rotate{to{transform:rotate(1turn)}}@keyframes core-loader-dash{0%{stroke-dashoffset:125}50%{stroke-dashoffset:35}to{stroke-dashoffset:125}}.ihabdevteam-core-scope .page-loading-center{display:flex;justify-content:center;padding:40px 0}";ce(s9);const l9={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0};function yr(e){const{t}=_e.useTranslation(),{variant:a="spinner",size:o=24,progress:n=null,label:i}=e||{},l=i||t("loader.loading","Loading");if(a==="bar"){const u=n==null||!Number.isFinite(Number(n)),d=u?0:Math.max(0,Math.min(100,Number(n)));return r.jsx("div",{className:`loader-bar${u?" loader-bar--indeterminate":""}`,role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":u?void 0:d,"aria-label":l,children:r.jsx("div",{className:"loader-bar__inner",style:u?void 0:{width:`${d}%`}})})}const c=typeof o=="number"?`${o}px`:o;return r.jsxs("div",{className:"loader-spinner",style:{width:c,height:c},role:"status","aria-label":l,children:[r.jsx("span",{style:l9,children:l}),r.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:o,height:o,children:[r.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),r.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})]})}var c9='.ihabdevteam-core-scope .toggle{align-items:center;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .toggle input{height:0;opacity:0;position:absolute;width:0}.ihabdevteam-core-scope .toggle__slider{background:#e2e8f0;background:var(--color-whiteLine,#e2e8f0);border-radius:26px;display:inline-block;flex-shrink:0;height:26px;position:relative;transition:background .2s;width:44px}.ihabdevteam-core-scope .toggle__slider:before{background:var(--color-pureWhite);border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.15);content:"";height:20px;left:3px;position:absolute;top:3px;transition:transform .2s;width:20px}.ihabdevteam-core-scope .toggle input:checked+.toggle__slider{background:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .toggle input:checked+.toggle__slider:before{transform:translateX(18px)}.ihabdevteam-core-scope .toggle input:focus-visible+.toggle__slider{outline:2px solid var(--color-main,var(--color-main));outline-offset:2px}.ihabdevteam-core-scope .toggle__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .toggle--disabled{cursor:not-allowed;opacity:.45}';ce(c9);function id({checked:e,onChange:t,disabled:a=!1,label:o,ariaLabel:n,labelPosition:i="right",className:l="",id:c}){const u=o&&r.jsx("span",{className:"toggle__label body-3",children:o});return r.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${l}`.trim(),children:[i==="left"&&u,r.jsx("input",{id:c,type:"checkbox",role:"switch",checked:e,disabled:a,onChange:d=>t?.(d.target.checked),"aria-label":!o&&n?n:void 0}),r.jsx("span",{className:"toggle__slider"}),i==="right"&&u]})}var u9=`.ihabdevteam-core-scope .checkbox{align-items:center;cursor:pointer;display:inline-flex;gap:8px;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .checkbox--disabled{cursor:not-allowed;opacity:.4}.ihabdevteam-core-scope .checkbox__input{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .checkbox__box{background:var(--color-white,var(--color-pureWhite));border:1.5px solid var(--color-whiteLine);border-radius:8px;border-radius:var(--radius-sm,8px);flex-shrink:0;height:24px;position:relative;transition:border-color .15s,background .15s;width:24px}.ihabdevteam-core-scope .checkbox__input:checked+.checkbox__box{background:var(--color-main,var(--color-main));border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:checked+.checkbox__box:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m4 9 3.5 3.5L14 6'/%3E%3C/svg%3E") 50%/cover no-repeat;content:"";inset:0;position:absolute}.ihabdevteam-core-scope .checkbox__input:indeterminate+.checkbox__box{background:var(--color-main,var(--color-main));border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:indeterminate+.checkbox__box:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-width='2' d='M4.5 9h9'/%3E%3C/svg%3E") 50%/cover no-repeat;content:"";inset:0;position:absolute}.ihabdevteam-core-scope .checkbox:not(.checkbox--disabled):hover .checkbox__box{border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:focus-visible+.checkbox__box{outline:2px solid var(--color-main,var(--color-main));outline-offset:2px}.ihabdevteam-core-scope .checkbox--large .checkbox__box{border-radius:10px;border-radius:var(--radius-s,10px);height:30px;width:30px}.ihabdevteam-core-scope .checkbox--small .checkbox__box{border-radius:4px;border-radius:var(--radius-xs,4px);height:16px;width:16px}.ihabdevteam-core-scope .checkbox__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .checkbox--small .checkbox__label{font-size:13px}`;ce(u9);function sd({checked:e=!1,onChange:t,disabled:a,indeterminate:o,label:n,size:i="medium",className:l,title:c,ariaLabel:u}){const d=s.useRef(null),h=s.useId(),p=s.useRef(!!o);return p.current=!!o,s.useEffect(()=>{d.current&&(d.current.indeterminate=!!o)}),r.jsxs("label",{className:Ne("checkbox",i==="small"&&"checkbox--small",i==="large"&&"checkbox--large",a&&"checkbox--disabled",l),htmlFor:h,title:c,children:[r.jsx("input",{ref:d,id:h,type:"checkbox",className:"checkbox__input",checked:e,onChange:m=>{t?.(m.target.checked),d.current&&(d.current.indeterminate=p.current)},disabled:a,"aria-label":!n&&u?u:void 0}),r.jsx("span",{className:"checkbox__box"}),n&&r.jsx("span",{className:"checkbox__label body-3",children:n})]})}var d9=".ihabdevteam-core-scope .bulk-bar{align-items:center;background:var(--color-pureWhite,var(--color-pureWhite));border:1px solid var(--color-main);border-radius:12px;border-radius:var(--radius-m,12px);bottom:24px;box-shadow:0 4px 20px rgba(0,0,0,.12);box-sizing:border-box;color:#1a1a1a;color:var(--color-gray900,#1a1a1a);display:flex;gap:12px;justify-content:space-between;margin-top:16px;min-height:60px;opacity:0;padding:10px 16px;pointer-events:none;position:sticky;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease;z-index:600;z-index:var(--z-bulk-bar,600)}.ihabdevteam-core-scope .bulk-bar--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.ihabdevteam-core-scope .bulk-bar__count{color:#1a1a1a;color:var(--color-gray900,#1a1a1a);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .bulk-bar__count b{color:var(--color-main)}.ihabdevteam-core-scope .bulk-bar__actions{display:flex;flex-shrink:0;gap:8px}.ihabdevteam-core-scope .bulk-bar__chips{align-items:center;display:flex;flex-wrap:wrap;gap:8px;gap:var(--spacing-xs,8px);min-width:0}.ihabdevteam-core-scope .bulk-bar__chips .button{white-space:nowrap}@media (max-width:767px){.ihabdevteam-core-scope .bulk-bar{flex-wrap:wrap}.ihabdevteam-core-scope .bulk-bar__actions{flex-wrap:wrap;justify-content:flex-end;width:100%}}.ihabdevteam-core-scope .bulk-bar__actions--stacked{align-items:stretch;flex-direction:column}";ce(d9);function _0({count:e,actions:t,onClear:a,clearLabel:o,visible:n,content:i,max:l}){const{t:c}=_e.useTranslation(),u=n!==void 0?n:e>0,d=o??c("bulkBar.clearSelection","\uC120\uD0DD \uD574\uC81C"),h=s.useRef(null),p=s.useRef(null),m=s.useRef(null),C=s.useRef(u);s.useLayoutEffect(()=>{const b=p.current,w=C.current;if(C.current=u,u&&!w){const _=typeof document<"u"?document.activeElement:null;m.current=_&&_!==document.body&&!b?.contains(_)?_:null}else!u&&w&&b&&b.contains(document.activeElement)&&vi(b,m.current)},[u]);const[v,f]=s.useState(!1),g=s.useRef(!1),x=s.useRef(null);return s.useEffect(()=>{const b=h.current;if(!b)return;const w=S=>{g.current=S,f(S)},_=()=>{const S=b.firstElementChild??b,E=Array.from(S.children);if(E.length<2){w(!1);return}const D=E[0].offsetTop,I=E.some(z=>z.offsetTop!==D);if(!g.current){x.current=b.clientWidth,I&&w(!0);return}if(I)return;const j=E[0],W=E[E.length-1],L=W.offsetLeft+W.offsetWidth-j.offsetLeft,M=x.current;(M==null||L<=M)&&w(!1)};if(_(),typeof ResizeObserver>"u")return;const A=new ResizeObserver(_);A.observe(b);const y=b.parentElement;let B=y?.clientWidth??0;const k=new ResizeObserver(()=>{const S=y?.clientWidth??0;S!==B&&(B=S,x.current=null,_())});return y&&k.observe(y),()=>{A.disconnect(),k.disconnect()}},[i,e]),r.jsxs("div",{ref:p,className:`bulk-bar ${u?"bulk-bar--visible":""}`,inert:!u||void 0,"aria-hidden":u?void 0:!0,children:[r.jsx("span",{ref:h,className:"bulk-bar__count body-2",role:"status",children:i??r.jsx("b",{children:c("common.selectedCount",{count:e})})}),l!==void 0&&r.jsx(St,{size:"small",fill:"soft",variant:"main",label:`${e} / ${l}`,"aria-label":c("common.selectedOfMax",{count:e,max:l,defaultValue:`\uCD5C\uB300 ${l}\uAC1C \uC911 ${e}\uAC1C`})}),r.jsxs("div",{className:`bulk-bar__actions${v?" bulk-bar__actions--stacked":""}`,children:[r.jsx(Ce,{htmlType:"button",size:40,label:d,onClick:a}),t.map((b,w)=>r.jsx(Ce,{htmlType:"button",size:40,variant:b.variant??"default",icon:b.icon,label:b.label,onClick:b.onClick},w))]})]})}var p9=".ihabdevteam-core-scope .item-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}";ce(p9);const h9=[{\uC5F4\uC1E0:"edit",icon:"edit-2",\uB2EB\uACE0\uD560\uAE4C:!0},{\uC5F4\uC1E0:"duplicate",icon:"copy",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"publish",icon:"book-marked",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"copyLink",icon:"link",\uB2EB\uACE0\uD560\uAE4C:!1},{\uC5F4\uC1E0:"remove",icon:"trash-2",\uB2EB\uACE0\uD560\uAE4C:!0}];function y0(e){const{onClose:t,className:a}=e;return r.jsx("div",{className:Ne("item-actions",a),children:h9.map(({\uC5F4\uC1E0:o,icon:n,\uB2EB\uACE0\uD560\uAE4C:i})=>{const l=e[o];if(!l)return null;const c=o==="publish"?l.published?l.unpublish:l.publish:l;return r.jsx(Ce,{htmlType:"button",size:40,type:"dot",icon:n,ariaLabel:c.label,showTooltipInfo:c.label,onClick:()=>{i&&t(),c.onClick()}},o)})})}function ld(e,t){const a=()=>{if(e){const[f,g]=e.split("-");return{y:+f,m:+g-1}}const[C,v]=Xl(t).split("-");return{y:+C,m:+v-1}},[o,n]=s.useState(()=>a().y),[i,l]=s.useState(()=>a().m),c=s.useRef(e);s.useEffect(()=>{if(e===c.current)return;c.current=e;const C=a();n(C.y),l(C.m)},[e]);const u=s.useRef({y:o,m:i});s.useEffect(()=>{u.current={y:o,m:i}},[o,i]);const d=s.useCallback(C=>{const v=u.current.y*12+u.current.m+C,f=Math.floor(v/12),g=v-f*12;u.current={y:f,m:g},n(f),l(g)},[]),h=s.useCallback(()=>d(-1),[d]),p=s.useCallback(()=>d(1),[d]),m=s.useCallback((C,v)=>{u.current={y:C,m:v},n(C),l(v)},[]);return{viewY:o,viewM:i,prevMonth:h,nextMonth:p,setViewYM:m}}var m9=".ihabdevteam-core-scope .date-picker{position:relative;width:100%}.ihabdevteam-core-scope .date-picker__trigger{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;justify-content:space-between;padding:0 12px;text-align:left;transition:border-color .12s,background .12s,box-shadow .12s;width:100%}.ihabdevteam-core-scope .date-picker--s40 .date-picker__trigger{border-radius:10px;height:40px}.ihabdevteam-core-scope .date-picker--s48 .date-picker__trigger{border-radius:12px;height:48px}.ihabdevteam-core-scope .date-picker--s64 .date-picker__trigger{border-radius:14px;height:64px}.ihabdevteam-core-scope .date-picker--open .date-picker__trigger,.ihabdevteam-core-scope .date-picker__trigger:focus{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10);outline:none}.ihabdevteam-core-scope .date-picker__trigger:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .date-picker__trigger:disabled{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .date-picker__placeholder{color:var(--color-lightGray);white-space:nowrap}.ihabdevteam-core-scope .date-picker__value{color:var(--color-darkGray);white-space:nowrap}.ihabdevteam-core-scope .date-picker__icon{color:var(--color-lightGray);flex-shrink:0;transition:color .12s}.ihabdevteam-core-scope .date-picker--open .date-picker__icon{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__dropdown{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);box-sizing:border-box;min-width:260px;padding:12px;z-index:200}.ihabdevteam-core-scope .date-picker__nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.ihabdevteam-core-scope .date-picker__nav-dropdown{flex:1;margin:0 4px}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger{background:transparent!important;border:none!important;border-radius:6px!important;box-shadow:none!important;gap:4px!important;height:32px!important;justify-content:center!important;transition:background .12s,color .12s!important}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger:hover,.ihabdevteam-core-scope .date-picker__nav-dropdown.dropdown--open .dropdown__trigger{background:var(--color-deepWhite)!important}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger-label{color:var(--color-darkGray)!important;flex:initial!important;font-weight:600!important}.ihabdevteam-core-scope .date-picker__nav-btn{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:8px;color:var(--color-darkGray);cursor:pointer;display:flex;height:28px;justify-content:center;transition:border-color .12s,color .12s;width:28px}.ihabdevteam-core-scope .date-picker__nav-btn:hover{border-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .date-picker__grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.ihabdevteam-core-scope .date-picker__dow{color:var(--color-lightGray);font-weight:600;padding:4px 0 6px;text-align:center}.ihabdevteam-core-scope .date-picker__dow:first-child{color:var(--color-error)}.ihabdevteam-core-scope .date-picker__dow:last-child{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day{align-items:center;aspect-ratio:1;background:transparent;border:none;border-radius:6px;color:var(--color-darkGray);cursor:pointer;display:flex;justify-content:center;transition:background .1s,color .1s;width:100%}.ihabdevteam-core-scope .date-picker__day:hover:not(:disabled){background:var(--color-main-a10);color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--sun:hover:not(:disabled){color:var(--color-error)}.ihabdevteam-core-scope .date-picker__day--sat:hover:not(:disabled){color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--sun{color:var(--color-error)}.ihabdevteam-core-scope .date-picker__day--sat{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--today{font-weight:700;outline:1.5px solid var(--color-main);outline-offset:-1.5px}.ihabdevteam-core-scope .date-picker__day:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .date-picker__day--selected{background:var(--color-main)!important;color:#fff!important;font-weight:700}.ihabdevteam-core-scope .date-picker__day--disabled{cursor:not-allowed;opacity:.3}";ce(m9);function zi(e,t){return new Date(e,t+1,0).getDate()}function b9(e,t){return new Date(e,t,1).getDay()}function Ii(e,t,a){return`${e}-${String(t+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function g9(e){if(!e)return"";const[t,a,o]=e.split("-");return`${t}. ${a}. ${o}.`}function f9(e,t,a,o){const n=a?+a.split("-")[0]:e-10,i=o?+o.split("-")[0]:e+10,l=[];for(let c=n;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)||o&&d>o.slice(0,7)||l.push({value:d,label:t(c,u+1)})}return l}function w0({value:e,onChange:t,size:a=48,min:o,max:n,disabled:i,placeholder:l,className:c,today:u}){const{t:d}=_e.useTranslation(),h=l??d("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),p=s.useMemo(()=>d("calendar.dow",{returnObjects:!0}),[d]),m=Xl(u),{viewY:C,viewM:v,prevMonth:f,nextMonth:g,setViewYM:x}=ld(e,u),b=s.useId(),w=s.useCallback((T,F)=>{const N=window.innerHeight,O=window.innerWidth,H=typeof document<"u"?document.getElementById(b):null,Z=Math.max(H?.offsetHeight||0,H?.scrollHeight||0)||300,te=Math.max(T.width,H?.offsetWidth||0,260),se=N-T.bottom,be=T.top,X=se<Z&&be>se,re=8,Ae=(K,ie)=>Math.min(Math.max(re,K),Math.max(re,ie));return{position:"fixed",left:Ae(T.left,O-te-re),width:T.width,minWidth:260,...X?{top:"auto",bottom:Ae(N-T.top+6,N-Z-re)}:{bottom:"auto",top:Ae(T.bottom+6,N-Z-re)},zIndex:Cn(F)}},[b]),{open:_,setOpen:A,toggle:y,style:B,triggerRef:k,menuRef:S}=Vo({computeStyle:w,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"});s.useEffect(()=>{if(!_)return;const T=S.current;return(T?.querySelector(".date-picker__day--selected:not(:disabled)")??T?.querySelector(".date-picker__day--today:not(:disabled)")??T?.querySelector(".date-picker__day:not(:disabled)")??T?.querySelector(Oa)??T)?.focus?.(),()=>{const F=document.activeElement;(!F||F===document.body)&&k.current?.focus?.()}},[_,S,k]);const[E,D]=s.useState(1),I=s.useRef(null),j=s.useRef(null);s.useEffect(()=>{if(!_)return;const T=e&&e.slice(0,7)===`${C}-${String(v+1).padStart(2,"0")}`?+e.slice(8):m.slice(0,7)===`${C}-${String(v+1).padStart(2,"0")}`?+m.slice(8):1;D(T)},[_]),s.useEffect(()=>{if(j.current==null)return;const T=j.current;j.current=null,I.current?.querySelector(`[data-day="${T}"]`)?.focus()}),s.useEffect(()=>{D(T=>Math.min(T,zi(C,v)))},[C,v]);const W=s.useCallback(T=>{let F=Ii(T.getFullYear(),T.getMonth(),T.getDate());o&&F<o&&(F=o),n&&F>n&&(F=n);const[N,O,H]=F.split("-").map(Number);(N!==C||O-1!==v)&&x(N,O-1),D(H),j.current=H},[o,n,C,v,x]),L=s.useCallback(T=>{const F=new Date(C,v,E),N=H=>{F.setDate(F.getDate()+H),W(F)},O=H=>{const Z=F.getFullYear()*12+F.getMonth()+H,te=Math.floor(Z/12),se=Z-te*12;W(new Date(te,se,Math.min(F.getDate(),zi(te,se))))};switch(T.key){case"ArrowLeft":N(-1);break;case"ArrowRight":N(1);break;case"ArrowUp":N(-7);break;case"ArrowDown":N(7);break;case"Home":N(-F.getDay());break;case"End":N(6-F.getDay());break;case"PageUp":T.shiftKey?O(-12):O(-1);break;case"PageDown":T.shiftKey?O(12):O(1);break;default:return}T.preventDefault()},[C,v,E,W]),M=s.useCallback(T=>{i||(t(Ii(C,v,T)),A(!1))},[C,v,t,A,i]);s.useEffect(()=>{i&&A(!1)},[i,A]);const z=T=>{const F=Ii(C,v,T);return!!(o&&F<o||n&&F>n)},q=(()=>{const T=zi(C,v);if(E>=1&&E<=T&&!z(E))return E;for(let F=1;F<=T;F++)if(!z(F))return F;return-1})(),Y=[];for(let T=0;T<b9(C,v);T++)Y.push(null);for(let T=1;T<=zi(C,v);T++)Y.push(T);const P=a===64?20:a===40?16:18,V=f9(C,(T,F)=>d("calendar.yearMonth",{year:T,month:F,defaultValue:"{{year}}\uB144 {{month}}\uC6D4"}),o,n),$=`${C}-${String(v+1).padStart(2,"0")}`,U=_?ua.createPortal(r.jsxs("div",{ref:S,id:b,className:"date-picker__dropdown",style:B,"data-tooltip-ignore":!0,role:"dialog","aria-label":d("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),tabIndex:-1,children:[r.jsxs("div",{className:"date-picker__nav",children:[r.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:f,"aria-label":d("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:r.jsx(Ap,{size:16,strokeWidth:2})}),r.jsx(_a,{className:"date-picker__nav-dropdown",ariaLabel:d("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:V,value:$,onChange:T=>{const[F,N]=T.split("-");x(+F,+N-1)},block:!0,size:40}),r.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:g,"aria-label":d("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:r.jsx(Sp,{size:16,strokeWidth:2})})]}),r.jsxs("div",{className:"date-picker__grid",ref:I,onKeyDown:L,children:[p.map(T=>r.jsx("div",{className:"date-picker__dow caption-1",children:T},T)),Y.map((T,F)=>{if(T===null)return r.jsx("div",{},`e${F}`);const N=Ii(C,v,T),O=N===e,H=N===m,Z=z(T),te=F%7;return r.jsx("button",{type:"button",disabled:Z,"data-day":T,tabIndex:T===q?0:-1,"aria-current":H?"date":void 0,onClick:()=>!Z&&M(T),className:Ne("date-picker__day caption-1",O&&"date-picker__day--selected",H&&!O&&"date-picker__day--today",Z&&"date-picker__day--disabled",te===0&&"date-picker__day--sun",te===6&&"date-picker__day--sat"),children:T},T)})]})]}),document.body):null;return r.jsxs("div",{className:Ne("date-picker",`date-picker--s${a}`,_&&"date-picker--open",c),children:[r.jsxs("button",{ref:k,type:"button",className:"date-picker__trigger body-2",onClick:()=>!i&&y(),disabled:i,"aria-haspopup":"true","aria-expanded":_,children:[r.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?g9(e):h}),r.jsx(Rp,{size:P,className:"date-picker__icon",strokeWidth:1.5})]}),U]})}var v9=".ihabdevteam-core-scope .month-dropdown .dropdown__trigger{max-width:200px;min-width:200px;width:200px}.ihabdevteam-core-scope .month-dropdown .dropdown__menu{max-height:280px;overflow-y:auto;scrollbar-color:var(--color-darkWhite) transparent;scrollbar-width:thin}.ihabdevteam-core-scope .month-dropdown .dropdown__menu::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .month-dropdown .dropdown__menu::-webkit-scrollbar-thumb{background:var(--color-darkWhite);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .manager-bar-chart-wrap{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .manager-bar-chart-gridline{background:var(--color-darkWhite);height:1px;left:0;pointer-events:none;position:absolute;right:0;z-index:-1}.ihabdevteam-core-scope .manager-bar-chart-gridline__label{color:var(--color-deepGray);font-size:11px;left:0;position:absolute;top:100%;white-space:nowrap}.ihabdevteam-core-scope .manager-bar-chart-inner{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-scroll{-webkit-overflow-scrolling:touch;flex:1;overflow-x:auto;overflow-y:visible;scrollbar-width:none}.ihabdevteam-core-scope .manager-bar-chart-scroll::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .manager-bar-chart-area{display:flex;flex-direction:column;min-width:-moz-max-content;min-width:max-content}.ihabdevteam-core-scope .manager-bar-chart-area svg{display:block}.ihabdevteam-core-scope .manager-bar-chart-x-axis{color:var(--color-deepGray);display:flex;font-size:11px;padding-top:6px}.ihabdevteam-core-scope .manager-bar-chart-x-axis__label{align-items:center;display:flex;flex:1;flex-direction:column;gap:1px;justify-content:flex-start;min-width:0;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .manager-bar-chart-x-axis__label--future .caption-1{color:var(--color-whiteLine)}.ihabdevteam-core-scope .manager-bar-chart-x-axis__main{position:relative}.ihabdevteam-core-scope .manager-bar-chart-x-axis__today-dot{border-radius:50%;height:8px;position:absolute;right:calc(100% + 3px);top:50%;transform:translateY(-50%);width:8px}.ihabdevteam-core-scope .manager-bar-chart-plot{align-items:flex-end;display:flex;gap:0;isolation:isolate;position:relative}.ihabdevteam-core-scope .manager-bar-chart-col{align-items:flex-end;display:flex;flex:1;gap:2px;height:100%;justify-content:center}.ihabdevteam-core-scope .manager-bar-chart-bar,.ihabdevteam-core-scope .manager-bar-chart-stack{flex:0 1 var(--bar-width);max-width:var(--bar-width)}.ihabdevteam-core-scope .manager-bar-chart-stack{display:flex;flex-direction:column-reverse;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-bar{border-radius:6px 6px 0 0;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-stack-segment{width:100%}.ihabdevteam-core-scope .manager-bar-chart-detail-btn{margin-left:auto}.ihabdevteam-core-scope .manager-bar-chart-slot{display:flex;flex:0 1 var(--bar-width);flex-direction:column;height:100%;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-slot__half{display:flex;height:50%;justify-content:center}.ihabdevteam-core-scope .manager-bar-chart-slot__half--up{align-items:flex-end}.ihabdevteam-core-scope .manager-bar-chart-slot__half--down{align-items:flex-start}.ihabdevteam-core-scope .manager-bar-chart-bar--full{flex:1 1 auto;width:100%}.ihabdevteam-core-scope .manager-bar-chart-bar--down{border-radius:0 0 6px 6px}.ihabdevteam-core-scope .manager-bar-chart-gridline--baseline{opacity:1}.ihabdevteam-core-scope .manager-bar-chart-col--group{gap:1px;gap:var(--bar-group-gap,1px);padding:0 4px}";ce(v9);var C9=".ihabdevteam-core-scope .manager-section{--card-pad:19px;background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:none;margin-bottom:14px;min-width:320px;padding:19px;padding:var(--card-pad);position:relative}.ihabdevteam-core-scope .manager-section--clickable{cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease}.ihabdevteam-core-scope .manager-section--clickable:hover{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .manager-section__head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:space-between;margin-bottom:var(--spacing-xs)}.ihabdevteam-core-scope .manager-section__disc,.ihabdevteam-core-scope .manager-section__title-row{padding-right:0;padding-right:calc(var(--section-head-float-w, -12px) + 12px)}.ihabdevteam-core-scope .manager-section__title{min-width:0}.ihabdevteam-core-scope .manager-section__title-row{align-items:center;display:flex;flex:1 1 auto;gap:var(--spacing-s);min-width:0}.ihabdevteam-core-scope .manager-section__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .manager-section__disc{color:var(--color-gray);flex:0 0 100%;margin:0;min-width:0}.ihabdevteam-core-scope .manager-section__head-right{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:flex-end;margin-left:auto}.ihabdevteam-core-scope .chart-section-icon{display:inline-flex;opacity:.35}.ihabdevteam-core-scope .chart-section-icon-inner{color:var(--color-darkGray);height:22px;width:22px}@media (max-width:767px){.ihabdevteam-core-scope .manager-section__head{align-items:flex-start;flex-direction:column;flex-wrap:nowrap;gap:var(--spacing-s)}.ihabdevteam-core-scope .manager-section-controls{flex-wrap:wrap}.ihabdevteam-core-scope .manager-section-controls .segmented-control{flex-wrap:nowrap}.ihabdevteam-core-scope .manager-section{--card-pad:17px;min-width:0;padding:17px;padding:var(--card-pad)}}.ihabdevteam-core-scope .manager-section-controls{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-plot--loading,.ihabdevteam-core-scope .ring-chart--loading{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .manager-bar-chart-area--loading .manager-bar-chart-x-axis{justify-content:center}.ihabdevteam-core-scope .barchart-sub-row{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .barchart-sub-row--center{align-items:center}.ihabdevteam-core-scope .barchart-sub-row--end{align-items:flex-end}.ihabdevteam-core-scope .barchart-total{align-items:baseline;display:flex;gap:4px}.ihabdevteam-core-scope .barchart-total--stacked{align-items:flex-start;flex-direction:column;gap:2px}.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__label,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__num,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__unit,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__value{line-height:1.1;margin:0}.ihabdevteam-core-scope .barchart-total__label{color:var(--color-gray)}.ihabdevteam-core-scope .barchart-total__value{align-items:baseline;display:flex;gap:4px}.ihabdevteam-core-scope .barchart-total__num{color:var(--color-black)}.ihabdevteam-core-scope .barchart-total__unit{color:var(--color-gray)}.ihabdevteam-core-scope .manager-bar-chart-legend{align-items:flex-end;color:var(--color-gray);display:flex;flex-direction:column;font-size:12px;gap:6px;padding-right:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-legend-item{align-items:center;display:inline-flex}.ihabdevteam-core-scope .manager-bar-chart-legend-dot{border-radius:50%;display:inline-block;height:8px;margin-right:4px;width:8px}.ihabdevteam-core-scope .manager-section--compact{--card-pad:19px;min-width:160px;padding:19px;padding:var(--card-pad)}.ihabdevteam-core-scope .manager-section--compact .manager-section__head{margin-bottom:4px;min-height:28px}.ihabdevteam-core-scope .chart-section-title--small{color:var(--color-deepGray)}.ihabdevteam-core-scope .manager-section--compact .barchart-total__num{font-size:32px;line-height:1}.ihabdevteam-core-scope .manager-section--compact .barchart-total{flex-shrink:0}.ihabdevteam-core-scope .manager-section--compact .barchart-sub-row{margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .manager-section--compact .manager-bar-chart-legend{align-items:stretch;flex:1 1 auto;min-width:0}.ihabdevteam-core-scope .manager-section--compact .manager-bar-chart-legend-item{display:flex;justify-content:flex-end;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.ihabdevteam-core-scope .manager-section--full{flex:1 1 100%;width:100%}@media (max-width:767px){.ihabdevteam-core-scope .manager-section--compact{min-width:0}}.ihabdevteam-core-scope .manager-section--grid{display:flex;flex-direction:column;margin-bottom:0;min-width:0}.ihabdevteam-core-scope .manager-section--grid>.manager-bar-chart-loading,.ihabdevteam-core-scope .manager-section--grid>.manager-bar-chart-wrap,.ihabdevteam-core-scope .manager-section--grid>.ring-chart-section-body{margin-top:auto}";ce(C9);var x9=".ihabdevteam-core-scope .section-head-float{align-items:center;display:flex;gap:var(--spacing-m);justify-content:flex-end;max-width:50%;position:absolute;right:19px;right:var(--card-pad,19px);top:19px;top:var(--card-pad,19px);z-index:1}@media (max-width:600px){.ihabdevteam-core-scope .section-head-float{flex-wrap:wrap;margin-top:var(--spacing-m);max-width:none;position:static}}";ce(x9);function cd({children:e,className:t}){const a=s.useRef(null),[o,n]=s.useState(null);return s.useEffect(()=>{n(a.current?.parentElement??null)},[]),s.useEffect(()=>{const i=a.current;if(!i||!o)return;const l=()=>{const u=typeof window<"u"&&window.getComputedStyle(i).position==="absolute"?Math.ceil(i.getBoundingClientRect().width):0;u>0?o.style.setProperty("--section-head-float-w",`${u}px`):o.style.removeProperty("--section-head-float-w")};if(l(),typeof ResizeObserver>"u")return()=>{o.style.removeProperty("--section-head-float-w")};const c=new ResizeObserver(()=>l());return c.observe(i),c.observe(o),()=>{c.disconnect(),o.style.removeProperty("--section-head-float-w")}},[o,e]),r.jsx("div",{ref:a,className:Ne("section-head-float",t),children:e})}function Oi({items:e,className:t}){return r.jsx("div",{className:t?`manager-bar-chart-legend ${t}`:"manager-bar-chart-legend",children:e.map((a,o)=>r.jsxs("span",{className:"manager-bar-chart-legend-item",children:[r.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},o))})}function wr({label:e,children:t}){return e?r.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[r.jsx("span",{className:"barchart-total__label body-3",children:e}),r.jsx("span",{className:"barchart-total__value",children:t})]}):r.jsx("div",{className:"barchart-total",children:t})}function Fi({title:e,titleClassName:t="h3",titleLevel:a=3,icon:o,disc:n,headRight:i,headFloat:l,headSegment:c,headMenuItems:u,collapseBelow:d=420,onClick:h,ariaLabel:p,tooltip:m,totalNum:C,totalUnit:v,totalLabel:f,subRow:g,subRowAlign:x="start",className:b,inGrid:w=!1,children:_}){const{t:A}=_e.useTranslation(),y=s.useRef(null),{anchorRect:B,openAt:k,close:S}=Ho(),E=s.useCallback(()=>{m&&y.current&&k(y.current)},[m,k]),[D,I]=s.useState(!1);nd(()=>{const N=y.current;if(!N||!c)return;const O=Z=>I(Z>0&&Z<d);if(O(N.clientWidth),typeof ResizeObserver>"u")return;const H=new ResizeObserver(Z=>O(Z[0].contentRect.width));return H.observe(N),()=>H.disconnect()},[c,d]);const[j,W]=s.useState(null),L=s.useCallback(()=>W(null),[]),M=s.useCallback(N=>{const O=N.currentTarget.getBoundingClientRect();W(H=>H?null:{left:O.left,right:O.right,top:O.top,bottom:O.bottom,width:O.width,height:O.height,x:O.x,y:O.y})},[]),z=!!c&&D;s.useEffect(()=>{z||W(null)},[z]);const q=c?[...c.options.map(N=>({label:N.label,icon:N.icon,selected:N.key===c.value,disabled:N.disabled,onClick:()=>c.onChange(N.key),closeOnSelect:!0})),...(u??[]).map((N,O)=>O===0?{...N,separatorBefore:!0}:N)]:[],Y=s.useCallback(N=>{if(!h)return;const O=N.target;O&&typeof O.closest=="function"&&O.closest('button, a, input, select, textarea, [role="radiogroup"]')||h()},[h]),P=s.useCallback(N=>{h&&N.target===N.currentTarget&&(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),h())},[h]),V=typeof i=="function"?i({collapsed:z}):i,$=C!=null||f?r.jsxs(wr,{label:f,children:[C!=null&&r.jsx("span",{className:"barchart-total__num h0",children:C}),v&&r.jsx("span",{className:"barchart-total__unit h5",children:v})]}):null,U=V||c?r.jsxs("div",{className:"manager-section__head-right",children:[c&&(z?r.jsx(Ce,{htmlType:"button",size:32,type:"dot",icon:"ellipsis",ariaLabel:c.ariaLabel??A("common.more","\uB354\uBCF4\uAE30"),showTooltipInfo:c.ariaLabel??A("common.more","\uB354\uBCF4\uAE30"),"aria-haspopup":"menu","aria-expanded":!!j,onClick:M}):r.jsx(Ta,{size:32,ariaLabel:c.ariaLabel,options:c.options.map(N=>({key:N.key,label:N.label,disabled:N.disabled})),value:c.value,onChange:c.onChange})),V]}):null,T=s.useId(),F=a?`h${a}`:"div";return r.jsxs("section",{ref:y,className:["manager-section",w&&"manager-section--grid",h&&"manager-section--clickable",b].filter(Boolean).join(" "),onClick:h?Y:void 0,onKeyDown:h?P:void 0,onPointerEnter:m?E:void 0,onPointerLeave:m?S:void 0,onFocus:m?E:void 0,onBlur:m?S:void 0,role:h?"button":void 0,tabIndex:h?0:void 0,"aria-label":h?p??(typeof e=="string"?e:void 0):void 0,"aria-labelledby":!h&&e!=null?T:void 0,children:[m&&B&&r.jsx(Ea,{anchorRect:{left:B.left,top:B.top+21,right:B.right,bottom:B.bottom,width:B.width,height:B.height},text:m}),l&&r.jsx(cd,{children:l}),r.jsxs("div",{className:"manager-section__head",children:[r.jsxs("div",{className:"manager-section__title-row",children:[o&&r.jsx(ot,{icon:o,label:typeof e=="string"?e:void 0,className:"manager-section__icon"}),r.jsx(F,{id:T,className:["manager-section__title",t].filter(Boolean).join(" "),children:e})]}),U,n&&r.jsx("div",{className:"manager-section__disc body-3",children:n})]}),($||g)&&r.jsxs("div",{className:["barchart-sub-row",x!=="start"&&`barchart-sub-row--${x}`].filter(Boolean).join(" "),children:[$,g]}),_,j&&r.jsx(xa,{anchorRect:j,onClose:L,ariaLabel:c?.ariaLabel??A("tooltip.menu","\uBA54\uB274"),children:r.jsx(xr,{columns:[{items:q}],onClose:L,size:"small"})})]})}function Wa(e,t){const a=new Date(e,t,1).getDay();return 1+(8-(a===0?7:a))%7}function _9(){const e=po();let t=e.getFullYear(),a=e.getMonth(),o=e.getDate();if(o<Wa(t,a)){const l=new Date(t,a,0);t=l.getFullYear(),a=l.getMonth(),o=l.getDate()}const n=Math.floor((o-Wa(t,a))/7),i=`${t}\uB144 ${a+1}\uC6D4`;return{monthKey:i,value:`${i}#${n}`}}function k0(e){const t=po(),a=`${t.getFullYear()}\uB144 ${t.getMonth()+1}\uC6D4`,o=(u,d)=>`${u}\uB144 ${d+1}\uC6D4`,n=new Map;n.set(a,[]);for(const u of e){if(isNaN(u.date.getTime()))continue;const d=o(u.date.getFullYear(),u.date.getMonth());n.has(d)||n.set(d,[]),n.get(d).push(u)}for(const[u,d]of[...n.entries()]){const h=u.match(/^(\d+)년 (\d+)월$/);if(!h)continue;const p=Number(h[1]),m=Number(h[2])-1,C=Wa(p,m);if(!(u===a&&t.getDate()<C)&&!d.some(g=>g.date.getDate()<C))continue;const v=new Date(p,m,0),f=o(v.getFullYear(),v.getMonth());n.has(f)||n.set(f,[])}const i=new Map;for(const[u,d]of n){const h=u.match(/^(\d+)년 (\d+)월$/);if(!h)continue;const p=Number(h[1]),m=Number(h[2])-1,C=new Date(p,m+1,0).getDate(),v=d.reduce((_,A)=>Math.max(_,A.parts?.length??0,A.partsB?.length??0),0),f=d.some(_=>_.partsB),g=new Array(C+1).fill(0),x=new Array(C+1).fill(0),b=Array.from({length:C+1},()=>new Array(v).fill(0)),w=Array.from({length:C+1},()=>new Array(v).fill(0));for(const _ of d){const A=_.date.getDate();if(g[A]+=_.a,x[A]+=_.b,_.parts)for(let y=0;y<v;y++)b[A][y]+=_.parts[y]??0;if(_.partsB)for(let y=0;y<v;y++)w[A][y]+=_.partsB[y]??0}i.set(u,{year:p,month:m,daysInMonth:C,partsLen:v,hasPartsB:f,dayA:g,dayB:x,dayParts:b,dayPartsB:w})}const l=(u,d,h)=>new Date(u,d,h).getTime()>new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),c={};for(const[u,d]of i){const{year:h,month:p,daysInMonth:m,dayA:C,dayB:v,dayParts:f,dayPartsB:g}=d,x=h===t.getFullYear()&&p===t.getMonth(),b=t.getDate(),w=i.get(o(p===11?h+1:h,(p+1)%12)),_=d.partsLen,A=[];for(let B=1;B<=m;B++){const k=x&&B>b;A.push({label:String(B),...k&&C[B]===0&&v[B]===0?{future:!0}:{},a:k&&C[B]===0&&v[B]===0?-1:C[B],b:v[B],..._?{parts:f[B]}:{},..._&&d.hasPartsB?{partsB:g[B]}:{}})}const y=[];for(let B=Wa(h,p);B<=m;B+=7){const k=Math.max(0,B+6-m),S=k&&w?Math.max(_,w.partsLen):_,E=d.hasPartsB||!!(k&&w?.hasPartsB);let D=0,I=0;const j=new Array(S).fill(0),W=new Array(S).fill(0);for(let M=B;M<=Math.min(B+6,m);M++){D+=C[M],I+=v[M];for(let z=0;z<_;z++)j[z]+=f[M][z],W[z]+=g[M][z]}if(k&&w)for(let M=1;M<=k&&!l(w.year,w.month,M);M++){D+=w.dayA[M],I+=w.dayB[M];for(let z=0;z<w.partsLen;z++)j[z]+=w.dayParts[M][z],W[z]+=w.dayPartsB[M][z]}const L=k?`${(p+1)%12+1}/${k}`:`${B+6}`;y.push({label:`${y.length+1}\uC8FC`,sublabel:`[${B}\uC77C~${L}\uC77C]`,a:D,b:I,...S?{parts:j}:{},...S&&E?{partsB:W}:{}})}c[u]={weekly:y,daily:A}}return c}function B0(){const e=po(),t=e.getFullYear(),a=e.getMonth()+1,o=[];for(let n=2024;n<=t;n++){const i=n===t?a:12;for(let l=1;l<=i;l++){const c=`${n}\uB144 ${l}\uC6D4`;o.push({value:c,label:c,year:n,month:l})}}return o.reverse()}B0();function y9(){return B0()}const A0=["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"];function ud(e){const{t,i18n:a}=_e.useTranslation(),[o,n]=s.useState("week"),i=s.useMemo(()=>y9().filter(S=>S.value in e),[e]),l=s.useMemo(()=>{const S=[];for(const E of i){const D=new Date(E.year,E.month,0).getDate(),I=Wa(E.year,E.month-1),j=Math.ceil((D-I+1)/7);for(let W=j-1;W>=0;W--)S.push({value:`${E.value}#${W}`,monthKey:E.value,year:E.year,month:E.month,week:W})}return S},[i]),c=s.useCallback(S=>{const E=t("calendar.yearMonth",{year:S.year,month:S.month});return a.language?.startsWith("ko")?`${E} ${A0[S.week]??`${S.week+1}`}\uC8FC`:`${E} Week ${S.week+1}`},[t,a.language]),u=s.useMemo(()=>i.map(S=>({value:S.value,label:t("calendar.yearMonth",{year:S.year,month:S.month})})),[t,i]),d=s.useMemo(()=>l.map(S=>({value:S.value,label:c(S)})),[l,c]),h=s.useMemo(()=>_9(),[e]),p=s.useMemo(()=>i.find(S=>S.value===h.monthKey)?.value??i[0]?.value??"",[i,h]),m=s.useMemo(()=>l.find(S=>S.value===h.value)?.value??l[0]?.value??"",[l,h]),[C,v]=s.useState(""),[f,g]=s.useState("");s.useEffect(()=>{i.find(S=>S.value===C)||v(p)},[i,C,p]),s.useEffect(()=>{l.find(S=>S.value===f)||g(m)},[l,f,m]);const x=o==="month"?u:d,b=o==="month"?C:f,w=o==="month"?v:g,_=s.useMemo(()=>{const S=t("calendar.dow",{returnObjects:!0});return Array.isArray(S)?S:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[t]),A=x.findIndex(S=>S.value===b),y=s.useCallback(()=>{const S=x.findIndex(E=>E.value===b);S<x.length-1&&w(x[S+1].value)},[x,b,w]),B=s.useCallback(()=>{const S=x.findIndex(E=>E.value===b);S>0&&w(x[S-1].value)},[x,b,w]),k=s.useMemo(()=>[{key:"week",label:t("manager.chart.periodWeek","\uC8FC")},{key:"month",label:t("manager.chart.periodMonth","\uC6D4")}],[t]);return{period:o,setPeriod:n,range:b,setRange:w,activeOptions:x,activeIdx:A,handlePrev:y,handleNext:B,periodOptions:k,monthRange:C,weekRange:f,weekRanges:l,DOW:_}}const Bt=e=>typeof e=="number"&&Number.isFinite(e)?e:0;function to(e,t=!0){return e.future===!0||t&&e.a===-1}function w9({data:e,colorA:t,colorB:a,labelA:o,labelB:n,barWidth:i=10,barGap:l=1,height:c=140,maxOverride:u,tightMax:d,seriesColors:h,seriesLabels:p,rateLabels:m,grouped:C=!1,baseline:v,focusableBars:f=!1}){const g=!a,x=!!(h&&h.length>0),b=v,w=s.useMemo(()=>x?Math.max(0,...e.filter(P=>!to(P,b==null)).map(P=>C?Math.max(0,...(P.parts??[]).map(Bt)):(P.parts??[]).reduce((V,$)=>V+Math.max(0,Bt($)),0))):Math.max(0,...e.filter(P=>!to(P,b==null)).flatMap(P=>g?[Bt(P.a)]:[Bt(P.a),Bt(P.b)])),[e,g,x,C]),_=s.useMemo(()=>{if(b==null)return 0;const P=e.filter(V=>!to(V,b==null)).flatMap(V=>x?(V.parts??[]).map(Bt):g?[Bt(V.a)]:[Bt(V.a),Bt(V.b)]);return Math.max(0,...P.map(V=>Math.abs(V-b)))},[e,b,x,g]),A=s.useMemo(()=>{const P=b!=null?_:w;return u??(d?P>0?P:10:Math.ceil(P/10)*10||10)},[w,_,b,u,d]),y=c,B=x?C?Math.max(1,h.length):1:g?1:2,k={"--bar-width":`${s.useMemo(()=>{const P=Math.max(1,e.length);return Math.max(2,Math.min(i,Math.round(120/(P*B)+6)))},[e.length,B,i])}px`},S={"--bar-group-gap":`${Math.max(0,l)}px`},E=s.useMemo(()=>{const P=Math.round(A/2);return b!=null?[b+A,...P!==A?[b+P]:[],b,...P!==A?[b-P]:[],b-A]:P!==A?[A,P,0]:[A,0]},[A,b]),D=P=>b!=null?1-(P-(b-A))/(2*A):1-P/A,[I,j]=s.useState(null),W=s.useCallback(()=>j(null),[]),L=s.useCallback((P,V)=>{const $=[P.label,P.sublabel].filter(Boolean).join(" ");let U;if(x&&C&&P.rawPartsB)U=(p??[]).map((T,F)=>{const N=P.rawPartsB[F]??0;return{text:N>0?`${T}: ${V[F]??0}% (${P.rawParts?.[F]??0}/${N})`:`${T}: -`,color:(h??[])[F]}});else if(x&&C)U=(p??[]).map((T,F)=>({text:`${T}: ${q(V[F]??0)}`,color:(h??[])[F]}));else if(x){const T=(p??[]).map((N,O)=>({text:`${N}: ${V[O]??0}`,color:(h??[])[O]})),F=T.filter((N,O)=>(V[O]??0)>0);U=F.length?F:T}else m&&!g?U=[{text:`${o} ${Bt(P.a)}%`,color:t},{text:`${n} ${Bt(P.b)}%`,color:a}]:m&&P.rawB!==void 0?U=[{text:`${m.total} ${P.rawB}`},{text:`${m.done} ${P.rawA??0}`,color:t}]:g?U=[{text:`${o}: ${Bt(P.a)}`,color:t}]:U=[{text:`${o}: ${Bt(P.a)}`,color:t},{text:`${n}: ${Bt(P.b)}`,color:a}];return{title:$,items:U}},[x,C,p,h,m,g,o,n,t,a,b]),M=s.useCallback((P,V,$)=>{const U=P.getBoundingClientRect(),{title:T,items:F}=L(V,$);j({rect:{left:U.left,top:U.top,right:U.right,bottom:U.bottom,width:U.width,height:U.height},title:T,items:F})},[L]),z=s.useCallback((P,V)=>{const{title:$,items:U}=L(P,V);return[$,...U.map(T=>T.text)].filter(Boolean).join(", ")},[L]),q=P=>b!=null&&P>b?`+${P}`:`${P}`,Y=I!=null;return s.useEffect(()=>{if(!Y)return;const P=()=>j(null),V=$=>{const U=$.target;U&&typeof U.closest=="function"&&U.closest(".manager-bar-chart-col")||j(null)};return window.addEventListener("scroll",P,!0),document.addEventListener("pointerdown",V,!0),()=>{window.removeEventListener("scroll",P,!0),document.removeEventListener("pointerdown",V,!0)}},[Y]),r.jsxs("div",{className:"manager-bar-chart-wrap",style:S,children:[r.jsx("div",{className:"manager-bar-chart-inner",children:r.jsx("div",{className:"manager-bar-chart-scroll",children:r.jsxs("div",{className:"manager-bar-chart-area",children:[r.jsxs("div",{className:"manager-bar-chart-plot",style:{height:y},children:[E.slice(0,-1).map((P,V)=>r.jsx("div",{className:`manager-bar-chart-gridline${b!=null&&P===b?" manager-bar-chart-gridline--baseline":""}`,style:{top:D(P)*y},children:r.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:P})},V)),e.map((P,V)=>{const $=to(P,b==null),U=y/2,T=H=>b!=null?Math.min(U,Math.abs(Bt(H)-b)/A*U):Math.min(y,Math.max(0,Bt(H)/A*y)),F=$?0:T(P.a),N=$?0:T(P.b),O=(P.parts??[]).map(Bt);return r.jsx("div",{className:`manager-bar-chart-col${C&&x?" manager-bar-chart-col--group":""}`,style:{cursor:$?"default":"pointer"},tabIndex:f&&!$?0:void 0,role:f&&!$?"img":void 0,"aria-label":f&&!$?z(P,O):void 0,onMouseEnter:$?void 0:H=>M(H.currentTarget,P,O),onFocus:$||!f?void 0:H=>M(H.currentTarget,P,O),onBlur:f?W:void 0,onMouseLeave:W,children:!$&&(x&&C?(h??[]).map((H,Z)=>{const te=O[Z]??0;if(b==null)return r.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:T(te),background:H}},Z);const se=Bt(te)<b;return r.jsxs("div",{className:"manager-bar-chart-slot",style:k,children:[r.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:!se&&r.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:T(te),background:H}})}),r.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:se&&r.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:T(te),background:H}})})]},Z)}):x?r.jsx("div",{className:"manager-bar-chart-stack",style:k,children:(()=>{const H=O.reduce((te,se,be)=>se>0?be:te,-1);let Z=y;return O.map((te,se)=>{if(te<=0)return null;const be=Math.min(Z,te/A*y);return Z-=be,r.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:be,background:(h??[])[se],borderRadius:se===H?"6px 6px 0 0":void 0}},se)})})()}):b!=null?r.jsx(r.Fragment,{children:[{v:Bt(P.a),c:t},...g?[]:[{v:Bt(P.b),c:a}]].map(({v:H,c:Z},te)=>r.jsxs("div",{className:"manager-bar-chart-slot",style:k,children:[r.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:H>=b&&r.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:T(H),background:Z}})}),r.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:H<b&&r.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:T(H),background:Z}})})]},te))}):r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:F,background:t}}),!g&&r.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:N,background:a}})]}))},V)})]}),r.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((P,V)=>{const $=to(P,b==null);return r.jsxs("span",{className:`manager-bar-chart-x-axis__label${$?" manager-bar-chart-x-axis__label--future":""}`,children:[r.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[P.isToday&&r.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:t}}),P.label]}),P.sublabel&&r.jsx("span",{className:"caption-1",children:P.sublabel})]},V)})})]})})}),I&&r.jsx(Co,{anchorRect:I.rect,title:I.title,items:I.items,showIndex:!1,closeOnOutsideClick:!1})]})}function dd({control:e}){const{t}=_e.useTranslation(),{activeOptions:a,activeIdx:o,range:n,setRange:i,handlePrev:l,handleNext:c,periodOptions:u,period:d,setPeriod:h}=e,p=d==="week"?t("calendar.prevWeek","\uC774\uC804 \uC8FC"):t("calendar.prevMonth","\uC774\uC804 \uB2EC"),m=d==="week"?t("calendar.nextWeek","\uB2E4\uC74C \uC8FC"):t("calendar.nextMonth","\uB2E4\uC74C \uB2EC");return r.jsxs("div",{className:"manager-section-controls",children:[r.jsx(Ce,{htmlType:"button",size:32,type:"dot",icon:"chevron-left",ariaLabel:p,showTooltipInfo:p,disabled:o===a.length-1,onClick:l}),r.jsx(_a,{value:n,onChange:i,options:a,size:40,className:"month-dropdown",ariaLabel:t("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),r.jsx(Ce,{htmlType:"button",size:32,type:"dot",icon:"chevron-right",ariaLabel:m,showTooltipInfo:m,disabled:o<=0,onClick:c}),r.jsx(Ta,{ariaLabel:t("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:u,value:d,onChange:C=>h(C),size:40})]})}function pd(e,t,a,o=!0){const n=new Date(a.getFullYear(),a.getMonth(),a.getDate());return Array.from({length:7},(i,l)=>{const c=new Date(t);c.setDate(t.getDate()+l);const u=(e[`${c.getFullYear()}\uB144 ${c.getMonth()+1}\uC6D4`]?.daily??[])[c.getDate()-1],d=u!=null&&to(u,o)||c>n;return{dt:c,entry:u,isFuture:d}})}function k9(e,t,a,o,n=!0){const{period:i,monthRange:l,weekRange:c,weekRanges:u,DOW:d}=t,h=o?.startsWith("ko"),p=po(),m=p.getFullYear(),C=p.getMonth()+1,v=p.getDate();if(i==="month"){const x=e[l]??{weekly:[],daily:[]},b=l.match(/^(\d+)년 (\d+)월$/),w=b?Number(b[1]):null,_=b?Number(b[2]):null,A=w&&_?Wa(w,_-1):1;return x.weekly.map((y,B)=>{const k=B+1;let S=y.label,E=!1,D=!1;if(w&&_){const I=A+B*7,j=new Date(w,_-1,I+6),W=j.getMonth()+1,L=j.getDate(),M=W===_?`${L}`:`${W}/${L}`;S=a("manager.chart.weekRange",{start:I,end:M});const z=new Date(m,C-1,v).getTime();E=z>=new Date(w,_-1,I).getTime()&&z<=j.getTime(),D=w>m||w===m&&(_>C||_===C&&I>v)}return{...y,label:S,sublabel:h?`${A0[k-1]??k}\uC8FC`:`Week ${k}`,isToday:E,future:y.future===!0||D||void 0,a:D?-1:y.a,b:D?0:y.b}})}const f=u.find(x=>x.value===c);if(!f)return[];const g=new Date(f.year,f.month-1,Wa(f.year,f.month-1)+f.week*7);return pd(e,g,p,n).map(({dt:x,entry:b,isFuture:w})=>{const _=x.getMonth()+1,A=x.getDate(),y=x.getFullYear();return{label:_===f.month&&y===f.year?`${A}`:`${_}/${A}`,sublabel:d[x.getDay()]??"",future:w||void 0,a:w?-1:b&&b.a>0?b.a:0,b:w?0:b&&b.b>0?b.b:0,isToday:y===m&&_===C&&A===v,...b?.parts?{parts:w?b.parts.map(()=>0):b.parts}:{},...b?.partsB?{partsB:w?b.partsB.map(()=>0):b.partsB}:{}}})}const B9={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function S0({focusableBars:e,size:t="medium",barWidth:a,titleKey:o,titleLevel:n,data:i,colorA:l,colorB:c,labelAKey:u,labelBKey:d,showTotal:h=!1,totalUnitKey:p,totalLabelKey:m,control:C,hideControls:v=!1,rate:f=!1,rateAgg:g="dayMean",tightMax:x=!1,avgMode:b=!1,totalFormat:w,series:_,seriesMode:A="stack",loading:y=!1,onDetail:B,headExtra:k,headSegment:S,icon:E,disc:D,onClick:I,cardAriaLabel:j,cardTooltip:W,detailSize:L=32,barGap:M,baseline:z,className:q,inGrid:Y=!1}){const{t:P,i18n:V}=_e.useTranslation(),$=B9[t],U=ud(i),T=C??U,F=s.useMemo(()=>k9(i,T,P,V.language,z==null),[i,T,P,V.language,z]),N=A==="group"&&!!_&&_.length>0;M!=null&&!N&&ra("bar-chart-bargap-without-group","[BarChart] barGap \uC740 seriesMode='group' + series \uC5D0\uC11C\uB9CC \uC4F0\uC778\uB2E4 \u2014 \uADF8 \uBC16\uC5D0\uC11C\uB294 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4.");const O=s.useMemo(()=>{if(!f)return F;const re=T.period==="month"?T.monthRange.match(/^(\d+)년 (\d+)월$/):null,Ae=po(),K=_?.length??0,ie=ue=>{const je=[],ye=[],le=[];for(let he=0;he<K;he++){let ve=0,G=0,oe=0;for(const me of ue){const Te=Bt(me.a[he]),ke=Bt(me.b[he]);ke<=0||(ve+=Te,G+=ke,oe+=Te/ke*100)}je.push(g==="weighted"?G>0?Math.round(ve/G*100):0:ue.length?Math.round(oe/ue.length):0),ye.push(ve),le.push(G)}return{pct:je,ra:ye,rb:le}};return F.map((ue,je)=>{let ye=ue.a===-1?-1:ue.b>0?Math.round(ue.a/ue.b*100):0;if(re&&!to(ue)){const he=Number(re[1]),ve=Number(re[2])-1,G=pd(i,new Date(he,ve,Wa(he,ve)+je*7),Ae).filter(oe=>!oe.isFuture);if(g==="weighted"){let oe=0,me=0;for(const{entry:Te}of G)Te&&Te.b>0&&(oe+=Te.a,me+=Te.b);ye=me>0?Math.round(oe/me*100):0}else ye=G.length?Math.round(G.reduce((oe,{entry:me})=>oe+(me&&me.b>0?me.a/me.b*100:0),0)/G.length):0}let le=null;if(N&&!to(ue)){let he;if(re){const G=Number(re[1]),oe=Number(re[2])-1;he=pd(i,new Date(G,oe,Wa(G,oe)+je*7),Ae).filter(me=>!me.isFuture).map(({entry:me})=>({a:me?.parts??[],b:me?.partsB??[]}))}else he=[{a:ue.parts??[],b:ue.partsB??[]}];const ve=ie(he);le={parts:ve.pct,rawParts:ve.ra,rawPartsB:ve.rb}}return{...ue,a:ye,b:ue.a===-1?0:d&&ue.parts&&ue.parts[1]>0?Math.round(ue.parts[0]/ue.parts[1]*100):0,rawA:ue.a===-1?-1:ue.a,rawB:ue.b,...le??{}}})},[F,f,g,d,T.period,T.monthRange,i,N,_?.length]),H=s.useMemo(()=>{if(f||b){const Ae=(T.period==="week"?F:i[T.monthRange]?.daily??[]).filter(ie=>ie.a!==-1);if(Ae.length===0)return 0;if(f&&g==="weighted"){let ie=0,ue=0;for(const je of Ae)je.b>0&&(ie+=je.a,ue+=je.b);return ue>0?Math.round(ie/ue*100):0}const K=f?Ae.reduce((ie,ue)=>ie+(ue.b>0?ue.a/ue.b*100:0),0):Ae.reduce((ie,ue)=>ie+(ue.a>0?ue.a:0),0);return Math.round(K/Ae.length)}const re=T.period==="month"?i[T.monthRange]?.daily??[]:O;return z!=null?re.reduce((Ae,K)=>Ae+(to(K,!1)?0:Bt(K.a)+(d?Bt(K.b):0)),0):re.reduce((Ae,K)=>Ae+(K.a>0?K.a:0)+(d&&K.b>0?K.b:0),0)},[O,F,f,g,b,z,d,T.period,T.monthRange,i]),Z=_&&_.length>0?_.map(re=>({color:re.color,label:re.label})):[{color:l,label:P(u)},...d?[{color:c,label:P(d)}]:[]],te=t==="small",se=[te?"manager-section--compact":t==="large"?"manager-section--full":void 0,q].filter(Boolean).join(" ")||void 0,be=o?P(o):"",X=be?P("trainingStatus.detailFor",{name:be,defaultValue:"{{name}} \uC0C1\uC138\uBCF4\uAE30"}):P("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30");return r.jsx(Fi,{className:se,inGrid:Y,icon:E,disc:D,onClick:I,ariaLabel:j,tooltip:W,headSegment:S,headMenuItems:B?[{label:X,icon:"list",onClick:B,closeOnSelect:!0}]:void 0,title:P(o),titleLevel:n,titleClassName:te?"h5 chart-section-title--small":void 0,headRight:te?k??void 0:({collapsed:re})=>r.jsxs(r.Fragment,{children:[!v&&r.jsx(dd,{control:T}),k,B&&!re&&r.jsx("span",{className:"manager-bar-chart-detail-btn",children:r.jsx(Ce,{htmlType:"button",size:L,type:"dot",icon:"list",ariaLabel:X,showTooltipInfo:X,onClick:B})})]}),subRow:r.jsxs(r.Fragment,{children:[h?f||b||m&&w?r.jsx(wr,{label:te?void 0:`${P(T.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${P(m??u)}`,children:w?(w(H).match(/([+-]?\d[\d.,]*|[^\d]+)/g)??[]).map((re,Ae)=>/\d/.test(re)?r.jsx("span",{className:"barchart-total__num h0",children:re},Ae):r.jsx("span",{className:"barchart-total__unit h5",children:re},Ae)):r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"barchart-total__num h0",children:H}),p&&r.jsx("span",{className:"barchart-total__unit h5",children:P(p)})]})}):r.jsxs(wr,{children:[r.jsx("span",{className:"barchart-total__num h0",children:H}),r.jsx("span",{className:"barchart-total__unit h5",children:P(u)}),p&&r.jsx("span",{className:"barchart-total__unit h5",children:P(p)})]}):r.jsx("span",{}),r.jsx(Oi,{items:Z,className:"caption-1"})]}),children:y?r.jsx("div",{className:"manager-bar-chart-wrap manager-bar-chart-loading","aria-busy":"true",children:r.jsx("div",{className:"manager-bar-chart-inner",children:r.jsxs("div",{className:"manager-bar-chart-area manager-bar-chart-area--loading",children:[r.jsx("div",{className:"manager-bar-chart-plot manager-bar-chart-plot--loading",style:{height:$.height},children:r.jsx(yr,{size:32})}),r.jsx("div",{className:"manager-bar-chart-x-axis","aria-hidden":"true",children:r.jsxs("span",{className:"manager-bar-chart-x-axis__label",children:[r.jsx("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:"\xA0"}),O.some(re=>!!re.sublabel)&&r.jsx("span",{className:"caption-1",children:"\xA0"})]})})]})})}):r.jsx(w9,{focusableBars:e,data:O,colorA:l,colorB:d?c:void 0,labelA:P(u),labelB:d?P(d):void 0,barWidth:a??$.barWidth,barGap:M,baseline:z,height:$.height,maxOverride:f?100:void 0,tightMax:x,seriesColors:_?.map(re=>re.color),seriesLabels:_?.map(re=>re.label),rateLabels:f?{total:P("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:P("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0,grouped:N})})}var A9=".ihabdevteam-core-scope .line-chart{display:block;height:auto;overflow:visible;width:100%}.ihabdevteam-core-scope .line-chart__axis-title,.ihabdevteam-core-scope .line-chart__tick{fill:var(--color-gray);font-size:12px}.ihabdevteam-core-scope .line-chart__grid{stroke:var(--color-whiteLine);stroke-width:1}.ihabdevteam-core-scope .line-chart__line{stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ihabdevteam-core-scope .line-chart__dot-hit{fill:transparent}.ihabdevteam-core-scope .line-chart__dot-main{stroke-width:1.5}.ihabdevteam-core-scope .line-chart__dot-main.is-hollow{fill:var(--color-white)}.ihabdevteam-core-scope .line-chart__tip{max-width:220px;white-space:normal}.ihabdevteam-core-scope .line-chart__dot{cursor:default}";ce(A9);const hd=120,S9={left:38,right:16,top:26,bottom:24};function E0({points:e=[],range:t,ticks:a=[],axisTitle:o,color:n,height:i=156,fallbackWidth:l=320,insets:c,overlay:u,ariaLabel:d,className:h}){const[p,m]=s.useState(null),[C,v]=s.useState(null);s.useEffect(()=>{if(!C)return;const z=Y=>m(Math.round(Y)||null);if(z(C.getBoundingClientRect().width),typeof ResizeObserver>"u")return;const q=new ResizeObserver(([Y])=>z(Y.contentRect.width));return q.observe(C),()=>{q.disconnect()}},[C]);const{payload:f,anchorRect:g,openAfterDelay:x,close:b}=Mu(hd),w=s.useCallback((z,q)=>{z&&x(z,q.getBoundingClientRect())},[x]),_=p??l,A=i,{left:y,right:B,top:k,bottom:S}={...S9,...c},[E,D]=t,I=z=>D===E?y:y+(_-y-B)*(z-E)/(D-E),j=z=>k+(A-k-S)*(100-z)/100,W={x:I,y:j,plot:{left:y,right:_-B,top:k,bottom:A-S,width:Math.max(0,_-y-B),height:Math.max(0,A-k-S)}},L=e.filter(z=>!z.hollow),M=n??"var(--color-main)";return r.jsxs(r.Fragment,{children:[r.jsxs("svg",{ref:v,className:Ne("line-chart",h),viewBox:`0 0 ${_} ${A}`,role:"img","aria-label":d??e.map(z=>z.description).filter(Boolean).join(", "),children:[o&&r.jsx("text",{className:"line-chart__axis-title",x:0,y:12,children:o}),[0,100].map(z=>r.jsxs("g",{children:[r.jsx("line",{className:"line-chart__grid",x1:y,x2:_-B,y1:j(z),y2:j(z)}),r.jsxs("text",{className:"line-chart__tick",x:y-6,y:j(z)+4,textAnchor:"end",children:[z,"%"]})]},z)),u?.(W),a.map(z=>r.jsx("text",{className:"line-chart__tick",x:I(z.x),y:A-5,textAnchor:"middle",children:z.label},z.x)),L.length>1&&r.jsx("polyline",{className:"line-chart__line",fill:"none",stroke:M,points:L.map(z=>`${I(z.x)},${j(z.pct)}`).join(" ")}),e.map(z=>r.jsxs("g",{className:"line-chart__dot",onPointerEnter:q=>w(z.description,q.currentTarget),onPointerLeave:b,children:[r.jsx("circle",{className:"line-chart__dot-hit",cx:I(z.x),cy:j(z.pct),r:12}),r.jsx("circle",{className:Ne("line-chart__dot-main",z.hollow&&"is-hollow"),cx:I(z.x),cy:j(z.pct),r:4,stroke:M,fill:z.hollow?void 0:M})]},z.x))]}),f!=null&&r.jsx(xa,{anchorRect:g,offset:10,closeOnOutsideClick:!1,className:"line-chart__tip",role:"tooltip",ariaLabel:f,children:f})]})}var E9=".ihabdevteam-core-scope .game-intro{align-items:center;display:flex;flex-direction:column;gap:14px;padding:0;text-align:center}.ihabdevteam-core-scope .game-intro__icon{font-size:56px;font-size:var(--game-intro-icon,56px)}.ihabdevteam-core-scope .game-intro__title{color:var(--color-onDark-title);margin:0}.ihabdevteam-core-scope .game-intro__description{color:var(--color-onDark-text);line-height:1.75;margin:0}.ihabdevteam-core-scope .game-intro__tips{background:var(--color-onDark-surface);border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-onDark-text);display:flex;flex-direction:column;gap:4px;padding:var(--spacing-l);text-align:left;width:100%}.ihabdevteam-core-scope .game-intro__tips-title{color:var(--color-onDark-muted);letter-spacing:.06em;margin-bottom:4px}.ihabdevteam-core-scope .game-intro__tip{align-items:flex-start;display:flex;gap:var(--spacing-xs)}";ce(E9);function D0({icon:e,iconSize:t=56,title:a,titleClass:o="h2",description:n,tipGroups:i,start:l,className:c}){return r.jsxs("div",{className:Ne("game-intro",c),children:[e!=null&&r.jsx("span",{className:"game-intro__icon","aria-hidden":"true",style:{"--game-intro-icon":`${t}px`},children:e}),r.jsx("h2",{className:Ne("game-intro__title",o),children:a}),n!=null&&r.jsx("p",{className:"game-intro__description body-3",children:n}),i?.map((u,d)=>r.jsxs("div",{className:"game-intro__tips",children:[u.title!=null&&r.jsx("span",{className:"game-intro__tips-title body-3",children:u.title}),u.tips.map((h,p)=>r.jsxs("span",{className:"game-intro__tip body-3",children:[h.icon!=null&&r.jsx("span",{"aria-hidden":"true",children:h.icon}),r.jsx("span",{children:h.text})]},p))]},d)),l&&r.jsx(Ce,{htmlType:"button",className:l.className,variant:"main",color:l.color,size:48,width:"100%",disabled:l.disabled,onClick:l.onClick,children:l.label})]})}const N0=(e,t,a)=>{const o=new Date(Date.UTC(e,t,a));return`${o.getUTCFullYear()}-${String(o.getUTCMonth()+1).padStart(2,"0")}-${String(o.getUTCDate()).padStart(2,"0")}`},T0=(e,t,a,o)=>({from:oi(e,t,a),to:new Date(oi(e,t,a+o).getTime()-1),fromYmd:N0(e,t,a),toYmd:N0(e,t,a+o-1)});function j0(e,t=0){if(e.period==="month"){const n=e.monthRange.match(/^(\d+)년 (\d+)월$/),i=po(),l=n?Number(n[1]):i.getFullYear(),c=(n?Number(n[2]):i.getMonth()+1)-1+t,u=new Date(Date.UTC(l,c+1,0)).getUTCDate();return T0(l,c,1,u)}const a=e.weekRanges.find(n=>n.value===e.weekRange);if(!a){const n=new Date,i=Ca();return{from:n,to:n,fromYmd:i,toYmd:i}}const o=Wa(a.year,a.month-1);return T0(a.year,a.month-1,o+(a.week+t)*7,7)}var D9=".ihabdevteam-core-scope .ring-chart{flex-shrink:0;position:relative}.ihabdevteam-core-scope .ring-chart svg{display:block}.ihabdevteam-core-scope .ring-chart__center{align-items:center;display:flex;flex-direction:column;inset:0;justify-content:center;pointer-events:none;position:absolute}.ihabdevteam-core-scope .ring-chart__center--small{transform:translateY(6.5px)}.ihabdevteam-core-scope .ring-chart__center--medium{transform:translateY(7.5px)}.ihabdevteam-core-scope .ring-chart__center--large{transform:translateY(8.5px)}.ihabdevteam-core-scope .ring-chart__pct{color:var(--color-darkGray);line-height:1}.ihabdevteam-core-scope .ring-chart__label{color:var(--color-lightGray)}.ihabdevteam-core-scope .ring-chart__label--tight{margin-top:-2px}.ihabdevteam-core-scope .ring-chart-section-body{display:flex;justify-content:center}.ihabdevteam-core-scope .ring-chart-section-body--offset{justify-content:flex-end}";ce(D9);const md={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function L0(e){return!Number.isFinite(e)||e<=0?0:e>=1?100:Math.min(99,Math.max(1,Math.round(e*100)))}function M0({done:e,total:t,segments:a,color:o="var(--color-main)",size:n="medium",strokeWidth:i,label:l="%",hideCenter:c=!1,hideLabel:u=!1}){const d=typeof n=="number"?n:md[n].diameter,h=i??(typeof n=="number"?12:md[n].strokeWidth),p=d/2,m=(d-h)/2,C=2*Math.PI*m;if(a&&a.length>0){const x=a.reduce((b,w)=>{const _=b.length>0?b[b.length-1].acc:0,A=Number.isFinite(w.ratio)?w.ratio:0,y=Math.max(0,Math.min(A,1-_));return b.push({color:w.color,rotate:-90+_*360,dash:C*y,acc:_+y}),b},[]);return r.jsx("div",{className:"ring-chart",style:{width:d,height:d},children:r.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[r.jsx("circle",{cx:p,cy:p,r:m,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:h}),x.map((b,w)=>b.dash>0&&r.jsx("circle",{cx:p,cy:p,r:m,fill:"none",stroke:b.color,strokeWidth:h,strokeDasharray:`${b.dash} ${C}`,strokeLinecap:"round",transform:`rotate(${b.rotate} ${p} ${p})`},w))]})})}const v=(t??0)>0?Math.min((e??0)/t,1):0,f=C*v,g=C-f;return r.jsxs("div",{className:"ring-chart",style:{width:d,height:d},children:[r.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[r.jsx("circle",{cx:p,cy:p,r:m,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:h}),v>0&&r.jsx("circle",{cx:p,cy:p,r:m,fill:"none",stroke:o,strokeWidth:h,strokeDasharray:`${f} ${g}`,strokeLinecap:v<.02||v>.98?"butt":"round",transform:`rotate(-90 ${p} ${p})`})]}),!c&&r.jsxs("div",{className:`ring-chart__center${u?"":` ${d<=96?"ring-chart__center--small":n==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[r.jsx("span",{className:`ring-chart__pct ${d<=96?"h2":"h1"}`,children:L0(v)}),!u&&r.jsx("span",{className:`ring-chart__label ${d<=96?"caption-2":"caption-1"}${d<=96||n==="medium"?" ring-chart__label--tight":""}`,children:l})]})]})}function $0({titleKey:e,titleLevel:t,headRight:a,icon:o,showTotal:n,totalLabelKey:i,legend:l,loading:c,className:u,inGrid:d=!1,onClick:h,ariaLabel:p,tooltip:m,...C}){const{t:v}=_e.useTranslation();if(!e)return r.jsx(M0,{...C});const f=(C.total??0)>0?L0(Math.min((C.done??0)/C.total,1)):0,g=C.size==="small",x=typeof C.size=="number"?C.size:md[C.size??"medium"].diameter,b=C.size==="large",w=[u,g?"manager-section--compact":b?"manager-section--full":""].filter(Boolean).join(" ")||void 0,_=o&&r.jsx("span",{className:"chart-section-icon",children:r.jsx(ot,{icon:o,className:"chart-section-icon-inner"})});return r.jsx(Fi,{className:w,inGrid:d,onClick:h,ariaLabel:p,tooltip:m,title:v(e),titleLevel:t,titleClassName:g?"h5 chart-section-title--small":void 0,headRight:_||(g?void 0:a),subRow:(n||l)&&r.jsxs(r.Fragment,{children:[n?r.jsxs(wr,{label:!g&&i?v(i):void 0,children:[r.jsx("span",{className:"barchart-total__num h0",children:f}),r.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):r.jsx("span",{}),l&&r.jsx(Oi,{items:l})]}),children:c?r.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:r.jsx("div",{className:"ring-chart ring-chart--loading",style:{width:x,height:x},"aria-busy":"true",children:r.jsx(yr,{size:32})})}):r.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:r.jsx(M0,{...C,hideCenter:C.hideCenter??g})})})}var N9=".ihabdevteam-core-scope .manager-stat-card{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-card);container-type:inline-size;display:flex;flex-direction:column;gap:4px;justify-content:flex-start;min-width:160px;padding:20px}.ihabdevteam-core-scope .manager-stat-card--clickable{border:1px solid transparent;cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease}.ihabdevteam-core-scope .manager-stat-card--clickable:hover{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .manager-stat-card__label-row{align-items:center;display:flex;justify-content:space-between;min-height:28px}.ihabdevteam-core-scope .manager-stat-card__label{color:var(--color-deepGray)}.ihabdevteam-core-scope .manager-stat-card__icon{display:inline-flex;opacity:.35}.ihabdevteam-core-scope .manager-stat-card__icon-inner{color:var(--color-darkGray);height:22px;width:22px}.ihabdevteam-core-scope .manager-stat-card__content{align-items:flex-start;display:flex;flex:1;flex-direction:column;gap:var(--spacing-xs);justify-content:space-between}.ihabdevteam-core-scope .manager-stat-card__body{align-items:stretch;display:flex;flex-direction:column;gap:4px;text-align:left;width:100%}.ihabdevteam-core-scope .manager-stat-card__left{align-items:flex-start;display:flex;flex:1;flex-direction:row;gap:8px;text-align:left}.ihabdevteam-core-scope .manager-stat-card__value{color:var(--color-black);flex-shrink:0;font-size:32px;font-weight:700;letter-spacing:-.5px;line-height:1;white-space:nowrap}.ihabdevteam-core-scope .manager-stat-card__change{font-size:12px;font-weight:500;line-height:1.2;margin-top:1px;min-width:0}.ihabdevteam-core-scope .manager-stat-card__change--up{color:var(--color-sub)}.ihabdevteam-core-scope .manager-stat-card__change--down{color:var(--color-error)}.ihabdevteam-core-scope .manager-stat-card__change--neutral{color:var(--color-gray)}@media (max-width:767px){.ihabdevteam-core-scope .manager-stat-card{padding:12px 14px 16px}.ihabdevteam-core-scope .manager-stat-card__value{font-size:24px}}";ce(N9);function R0({label:e,value:t,change:a,changeType:o,icon:n,tooltip:i,onClick:l,children:c}){const u=s.useRef(null),{anchorRect:d,openAt:h,close:p}=Ho(),m=s.useCallback(()=>{i&&u.current&&h(u.current)},[i,h]),C=o??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),v=a===void 0?void 0:a>0?`+${a}`:`${a}`,f=s.useCallback(g=>{l&&(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),l())},[l]);return r.jsxs("div",{ref:u,className:`manager-stat-card${l?" manager-stat-card--clickable":""}`,onClick:l,onKeyDown:l?f:void 0,onPointerEnter:m,onPointerLeave:p,onFocus:m,onBlur:p,role:l?"button":void 0,tabIndex:l?0:void 0,"aria-label":l?[e,t,v].filter(g=>g!==void 0&&g!=="").join(" "):void 0,children:[i&&d&&r.jsx(Ea,{anchorRect:{left:d.left,top:d.top+21,right:d.right,bottom:d.bottom,width:d.width,height:d.height},text:i}),r.jsxs("div",{className:"manager-stat-card__label-row",children:[r.jsx("span",{className:"manager-stat-card__label h5",children:e}),n&&r.jsx("span",{className:"manager-stat-card__icon",children:r.jsx(ot,{icon:n,className:"manager-stat-card__icon-inner"})})]}),r.jsxs("div",{className:"manager-stat-card__content",children:[r.jsxs("div",{className:"manager-stat-card__left",children:[r.jsx("div",{className:"manager-stat-card__value h2",children:t}),v&&r.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${C??"neutral"} caption-1`,children:v})]}),c&&r.jsx("div",{className:"manager-stat-card__body",children:c})]})]})}var T9='.ihabdevteam-core-scope .slider{--slider-thumb:40px;--slider-fill:calc(var(--slider-thumb)/2 + var(--slider-ratio, 0)*(100% - var(--slider-thumb)));--slider-fill-color:var(--color-main);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border-radius:999px;cursor:pointer;margin:0;outline:none}.ihabdevteam-core-scope .slider:disabled{--slider-fill-color:var(--color-gray);cursor:not-allowed}.ihabdevteam-core-scope .slider:focus-visible{outline:2px solid var(--color-main);outline-offset:4px}.ihabdevteam-core-scope .slider--horizontal{background:linear-gradient(to right,var(--slider-fill-color) var(--slider-fill),var(--color-darkWhite) var(--slider-fill));height:var(--slider-thumb);width:100%}.ihabdevteam-core-scope .slider--vertical{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to top,var(--slider-fill-color) var(--slider-fill),var(--color-darkWhite) var(--slider-fill));direction:rtl;height:160px;width:var(--slider-thumb);writing-mode:vertical-lr}.ihabdevteam-core-scope .slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-white);border:2px solid var(--slider-fill-color);border-radius:50%;box-shadow:var(--shadow-dropdown);cursor:pointer;height:var(--slider-thumb);width:var(--slider-thumb)}.ihabdevteam-core-scope .slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.ihabdevteam-core-scope .slider::-moz-range-thumb{background:var(--color-white);border:2px solid var(--slider-fill-color);border-radius:50%;box-shadow:var(--shadow-dropdown);cursor:pointer;height:var(--slider-thumb);width:var(--slider-thumb)}.ihabdevteam-core-scope .slider::-moz-range-track{background:transparent}.ihabdevteam-core-scope .slider--static{pointer-events:none}.ihabdevteam-core-scope .slider--static::-webkit-slider-thumb{visibility:hidden}.ihabdevteam-core-scope .slider--static::-moz-range-thumb{visibility:hidden}.ihabdevteam-core-scope .slider-wrap{align-items:center;display:flex;gap:10px}.ihabdevteam-core-scope .slider-wrap--label-left,.ihabdevteam-core-scope .slider-wrap--label-right{flex-direction:row}.ihabdevteam-core-scope .slider-wrap--label-left>.slider,.ihabdevteam-core-scope .slider-wrap--label-left>.slider-track-group,.ihabdevteam-core-scope .slider-wrap--label-right>.slider,.ihabdevteam-core-scope .slider-wrap--label-right>.slider-track-group{flex:1;min-width:0}.ihabdevteam-core-scope .slider-wrap--label-bottom,.ihabdevteam-core-scope .slider-wrap--label-top{flex-direction:column;gap:6px}.ihabdevteam-core-scope .slider-wrap--label-left .slider-wrap__value,.ihabdevteam-core-scope .slider-wrap--label-top .slider-wrap__value{order:-1}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-left,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-left{align-items:flex-start}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-center,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-center{align-items:center}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-right,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-right{align-items:flex-end}.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-bottom>.slider,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-bottom>.slider-track-group,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-top>.slider,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-top>.slider-track-group{align-self:stretch}.ihabdevteam-core-scope .slider-wrap__value{font-feature-settings:"tnum";color:var(--color-main);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}.ihabdevteam-core-scope .slider-wrap--label-left .slider-wrap__value,.ihabdevteam-core-scope .slider-wrap--label-right .slider-wrap__value{min-width:2.5em;text-align:right}.ihabdevteam-core-scope .slider-track-group{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .slider-track-group--horizontal{flex-direction:row}.ihabdevteam-core-scope .slider-track-group--horizontal .slider{flex:1;min-width:0}.ihabdevteam-core-scope .slider-track-group--vertical{flex-direction:column}.ihabdevteam-core-scope .slider-wrap__minmax{font-feature-settings:"tnum";color:var(--color-lightGray);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}';ce(T9);function bd({value:e,onChange:t,min:a=0,max:o=100,step:n=1,orientation:i="horizontal",size:l=24,disabled:c=!1,ariaLabel:u,length:d,className:h,label:p,formatValue:m,labelPos:C,labelAlign:v="right",showMinMax:f=!1,minLabel:g,maxLabel:x,showBgTick:b=!1,showFillTick:w=!1,tickStep:_,tickShape:A="dot"}){t&&!u&&ra("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 y=Math.min(o,Math.max(a,e)),B=o>a?(y-a)/(o-a):0,k=i==="vertical",S=!t,E=T=>t?.(Number(T.target.value)),D=typeof d=="number"?`${d}px`:d,I={"--slider-ratio":String(B),"--slider-thumb":`${l}px`,...D?k?{height:D}:{width:D}:{}},j=_??n,W=(b||w)&&j>0&&o>a?Math.floor((o-a)/j+1e-6):0;if(W>0&&W<=100){const T=A!=="dash",F=te=>T?`radial-gradient(circle, ${te} 0.5px, transparent 1px)`:k?`linear-gradient(to bottom, transparent calc(50% - 2px), ${te} calc(50% - 2px), ${te} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${te} calc(50% - 2px), ${te} calc(50% + 2px), transparent calc(50% + 2px))`,N=T?"2px":"4px",O=[],H=[],Z=[];for(let te=0;te<=W;te++){const se=te*j/(o-a);if(se>1+1e-6)break;const be=`${((k?1-se:se)*100).toFixed(4)}%`,X=se<=B+1e-6;if(X?!w:!b)continue;const re=X?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";O.push(F(re)),H.push(k?`${N} var(--slider-thumb)`:`var(--slider-thumb) ${N}`),Z.push(k?`center ${be}`:`${be} center`)}O.push(k?"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))"),H.push("100% 100%"),Z.push("0 0"),I.backgroundImage=O.join(", "),I.backgroundSize=H.join(", "),I.backgroundPosition=Z.join(", "),I.backgroundRepeat="no-repeat"}const L=m?m(y):p==="percent"?`${Math.round(o>a?(y-a)/(o-a)*100:0)}%`:p==="count"?`${y} / ${o}`:y===a&&g?g:y===o&&x?x:void 0,M=r.jsx("input",{type:"range",className:Ne("slider",`slider--${i}`,S&&"slider--static",!p&&!f&&h),min:a,max:o,step:n,value:y,disabled:c,readOnly:S,tabIndex:S?-1:void 0,"aria-label":u,"aria-valuetext":L,"aria-orientation":i,onChange:E,style:I});if(!p&&!f)return M;const z=r.jsx("span",{className:"slider-wrap__minmax caption-1",children:g??a}),q=r.jsx("span",{className:"slider-wrap__minmax caption-1",children:x??o}),Y=f?r.jsxs("div",{className:Ne("slider-track-group",`slider-track-group--${i}`,!p&&h),children:[k?q:z,M,k?z:q]}):M;if(!p)return Y;const P=C??(k?"bottom":"right"),V=`${Math.round(o>a?(y-a)/(o-a)*100:0)}%`,$=m?m(y):p==="percent"?V:p==="count"?`${y} / ${o}`:String(y),U=r.jsx("span",{className:"slider-wrap__value body-3b",children:$});return r.jsxs("div",{className:Ne("slider-wrap",`slider-wrap--${i}`,`slider-wrap--label-${P}`,`slider-wrap--align-${v}`,h),children:[Y,U]})}var j9='.ihabdevteam-core-scope .audio-meter{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .audio-meter__track{--meter-level:0;background:var(--color-darkWhite);border-radius:999px;flex-shrink:0;overflow:hidden;position:relative}.ihabdevteam-core-scope .audio-meter__fill{inset:0;position:absolute}.ihabdevteam-core-scope .audio-meter__value{font-feature-settings:"tnum";color:var(--color-gray);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;width:40px}.ihabdevteam-core-scope .audio-meter--horizontal .audio-meter__track{height:8px;width:120px}.ihabdevteam-core-scope .audio-meter--horizontal .audio-meter__fill{background:linear-gradient(to right,var(--color-success) 0,var(--color-success) 55%,var(--color-warn) 80%,var(--color-error) 100%);transform:scaleX(var(--meter-level));transform-origin:left}.ihabdevteam-core-scope .audio-meter--vertical{flex-direction:column}.ihabdevteam-core-scope .audio-meter--vertical .audio-meter__track{height:120px;width:8px}.ihabdevteam-core-scope .audio-meter--vertical .audio-meter__fill{background:linear-gradient(to top,var(--color-success) 0,var(--color-success) 55%,var(--color-warn) 80%,var(--color-error) 100%);transform:scaleY(var(--meter-level));transform-origin:bottom}.ihabdevteam-core-scope .audio-meter.audio-meter--label-left,.ihabdevteam-core-scope .audio-meter.audio-meter--label-right{flex-direction:row}.ihabdevteam-core-scope .audio-meter.audio-meter--label-bottom,.ihabdevteam-core-scope .audio-meter.audio-meter--label-top{flex-direction:column}.ihabdevteam-core-scope .audio-meter--label-left .audio-meter__value,.ihabdevteam-core-scope .audio-meter--label-top .audio-meter__value{order:-1}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-left,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-left{align-items:flex-start}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-center,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-center{align-items:center}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-right,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-right{align-items:flex-end}';ce(j9);const L9=.86,M9=250,gd=(e,t,a,o)=>Math.round(Math.min(o,Math.max(a,e-t))),fd=(e,t,a,o)=>{const n=gd(e,t,a,o);return`${n<0?"-":"+"}${Math.abs(n)} dB`};function Hi({analyser:e,audioElement:t,orientation:a="horizontal",length:o,label:n,labelPos:i,labelAlign:l="right",floorDb:c=-60,refDb:u=-35,displayMin:d=-5,displayMax:h=25,className:p,ariaLabel:m}){const C=s.useRef(null),v=s.useRef(null),f=s.useRef(null),g=s.useRef(null),[x,b]=s.useState(null);s.useEffect(()=>{const y=M=>{const z=fd(M,u,d,h);f.current&&(f.current.textContent=z);const q=C.current;q&&(q.setAttribute("aria-valuenow",String(gd(M,u,d,h))),q.setAttribute("aria-valuetext",z))},B=e??Vs(t)??(x&&x.el===t?x.node:null),k=v.current;if(!B||!k){k?.style.setProperty("--meter-level","0"),y(c);let M=!1;return!e&&t&&tr(t).then(z=>{!M&&z&&b({el:t,node:z})}),()=>{M=!0}}Fr();const S=new Float32Array(B.fftSize);let E=0,D=0,I=0,j=0,W=null;const L=M=>{const z=Ws(B,S);E=z>E?z:E*L9;const q=E>1e-5?20*Math.log10(E):-1/0,Y=Math.max(c,q),P=Y-u,V=Math.min(1,Math.max(0,(P-d)/(h-d)));if(k.style.setProperty("--meter-level",V.toFixed(3)),D+=Y,I+=1,M-j>=M9){const $=D/I;W=W==null?$:W*.6+$*.4,y(W),D=0,I=0,j=M}g.current=requestAnimationFrame(L)};return g.current=requestAnimationFrame(L),()=>{g.current!=null&&cancelAnimationFrame(g.current),g.current=null}},[e,t,x,c,u,d,h]);const w=typeof o=="number"?`${o}px`:o,_=r.jsx("div",{className:"audio-meter__track",style:w?a==="vertical"?{height:w}:{width:w}:{},children:r.jsx("div",{ref:v,className:"audio-meter__fill"})}),A=i??(a==="vertical"?"bottom":"right");return r.jsxs("div",{ref:C,className:Ne("audio-meter",`audio-meter--${a}`,n&&`audio-meter--label-${A}`,n&&`audio-meter--align-${l}`,p),role:"meter","aria-label":m,"aria-valuemin":d,"aria-valuemax":h,"aria-valuenow":gd(c,u,d,h),"aria-valuetext":fd(c,u,d,h),children:[_,n&&r.jsx("span",{ref:f,className:"audio-meter__value caption-2",children:fd(c,u,d,h)})]})}const P0=260;function vd({message:e,position:t,duration:a,onClose:o}){const[n,i]=s.useState(!1),[l,c]=s.useState(!1),u=s.useRef(l),d=s.useRef(n);s.useEffect(()=>{u.current=l},[l]),s.useEffect(()=>{d.current=n},[n]);const h=s.useRef(null),p=s.useRef(""),m=s.useRef(o);s.useEffect(()=>{m.current=o});const C=a,v=s.useRef(null),f=s.useRef(0),g=s.useRef(0),x=s.useRef(!1),b=s.useRef(null),w=s.useRef(null),_=s.useRef(null),A=s.useRef(null),y=s.useRef(()=>{});y.current=S=>{S<0||(f.current=Date.now(),g.current=S,v.current=setTimeout(()=>{v.current=null,i(!1),b.current=setTimeout(()=>{c(!1);try{m.current()}catch{}},P0)},S))};const B=s.useCallback(()=>{x.current||!v.current||(x.current=!0,clearTimeout(v.current),v.current=null,g.current=Math.max(0,g.current-(Date.now()-f.current)))},[]),k=s.useCallback(()=>{x.current&&(x.current=!1,y.current(g.current))},[]);return s.useEffect(()=>{if(e!==p.current&&(v.current&&(clearTimeout(v.current),v.current=null),b.current&&(clearTimeout(b.current),b.current=null)),e){if(d.current)return C>0&&!v.current&&(x.current?g.current=C:y.current(C)),p.current=e,()=>{v.current&&(clearTimeout(v.current),v.current=null),b.current&&(clearTimeout(b.current),b.current=null)};const S=()=>{const E=h.current;if(E)try{E.classList.remove("is-visible"),E.style.transition="none",t==="top"?E.style.transform="translateX(-50%) translateY(-16px)":E.style.transform="translateX(-50%) translateY(16px)",E.style.opacity="0",E.offsetWidth,E.style.transition="",E.classList.add("is-visible"),A.current&&clearTimeout(A.current),A.current=setTimeout(()=>{A.current=null;try{E.style.opacity="",E.style.transform="",E.style.transition=""}catch{}},60)}catch{}};u.current?(S(),i(!0)):(c(!0),w.current=requestAnimationFrame(()=>{_.current=requestAnimationFrame(()=>{S(),i(!0)})})),C>0&&(x.current=!1,y.current(C))}else i(!1),b.current=setTimeout(()=>c(!1),P0);return p.current=e,()=>{v.current&&clearTimeout(v.current),b.current&&clearTimeout(b.current),w.current&&cancelAnimationFrame(w.current),_.current&&cancelAnimationFrame(_.current),A.current&&clearTimeout(A.current),v.current=null,b.current=null,w.current=null,_.current=null,A.current=null}},[e,C,t]),{mounted:l,showing:n,popupRef:h,pause:B,resume:k}}var $9=".ihabdevteam-core-scope .toast{left:50%;pointer-events:none;position:fixed;transform:translateX(-50%);will-change:transform,opacity;z-index:var(--z-toast)}.ihabdevteam-core-scope .toast__inner{align-items:center;background:var(--color-main);border-radius:var(--radius-m);box-shadow:var(--shadow-popup);box-sizing:border-box;color:#fff;display:flex;justify-content:center;margin:0;max-width:min(520px,calc(100vw - 32px));min-height:60px;min-width:min(360px,calc(100vw - 32px));overflow:hidden;padding:var(--spacing-content);pointer-events:auto;text-align:center;white-space:pre-line}.ihabdevteam-core-scope .toast__text{-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;display:-webkit-box;overflow:hidden;overflow-wrap:anywhere;white-space:pre-line}.ihabdevteam-core-scope .toast__inner--normal{background:linear-gradient(var(--color-white),var(--color-white)) padding-box,linear-gradient(135deg,var(--color-main),var(--color-sub)) border-box;border:2px solid transparent;color:var(--color-black)}.ihabdevteam-core-scope .toast__inner--notice{background:linear-gradient(135deg,var(--color-main),var(--color-sub));color:#fff}.ihabdevteam-core-scope .toast__inner--warning{background:var(--color-error);color:#fff}.ihabdevteam-core-scope .toast--top{opacity:0;top:18px;transform:translateX(-50%) translateY(-100%);transition:transform .26s cubic-bezier(.22,.9,.3,1),opacity .18s ease-out}.ihabdevteam-core-scope .toast:not(.is-visible) .toast__inner{pointer-events:none}.ihabdevteam-core-scope .toast--top.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}.ihabdevteam-core-scope .toast--bottom{bottom:18px;opacity:0;transform:translateX(-50%) translateY(100%);transition:transform .26s cubic-bezier(.22,.9,.3,1),opacity .18s ease-out}.ihabdevteam-core-scope .toast--bottom.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}";ce($9);function Wo({message:e="",position:t="top",type:a="normal",onClose:o=()=>{},duration:n=2e3}){const{mounted:i,showing:l,popupRef:c,pause:u,resume:d}=vd({message:e,position:t,duration:n,onClose:o}),h=s.useRef(null),[p,m]=s.useState(!1);if(s.useEffect(()=>{l?m(!0):i||m(!1)},[l,i]),!i)return null;const C=a==="notice"||a==="warning"?a:"normal",v=r.jsx("div",{ref:c,className:`toast toast--${t} ${l?"is-visible":""}`,role:"status","aria-live":"polite",onPointerEnter:f=>{h.current=f.pointerType},onMouseEnter:()=>{h.current!=="touch"&&u()},onMouseLeave:d,onFocusCapture:u,onBlurCapture:d,children:r.jsx("div",{className:`toast__inner toast__inner--${C} body-2`,"aria-hidden":p||l?void 0:!0,children:r.jsx("span",{className:"toast__text",children:e})})});return typeof document<"u"?ua.createPortal(v,document.body):v}var R9='.ihabdevteam-core-scope .progress-bar{flex-shrink:0}.ihabdevteam-core-scope .progress-bar__track{background:var(--progress-bar-track,var(--color-darkWhite));border-radius:999px;height:8px;height:var(--progress-bar-height,8px);overflow:hidden;width:100%}.ihabdevteam-core-scope .progress-bar__fill{background:var(--progress-bar-fill,var(--color-main));border-radius:inherit;height:100%;transition:width .3s ease;transition:width var(--progress-bar-duration,.3s) ease}.ihabdevteam-core-scope .progress-bar__label{font-feature-settings:"tnum";color:var(--progress-bar-label-color,var(--color-gray));font-variant-numeric:tabular-nums}.ihabdevteam-core-scope .progress-bar--4{--progress-bar-height:4px}.ihabdevteam-core-scope .progress-bar--8{--progress-bar-height:8px}.ihabdevteam-core-scope .progress-bar--16{--progress-bar-height:16px}.ihabdevteam-core-scope .progress-bar--24{--progress-bar-height:24px}.ihabdevteam-core-scope .progress-bar--32{--progress-bar-height:32px}.ihabdevteam-core-scope .progress-bar--label-left,.ihabdevteam-core-scope .progress-bar--label-right{align-items:center;display:flex;gap:10px}.ihabdevteam-core-scope .progress-bar--label-left>.progress-bar__track,.ihabdevteam-core-scope .progress-bar--label-right>.progress-bar__track{flex:1;min-width:0}.ihabdevteam-core-scope .progress-bar--label-left .progress-bar__label{order:-1}.ihabdevteam-core-scope .progress-bar--label-bottom,.ihabdevteam-core-scope .progress-bar--label-top{display:flex;flex-direction:column;gap:6px}.ihabdevteam-core-scope .progress-bar--label-top .progress-bar__label{order:-1}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-left,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-left{align-items:flex-start}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-center,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-center{align-items:center}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-right,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-right{align-items:flex-end}.ihabdevteam-core-scope .progress-bar--label-bottom>.progress-bar__track,.ihabdevteam-core-scope .progress-bar--label-top>.progress-bar__track{align-self:stretch}.ihabdevteam-core-scope .progress-bar--label-inside{position:relative}.ihabdevteam-core-scope .progress-bar--label-inside .progress-bar__label{pointer-events:none;position:absolute;top:50%}.ihabdevteam-core-scope .progress-bar--label-on-fill .progress-bar__label{color:var(--progress-bar-label-color-on-fill,var(--color-deepWhite))}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-left .progress-bar__label{left:10px;transform:translateY(-50%)}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-center .progress-bar__label{left:50%;transform:translate(-50%,-50%)}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-right .progress-bar__label{right:10px;transform:translateY(-50%)}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .progress-bar__fill{transition:none}}';ce(R9);const P9=24;function z0({value:e,max:t=100,size:a=8,color:o,trackColor:n,label:i,formatValue:l,labelPos:c,labelAlign:u="right",ariaLabel:d,className:h}){const p=Number.isFinite(t)&&t>0?t:1,m=Math.max(0,Math.min(Number.isFinite(e)?e:0,p)),C=m/p*100,v=Number.isFinite(t)&&t>0?t:0,f=c??(a>=P9?"inside":"bottom"),g=f==="center"?"inside":f,x=g==="inside"&&(u==="left"?C>=15:u==="center"?C>=50:C>=85),b={};return o&&(b["--progress-bar-fill"]=o),n&&(b["--progress-bar-track"]=n),r.jsxs("div",{className:Ne("progress-bar",`progress-bar--${a}`,`progress-bar--label-${g}`,i&&`progress-bar--align-${u}`,i&&x&&"progress-bar--label-on-fill",h),style:b,children:[r.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":m,"aria-valuemin":0,"aria-valuemax":v,"aria-valuetext":i?l?l(m):i==="percent"?void 0:i==="raw"?String(m):`${m} / ${v}`:void 0,"aria-label":d,children:r.jsx("div",{className:"progress-bar__fill",style:{width:`${C}%`}})}),i&&r.jsx("span",{className:"progress-bar__label caption-1b",children:l?l(m):i==="percent"?`${Math.round(C)}%`:i==="raw"?String(m):`${m} / ${v}`})]})}var z9=".ihabdevteam-core-scope .progress-indicator{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .progress-indicator-dot{align-items:center;background:var(--pi-inactive-bg,var(--color-whiteLine));border-radius:var(--radius-card);color:var(--pi-inactive-color,var(--color-gray));display:inline-flex;height:28px;justify-content:center;width:52px}.ihabdevteam-core-scope .progress-indicator-dot.done{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .progress-indicator-dot.active{background:var(--color-sub);color:#fff}@media (max-width:1024px){.ihabdevteam-core-scope .progress-indicator{gap:6px}.ihabdevteam-core-scope .progress-indicator-dot{height:28px;width:44px}}@media (max-width:767px){.ihabdevteam-core-scope .progress-indicator--mobile .progress-indicator-dot{height:28px;padding:0 12px;width:auto}}.ihabdevteam-core-scope .progress-indicator--dot{flex-wrap:wrap;gap:var(--spacing-xs);max-width:100%;min-width:0}.ihabdevteam-core-scope .progress-indicator-dot--dot{background:var(--pi-inactive-bg,var(--color-darkWhite));border-radius:var(--radius-full);height:8px;transition:width .2s ease-out,background .2s ease-out;width:8px}.ihabdevteam-core-scope .progress-indicator-dot--dot.done{background:color-mix(in srgb,var(--color-main) 40%,transparent)}.ihabdevteam-core-scope .progress-indicator-dot--dot.active{background:var(--color-main);width:24px}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .progress-indicator-dot--dot{transition:none}}";ce(z9);const I0={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},I9="rgba(255, 255, 255, 0.16)";function Cd({max:e,index:t,inactiveBg:a,inactiveColor:o,transparent:n,variant:i="numbered",announce:l=!1,ariaLabel:c}){const{t:u}=_e.useTranslation(),d=sa("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const h=Number.isInteger(t)?Math.max(0,Math.min(t,e-1)):0,p=c??u("progress.steps",{current:h+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),m={};if(a&&(m["--pi-inactive-bg"]=a),o&&(m["--pi-inactive-color"]=o),n&&(a||(m["--pi-inactive-bg"]=I9),o||(m["--pi-inactive-color"]="var(--color-white)")),i==="dot")return r.jsxs("div",{className:"progress-indicator progress-indicator--dot",style:m,role:l?"status":"img","aria-label":l?void 0:p,children:[l&&r.jsx("span",{style:I0,children:p}),Array.from({length:e}).map((v,f)=>r.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${f<h?" done":f===h?" active":""}`},f))]});const C=l?r.jsx("span",{role:"status",style:I0,children:p}):null;return d?r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:m,role:"list","aria-label":p,children:r.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[h+1," / ",e]})}),C]}):r.jsxs(r.Fragment,{children:[C,r.jsx("div",{className:"progress-indicator",style:m,role:"list","aria-label":p,children:Array.from({length:e}).map((v,f)=>r.jsx("span",{role:"listitem","aria-current":f===h?"step":void 0,className:`progress-indicator-dot ${f<h?" done":f===h?" active":""} body-3`,children:f+1},f))})]})}function O9(e){if(!e)return[];const t=[];let a=0,o="";for(const n of e.trim()){if(n==="("?a++:n===")"&&a--,/\s/.test(n)&&a===0){o&&(t.push(o),o="");continue}o+=n}return o&&t.push(o),t}var F9=".ihabdevteam-core-scope .table-wrap{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);overflow-x:auto}.ihabdevteam-core-scope .table{width:100%}.ihabdevteam-core-scope .table-header{align-items:center;border-bottom:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;gap:8px;padding:0 16px;text-align:left;width:100%}.ihabdevteam-core-scope .table-header--clickable{cursor:pointer;transition:background .15s}.ihabdevteam-core-scope .table-header--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-header__chevron{align-items:center;color:var(--color-gray);display:flex;flex-shrink:0}.ihabdevteam-core-scope .table-header__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .table-header__title{color:var(--color-darkGray)}.ihabdevteam-core-scope .table-header__count{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .table-header__actions{align-items:center;display:flex;flex-shrink:0;gap:4px;margin-left:auto}.ihabdevteam-core-scope .table-wrap--collapsed .table-header{border-bottom:none}.ihabdevteam-core-scope .table-wrap--dragover{outline:2px dashed var(--color-main);outline-offset:-2px}.ihabdevteam-core-scope .table-wrap--dragover .table-header{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-fields-strip{position:relative}.ihabdevteam-core-scope .table-wrap--resizable .table-fields,.ihabdevteam-core-scope .table-wrap--resizable .table-row{padding-right:40px}.ihabdevteam-core-scope .table-fields__reset{position:absolute;right:2px;top:50%;transform:translateY(-50%)}.ihabdevteam-core-scope .table-fields{border-bottom:1px solid var(--color-whiteLine);display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-template-columns:var(--table-grid-cols-override,var(--table-grid-cols,repeat(auto-fit,minmax(80px,1fr))))}.ihabdevteam-core-scope .table-body{display:flex;flex-direction:column}.ihabdevteam-core-scope .table-row-wrap{border-bottom:1px solid var(--color-darkWhite);display:flex;flex-direction:column}.ihabdevteam-core-scope .table-row-wrap:last-child{border-bottom:none}.ihabdevteam-core-scope .table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-template-columns:var(--table-grid-cols-override,var(--table-grid-cols,repeat(auto-fit,minmax(80px,1fr))))}.ihabdevteam-core-scope .table-row-expand{background:var(--color-darkWhite);border-top:1px solid var(--color-whiteLine);display:flex;flex-wrap:wrap;gap:12px;padding:16px 20px}.ihabdevteam-core-scope .table-row-expand__cell,.ihabdevteam-core-scope .table-row__full-cell{display:contents}.ihabdevteam-core-scope .table-row-hint{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .table-wrap--small .table-fields,.ihabdevteam-core-scope .table-wrap--small .table-header,.ihabdevteam-core-scope .table-wrap--small .table-row{min-height:48px}.ihabdevteam-core-scope .table-wrap--medium .table-fields,.ihabdevteam-core-scope .table-wrap--medium .table-header,.ihabdevteam-core-scope .table-wrap--medium .table-row{min-height:56px}.ihabdevteam-core-scope .table-wrap--large .table-fields,.ihabdevteam-core-scope .table-wrap--large .table-header,.ihabdevteam-core-scope .table-wrap--large .table-row{min-height:64px}.ihabdevteam-core-scope .table-fields.table-fields--groups{min-height:34px}.ihabdevteam-core-scope .table-row--clickable{cursor:pointer;transition:background .1s,box-shadow .1s}.ihabdevteam-core-scope .table-row--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-row--draggable{cursor:grab}.ihabdevteam-core-scope .table-row--draggable:active{cursor:grabbing}.ihabdevteam-core-scope .table-row--dragging{opacity:.4}.ihabdevteam-core-scope .table-row--empty,.ihabdevteam-core-scope .table-row--loading{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .table-row--empty{color:var(--color-lightGray);padding:0 20px}.ihabdevteam-core-scope .table-wrap--small .table-row--empty,.ihabdevteam-core-scope .table-wrap--small .table-row--loading{min-height:48px}.ihabdevteam-core-scope .table-wrap--medium .table-row--empty,.ihabdevteam-core-scope .table-wrap--medium .table-row--loading{min-height:56px}.ihabdevteam-core-scope .table-wrap--large .table-row--empty,.ihabdevteam-core-scope .table-wrap--large .table-row--loading{min-height:64px}";ce(F9);var H9=".ihabdevteam-core-scope .table-cell{align-items:center;color:var(--color-darkGray);display:flex;min-width:0;overflow:hidden;overflow-wrap:break-word;padding:0 16px;word-break:break-word}.ihabdevteam-core-scope .table-cell__row-button{align-items:center;align-self:stretch;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:inherit;cursor:pointer;display:flex;font:inherit;margin:0;min-width:0;overflow:hidden;overflow-wrap:inherit;padding:0;text-align:inherit;width:100%;word-break:inherit}";ce(H9);var V9='.ihabdevteam-core-scope .table-field{color:var(--color-gray);padding:0 16px}.ihabdevteam-core-scope .table-field,.ihabdevteam-core-scope .table-field__button{align-items:center;display:flex;gap:0;min-width:0;overflow:hidden;text-align:left;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ihabdevteam-core-scope .table-field__button{align-self:stretch;background:none;border:0;color:inherit;cursor:pointer;flex:1 1 auto;font:inherit;margin:0;padding:0}.ihabdevteam-core-scope .table-field--resizable{position:relative}.ihabdevteam-core-scope .table-field__resizer{align-items:center;cursor:col-resize;display:flex;height:100%;justify-content:flex-end;position:absolute;right:0;top:0;touch-action:none;width:10px;z-index:3}.ihabdevteam-core-scope .table-field__resizer:after{background:var(--color-whiteLine);content:"";height:55%;transition:background-color .12s,width .12s,height .12s;width:1px}.ihabdevteam-core-scope .table-field__resizer:active:after,.ihabdevteam-core-scope .table-field__resizer:hover:after{background:var(--color-main);height:100%;width:2px}.ihabdevteam-core-scope .table-field--sorted,.ihabdevteam-core-scope .table-field:hover{color:var(--color-main)}.ihabdevteam-core-scope .table-field__sort-arrow{flex-shrink:0}';ce(V9);function W9({children:e,className:t,style:a,rowLabel:o,onRowClick:n}){return r.jsx("div",{role:"cell",className:t?`table-cell ${t}`:"table-cell",style:a,children:o&&n?r.jsx("button",{type:"button",className:"table-cell__row-button","aria-label":o,children:e}):e})}function xd({variant:e="default",children:t,className:a,draggable:o,onClick:n,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:u,expandedContent:d,colSpan:h,describedBy:p,rowHasButton:m}){const C=s.useCallback(v=>{n&&v.target===v.currentTarget&&(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),n())},[n]);return e==="loading"?r.jsx("div",{role:"presentation",className:"table-row-wrap",children:r.jsx("div",{role:"row",className:"table-row table-row--loading",children:r.jsx("div",{role:"cell","aria-colspan":h,className:"table-row__full-cell",children:r.jsx(yr,{size:28})})})}):e==="empty"?r.jsx("div",{role:"presentation",className:"table-row-wrap",children:r.jsx("div",{role:"row",className:"table-row table-row--empty body-3",children:r.jsx("div",{role:"cell","aria-colspan":h,className:"table-row__full-cell",children:t})})}):r.jsxs("div",{role:"presentation",className:"table-row-wrap",children:[r.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:o,onClick:n,onKeyDown:n?C:void 0,onMouseEnter:i,onMouseLeave:l,onDragStart:c,onDragEnd:u,role:"row",tabIndex:n&&!m?0:void 0,"aria-describedby":n&&!m?p:void 0,children:t}),d&&r.jsx("div",{role:"row",className:"table-row-expand",children:r.jsx("div",{role:"cell","aria-colspan":h,className:"table-row-expand__cell",children:d})})]})}function G9({dir:e}){return r.jsx(e==="asc"?zp:Pp,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function U9({children:e,onClick:t,className:a,sortDir:o,ariaSort:n,onResizeStart:i}){const l=r.jsxs(r.Fragment,{children:[e,o&&r.jsx(G9,{dir:o})]});return r.jsxs("div",{onClick:t,role:"columnheader","aria-sort":n,className:Ne("table-field body-3",a,o?"table-field--sorted":"",i?"table-field--resizable":""),children:[t?r.jsx("button",{type:"button",className:"table-field__button",children:l}):l,i&&r.jsx("span",{className:"table-field__resizer",onPointerDown:i,onClick:c=>c.stopPropagation(),"aria-hidden":"true"})]})}function Vi({fields:e=[],headerGroups:t,items:a=[],renderRow:o,onRowClick:n,isRowClickable:i,onRowMouseEnter:l,onRowMouseLeave:c,onRowDragStart:u,onRowDragEnd:d,draggingId:h,gridTemplateColumns:p,mobileGridTemplateColumns:m,resizable:C=!1,resizeMode:v="grow",resizeStorageKey:f,size:g="small",title:x,icon:b,count:w,collapsed:_=!1,onToggleCollapse:A,headerActions:y,empty:B,loading:k,dragOver:S=!1,onDragOver:E,onDragLeave:D,onDrop:I,renderExpandedRow:j,expandedId:W}){const{t:L}=_e.useTranslation(),M=s.useId(),z=`table-title-${M}`,q=`table-row-hint-${M}`,Y=sa("(max-width: 767px)"),P=m&&Y?m:null,V=C&&!Y,$=48,U=s.useRef(()=>$),T=f?`table-cols:${f}`:null,F=s.useRef(null),N=s.useRef(null),O=s.useRef(null),H=s.useRef(null),[Z,te]=s.useState(!1),se=s.useCallback(()=>{const ee=O.current;ee&&te(ee.scrollWidth>ee.clientWidth+1)},[]),be=s.useCallback((ee,pe)=>{const Ee=ee.current;Ee&&N.current&&N.current.unobserve(Ee),ee.current=pe,pe?(!N.current&&typeof ResizeObserver<"u"&&(N.current=new ResizeObserver(()=>se())),N.current?.observe(pe)):!O.current&&!H.current&&(N.current?.disconnect(),N.current=null),se()},[se]),X=s.useCallback(ee=>be(O,ee),[be]),re=s.useCallback(ee=>be(H,ee),[be]);s.useEffect(()=>{se()}),s.useEffect(()=>{if(typeof window>"u")return;const ee=typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>se()):null;return window.addEventListener("resize",se),()=>{ee!=null&&cancelAnimationFrame(ee),window.removeEventListener("resize",se)}},[se]);const Ae=s.useRef(()=>!1),K=s.useRef([]),ie=s.useRef(null),ue=ee=>{if(!ee||typeof window>"u")return null;try{const pe=JSON.parse(window.localStorage.getItem(ee)??"null");return Array.isArray(pe)&&pe.length>0&&pe.every(Ee=>typeof Ee=="number"&&Number.isFinite(Ee)&&Ee>0)?pe:null}catch{return null}},[je,ye]=s.useState(()=>ue(T)),[le,he]=s.useState(T);le!==T&&(he(T),ye(ue(T)));const ve=s.useRef(je);s.useEffect(()=>{ve.current=je},[je]);const G=s.useCallback(ee=>{const pe=ie.current;if(!pe)return;const Ee=ve.current;if(Ee){const Re=[...Ee];if(pe.next!=null&&pe.startWNext!=null){const Ve=ee.clientX-pe.startX,We=Math.max(U.current(pe.index)-pe.startW,Math.min(pe.startWNext-U.current(pe.next),Ve));Re[pe.index]=pe.startW+We,Re[pe.next]=pe.startWNext-We}else Re[pe.index]=Math.max(U.current(pe.index),pe.startW+(ee.clientX-pe.startX));ve.current=Re,ye(Re)}},[]),oe=s.useCallback(()=>{if(ie.current=null,window.removeEventListener("pointermove",G),window.removeEventListener("pointerup",oe),window.removeEventListener("pointercancel",oe),document.body.style.cursor="",document.body.style.userSelect="",T&&ve.current)try{window.localStorage.setItem(T,JSON.stringify(ve.current))}catch{}},[G,T]),me=s.useCallback((ee,pe)=>{pe.preventDefault(),pe.stopPropagation();const Ee=F.current;if(!Ee)return;const Re=Array.from(Ee.children).map(We=>We.getBoundingClientRect().width),Ve=v==="fit"?e.findIndex((We,ct)=>ct>ee&&We.resizable!==!1):-1;ie.current=Ve>=0?{index:ee,startX:pe.clientX,startW:Re[ee],next:Ve,startWNext:Re[Ve]}:{index:ee,startX:pe.clientX,startW:Re[ee]},ve.current=Re,ye(Re),window.addEventListener("pointermove",G),window.addEventListener("pointerup",oe),window.addEventListener("pointercancel",oe),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[G,oe,v,e]),Te=s.useCallback(()=>{const ee=F.current,pe=ee?.closest(".table-wrap");if(!ee||!pe)return;const Ee=pe.style.getPropertyValue("--table-grid-cols");pe.style.setProperty("--table-grid-cols",e.map((et,Ie)=>Ae.current(Ie)?K.current[Ie]:"max-content").join(" "));const Re=Array.from(pe.querySelectorAll(".table-row")).filter(et=>!et.classList.contains("table-row--loading")&&!et.classList.contains("table-row--empty")),Ve=e.map((et,Ie)=>{let Oe=ee.children[Ie]?.getBoundingClientRect().width??0;for(const it of Re){const wt=it.children[Ie];wt&&(Oe=Math.max(Oe,wt.getBoundingClientRect().width))}const bt=Ae.current(Ie)?parseFloat(K.current[Ie]):NaN;return Number.isFinite(bt)?bt:Math.max(U.current(Ie),Math.ceil(Oe))}),We=window.getComputedStyle(ee),ct=ee.clientWidth-(parseFloat(We.paddingLeft)||0)-(parseFloat(We.paddingRight)||0);Ee?pe.style.setProperty("--table-grid-cols",Ee):pe.style.removeProperty("--table-grid-cols");let mt=Ve;const gt=Ve.reduce((et,Ie,Oe)=>et+(Ae.current(Oe)?Ie:0),0),Et=Ve.reduce((et,Ie,Oe)=>et+(Ae.current(Oe)?0:Ie),0),ft=ct-gt;if(ct>0&&Et>0&&ft>0){const et=ft/Et;mt=Ve.map((Oe,bt)=>Ae.current(bt)?Oe:Math.max(U.current(bt),Math.round(Oe*et)));const Ie=Math.round(ft-mt.reduce((Oe,bt,it)=>Oe+(Ae.current(it)?0:bt),0));if(Ie!==0){let Oe=-1;mt.forEach((bt,it)=>{!Ae.current(it)&&(Oe<0||bt>mt[Oe])&&(Oe=it)}),Oe>=0&&(mt[Oe]=Math.max(U.current(Oe),mt[Oe]+Ie))}}if(ye(mt),T)try{window.localStorage.setItem(T,JSON.stringify(mt))}catch{}},[e,v,T]);s.useEffect(()=>()=>{ie.current&&(window.removeEventListener("pointermove",G),window.removeEventListener("pointerup",oe),window.removeEventListener("pointercancel",oe),document.body.style.cursor="",document.body.style.userSelect="")},[G,oe]);const ke=O9(p),Pe=ke.filter(ee=>/\b(auto|min-content|max-content)\b|fit-content\(/.test(ee));Pe.length>0&&ra(`table-content-track:${p}`,`[ihabdevteam-core] Table \uC758 gridTemplateColumns \uC5D0 \uB0B4\uC6A9\uC73C\uB85C \uD06C\uAE30\uAC00 \uC815\uD574\uC9C0\uB294 \uD2B8\uB799(${Pe.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: ${p})`);const He=e.findIndex(ee=>!!ee.sortDir);e.filter(ee=>!!ee.sortDir).length>1&&ra("table-multi-sort","[ihabdevteam-core] Table \uC758 fields \uC5D0 sortDir \uC774 \uB458 \uC774\uC0C1 \uC788\uC2B5\uB2C8\uB2E4. aria-sort \uB294 \uD45C \uD558\uB098\uC5D0 \uD55C \uCE78\uB9CC \uAC00\uC9C8 \uC218 \uC788\uC5B4 \uCCAB \uCE78\uB9CC \uBC29\uD5A5\uC73C\uB85C \uC54C\uB9AC\uACE0 \uB098\uBA38\uC9C0\uB294 none \uC73C\uB85C \uB461\uB2C8\uB2E4.");const lt=ee=>ee===He?e[ee].sortDir==="asc"?"ascending":"descending":e[ee].onClick?"none":void 0,rt=ee=>/^\d+(\.\d+)?px$/.test(ke[ee]??""),at=ee=>{const pe=ke[ee]??"",Ee=/^minmax\(\s*(\d+(?:\.\d+)?)px\s*,/.exec(pe)??/^(\d+(?:\.\d+)?)px$/.exec(pe);return Ee?parseFloat(Ee[1]):$};Ae.current=rt,U.current=at,K.current=ke;const ht=ee=>v==="fit"&&!rt(ee)?"fr":"px",De=je&&je.length===e.length&&!Y&&(v==="fit"||a.length>0),Ue=P??(De?e.map((ee,pe)=>ee.resizable===!1&&ke[pe]?ke[pe]:`${je[pe]}${ht(pe)}`).join(" "):p),Se=Ue?{"--table-grid-cols":Ue}:void 0,Ye=x!==void 0;return r.jsxs("div",{ref:X,className:`table-wrap table-wrap--${g}${V?" table-wrap--resizable":""}${S?" table-wrap--dragover":""}${_?" table-wrap--collapsed":""}`,style:Se,onDragOver:E,onDragLeave:D,onDrop:I,tabIndex:Z?0:void 0,role:Z?"region":void 0,"aria-label":Z?typeof x=="string"?x:L("table.scrollRegion","\uAC00\uB85C\uB85C \uAD74\uB9B4 \uC218 \uC788\uB294 \uD45C"):void 0,children:[!!n&&r.jsx("span",{id:q,className:"table-row-hint",children:L("table.rowActionHint","\uC904\uC744 \uB204\uB974\uBA74 \uC790\uC138\uD788 \uBD05\uB2C8\uB2E4")}),r.jsxs("div",{ref:re,role:"table","aria-labelledby":Ye&&typeof x=="string"?z:void 0,className:"table body-2",children:[Ye&&r.jsxs("div",{className:Ne("table-header",A&&"table-header--clickable"),onClick:A,role:"caption",children:[A&&r.jsx(Ce,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:_?"chevron-right":"chevron-down",ariaLabel:_?L("common.expand","\uD3BC\uCE58\uAE30"):L("common.collapse","\uC811\uAE30"),ariaExpanded:!_,className:"table-header__chevron"}),b&&r.jsx(ot,{icon:b,label:typeof x=="string"?x:void 0,className:"table-header__icon"}),r.jsx("span",{id:z,className:"table-header__title h5b",children:x}),w!==void 0&&r.jsx("span",{className:"table-header__count body-3b",children:w}),y&&r.jsx("span",{className:"table-header__actions",onClick:ee=>ee.stopPropagation(),children:y})]}),!_&&r.jsxs(r.Fragment,{children:[t&&t.length>0&&r.jsx("div",{role:"row",className:"table-fields table-fields--groups",children:t.map((ee,pe)=>r.jsx("div",{role:"columnheader","aria-colspan":ee.span,className:Ne("table-field body-3",ee.className),style:{gridColumn:`span ${ee.span}`},children:ee.label},pe))}),r.jsxs("div",{role:"presentation",className:Ne("table-fields-strip",V&&"table-fields-strip--resizable"),children:[r.jsx("div",{role:"row",className:"table-fields",ref:F,children:e.map((ee,pe)=>r.jsx(U9,{onClick:ee.onClick,className:ee.className,sortDir:ee.sortDir,ariaSort:lt(pe),onResizeStart:V&&pe<e.length-1&&ee.resizable!==!1&&(v!=="fit"||e.some((Ee,Re)=>Re>pe&&Ee.resizable!==!1))?Ee=>me(pe,Ee):void 0,children:ee.label},pe))}),V&&r.jsx(Ce,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"chevrons-left-right-ellipsis",ariaLabel:L("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),showTooltipInfo:L("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),className:"table-fields__reset",onClick:Te})]}),r.jsx("div",{role:"rowgroup",className:"table-body",children:k?r.jsx(xd,{variant:"loading",colSpan:e.length||void 0}):a.length===0&&B?r.jsx(xd,{variant:"empty",colSpan:e.length||void 0,children:B}):a.map((ee,pe)=>{const Ee=h!=null&&ee.id===h,Re=!!n&&(i?i(ee):!0),Ve=W!=null&&ee.id!=null&&(W instanceof Set?W.has(ee.id)||[...W].some(We=>String(We)===String(ee.id)):String(ee.id)===String(W));return r.jsx(xd,{className:`${Re?" table-row--clickable":""}${u?" table-row--draggable":""}${Ee?" table-row--dragging":""}`.trim(),draggable:!!u,onClick:Re?()=>n(ee):void 0,colSpan:e.length||void 0,rowHasButton:o(ee).some(We=>!!We.rowLabel),describedBy:q,onMouseEnter:l?We=>l(ee,We):void 0,onMouseLeave:c?We=>c(ee,We):void 0,onDragStart:u?We=>u(ee,We):void 0,onDragEnd:d?We=>d(ee,We):void 0,expandedContent:Ve&&j?j(ee):void 0,children:o(ee).map((We,ct)=>r.jsx(W9,{className:We.className,style:We.style,rowLabel:Re?We.rowLabel:void 0,onRowClick:Re?()=>n(ee):void 0,children:We.content},ct))},ee.id!=null?`${typeof ee.id}:${ee.id}`:`__idx:${pe}`)})})]})]})]})}function O0(e){switch(e){case"\uBCF4\uCCAD\uAE30":return"main";case"\uC778\uACF5\uC640\uC6B0":return"sub";default:return"default"}}const kr=e=>e==null?"":String(e).trim();function _d(e,t,a,o){const n=kr(e),i=kr(t),l=kr(a);if(o&&n&&i&&l){const u=`${n.padStart(4,"0")}-${i.padStart(2,"0")}-${l.padStart(2,"0")}`,d=new Date(u);if(!Number.isNaN(d.getTime())&&d.toISOString().slice(0,10)===u){const h=ai(u,o);if(h)return h}}const c=[n,i,l];for(;c.length>0&&c[c.length-1]==="";)c.pop();return c.join(".")}function q9(e,t,a){const o=kr(e);return o?`${o}-${kr(t).padStart(2,"0")}-${kr(a).padStart(2,"0")}`:""}var Y9=".ihabdevteam-core-scope .dlp-popup .popup-panel{max-width:600px}.ihabdevteam-core-scope .dlp-row{border-bottom:1px solid var(--color-darkWhite);cursor:pointer;transition:background .1s}.ihabdevteam-core-scope .dlp-row:hover{background:#f5f5f5;background:var(--color-hoverBg,#f5f5f5)}.ihabdevteam-core-scope .dlp-row:last-child{border-bottom:none}.ihabdevteam-core-scope .dlp-date{color:var(--color-lightGray);white-space:nowrap}.ihabdevteam-core-scope .dlp-side-table{margin-top:0}.ihabdevteam-core-scope .dlp-worn-check{align-items:center;display:inline-flex}.ihabdevteam-core-scope .dlp-row-actions{align-items:center;display:flex;justify-content:flex-end}";ce(Y9);const K9={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function Z9(e,t){const a=K9[e];return a?t(`device.type.${a}`,{defaultValue:e}):e}function F0(e,t){return t!=="wornAt"?String(e[t]??""):q9(e.wornYear,e.wornMonth,e.wornDay)}function H0({rows:e,loading:t,onSelect:a,onDelete:o,onWear:n,onRelease:i,onAdd:l}){const{t:c,i18n:u}=_e.useTranslation(),d=g=>g==="left"?c("device.direction.left","\uC88C"):c("device.direction.right","\uC6B0"),{\uC815\uB82C:h,\uCE78:p}=mu(),m=s.useMemo(()=>{if(!h)return e;const{key:g,asc:x}=h;return[...e].sort((b,w)=>{if(g==="worn"){const _=Number(w.worn)-Number(b.worn);return x?_:-_}return pu(F0(b,g),F0(w,g),x)})},[e,h]),{pageRows:C,pageSizeProps:v,paginationProps:f}=hu(m,h);return r.jsxs("div",{className:"dlp-side-table",children:[r.jsx(Pi,{count:{value:e.length,unit:c("customers.device.unit","\uAC1C")},pageSize:v,pagination:f,actions:l&&r.jsx(Ce,{htmlType:"button",size:40,type:"bar",variant:"main",icon:"plus",label:c("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:l})}),r.jsx(Vi,{loading:t,resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...p(c("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},p(c("device.direction.label","\uBC29\uD5A5"),"side"),p(c("device.deviceType","\uC885\uB958"),"device"),p(c("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),p(c("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),p(c("device.productName","\uC81C\uD488\uBA85"),"productName"),p(c("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...o?[{label:"",resizable:!1}]:[]],items:C.map((g,x)=>({id:g.id??`${g.side}-${x}`,row:g})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${o?" 80px":""}`,renderRow:({row:g})=>[{content:r.jsx("span",{className:"dlp-worn-check",onClick:x=>x.stopPropagation(),children:r.jsx(sd,{checked:g.worn,disabled:g.worn?!i:!n,ariaLabel:g.worn?c("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):c("customers.device.wear","\uCC29\uC6A9"),onChange:x=>{x?n?.(g):i?.(g)}})})},{content:r.jsx("span",{children:d(g.side)})},{content:g.device?r.jsx(St,{size:"small",variant:O0(g.device),fill:"soft",label:Z9(g.device,c)}):r.jsx("span",{})},{content:r.jsx("span",{children:g.brand})},{content:r.jsx("span",{children:g.fitType||"-"})},{content:r.jsx("span",{children:g.productName||"-"})},{content:r.jsx("span",{className:"dlp-date",children:_d(g.wornYear,g.wornMonth,g.wornDay,u.language)||"-"})},...o?[{content:r.jsx("span",{className:"dlp-row-actions",children:r.jsx(Ce,{htmlType:"button",size:28,type:"bar",variant:"transparent-gray",label:c("common.delete","\uC0AD\uC81C"),onClick:x=>{x?.stopPropagation(),o(g)}})})}]:[]],onRowClick:({row:g})=>a(g),empty:c("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}var X9=`.ihabdevteam-core-scope .calendar-nav{align-items:center;display:flex;gap:var(--spacing-m);justify-content:center;margin-bottom:var(--spacing-m);position:relative}.ihabdevteam-core-scope .calendar-nav__legend{align-items:center;color:var(--color-gray);display:flex;gap:6px;position:absolute;right:0}.ihabdevteam-core-scope .calendar-nav__legend-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.ihabdevteam-core-scope .calendar-nav__legend-dot--main{background:var(--color-main)}.ihabdevteam-core-scope .calendar-nav__legend-dot--sub{background:var(--color-sub)}.ihabdevteam-core-scope .calendar-nav__legend-dot--disabled{background:var(--color-disabled)}.ihabdevteam-core-scope .calendar-nav__button{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);color:var(--color-darkGray);cursor:pointer;display:flex;font-size:18px;height:32px;line-height:1;transition:border-color .15s,color .15s;width:32px}.ihabdevteam-core-scope .calendar-nav__button:hover{border-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .calendar-nav__title{color:var(--color-darkGray);font-weight:700;min-width:100px;text-align:center}.ihabdevteam-core-scope .calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.ihabdevteam-core-scope .calendar-day-header{color:var(--color-lightGray);font-weight:600;padding:6px 0;text-align:center}.ihabdevteam-core-scope .calendar-day-header:first-child{color:var(--color-error)}.ihabdevteam-core-scope .calendar-day-header:last-child{color:var(--color-main)}.ihabdevteam-core-scope .calendar-cell{background:transparent;border-radius:var(--radius-s);box-sizing:border-box;container-type:inline-size;cursor:default;min-height:118px;min-width:0;padding:8px}.ihabdevteam-core-scope .calendar-cell.empty{background:transparent;cursor:default}
|
|
860
860
|
|
|
861
861
|
/* !important \uD544\uC694 \u2014 \uC624\uB298\uC774 \uC77C\uC694\uC77C/\uD1A0\uC694\uC77C\uACFC \uACB9\uCE58\uBA74 \uC544\uB798 nth-child \uC8FC\uB9D0 \uC0C9\uC0C1 \uADDC\uCE59\uACFC
|
|
862
862
|
\uD2B9\uC774\uB3C4\uAC00 \uB3D9\uC77C(3\uD074\uB798\uC2A4)\uD558\uACE0 \uC18C\uC2A4 \uC21C\uC11C\uC0C1 \uB4A4\uB77C !important \uC5C6\uC774\uB294 \uD770 \uAE00\uC790\uAC00 \uC8FC\uB9D0\uC0C9\uC73C\uB85C
|
|
@@ -1062,7 +1062,7 @@ ${_.badge}`:_.badge:void 0;if(y&&u(_.code))return null;if(!_.badge&&!h)return p(
|
|
|
1062
1062
|
\uC544\uC774\uCF58 + \uD3F4\uBC31)\uC5D0 \uB3D9\uC77C\uD558\uAC8C \uC801\uC6A9\uD558\uB824\uBA74 !important\uAC00 \uBD88\uAC00\uD53C\uD568. */.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg,.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg *{stroke:currentColor!important;stroke-width:2px!important;stroke-width:var(--icon-grid-menu-button-stroke-width,2px)!important;vector-effect:non-scaling-stroke}.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg{height:24px;width:24px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg{display:block;height:28px;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{background-color:currentColor;display:inline-block;height:28px;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-image{display:block;height:28px;-o-object-fit:contain;object-fit:contain;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{align-items:center;display:inline-flex;flex-direction:column;gap:6px}.ihabdevteam-core-scope .icon-grid-menu__button-label{color:var(--color-darkGray);overflow-wrap:break-word;word-break:keep-all}.ihabdevteam-core-scope .icon-grid-menu__button.icon-grid-menu__button--selected{animation:sub-to-main .36s cubic-bezier(.4,0,.2,1) forwards;background-color:var(--color-main);border-color:transparent;box-shadow:var(--shadow-button);color:#fff}.ihabdevteam-core-scope .icon-grid-menu__button.icon-grid-menu__button--selected .icon-grid-menu__button-icon{color:#fff}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-wrapper{gap:4px;margin:4px 8px;width:56px}.ihabdevteam-core-scope .icon-grid-menu--medium .icon-grid-menu__button-wrapper{margin-left:6px;margin-right:6px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button{border-radius:20px;height:48px;width:48px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon{font-size:20px;height:24px;width:24px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-image,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-mask,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-svg,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-svg svg{height:20px;width:20px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-label{font-size:12px;line-height:1.3}@media (min-width:1024px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:8px 12px;width:80px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:28px;height:68px;width:68px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:28px;width:28px}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:8px 10px;width:64px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:24px;height:58px;width:58px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:24px;width:24px}}@media (max-width:767px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:var(--spacing-xs);width:50px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:20px;height:48px;width:48px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:20px;width:20px}}`;ce(MB);function $B(e){const{category:t={},isSelected:a=!1,onClick:o}=e||{},n=t?.key?` icon-grid-menu__button--${t.key}`:"",i=s.useId();return r.jsxs("div",{className:`icon-grid-menu__button-wrapper${n}`,children:[r.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":t?.key,type:"button",onClick:a?void 0:o,"aria-pressed":a,"aria-labelledby":i,children:r.jsx(ot,{icon:t.icon,label:t.label,className:"icon-grid-menu__button-icon",imgClassName:"icon-grid-menu__button-icon-image",maskClassName:"icon-grid-menu__button-icon-mask",svgClassName:"icon-grid-menu__button-icon-svg"})}),r.jsx("span",{id:i,className:"icon-grid-menu__button-label button-1",children:t.label})]})}function Gf(e){const{categories:t=[],selected:a,onSelect:o,size:n="medium"}=e||{},i=a!==void 0,[l,c]=s.useState(()=>i?null:(t&&t[0]?.key)??null),u=i?a:l,d=s.useRef(o);s.useEffect(()=>{d.current=o});const h=s.useRef(!1),p=(t&&t[0]?.key)??null;s.useEffect(()=>{if(i||h.current||!p)return;h.current=!0;const C=l??p;l==null&&c(C),d.current?.(C)},[i,p]);const m=s.useCallback(C=>{const v=u===C?null:C;h.current=!0,i||c(v),o?.(v)},[u,i,o]);return r.jsx("div",{className:`icon-grid-menu icon-grid-menu--${n}`,children:(t||[]).map(C=>r.jsx($B,{category:C,isSelected:u===C.key,onClick:()=>m(C.key)},C.key))})}var RB=".ihabdevteam-core-scope .choice-chips{display:block;width:100%}.ihabdevteam-core-scope .choice-chips--medium{margin-bottom:60px}.ihabdevteam-core-scope .choice-chips--small{margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .choice-chips__list{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s);justify-content:center;padding-bottom:6px}.ihabdevteam-core-scope .choice-chips__list::-webkit-scrollbar{height:8px}.ihabdevteam-core-scope .choice-chips__list::-webkit-scrollbar-thumb{background:rgba(0,0,0,.08);border-radius:var(--radius-sm)}.ihabdevteam-core-scope .choice-chips__button{background:var(--color-deepWhite)!important;border:1px solid var(--color-whiteLine)!important;border-radius:var(--radius-s)!important;color:var(--color-darkGray)!important;height:40px!important;padding:0 24px!important;transition:all .12s!important;white-space:nowrap}.ihabdevteam-core-scope .choice-chips__button:hover{border-color:var(--color-main)!important}.ihabdevteam-core-scope .choice-chips--small .choice-chips__button{height:32px!important;padding:0 16px!important}.ihabdevteam-core-scope .choice-chips--small .choice-chips__list{gap:var(--spacing-xs)}.ihabdevteam-core-scope .choice-chips__button.is-selected{animation:chip-sub-to-main .36s cubic-bezier(.4,0,.2,1) forwards;background:var(--color-main)!important;border:1px solid var(--color-main)!important;box-shadow:var(--shadow-dropdown);color:#fff!important}@keyframes chip-sub-to-main{0%{background-color:var(--color-sub)}to{background-color:var(--color-main)}}";ce(RB);function Uf({subs:e=[],selected:t,onSelect:a,size:o="medium"}){const n=o==="small"?32:40;return r.jsx("div",{className:`choice-chips choice-chips--${o}`,children:r.jsx("div",{className:"choice-chips__list",children:e.map(i=>r.jsx(Ce,{htmlType:"button",size:n,type:"bar",label:i.label,selected:t===i.key,className:"choice-chips__button",onClick:()=>a?.(i.key)},i.key))})})}var PB=".ihabdevteam-core-scope .site-footer{background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;color:var(--color-gray);padding:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__top{align-items:flex-start;display:flex;gap:40px;justify-content:space-between}.ihabdevteam-core-scope .site-footer__brand{flex:0 0 220px;width:220px}.ihabdevteam-core-scope .site-footer__lead{color:var(--color-gray);text-align:left}.ihabdevteam-core-scope .site-footer__links{align-items:flex-start;display:flex;flex:1 1 auto;flex-wrap:wrap;gap:100px 10px;min-width:320px}.ihabdevteam-core-scope .site-footer__column{flex:0 0 160px;min-width:160px;text-align:left}.ihabdevteam-core-scope .site-footer__column-title{color:var(--color-lightGray)}.ihabdevteam-core-scope .footer-title{color:var(--color-lightGray);display:inline-block;font-size:13px;font-weight:600;line-height:20px;width:80px}.ihabdevteam-core-scope .site-footer__column ul{list-style:none;margin:10px 0 0;padding:0}.ihabdevteam-core-scope .site-footer__column li{margin-bottom:6px}.ihabdevteam-core-scope .footer-link,.ihabdevteam-core-scope .site-footer__column a{color:var(--color-lightGray);text-decoration:none}.ihabdevteam-core-scope .footer-link{align-items:center;display:inline-flex;font-size:13px;line-height:20px;min-height:24px;min-width:24px;transition:color .12s ease}.ihabdevteam-core-scope .footer-copyright,.ihabdevteam-core-scope .footer-meta{line-height:18px}.ihabdevteam-core-scope .footer-link:focus,.ihabdevteam-core-scope .footer-link:hover{color:var(--color-main);text-decoration:none}.ihabdevteam-core-scope .site-footer__rule{border:none;border-top:1px solid var(--color-darkWhite);margin:40px 0}.ihabdevteam-core-scope .site-footer__bottom{align-items:center;display:flex;gap:40px;justify-content:flex-start}.ihabdevteam-core-scope .site-footer__logo{height:52px}.ihabdevteam-core-scope .site-footer__bottom .site-footer__brand{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .site-footer__meta{color:var(--color-lightGray);text-align:left}.ihabdevteam-core-scope .site-footer__copyright{align-items:center;box-sizing:border-box;color:var(--color-lightGray);display:flex;justify-content:center;margin:var(--spacing-page) 0 0 0;text-align:center;width:100%}@media (max-width:1024px){.ihabdevteam-core-scope .site-footer__top{flex-direction:column;gap:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__brand{flex:0 0 auto;width:100%}.ihabdevteam-core-scope .site-footer__links{gap:20px 10px;margin:0;min-width:0;width:100%}.ihabdevteam-core-scope .site-footer__bottom{align-items:flex-start;flex-direction:column;gap:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__meta{width:100%}.ihabdevteam-core-scope .site-footer__logo{height:50px}}@media (max-width:767px){.ihabdevteam-core-scope .site-footer__logo{height:48px}}";ce(PB);function qf({onTermsClick:e,onPrivacyClick:t,contact:a}={}){const o=a?.email??"support@ihab.co.kr",n=a?.tel??"031-380-3724",{t:i}=_e.useTranslation();return r.jsx("footer",{className:"site-footer",children:r.jsxs("div",{className:"safearea",children:[r.jsxs("div",{className:"site-footer__top",children:[r.jsx("div",{className:"site-footer__brand",children:r.jsx("div",{className:"site-footer__lead h3",children:i("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
1063
1063
|
\uC2E0\uB8B0\uB97C \uC313\uACE0
|
|
1064
1064
|
\uD68C\uBCF5\uC744 \uB3D5\uC2B5\uB2C8\uB2E4.`).split(`
|
|
1065
|
-
`).map((l,c,u)=>r.jsxs(s.Fragment,{children:[l,c<u.length-1&&r.jsx("br",{})]},c))})}),r.jsxs("div",{className:"site-footer__links",children:[r.jsxs("div",{className:"site-footer__column",children:[r.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.site.title","\uC0AC\uC774\uD2B8")}),r.jsxs("ul",{children:[r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.malgwi","\uB9D0\uADC0")})}),r.jsx("li",{children:r.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")})}),r.jsx("li",{children:r.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")})}),r.jsx("li",{children:r.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")})})]})]}),r.jsxs("div",{className:"site-footer__column",children:[r.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.sns.title","SNS")}),r.jsxs("ul",{children:[r.jsx("li",{children:r.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")})}),r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),r.jsx("li",{children:r.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"})})]})]}),r.jsxs("div",{className:"site-footer__column",children:[r.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.policy.title","\uC815\uCC45")}),r.jsxs("ul",{children:[r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"#",onClick:l=>{e&&(l.preventDefault(),e())},children:i("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"#",onClick:l=>{t&&(l.preventDefault(),t())},children:i("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),r.jsx("hr",{className:"site-footer__rule"}),r.jsxs("div",{className:"site-footer__bottom",children:[r.jsx("div",{className:"site-footer__brand",children:r.jsx("img",{src:Ku,alt:"IHAB",className:"site-footer__logo"})}),r.jsxs("div",{className:"site-footer__meta",children:[r.jsxs("div",{children:[r.jsx("span",{className:"footer-title",children:i("footer.ceo","\uB300\uD45C")})," ",r.jsx("span",{className:"footer-meta caption-1",children:i("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),r.jsxs("div",{children:[r.jsx("span",{className:"footer-title",children:i("footer.address","\uC8FC\uC18C")})," ",r.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")})]}),r.jsxs("div",{children:[r.jsx("span",{className:"footer-title",children:i("footer.support","\uACE0\uAC1D\uC13C\uD130")})," ",r.jsxs("span",{className:"footer-meta caption-1",children:[o," \xA0 ",n]})]})]})]}),r.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}var zB='.ihabdevteam-core-scope .landing-header{background:var(--landing-header-bg,var(--color-deepWhite));border-bottom:1px solid rgba(15,18,60,.05);border-bottom:1px solid var(--landing-header-border,rgba(15,18,60,.05));position:sticky;top:0;transform:translateZ(0);will-change:transform;z-index:500;z-index:var(--z-sticky,500)}.ihabdevteam-core-scope .landing-header__inner{align-items:center;display:flex;height:72px;height:var(--landing-header-height,72px);justify-content:space-between;position:relative}.ihabdevteam-core-scope .landing-header__brand{align-items:center;display:flex;flex:0 0 auto;margin-right:auto;text-decoration:none}.ihabdevteam-core-scope .landing-header__logo{display:block;height:40px;height:var(--landing-header-logo-height,40px);max-width:none;transform-origin:left center;transition:transform .3s cubic-bezier(.2,.9,.2,1.2),filter .3s;width:auto}.ihabdevteam-core-scope .landing-header__brand:hover .landing-header__logo{filter:brightness(1.08);transform:scale(1.05)}.ihabdevteam-core-scope .landing-header__links{align-items:center;color:var(--landing-header-link-color,var(--color-deepGray));display:flex;font-size:15px;font-weight:500;gap:36px;left:50%;position:absolute;transform:translateX(-50%)}.ihabdevteam-core-scope .landing-header__links a{color:inherit;padding:6px 0;position:relative;text-decoration:none;transition:color .2s}.ihabdevteam-core-scope .landing-header__links a:hover{color:var(--landing-header-link-hover,var(--color-main))}.ihabdevteam-core-scope .landing-header__links a:after{background:linear-gradient(90deg,var(--color-main),var(--color-sub));border-radius:1px;bottom:0;content:"";height:2px;left:0;position:absolute;right:100%;transition:right .35s cubic-bezier(.2,.7,.2,1)}.ihabdevteam-core-scope .landing-header__links a:hover:after{right:0}.ihabdevteam-core-scope .landing-header__actions{align-items:center;display:flex;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .landing-header__toggle{align-items:center;background:none;border:0;color:var(--landing-header-link-color,var(--color-deepGray));cursor:pointer;display:none;height:44px;justify-content:center;margin-right:-10px;width:44px}.ihabdevteam-core-scope .landing-header__burger{display:block;height:14px;position:relative;width:22px}.ihabdevteam-core-scope .landing-header__burger>span{background:currentColor;border-radius:1px;height:2px;inset-inline:0;position:absolute;transition:transform .2s cubic-bezier(.2,.7,.2,1),opacity .2s cubic-bezier(.2,.7,.2,1)}.ihabdevteam-core-scope .landing-header__burger>span:first-child{top:0}.ihabdevteam-core-scope .landing-header__burger>span:nth-child(2){top:6px}.ihabdevteam-core-scope .landing-header__burger>span:nth-child(3){top:12px}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:first-child{transform:translateY(6px) rotate(45deg)}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:nth-child(2){opacity:0}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.ihabdevteam-core-scope .landing-header__drawer{background:var(--landing-header-bg,var(--color-deepWhite));border-top:1px solid rgba(15,18,60,.05)}.ihabdevteam-core-scope .landing-header__drawer-item{display:block}.ihabdevteam-core-scope .landing-header__drawer-item a{align-items:center;color:var(--landing-header-link-color,var(--color-deepGray));display:flex;font-size:15px;font-weight:500;min-height:48px;text-decoration:none;transition:color .2s}.ihabdevteam-core-scope .landing-header__drawer-item a:hover,.ihabdevteam-core-scope .landing-header__drawer-item a[aria-current=page]{color:var(--landing-header-link-hover,var(--color-main))}@media (max-width:960px){.ihabdevteam-core-scope .landing-header__links{display:none}.ihabdevteam-core-scope .landing-header__toggle{display:flex}}@media (min-width:961px){.ihabdevteam-core-scope .landing-header__drawer{display:none}}';ce(zB);function Yf({logo:e,logoAlt:t="",logoHref:a,links:o=[],actions:n,className:i,containerClassName:l,renderLink:c,menuLabel:u}){const{t:d}=_e.useTranslation(),h=u??{open:d("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),close:d("header.menuClose","\uBA54\uB274 \uB2EB\uAE30")},[p,m]=s.useState(!1),C=s.useId(),v=s.useRef(null);s.useEffect(()=>{if(!p)return;const x=Io(()=>{const _=document.getElementById(C);_&&_.contains(document.activeElement)&&v.current?.focus(),m(!1)}),b=typeof window<"u"&&window.matchMedia?window.matchMedia("(min-width: 961px)"):null,w=_=>{_.matches&&m(!1)};return b&&(b.matches&&m(!1),b.addEventListener?.("change",w)),()=>{x(),b?.removeEventListener?.("change",w)}},[p,C]);const f=l?`${l} landing-header__inner`:"landing-header__inner",g=(x,b)=>c?c(x,{onClick:b}):r.jsx("a",{href:x.href,onClick:b,"aria-current":x.current?"page":void 0,children:x.label});return r.jsxs("header",{className:i?`landing-header ${i}`:"landing-header",children:[r.jsxs("div",{className:f,children:[e!=null&&(()=>{const x=typeof e=="string"?r.jsx("img",{src:e,alt:t,className:"landing-header__logo"}):e;return a?r.jsx("a",{href:a,className:"landing-header__brand",children:x}):r.jsx("div",{className:"landing-header__brand",children:x})})(),o.length>0&&r.jsx("nav",{className:"landing-header__links",children:o.map((x,b)=>r.jsx("span",{children:g(x)},`${b}:${x.href}`))}),r.jsxs("div",{className:"landing-header__actions",children:[n,o.length>0&&r.jsx("button",{ref:v,type:"button",onClick:()=>m(x=>!x),"aria-expanded":p,"aria-controls":C,"aria-label":p?h.close:h.open,className:p?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:r.jsxs("span",{className:"landing-header__burger",children:[r.jsx("span",{}),r.jsx("span",{}),r.jsx("span",{})]})})]})]}),o.length>0&&r.jsx("nav",{id:C,hidden:!p,className:"landing-header__drawer",children:r.jsx("div",{className:l??void 0,children:o.map((x,b)=>r.jsx("span",{className:"landing-header__drawer-item",children:g(x,()=>m(!1))},`${b}:${x.href}`))})})]})}var IB=".ihabdevteam-core-scope .bottom-sticky{animation:bottom-sticky-in .4s cubic-bezier(.2,.9,.2,1) both;bottom:24px;bottom:var(--bottom-sticky-offset,24px);left:50%;max-width:680px;max-width:var(--bottom-sticky-max-width,680px);position:fixed;transform:translateX(-50%);width:calc(100% - 48px);z-index:500;z-index:var(--z-sticky,500)}@keyframes bottom-sticky-in{0%{opacity:0;transform:translateX(-50%) translateY(16px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.ihabdevteam-core-scope .bottom-sticky__inner{align-items:center;background:var(--bottom-sticky-bg,var(--color-pureWhite));border-radius:20px;border-radius:var(--radius-m,20px);box-shadow:0 8px 40px rgba(15,18,60,.18),0 2px 8px rgba(15,18,60,.06);display:flex;gap:16px;gap:var(--spacing-m,16px);justify-content:space-between;padding:12px 12px 12px 24px;transition:box-shadow .2s,transform .2s}.ihabdevteam-core-scope .bottom-sticky__inner--clickable{cursor:pointer}.ihabdevteam-core-scope .bottom-sticky__inner--clickable:hover{border:1px solid var(--color-main);box-shadow:0 16px 56px color-mix(in srgb,var(--color-main) 30%,transparent),0 4px 12px color-mix(in srgb,var(--color-main) 15%,transparent);transform:translateY(-4px)}.ihabdevteam-core-scope .bottom-sticky__content{align-items:center;display:flex;flex:1;gap:12px;gap:var(--spacing-s,12px);justify-content:center}.ihabdevteam-core-scope .bottom-sticky__tagline{align-items:center;color:var(--color-black);display:flex;gap:0;margin:0;white-space:nowrap}.ihabdevteam-core-scope .bottom-sticky__tagline-highlight{background:linear-gradient(90deg,var(--color-main),var(--color-sub),var(--color-infoLink));-webkit-background-clip:text;background-clip:text;color:transparent;display:inline}.ihabdevteam-core-scope .bottom-sticky__tagline-part{align-items:center;display:flex;white-space:nowrap}.ihabdevteam-core-scope .bottom-sticky__tagline-logo{display:block;height:32px;width:auto}@media (max-width:600px){.ihabdevteam-core-scope .bottom-sticky{bottom:16px;bottom:var(--bottom-sticky-offset,16px);width:calc(100% - 32px)}.ihabdevteam-core-scope .bottom-sticky__inner{align-items:stretch;flex-direction:column;gap:12px;gap:var(--spacing-s,12px);padding:16px;padding:var(--spacing-m,16px)}.ihabdevteam-core-scope .bottom-sticky__content{flex:none;gap:6px;justify-content:center}.ihabdevteam-core-scope .bottom-sticky__tagline{flex-wrap:wrap;justify-content:center;text-align:center;white-space:normal}.ihabdevteam-core-scope .bottom-sticky__tagline-logo{height:26px}}";ce(IB);function Kf({children:e,action:t,onClick:a,className:o}){const n=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return r.jsx("div",{className:o?`bottom-sticky ${o}`:"bottom-sticky",children:r.jsxs("div",{className:n,onClick:a,...V0(a),children:[r.jsx("div",{className:"bottom-sticky__content",children:e}),t]})})}function OB({mountedRef:e}){const t=s.useRef({phase:"sound",at:0}),a=s.useRef(0),o=s.useRef(null),n=s.useRef(null),i=s.useCallback(()=>{const f=t.current,g=f.phase!=="sound"&&f.at>0;n.current=g?{phase:f.phase,\uD750\uB978:Math.max(0,Date.now()-f.at)}:null},[]),l=s.useCallback(()=>{const f=n.current;return n.current=null,f},[]),c=s.useCallback(()=>{a.current+=1,t.current={phase:"sound",at:0}},[]),u=s.useCallback((f,g,x=0)=>{if(!(f>0))return Promise.resolve(!0);const b=a.current;return t.current={phase:g,at:Date.now()-Math.max(0,x)},new Promise(w=>{const _=setTimeout(()=>{o.current===_&&(o.current=null),w(!!e.current&&b===a.current)},f);o.current=_})},[e]),d=s.useCallback(()=>{t.current={phase:"sound",at:Date.now()}},[]),h=s.useCallback(()=>{t.current={phase:"sound",at:0}},[]),p=s.useCallback(()=>{const f=t.current;return f.phase!=="sound"&&f.at>0},[]),m=s.useCallback(()=>a.current,[]),C=s.useCallback(f=>f===a.current,[]),v=s.useCallback(()=>{a.current+=1},[]);return s.useEffect(()=>()=>{o.current&&(clearTimeout(o.current),o.current=null)},[]),s.useMemo(()=>({positionRef:t,isRunning:p,generation:m,isCurrent:C,abort:c,waitPad:u,enterSound:d,leave:h,pause:i,resume:l,__bumpGenerationForTest:v}),[p,m,C,c,u,d,h,i,l,v])}const Yo=9,Zf=e=>Math.round(Math.min(Yo,Math.max(0,e))/Yo*100),Xf=e=>e/100*Yo,Ar=2,Od=.1,FB=e=>Math.min(Ar,Math.max(0,e)),HB=.1,VB=e=>Math.round(e*1e6)/1e6;function Sr(e){const{noiseRatio:t}=e;if(typeof t=="number"&&Number.isFinite(t))return FB(t);const a=Math.min(Yo,Math.max(0,Number(e.level)||0))/Yo,o=Number(e.mainVolume);return o>0?a>0?VB(Math.min(Ar,Math.max(HB,a/o))):0:1}const Jf=e=>Math.min(1,Math.max(0,Number(e.mainVolume)||0));function Fd(e){return Jf(e)}function Qi(e){return Jf(e)*Sr(e)}function es(e,t=Rs()){const a=Number.isFinite(t)&&t>0?t:1;return Math.min(1,Qi(e)/a)}function Er(e,t){const a={...e,...t??{}};return t&&"level"in t&&typeof t.noiseRatio!="number"&&(a.noiseRatio=Sr({level:a.level,mainVolume:a.mainVolume})),a}const Dr={enabled:!0,type:"defaultNoise",level:4.5,noiseRatio:1,speed:1,mainVolume:1,mainSpeed:1},ts=s.createContext(null);function En(){return s.useContext(ts)}const Hd=e=>`${$s()}/${e}`,Qf=e=>Array.from({length:10},(t,a)=>Hd(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),as={get defaultNoise(){return Hd("noise1.mp3")},get street(){return Qf("noise2")},get restaurant(){return Qf("noise3")},get buzz(){return Hd("noise4.mp3")}};function WB(e){const t=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return as.defaultNoise;case"street":return as.street[t];case"restaurant":return as.restaurant[t];case"buzz":return as.buzz;default:return null}}function GB({noisePlayer:e,audioRef:t,playbackStateRef:a,sequencer:o}){const n=s.useRef(e?.registerAnalyser);n.current=e?.registerAnalyser;const i=s.useRef(null),[l,c]=s.useState(null),u=s.useRef(null),d=s.useRef(null),h=s.useRef(null),p=s.useRef(null),m=s.useRef(0),C=s.useRef(null),v=s.useCallback(()=>!!o?.isRunning(),[o]),f=s.useCallback(()=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),C.current!==null&&(clearTimeout(C.current),C.current=null)},[]),g=s.useCallback((A,y=250)=>{const B=i.current;if(!B)return;const k=d.current;if(k){d.current=null;try{B.pause()}catch{}B.src=k,B.load()}if(!B.src)return;m.current+=1,f();try{Fr(),tr(B).then(I=>{if(i.current===B)try{n.current?.("noise",I)}catch{}})}catch{}const S=B.paused?0:ar(B);B.paused&&$a(B,0),B.play().catch(()=>{});const E=performance.now(),D=()=>{const I=Math.min(1,(performance.now()-E)/y);try{$a(B,S+(A-S)*I)}catch{}I<1?p.current=requestAnimationFrame(D):p.current=null};p.current=requestAnimationFrame(D)},[f]),x=s.useCallback((A=250,y)=>{const B=i.current;if(!B||B.paused){y?.();return}const k=++m.current;f();const S=performance.now(),E=ar(B),D=()=>{const I=Math.min(1,(performance.now()-S)/A);try{$a(B,E*(1-I))}catch{}if(I<1)p.current=requestAnimationFrame(D);else{p.current=null,C.current!==null&&(clearTimeout(C.current),C.current=null);try{B.pause()}catch{}y?.()}};p.current=requestAnimationFrame(D),C.current=setTimeout(()=>{if(C.current=null,m.current===k){p.current!==null&&(cancelAnimationFrame(p.current),p.current=null);try{B.paused||($a(B,0),B.pause(),y?.())}catch{}}},A+150)},[f]);s.useEffect(()=>{const A=document.createElement("audio");return A.loop=!0,A.crossOrigin="anonymous",i.current=A,()=>{f();try{A.pause(),A.removeAttribute("src"),A.load()}catch{}i.current=null,u.current=null,d.current=null}},[f]);const b=e?es(e.settings):0,w=!!e?.settings.enabled&&b>0;s.useEffect(()=>{if(!w)return;let A=0;const y=setInterval(()=>{const B=i.current;if(!B||B.paused){A=0;return}const k=t.current;if(k&&!k.paused&&!k.ended||v()||a.current==="playing"){A=0;return}A+=1,A>=2&&(A=0,x())},400);return()=>clearInterval(y)},[x,w,t,a,v]),s.useEffect(()=>{const A=()=>{const y=i.current;if(document.hidden){if(y&&!y.paused){f();try{y.pause()}catch{}}return}if(!y||!y.paused)return;const B=t.current,k=!!B&&!B.paused&&!B.ended||v()||a.current==="playing",S=h.current;k&&S?.enabled&&S.volume>0&&g(S.volume)};return document.addEventListener("visibilitychange",A),()=>document.removeEventListener("visibilitychange",A)},[f,g,t,a,v]),s.useEffect(()=>{h.current=e?{enabled:e.settings.enabled,volume:b,type:e.settings.type}:null},[e,e?.settings.enabled,b,e?.settings.type]);const _=s.useRef(null);return s.useEffect(()=>()=>{_.current?.(),_.current=null},[]),s.useEffect(()=>{const A=e?.settings,y=i.current;if(!y)return;const B=A?es(A):0;if(!A||!A.enabled||B===0){x();return}if(u.current!==A.type){const k=WB(A.type);k&&(u.current=A.type,c(k),d.current=k,x(150,()=>{if(d.current!==k)return;d.current=null,y.src=k,y.load();const S=t.current;if(S&&!S.paused||v()){_.current?.();const E=()=>{y.removeEventListener("canplay",E),_.current===D&&(_.current=null);const I=t.current,j=h.current;(I&&!I.paused&&!I.ended||v())&&j?.enabled&&j.volume>0&&g(j.volume)},D=()=>y.removeEventListener("canplay",E);_.current=D,y.addEventListener("canplay",E)}}))}else{const k=t.current,S=!!k&&!k.paused&&!k.ended||v()||a.current==="playing";if(S&&d.current)g(B);else if(S&&y.paused&&y.src)g(B);else if(!y.paused)if(!S)x();else{f();const E=ar(y),D=performance.now(),I=()=>{const j=Math.min(1,(performance.now()-D)/150);try{$a(y,E+(B-E)*j)}catch{}j<1?p.current=requestAnimationFrame(I):p.current=null};p.current=requestAnimationFrame(I)}}},[e?.settings,e?.settings.enabled,b,e?.settings.type,f,g,x,t,a,h,v]),s.useEffect(()=>{const A=i.current;if(A)try{A.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:i,activeNoiseUrl:l,noiseSettingsRef:h,cancelNoiseFade:f,fadeInNoise:g,fadeOutNoise:x}}function UB({ttsText:e,playbackRate:t,mainVolume:a,fillRef:o,waveProgressRef:n,setProgress:i,setPlaybackState:l,setStateLocal:c,fadeInNoise:u,fadeOutNoise:d,noiseSettingsRef:h,onDoneRef:p,handleEndRef:m}){const C=s.useRef(null),v=s.useRef(0),f=s.useRef(null),g=s.useRef(0),x=s.useRef(!1);s.useEffect(()=>()=>{g.current++;try{if(f.current&&(cancelAnimationFrame(f.current),f.current=null),x.current&&window.speechSynthesis){try{window.speechSynthesis.cancel()}catch{}x.current=!1}}catch{}},[]);const b=(A,y=1)=>{try{const B=(A||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(A||"").length);return Math.max(700,Math.round(B*300/Math.max(.25,y)))}catch{return 1200}},w=s.useCallback(A=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof p.current=="function"&&p.current(!1)}catch{}return}const y=window.speechSynthesis,B=++g.current;try{try{y.cancel()}catch{}const k=A??e,S=Array.isArray(k)?k.filter(L=>!!L):[k||""];S.length===0&&S.push("");const E=Math.max(.3,Math.min(3,t));v.current=S.reduce((L,M)=>L+b(M,E||1),0),C.current=performance.now(),i(0),l("playing"),c("playMode");const D=h.current;D?.enabled&&(D?.volume??0)>0&&u(D.volume);const I=()=>{try{const L=C.current||performance.now(),M=performance.now()-L,z=v.current||1200,q=Math.min(1,M/z);try{o.current&&(o.current.style.left=`${q*100}%`),n.current&&n.current.style.setProperty("--progress",String(q))}catch{}q<1&&(f.current=requestAnimationFrame(I))}catch{}},j=()=>{if(B===g.current)try{f.current&&(cancelAnimationFrame(f.current),f.current=null),i(1),l("stopped");try{m.current?.()}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}}catch{}},W=L=>{const M=new SpeechSynthesisUtterance(S[L]);try{M.rate=E}catch{}try{M.volume=Math.max(0,Math.min(1,a))}catch{}M.onend=()=>{if(B===g.current){if(L<S.length-1){try{W(L+1)}catch{j()}return}j()}},M.onerror=()=>{j()},M.onstart=()=>{if(!(L>0))try{f.current&&(cancelAnimationFrame(f.current),f.current=null),f.current=requestAnimationFrame(I)}catch{}},x.current=!0,y.speak(M)};try{W(0)}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}},[e,t,a,u,o,n,i,l,c,h,p,m]),_=s.useCallback(()=>{g.current++;try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}f.current&&(cancelAnimationFrame(f.current),f.current=null),d(),C.current=null}catch{}l("stopped"),c("active"),i(0)},[d,l,c,i]);return{startTTS:w,stopTTS:_}}var qB='.ihabdevteam-core-scope .audio-player{align-items:center;display:flex;flex-direction:column;width:100%}.ihabdevteam-core-scope .audio-player__no-waveform{align-items:center;align-self:flex-start;color:var(--color-lightGray);display:flex;gap:4px;margin:6px 0 0}.ihabdevteam-core-scope .audio-player__no-waveform .iconRenderer-icon{align-items:center;display:inline-flex}.ihabdevteam-core-scope .audio-player__panel{align-items:center;background:linear-gradient(90deg,var(--color-main),var(--color-sub));background:linear-gradient(var(--angle,90deg),var(--color-main),var(--color-sub));border-radius:var(--radius-m);display:flex;height:120px;position:relative;width:100%}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__panel{background:var(--color-darkWhite);border:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__buttons,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__play,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__wave{pointer-events:none}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__buttons .button,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__play .button{opacity:.7}.ihabdevteam-core-scope .audio-player__play{align-items:center;bottom:0;display:flex;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:relative;right:0;top:0;transition:opacity .16s ease,transform .16s ease;width:100%;z-index:10}.ihabdevteam-core-scope .audio-player__play.is-visible{opacity:1;pointer-events:auto}.ihabdevteam-core-scope .audio-player__panel>.button{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .16s ease,transform .16s ease;will-change:opacity,transform;z-index:35}.ihabdevteam-core-scope .audio-player__button{align-items:center;background:transparent;border:0;cursor:pointer;display:flex;inset:0;justify-content:center;padding:0;position:absolute;z-index:35}.ihabdevteam-core-scope .audio-player__button-triangle-wrap{align-items:center;display:flex;height:90px;justify-content:center;transition:transform .32s cubic-bezier(.2,.7,.2,1);width:90px}.ihabdevteam-core-scope .audio-player__button:hover .audio-player__button-triangle-wrap{transform:scale(1.18)}.ihabdevteam-core-scope .audio-player__button:active .audio-player__button-triangle-wrap{transform:scale(1.06)}.ihabdevteam-core-scope .audio-player__button-triangle{height:100%;width:100%}.ihabdevteam-core-scope .audio-player__button-triangle path{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__button{cursor:default;opacity:.5;pointer-events:none}.ihabdevteam-core-scope .audio-player__slider{align-items:center;bottom:50px;box-sizing:border-box;display:flex;left:20px;pointer-events:none;position:absolute;right:20px;top:20px}.ihabdevteam-core-scope .audio-player__buttons{align-items:center;border-radius:999px;bottom:10px;box-sizing:border-box;display:flex;gap:0;height:28px;justify-content:center;left:0;pointer-events:auto;position:absolute;right:0;z-index:40}.ihabdevteam-core-scope .audio-player__source-buttons{align-items:center;border:1px solid var(--color-white-a30);border-radius:var(--radius-m);display:inline-flex;justify-content:center;overflow:visible}.ihabdevteam-core-scope .audio-player__source-buttons .button{flex:0 0 auto;max-width:60px}.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\B2E4\\C74C],.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\C774\\C804],.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\C815\\C9C0]{display:none}.ihabdevteam-core-scope .audio-player__buttons>.button{align-items:center;display:inline-flex;justify-content:center;margin:0;width:auto}.ihabdevteam-core-scope .audio-player__fill{backface-visibility:hidden;background:var(--color-pureWhite);border-radius:var(--radius-sm);height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) scaleY(0);transform-origin:center center;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .16s ease;width:8px;will-change:transform,opacity;z-index:70}.ihabdevteam-core-scope .audio-player__fill.is-visible{opacity:1}.ihabdevteam-core-scope .audio-player__fill.is-expanded{transform:translateX(-50%) translateY(-50%) scaleY(1)}.ihabdevteam-core-scope .audio-player__fill.is-paused{transition:opacity .16s ease}.ihabdevteam-core-scope .audio-player__fill.is-out{animation:audio-player-fill-out .28s cubic-bezier(.2,.8,.2,1) forwards}@keyframes audio-player-fill-out{0%{opacity:1;transform:translateX(-50%) translateY(-50%) scaleY(1)}to{opacity:0;transform:translateX(-50%) translateY(-50%) scaleY(0)}}.ihabdevteam-core-scope .audio-player__loading{align-items:center;background:transparent;border-radius:var(--radius-sm);color:rgba(0,0,0,.85);color:var(--audio-loading-foreground,rgba(0,0,0,.85));display:inline-flex;font-size:13px;gap:var(--spacing-xs);left:50%;padding:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:999}.ihabdevteam-core-scope .audio-player__debug{align-items:center;background:hsla(0,0%,100%,.06);border-radius:18px;color:#fff;display:flex;font-size:12px;gap:8px;padding:6px 10px;pointer-events:none;position:absolute;right:12px;top:12px}.ihabdevteam-core-scope .audio-player__debug-dot{border-radius:10px;box-shadow:0 0 6px rgba(0,0,0,.4);display:inline-block;height:10px;width:10px}.ihabdevteam-core-scope .audio-player__loading .audio-player__loading-text,.ihabdevteam-core-scope .audio-player__panel.is-loading .audio-player__loading-text{display:none}.ihabdevteam-core-scope .audio-player__loading-spinner{animation:audio-player-spinner .9s linear infinite;border:4px solid hsla(0,0%,100%,.2);border-radius:50%;border-top-color:#fff;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25));height:40px;width:40px}@keyframes audio-player-spinner{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .audio-player__wave{height:90%;height:var(--wave-h,90%);position:absolute;transition:height .35s cubic-bezier(.22,.9,.3,1)}.ihabdevteam-core-scope .audio-player__wave,.ihabdevteam-core-scope .audio-player__wave-inner{align-items:center;display:flex;justify-content:center;pointer-events:none;width:100%;z-index:60}.ihabdevteam-core-scope .audio-player__wave-inner{cursor:default;gap:3px;gap:var(--bar-gap,3px);height:100%;margin:0 auto;padding:0}.ihabdevteam-core-scope .audio-player__wave-inner:not(.is-ready) .audio-player__bar:after{opacity:0}.ihabdevteam-core-scope .audio-player__wave-inner.is-ready .audio-player__bar:after{animation:wave-bar-in .35s cubic-bezier(.22,.9,.3,1) backwards;animation-delay:0ms;animation-delay:calc(var(--i, 0)*2ms)}@keyframes wave-bar-in{0%{opacity:0;transform:translateY(-50%) scaleY(.05)}to{opacity:1;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15))}}.ihabdevteam-core-scope .audio-player__wave-inner.is-ready .audio-player__bar--hidden:after,.ihabdevteam-core-scope .audio-player__wave-noise.is-ready .audio-player__bar--hidden:after{animation:none;opacity:0}.ihabdevteam-core-scope .audio-player__wave-played{bottom:0;clip-path:inset(0 100% 0 0);clip-path:inset(0 calc((1 - var(--progress, 0))*100%) 0 0);left:0;pointer-events:none;position:absolute;right:0;top:0}.ihabdevteam-core-scope .audio-player__bar{box-sizing:border-box;flex:0 0 3px;flex:0 0 var(--bar-w,3px);height:100%;position:relative}.ihabdevteam-core-scope .audio-player__wave-unplayed .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) 0);border-radius:999px;content:"";height:100%;height:var(--wave-h1,100%);left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15));transform-origin:center center;transition:transform .35s cubic-bezier(.22,.9,.3,1);z-index:61}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-unplayed .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-played .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) 0);border-radius:999px;content:"";height:100%;height:var(--wave-h1,100%);left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15));transform-origin:center center;transition:transform .35s cubic-bezier(.22,.9,.3,1);z-index:62}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-played .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-noise{align-items:center;bottom:0;display:flex;gap:3px;gap:var(--bar-gap,3px);justify-content:center;left:0;margin:0 auto;pointer-events:none;position:absolute;right:0;top:0;width:100%;z-index:58}.ihabdevteam-core-scope .audio-player__wave-noise .audio-player__bar:after{background:color-mix(in srgb,var(--color-deepMain),var(--color-deepSub) 0);border-radius:999px;content:"";height:100%;height:var(--wave-h1,100%);left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.1);transform:translateY(-50%) scaleY(var(--val,.1));transform-origin:center center;transition:transform .35s cubic-bezier(.22,.9,.3,1);z-index:58}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-noise .audio-player__bar:after{background:color-mix(in srgb,var(--color-deepMain),var(--color-deepSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-noise:not(.is-ready) .audio-player__bar:after{opacity:0}.ihabdevteam-core-scope .audio-player__wave-noise.is-ready .audio-player__bar:after{animation:wave-bar-in .35s cubic-bezier(.22,.9,.3,1) backwards;animation-delay:0ms;animation-delay:calc(var(--i, 0)*2ms)}.ihabdevteam-core-scope .audio-player__segments{align-items:center;display:flex;gap:3px;gap:var(--bar-gap,3px);height:100%;position:relative;width:100%}.ihabdevteam-core-scope .audio-player__segment{align-items:center;cursor:pointer;display:flex;height:100%;justify-content:center;padding:10px 0;pointer-events:auto;position:relative}.ihabdevteam-core-scope .audio-player__segment-inner{align-items:center;display:flex;gap:3px;gap:var(--bar-gap,3px);height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .audio-player__buttons>.button--variant-transparent-white[aria-pressed=true]:not(:hover):not(:focus-visible){background:transparent;color:#fbfdff}.ihabdevteam-core-scope .audio-player__source-buttons .button--variant-transparent-white[aria-pressed=true]{background:var(--color-white);color:var(--color-darkGray)}';ce(qB);const YB=.01,KB=.3;async function ZB(e,t,a,o=!1){let n=null;try{const i=window.AudioContext||window.webkitAudioContext;n=new i;const l=await n.decodeAudioData(e.slice(0)),c=l.numberOfChannels>0?l.getChannelData(0):null;if(!c)return null;let u=0;if(o){const C=Math.floor(KB*l.sampleRate),v=Math.min(c.length,C);for(;u<v&&Math.abs(c[u])<=YB;)u++;u>=v&&(u=0)}const d=c.length-u,h=a&&a>0?Math.min(d,Math.floor(a*l.sampleRate)):d,p=Math.max(t,h),m=Math.floor(p/t)||1;return new Array(t).fill(0).map((C,v)=>{const f=u+v*m,g=Math.min(f+m,u+p,c.length);let x=0;for(let b=f;b<g;b++){const w=Math.abs(c[b]);w>x&&(x=w)}return x})}catch{return null}finally{try{n?.close?.()}catch{}}}async function e1(e,t,a,o=!1){try{const n=await fetch(e);if(n.ok===!1)return null;const i=await n.arrayBuffer();return await ZB(i,t,a,o)}catch(n){try{const i=en(n)}catch{}return null}}const os=45,t1=74,a1=2;function Dn(e){const t=Math.min(2,Math.max(0,Number(e)||0));return t<=1?t*45:45+(t-1)*29}function Nn(e){return Dn(e)/45}const XB=e=>Math.max(0,(typeof e=="number"&&Number.isFinite(e)?e:0)*1e3),o1=e=>Math.max(0,typeof e=="number"&&Number.isFinite(e)?e:0);function r1({durationsSec:e,leadInMs:t=0,tailMs:a=0}){const o=o1(t),n=o1(a),i=[];let l=0;return e.forEach((c,u)=>{for(const[d,h]of[["lead",o],["sound",XB(c)],["tail",n]])i.push({kind:d,track:u,startMs:l,durMs:h}),l+=h}),{segments:i,totalMs:l,trackCount:e.length}}function n1(e,t){const a=(t|0)*3;if(t<0||a+2>=e.segments.length)return null;const[o,n,i]=[e.segments[a],e.segments[a+1],e.segments[a+2]];return{lead:o,sound:n,tail:i,totalMs:o.durMs+n.durMs+i.durMs}}function JB(e,t){const a=n1(e,t.track);if(!a||!(a.totalMs>0))return 0;const o=a[t.kind],n=Math.min(Math.max(0,Number.isFinite(t.elapsedMs)?t.elapsedMs:0),o.durMs);return Math.max(0,Math.min(1,(o.startMs-a.lead.startMs+n)/a.totalMs))}function QB(e,t,a){const o=Math.max(0,Math.floor(a)),n=n1(e,t);if(!n||o===0||!(n.totalMs>0)||n.lead.durMs===0&&n.tail.durMs===0||!(n.sound.durMs>0))return{lead:0,sound:o,tail:0};const i=Math.round(n.lead.durMs/n.totalMs*o),l=Math.round(n.tail.durMs/n.totalMs*o),c=Math.max(1,o-i-l),u=i+c+l-o;return{lead:Math.max(0,i-Math.ceil(u/2)),sound:c,tail:Math.max(0,l-Math.floor(u/2))}}function eA({currentTime:e,sources:t,index:a,audioDuration:o}){const n=a||0,i=Array.isArray(t)&&t.length>0?t[n]:void 0,l=i?i.duration||o||0:o||0;if(!(l>0))return 0;const c=Number.isFinite(e)?e:0;return Math.max(0,Math.min(1,c/l))}function tA({phase:e,phaseElapsedMs:t,currentTime:a,trackDurationSec:o,leadInMs:n,tailMs:i}){const l=r1({durationsSec:[o],leadInMs:n,tailMs:i});return JB(l,{track:0,kind:e,elapsedMs:e==="sound"?(Number.isFinite(a)?a:0)*1e3:t})}function aA({bars:e,trackDurationSec:t,leadInMs:a,tailMs:o}){return QB(r1({durationsSec:[t],leadInMs:a,tailMs:o}),0,e)}function oA(e,t){if(!Array.isArray(e))return null;const a=t||0;return a<e.length-1?a+1:null}function rA({ended:e,completedByEnd:t}){return!!e||!!t}function nA(e){return e.map((t,a)=>({src:t.src,label:String(a+1),color:void 0,duration:t.duration||0}))}function iA(e){return e.reduce((t,a)=>t+(a.duration||0),0)}function sA(e,t,a){const o=Array.isArray(e)?e:e?[e]:[],n=[];for(const i of o)if(i){if(typeof i=="object"&&i!==null&&"src"in i&&i.src){const l=i;n.push({code:l.code??null,src:l.src});continue}if(typeof i=="string"&&(i.startsWith("http")||i.includes("/"))){n.push({code:null,src:i});continue}if(typeof i=="string"||typeof i=="number"){const l=String(i),c=a(l,t);c&&n.push({code:l,resolvedPath:c})}}return n}const i1=4,lA=Nn(i1/os);function cA(e){const{src:t,segments:a,progress:o=0,waveProgressRef:n,noiseSrc:i,noiseRatio:l=0,noiseSpeed:c=1,totalDuration:u=0,mainVolume:d=1,onReadyChange:h,showSoundWaveForm:p=!0,leadInMs:m=0,tailMs:C=0,trackDurationSec:v=0}=e,f=s.useRef(null),g=s.useRef(null),[x,b]=s.useState(null),[w,_]=s.useState(!1),[A,y]=s.useState(null),[B,k]=s.useState(2),[S,E]=s.useState(0),[D,I]=s.useState(null),[j,W]=s.useState(!1),[L,M]=s.useState(!1),z=3,q=3,Y=1,P=300,V=s.useRef(0),$=s.useCallback(()=>{const ye=f.current,le=g&&g.current?g.current:ye?ye.closest(".audio-player__wave"):null,he=le?le.getBoundingClientRect():ye?ye.getBoundingClientRect():null,ve=he?he.width:0,G=he?Math.max(100,he.width):320,oe=he?he.height:0,me=Math.max(Y,Math.min(P,Math.floor((G+q)/(z+q)))),Te=me*z,ke=Math.max(0,me-1),Pe=Math.max(0,ke>0?(G-Te)/ke:q);return{bars:me,gap:Pe,height:oe,width:ve}},[]),U=s.useRef(void 0),T=s.useRef(null),F=s.useCallback(async(ye,le,{quiet:he=!1}={})=>{const ve=++V.current,G=()=>V.current===ve;try{if(he||_(!1),U.current=ye,!ye){G()&&b(null);return}let oe=le;if(!oe)try{for(let ke=0;ke<4&&!(f.current||g.current);ke++)await new Promise(Pe=>requestAnimationFrame(Pe));await new Promise(ke=>requestAnimationFrame(ke));const Te=$();Te.height>0&&E(Te.height),oe=Te.bars,k(Te.gap)}catch{oe=120}T.current=oe;const me=await e1(ye,oe);if(!G())return;if(!me){b(null),_(!1);return}b(me),y(oe),_(!0)}catch{if(!G())return;b(null),_(!1)}},[_,b,E,k,y,$]);s.useEffect(()=>{const ye=g.current;if(!ye||typeof ResizeObserver>"u")return;let le=null;const he=new ResizeObserver(()=>{le!==null&&cancelAnimationFrame(le),le=requestAnimationFrame(()=>{le=null;try{const ve=$();if(ve.width<=0||(ve.height>0&&E(ve.height),T.current===null||ve.bars===T.current))return;const G=U.current;k(ve.gap),G?F(G,ve.bars,{quiet:!0}).catch(()=>{}):T.current=ve.bars}catch{}})});return he.observe(ye),()=>{he.disconnect(),le!==null&&cancelAnimationFrame(le)}},[$,F]),s.useEffect(()=>{const ye=a&&a[0]&&a[0].src||t||a&&a.length===1&&a[0]&&a[0].src;F(typeof ye=="string"?ye:void 0).catch(()=>{}),M(!1)},[t,a,F]),s.useEffect(()=>{let ye=!1;if(W(!1),!i||!A){I(null);return}const le=u>0?u*(c||1):void 0;return e1(i,A,le,!0).then(he=>{ye||(I(he),he||W(!0))}).catch(()=>{ye||(I(null),W(!0))}),()=>{ye=!0}},[i,A,u,c]);const N=Math.max(0,Math.min(1,d)),O=s.useMemo(()=>x&&x.length&&Math.max(...x)||1,[x]),H=A||40,Z=s.useMemo(()=>aA({bars:H,trackDurationSec:v,leadInMs:m,tailMs:C}),[H,v,m,C]),te=s.useMemo(()=>Array.from({length:H}).map((ye,le)=>{const he=le>=Z.lead&&le<Z.lead+Z.sound,ve=Z.sound>0&&he?Math.min(H-1,Math.round((le-Z.lead)/Z.sound*H)):-1,G=he?x&&x[ve]!=null?x[ve]:null:x?0:null,oe=G==null?null:Math.min(1,G/O*N),me=oe!=null&&S>0&&Dn(oe)<=i1,Te=oe==null?.15:me?0:Nn(oe),ke=me,Pe=H>1?le/(H-1):0;return r.jsx("div",{className:ke?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":Te,"--i":le,"--mix":Pe}},le)}),[H,x,O,N,S,Z]),se={"--progress":String(Math.max(0,Math.min(1,o)))},be=s.useMemo(()=>D&&D.length&&Math.max(...D.map(ye=>Number.isFinite(ye)?Math.abs(ye):0))||1,[D]),X=N*Math.max(0,l),re=!i||!D||!D.length?1:Math.max(1,X),Ae={"--bar-gap":`${B}px`,"--wave-h":`${Dn(re)}px`,"--wave-h1":`${os}px`},K=w&&(i?!!D||j:!0);s.useEffect(()=>{K&&M(!0)},[K]);const ie=L?w:K;s.useEffect(()=>{h?.(ie)},[ie,h]);const ue=A||40,je=s.useMemo(()=>Array.from({length:ue}).map((ye,le)=>{const he=D&&D[le]!=null?D[le]:null,ve=he==null?0:Math.abs(he)/be*X,G=Math.max(lA,Nn(ve)),oe=ue>1?le/(ue-1):0;return r.jsx("div",{className:"audio-player__bar",style:{"--val":G,"--i":le,"--mix":oe}},le)}),[ue,D,be,X,S]);return r.jsxs("div",{className:"audio-player__wave",ref:g,style:Ae,children:[i&&r.jsx("div",{className:`audio-player__wave-noise ${K?"is-ready":""}`,"aria-hidden":"true",children:je}),p&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${ie?"is-ready":""}`,ref:f,children:te}),r.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${ie?"is-ready":""}`,ref:n,style:se,children:te})]})]})}const uA={idle:"\uB300\uAE30",synthesizing:"\uC18C\uB9AC\uB97C \uB9CC\uB4E4\uACE0 \uC788\uC2B5\uB2C8\uB2E4\u2026",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"},s1={idle:!1,synthesizing:!0,resolving:!0,checking_exists:!0,getting_signed_url:!0,downloading:!0,measuring_duration:!0,ready:!1,error:!0};function Vd(e,t){return new Promise((a,o)=>{const n=document.createElement("audio");let i=!1;const l=()=>{try{n.removeAttribute("src"),n.load()}catch{}},c=()=>{if(i)return;i=!0;const d=isFinite(n.duration)&&n.duration||0;l(),a(d)},u=d=>{i||(i=!0,l(),t.rejectOnError?o(new Error(d)):a(0))};n.addEventListener("loadedmetadata",c),n.addEventListener("error",()=>u("audio load failed")),setTimeout(()=>u("audio load timeout"),t.timeoutMs),n.src=e})}const dA=2e3;function l1(e,t=dA){return new Promise(a=>{let o=!1;const n=()=>{o||(o=!0,a())};e.addEventListener("canplay",n,{once:!0}),e.addEventListener("error",n,{once:!0}),setTimeout(n,t)})}function pA({showSoundWaveForm:e,showNoiseWaveForm:t,timeoutMs:a=2500}){const o=s.useRef(!1),n=s.useRef([]),i=s.useCallback(u=>{if(o.current=u,!u||!n.current.length)return;const d=n.current;n.current=[];for(const h of d)h(!0)},[]),l=s.useCallback(()=>{o.current=!1},[]),c=s.useCallback(()=>!e&&!t||o.current?Promise.resolve(!0):new Promise(u=>{const d=p=>{clearTimeout(h),n.current=n.current.filter(m=>m!==d),u(p)},h=setTimeout(()=>d(!0),a);n.current.push(d)}),[e,t,a]);return s.useEffect(()=>()=>{const u=n.current;n.current=[];for(const d of u)d(!1)},[]),{onReadyChange:i,waitForReady:c,markNotReady:l}}function hA(){const e=s.useRef([]),t=s.useCallback(n=>(e.current.push(n),n),[]),a=s.useCallback(n=>{const i=new Set([...n].filter(Boolean));e.current=e.current.filter(l=>{if(i.has(l))return!0;try{URL.revokeObjectURL(l)}catch{}return!1})},[]),o=s.useCallback(()=>{a([])},[a]);return s.useEffect(()=>()=>{for(const n of e.current)try{URL.revokeObjectURL(n)}catch{}e.current=[]},[]),{track:t,keepOnly:a,revokeAll:o}}function mA({offsetY:e=8}={}){const t=s.useRef(null),[a,o]=s.useState(null),n=s.useCallback(()=>o(null),[]),i=s.useCallback(()=>{try{const l=t.current?.getBoundingClientRect();if(!l)return;o({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",n),()=>document.removeEventListener("mousedown",n)},[a,n]),{ref:t,rect:a,show:i,hide:n}}function bA(e){if(!e)return 0;const t=e.duration;if(Number.isFinite(t)&&t>0)return t;if(t===0)return 0;try{const a=e.seekable;if(a&&a.length>0){const o=a.end(a.length-1);if(Number.isFinite(o)&&o>0)return o}}catch{}return null}const gA=400,fA=2e3,c1=5;function vA({audioRef:e,fillRef:t,waveProgressRef:a,sourcesRef:o,currentIndexRef:n,sequencer:i,leadInMs:l=0,tailMs:c=0}){const u=s.useRef(null),d=s.useRef(0),h=s.useRef(null),p=s.useCallback(()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)},[]),m=s.useCallback(()=>{if(u.current!==null)return;let v=0;const f=()=>{if(Xo){const g=typeof performance<"u"&&performance.now?performance.now():Date.now();if(v>0&&g-v>gA){const x=h.current===null||g-h.current>fA;if(h.current=g,x&&d.current<c1){d.current+=1;const b=d.current;let w=null;try{w=typeof document<"u"?document.visibilityState:null}catch{}ra(`progress-ticker-slow-frames#${b}`,`[ihab-core] \uC9C4\uD589 \uC0AC\uC2AC\uC758 \uD2C0 \uC0AC\uC774\uAC00 ${Math.round(g-v)}ms \uC785\uB2C8\uB2E4(\uBCF4\uD1B5 16ms).`,w==="hidden"?"\uC774 \uCE78\uC774 **\uC228\uC5B4 \uC788\uC5B4** \uBE0C\uB77C\uC6B0\uC800\uAC00 \uD2C0\uC744 \uC904\uC600\uC2B5\uB2C8\uB2E4 \u2014 \uC7AC\uC0DD\uBC14\xB7\uD30C\uD615\uC740 \uD2C0\uB9C8\uB2E4 \uADF8\uB824\uC9C0\uBBC0\uB85C, \uC9C0\uAE08 \uC7AC\uB294 \uAC12\uC740 **\uC0AC\uB78C\uC774 \uBCF4\uB294 \uD654\uBA74\uACFC \uB2E4\uB985\uB2C8\uB2E4.** \uCE78\uC744 \uC55E\uC73C\uB85C \uAEBC\uB0B4\uACE0 \uB2E4\uC2DC \uC7AC\uC2ED\uC2DC\uC624.":"\uCE78\uC740 \uBCF4\uC774\uB294\uB370 \uD2C0\uC774 \uB290\uB9BD\uB2C8\uB2E4 \u2014 \uAC19\uC740 \uD654\uBA74\uC5D0\uC11C \uBB34\uAC70\uC6B4 \uC77C\uC774 \uB3C4\uB294\uC9C0 \uBCF4\uC2ED\uC2DC\uC624. \uC7AC\uC0DD\uBC14\xB7\uD30C\uD615\uC774 \uB04A\uACA8 \uBCF4\uC774\uB294 \uAC83\uC740 \uC774 \uD0D3\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4.",b>=c1?`(${b}\uBC88\uC9F8 \u2014 \uB354\uB294 \uC548 \uC54C\uB9BD\uB2C8\uB2E4)`:`(${b}\uBC88\uC9F8)`)}}v=g}try{const g=e.current,x=Array.isArray(o.current)?o.current[n.current||0]:void 0,b=!!x&&Number.isFinite(x.duration)&&(x.duration??0)>0,w=b?0:bA(g),_=t.current,A=(l||0)>0||(c||0)>0,y=A&&(i?.positionRef.current?.phase??"sound")!=="sound";if(w===null&&!y)try{_&&_.style.visibility!=="hidden"&&(_.style.visibility="hidden")}catch{}else{const B=b?x.duration:w||0;Xo&&y&&!(B>0)&&ra("progress-ticker-pad-without-duration","[ihab-core] \uB738\uC774 \uB3C4\uB294\uB370 **\uC18C\uB9AC \uAE38\uC774\uB97C \uBAA8\uB985\uB2C8\uB2E4** \u2014 \uC7AC\uC0DD\uBC14\uAC00 \uB738\uB9CC\uC73C\uB85C \uC5B4\uB9BC\uC7A1\uC544 \uC6C0\uC9C1\uC785\uB2C8\uB2E4.","\uC18C\uB9AC \uAE38\uC774 \uC7AC\uAE30(measureAudioDuration)\uAC00 0 \uC744 \uC92C\uAC70\uB098 `<audio>` \uAC00 \uC544\uC9C1 \uC548 \uC2E4\uB838\uC2B5\uB2C8\uB2E4. \uAE38\uC774\uB97C \uC54C\uAC8C \uB418\uBA74 \uB9C8\uCEE4\uAC00 \uADF8 \uC21C\uAC04 **\uB4A4\uB85C \uBB3C\uB7EC\uB0A9\uB2C8\uB2E4**(\uC5B4\uB9BC\uC740 \uB298 \uCC38\uBCF4\uB2E4 \uD07D\uB2C8\uB2E4). \uC774 \uC904\uC774 \uBCF4\uC774\uBA74 \uADF8 \uC790\uB9AC\uB97C \uC54C\uB824 \uC8FC\uC2ED\uC2DC\uC624 \u2014 \uD3C9\uC18C \uAE38\uC5D0\uC11C\uB294 \uC548 \uB098\uC640\uC57C \uD569\uB2C8\uB2E4.");const k=A?tA({phase:i?.positionRef.current?.phase??"sound",phaseElapsedMs:i?.positionRef.current?Math.max(0,Date.now()-i.positionRef.current.at):0,currentTime:g&&typeof g.currentTime=="number"?g.currentTime:0,trackDurationSec:B,leadInMs:l||0,tailMs:c||0}):eA({currentTime:g&&typeof g.currentTime=="number"?g.currentTime:0,sources:o.current,index:n.current,audioDuration:w??0});try{_&&(_.style.visibility&&(_.style.visibility=""),_.style.left=`${k*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(k))}catch{}}}catch{}u.current=requestAnimationFrame(f)};u.current=requestAnimationFrame(f)},[e,t,a,o,n,i,l,c]),C=s.useCallback(v=>{p();try{t.current&&(t.current.style.visibility="",t.current.style.left=`${v*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(v))}catch{}},[p,t,a]);return s.useEffect(()=>p,[p]),{start:m,stop:p,settleTo:C}}function Tn({btnLabel:e,soundSrc:t,bucketPath:a,onDone:o,disabled:n=!1,ttsText:i=null,className:l,showSoundWaveForm:c=!0,showNoiseWaveForm:u=!0,leadInMs:d=0,tailMs:h=0}){const{t:p}=_e.useTranslation(),m=e,C=En(),v=s.useRef(C?.registerAnalyser);s.useEffect(()=>{v.current=C?.registerAnalyser});const f=s.useRef(null),g=s.useRef(null),x=s.useRef(null),b=hA(),w=s.useRef(null),_=s.useRef(!1),A=s.useRef(null),{ref:y,rect:B,show:k,hide:S}=mA();s.useEffect(()=>()=>{v.current?.("main",null),v.current?.("noise",null)},[]);const[E,D]=s.useState(!1),[I,j]=s.useState("idle"),[W,L]=s.useState("stopped"),M=s.useRef("stopped");s.useEffect(()=>{M.current=W},[W]);const[z,q]=s.useState(0),[Y,P]=s.useState("active"),V=s.useRef(!1);s.useEffect(()=>{if(Y!=="playMode"||!V.current)return;V.current=!1;const Q=typeof document<"u"?document.activeElement:null;if(Q&&Q!==document.body)return;const fe=x.current?.querySelectorAll("button")[1];try{fe?.focus()}catch{}},[Y]);const[$,U]=s.useState(null),[T,F]=s.useState(null),[N,O]=s.useState(0),[H,Z]=s.useState(!1),[te,se]=s.useState(0),be=C?.playbackRate??1,X=C?.mainVolume??1,re=C?Qi(C.settings):0,Ae=C?Fd(C.settings):X,[K,ie]=s.useState("idle"),[ue,je]=s.useState(""),[ye]=s.useState("top"),le=s.useRef(null),he=s.useRef(0),ve=s.useRef(null),G=s.useRef(!0),oe=OB({mountedRef:G}),me=s.useRef(null),Te=s.useRef(d),ke=s.useRef(h);s.useEffect(()=>{Te.current=Math.max(0,d||0)},[d]),s.useEffect(()=>{ke.current=Math.max(0,h||0)},[h]);const{start:Pe,stop:He,settleTo:lt}=vA({audioRef:f,fillRef:g,waveProgressRef:ve,sourcesRef:le,currentIndexRef:he,sequencer:oe,leadInMs:d,tailMs:h}),{onReadyChange:rt,waitForReady:at,markNotReady:ht}=pA({showSoundWaveForm:c,showNoiseWaveForm:u}),De=s.useRef(null),Ue=s.useRef(n),Se=s.useRef(o),Ye=s.useRef(null),ee=s.useRef(!1),[pe,Ee]=s.useState(!1),Re=s.useCallback(Q=>{ee.current=Q,Ee(Q)},[]),Ve=s.useRef(null),{activeNoiseUrl:We,noiseSettingsRef:ct,fadeInNoise:mt,fadeOutNoise:gt}=GB({noisePlayer:C,audioRef:f,playbackStateRef:M,sequencer:oe}),{startTTS:Et,stopTTS:ft}=UB({ttsText:i,playbackRate:be,mainVolume:Ae,fillRef:g,waveProgressRef:ve,setProgress:q,setPlaybackState:L,setStateLocal:P,fadeInNoise:mt,fadeOutNoise:gt,noiseSettingsRef:ct,onDoneRef:Se,handleEndRef:Ve});s.useEffect(()=>{Ze.current=ft});const et=Q=>{if(typeof window>"u"||!window.speechSynthesis){try{je(p("training.ttsUnavailable","\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."))}catch{}Et(Q);return}tt("tts"),Et(Q)},Ie=Array.isArray(t)?t.filter(Boolean):t?[t]:[],Oe=(!Ie||Ie.length===0)&&!!i,bt=Array.isArray($)&&$.length>0?$:Array.isArray(T)&&T.length>0?T:null,it=Math.max(Array.isArray(bt)?bt.length:0,Ie.length);s.useEffect(()=>(G.current=!0,()=>{G.current=!1}),[]);const wt=()=>{oe.abort()},Ze=s.useRef(null),kt=s.useRef(null),Lt=s.useRef(null),qe=s.useRef(null);qe.current||(qe.current=()=>{Lt.current=null;const Q=f.current;if(kt.current==="audio"&&Q&&(!Q.paused||oe.isRunning())){wt();try{Q.pause()}catch{}G.current&&(L("paused"),He(),gt())}else if(kt.current==="tts")try{Ze.current?.()}catch{}});const tt=Q=>{kt.current=Q,Lt.current=Mi(qe.current)},Dt=()=>{Lt.current?.(),Lt.current=null};s.useEffect(()=>()=>{qe.current&&$i(qe.current)},[]);const ca=s.useRef(be);s.useEffect(()=>{ca.current=be||1},[be]);const st=s.useCallback(Q=>{const fe=ca.current||1;try{Q.defaultPlaybackRate=fe}catch{}try{Q.playbackRate=fe}catch{}},[]),Nt=s.useCallback((Q,fe)=>{Q.src=fe,st(Q),Q.load(),st(Q)},[st]),ta=s.useCallback(()=>{Ye.current&&(clearTimeout(Ye.current),Ye.current=null),ie("idle")},[]),vt=s.useCallback(async(Q,fe=3,ne=50,we=0)=>{ta();const $e=oe.generation(),Ge=!!Q&&Q.currentTime>0&&!Q.ended,ut=Math.max(0,Te.current-Math.max(0,we));if(ut>0&&!Ge){tt("audio"),Pe(),L("playing");const Ct=ct.current;if(Ct?.enabled&&(Ct.volume??0)>0)try{mt(Ct.volume)}catch{}if(!await oe.waitPad(ut,"lead",we)||!G.current||!oe.isCurrent($e))return!1}oe.enterSound();for(let Ct=0;Ct<fe;Ct++){if(!G.current||!oe.isCurrent($e))return!1;try{return tt("audio"),await Q.play(),!0}catch(xe){if((xe instanceof Error||typeof xe=="object"&&xe&&"name"in xe?xe.name:void 0)==="AbortError"){if(!oe.isCurrent($e))return!1;await new Promise(R=>setTimeout(R,ne));continue}try{je(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}}try{je(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[p,Pe,oe,mt,ct,ta]),ya=s.useCallback(Q=>{const fe=oe.generation(),ne=Math.max(0,ke.current-Math.max(0,Q));Pe();const we=ct.current;if(we?.enabled&&(we.volume??0)>0)try{mt(we.volume)}catch{}const $e=()=>{try{me.current?.()}catch{}};if(ne<=0){oe.leave(),$e();return}oe.waitPad(ne,"tail",Q).then(Ge=>{oe.leave(),Ge&&oe.isCurrent(fe)&&$e()}).catch(()=>{})},[oe,Pe,mt,ct]),ba=s.useCallback(()=>{const Q=f.current;if(!Q)return;const fe=()=>{L("playing"),P("playMode"),Z(!0),Pe();try{Fr(),tr(Q).then(Ge=>{if(G.current)try{v.current?.("main",Ge)}catch{}})}catch{}const $e=ct.current;$e?.enabled&&($e?.volume??0)>0&&mt($e.volume)},ne=()=>{rA({ended:!!Q?.ended,completedByEnd:ee.current})||(L("paused"),He(),gt())},we=()=>{const $e=()=>{try{const Ge=le.current,ut=oA(Ge,he.current);if(ut!==null){he.current=ut,O(ut),Z(!0);const Ct=Ge?.[ut]&&Ge[ut].src;if(Ct&&Q){Nt(Q,Ct),vt(Q).catch(()=>{});return}}}catch{}L("stopped"),q(1);try{if(Q)try{Q.currentTime=0}catch{}}catch{}He(),Z(!1),gt();try{!Ue.current&&Ve.current&&Ve.current()}catch{}};if(me.current=$e,ke.current>0){Pe(),oe.waitPad(ke.current,"tail").then(Ge=>{oe.leave(),Ge&&$e()}).catch(()=>{});return}$e()};return Q.addEventListener("play",fe),Q.addEventListener("pause",ne),Q.addEventListener("ended",we),()=>{try{Q.removeEventListener("play",fe),Q.removeEventListener("pause",ne),Q.removeEventListener("ended",we),He()}catch{}}},[mt,gt,vt,ct,Pe,He,oe]);s.useEffect(()=>ba(),[ba]),s.useEffect(()=>{Ue.current=n},[n]),s.useEffect(()=>{Se.current=o},[o]),s.useEffect(()=>{if(n||Y!=="active")return;const Q=A.current;if(!Q)return;let fe=null;const ne=requestAnimationFrame(()=>{try{const we=Q.getTotalLength();if(!we)return;const $e=we*.2;Q.style.strokeDasharray=`${we-$e} ${$e}`;const Ge="triFlow_"+Math.random().toString(36).slice(2);fe=document.createElement("style"),fe.textContent=`@keyframes ${Ge}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${we}}}`,document.head.appendChild(fe),Q.style.animation=`${Ge} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(ne),fe?.remove()}},[Y,n]),s.useEffect(()=>{le.current=$},[$]),s.useEffect(()=>{he.current=N},[N]),s.useEffect(()=>{const Q=x.current,fe=w.current;if(!Q||!fe)return;let ne=null;const we=32,$e=60,Ge=()=>{try{const Ct=Array.from(Q.querySelectorAll(":scope > .button"));let xe=0;Ct.forEach(ze=>{if(ze===fe)return;const Je=ze.getBoundingClientRect();xe+=Je.width});const R=Q.getBoundingClientRect().width,J=Math.max(0,Math.floor(R-xe-8)),ge=it;if(!ge||J<=0){Array.from(fe.children).forEach(ze=>{try{ze.style.width=""}catch{}});return}let Le=Math.floor(J/ge);Le>$e&&(Le=$e),Le<we&&(Le=Math.max(we,Math.floor(J/ge))),Array.from(fe.querySelectorAll(".button")).forEach(ze=>{try{ze.style.width=`${Le}px`}catch{}})}catch{}},ut=requestAnimationFrame(Ge);try{ne=new ResizeObserver(()=>{requestAnimationFrame(Ge)}),ne.observe(Q),ne.observe(fe),window.addEventListener("resize",Ge)}catch{}return()=>{try{cancelAnimationFrame(ut)}catch{}try{ne&&(ne.disconnect(),ne=null)}catch{}try{window.removeEventListener("resize",Ge)}catch{}}},[$,T,it]),s.useEffect(()=>()=>{try{De.current&&(clearTimeout(De.current),De.current=null),Ye.current&&(clearTimeout(Ye.current),Ye.current=null)}catch{}},[]);const ja=(Q,fe)=>{U(Q),se(fe),ht(),F(nA(Q)),le.current=Q},La=()=>{P("playMode"),O(0),Z(!0)},no=async(Q,fe)=>{Re(!1),_.current=!1,Nt(Q,fe),await l1(Q),await at()!==!1&&(D(!1),La(),await vt(Q))},ko=async(Q,fe=!1)=>{const ne=f.current;D(!0),j("measuring_duration");try{const we=await Vd(Q,{timeoutMs:1e4,rejectOnError:!0});ja([{src:Q,objectUrl:null,duration:we}],we),j("ready"),fe&&ne&&await no(ne,Q)}finally{_.current=!1,D(!1)}},Bo=async(Q,fe=!1)=>{const ne=f.current;D(!0),j("measuring_duration");try{const we=await Promise.all(Q.map(Ge=>Vd(Ge,{timeoutMs:1e4})));if(!G.current)return;const $e=Q.map((Ge,ut)=>({src:Ge,objectUrl:null,duration:we[ut]||0}));ja($e,iA($e)),j("ready"),fe&&ne&&$e.length>0&&await no(ne,$e[0].src)}finally{_.current=!1,D(!1)}},Wt=async(Q=!1,fe=!0)=>{const ne=f.current,we=t?Array.isArray(t)?t:[t]:[];if(!we||we.length===0||!we.some(Boolean))return!1;if(_.current)return null;_.current=!0,fe&&D(!0),j("resolving");try{const $e=sA(t,a,Rn),Ge=[];let ut=0;for(const Ct of $e){let xe=Ct.src??null,R=null;if(!xe&&Ct.resolvedPath){try{j("getting_signed_url"),xe=await zr(Ct.resolvedPath)}catch{xe=null}if(!G.current)return!1;if(!xe)try{j("downloading");const ge=await Pn(Ct.resolvedPath);if(!G.current)return!1;if(ge){const Le=ge instanceof Blob?ge:new Blob([ge]);R=b.track(URL.createObjectURL(Le)),xe=R}}catch{j("error");try{je(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),P("active")}catch{}}}if(!xe)continue;let J=0;try{j("measuring_duration"),J=await Vd(xe,{timeoutMs:3e3})}catch{J=0}if(!G.current){if(R)try{URL.revokeObjectURL(R)}catch{}for(const ge of Ge)if(ge.objectUrl)try{URL.revokeObjectURL(ge.objectUrl)}catch{}return!1}ut+=J||0,Ge.push({...Ct,src:xe,objectUrl:R,duration:J})}if(ja(Ge,ut),Ge.length>0&&Q&&ne){const Ct=Ge[0];Re(!1);try{b.keepOnly(Ge.map(xe=>xe.objectUrl))}catch{}if(j("ready"),_.current=!1,Ct.src&&ne)try{if(Nt(ne,Ct.src),await l1(ne),await at()===!1)return!1;fe&&D(!1),La(),ne&&await vt(ne)}catch{fe&&D(!1)}else fe&&D(!1);P("playMode"),O(0),Z(!0)}return Ge.length>0}finally{_.current=!1,fe&&D(!1),j($e=>$e==="ready"?"ready":"idle")}},qa=async Q=>{const fe=oe.isRunning();if(Q.paused&&!fe){if(ee.current){await Xt();return}const ne=oe.resume();if(ne){if(L("playing"),ne.phase==="tail"){ya(ne.\uD750\uB978);return}await vt(Q,3,50,ne.\uD750\uB978);return}await vt(Q),L("playing")}else oe.pause(),wt(),Q.pause(),L("paused"),fe&&(He(),gt())},Gt=async()=>{const Q=f.current;if(!(!Q&&!Oe)){if(Oe){const fe=window.speechSynthesis;if(Y==="active"){const ne=Ir(),we=Array.isArray(i)?i.filter(Boolean):i?[i]:[];if(ne&&we.length>0){if(_.current)return;P("load"),D(!0),j("synthesizing"),_.current=!0;try{const $e=await Promise.all(we.map(Ge=>Promise.resolve(ne(Ge))));$e.length>1?await Bo($e,!0):await ko($e[0],!0)}catch{_.current=!1,D(!1),P("active"),et(we.length>0?we:void 0)}return}et(we.length>0?we:void 0);return}if(Y==="playMode"){const ne=!!fe&&(fe.speaking||fe.paused)&&!(Q&&(Q.currentSrc||Q.getAttribute("src")));if(Q&&!ne){await qa(Q);return}try{if(fe&&fe.paused)try{tt("tts"),fe.resume(),L("playing")}catch{}else try{fe.pause(),L("paused")}catch{}}catch{}}return}if(Y==="active"){if(n&&Array.isArray(le.current)&&le.current.length>0){const ne=le.current[0];try{if(ne.src&&Q)try{Nt(Q,ne.src),La(),Q&&await vt(Q)}catch{}La();return}catch{}}P("load");let fe;try{fe=await Wt(!0)}catch{fe=!1}if(fe===!1&&G.current){try{je(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}P("active")}return}if(Y!=="load"&&(Y==="playMode"||Y==="active"))try{Q&&await qa(Q)}catch(fe){(fe instanceof Error||typeof fe=="object"&&fe&&"name"in fe)&&fe.name}}},Xt=async()=>{const Q=f.current;if(Q)try{const fe=le.current;if(Array.isArray(fe)&&fe.length>1){await Ot(0);return}Re(!1);try{Q.currentTime=0}catch{}Q&&await vt(Q),L("playing"),P("playMode")}catch{}},io=()=>{wt(),Dt(),Ze.current?.();const Q=f.current;try{if(Q){try{Q.pause()}catch{}try{Q.currentTime=0}catch{}}}catch{}gt(),L("stopped"),P("active"),q(0),Z(!1)},ga=async(Q,{sameSegment:fe=!1}={})=>{wt();const ne=oe.generation(),we=f.current,$e=le.current?.[Q]?.src;try{if(Re(!1),O(Q),Z(!0),he.current=Q,!$e||!we||(fe||ht(),Nt(we,$e),!fe&&await at()===!1)||!oe.isCurrent(ne)||(await vt(we),!oe.isCurrent(ne)))return;L("playing"),P("playMode")}catch{}},Ya=async()=>{const Q=le.current,fe=he.current||0;if(!Q||fe<=0){await Xt();return}await ga(fe-1)},Ao=async()=>{const Q=le.current,fe=he.current||0;if(!Q||fe>=Q.length-1){io();return}await ga(fe+1)},Ka=()=>{if(ee.current)return;const Q=200,fe=340;Re(!0),wt(),Dt();try{q(1)}catch{}lt(1);try{ie("hold")}catch{}try{const ne=f.current,we=Oe&&!!ne?.src;if(!Oe||we){if(ne){ne.pause();try{ne.currentTime=0}catch{}}}else ft();gt()}catch{}try{L("stopped")}catch{}if(Z(!1),!Ue.current)try{Ye.current&&(clearTimeout(Ye.current),Ye.current=null),Ye.current=setTimeout(()=>{try{ie("out")}catch{}Ye.current=setTimeout(()=>{try{typeof Se.current=="function"&&Se.current(!0)}catch{}try{ie("idle")}catch{}Ye.current=null},fe)},Q)}catch{}};s.useEffect(()=>{Ve.current=Ka});const Jt=s.useCallback(()=>je(""),[]),Ot=async Q=>{(le.current||[])[Q]&&await ga(Q,{sameSegment:Q===he.current})},Qt=W==="playing",Ma=s.useMemo(()=>{if(!T||T.length<=1)return T;const Q=T[N];return Q?[Q]:T},[T,N]),Ut=n===!0;s.useEffect(()=>{try{const Q=f.current;Q&&typeof Q.playbackRate=="number"&&st(Q)}catch{}},[be,st]);const fa=s.useRef({raf:null,timer:null});s.useEffect(()=>{const Q=f.current;if(!Q)return;const fe=Math.max(0,Math.min(1,Ae)),ne=fa.current,we=()=>{ne.raf!==null&&(cancelAnimationFrame(ne.raf),ne.raf=null),ne.timer!==null&&(clearTimeout(ne.timer),ne.timer=null)};we();const $e=ar(Q);if(Q.paused||Math.abs($e-fe)<.001||typeof requestAnimationFrame!="function"){try{$a(Q,fe)}catch{}return}const Ge=performance.now(),ut=()=>{const Ct=Math.min(1,(performance.now()-Ge)/150);try{$a(Q,$e+(fe-$e)*Ct)}catch{}ne.raf=Ct<1?requestAnimationFrame(ut):null};return ne.raf=requestAnimationFrame(ut),ne.timer=setTimeout(()=>{we();try{$a(Q,fe)}catch{}},200),we},[Ae]);const $t=K==="hold",de=K==="out",Be=Y==="playMode"&&!E&&!pe||$t||de,Me=W!=="stopped"||$t||de,Qe=W==="paused",Fe=Math.max(0,Math.min(100,(z||0)*100)),Xe=Ne("audio-player__fill",Be?"is-visible":"",Me?"is-expanded":"",Qe?"is-paused":"",de?"is-out":"");return r.jsxs("div",{className:`audio-player ${Ut?"is-disabled":""}${l?` ${l}`:""}`,role:"group","aria-label":typeof m=="string"?m:void 0,children:[r.jsxs("div",{className:`audio-player__panel ${Qt?"is-playing":""} ${E?"is-loading":""} ${Y!=="default"?"is-revealed":""}`,children:[E?r.jsxs("div",{className:"audio-player__loading",role:s1[I]?"status":void 0,"aria-live":s1[I]?"polite":"off",children:[r.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),r.jsx("span",{className:"audio-player__loading-text",children:p(`training.audioStatus.${I}`,{defaultValue:uA[I]})})]}):null,Y==="active"?r.jsx("button",{className:"audio-player__button",type:"button",disabled:Ut,onClick:()=>{V.current=Wi(),S(),Gt()},"aria-label":typeof m=="string"?m:p("training.listen","\uB4E3\uAE30"),onMouseEnter:k,onMouseLeave:S,onFocus:k,onBlur:S,children:r.jsx("span",{ref:y,className:"audio-player__button-triangle-wrap",children:r.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:r.jsx("path",{ref:A,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,B&&r.jsx(Ea,{anchorRect:B,text:typeof m=="string"&&m?m:p("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),r.jsxs("div",{className:`audio-player__play ${Y==="playMode"||Qt?"is-visible":""}`,inert:!(Y==="playMode"||Qt)||void 0,children:[r.jsxs("div",{ref:x,className:"audio-player__buttons",children:[r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:Ya,ariaLabel:p("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:Y!=="playMode"}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:Qt?"pause":"play",onClick:Gt,ariaLabel:p("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),"aria-pressed":Qt,width:"60px",variant:"transparent-white",disabled:Y!=="playMode"}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:io,ariaLabel:p("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:Y!=="playMode"}),it>1?r.jsx("div",{ref:w,className:"audio-player__source-buttons",children:Array.from({length:it}).map((Q,fe)=>r.jsx(Ce,{htmlType:"button",size:32,type:"dot",shape:"pill",useBorder:!1,label:String(fe+1),onClick:()=>{try{Ot(fe)}catch{}},ariaLabel:p("training.sourcePlay",{n:fe+1}),variant:"transparent-white",selected:H&&N===fe,disabled:Y!=="playMode"||!(Array.isArray($)&&$[fe]),showTooltipInfo:!0},fe))}):null,!Array.isArray($)||$.length<=1?r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:Xt,ariaLabel:p("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:Y!=="playMode"}):null,r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:Ao,ariaLabel:p("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:Y!=="playMode"}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:Ka,ariaLabel:p("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:Y!=="playMode"})]}),r.jsxs("div",{className:"audio-player__slider",children:[r.jsx("div",{className:Xe,ref:g,style:{left:`${Fe}%`},"aria-hidden":"true"}),(c||u)&&r.jsx(cA,{segments:Ma,progress:z,totalDuration:te,waveProgressRef:ve,showSoundWaveForm:c,leadInMs:d,tailMs:h,trackDurationSec:$?.[N]?.duration??0,noiseSrc:u&&C?.settings.enabled&&re>0?We:null,noiseRatio:C?Sr(C.settings):0,noiseSpeed:C?.settings.speed??1,mainVolume:X,onReadyChange:rt})]})]}),r.jsx("audio",{ref:f,crossOrigin:"anonymous",preload:"auto"})]}),!c&&r.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[r.jsx(ot,{icon:"triangle-alert",size:14}),p("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),r.jsx(Wo,{message:ue,position:ye,onClose:Jt})]})}var CA=".ihabdevteam-core-scope .tooltip-textbox{background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;max-width:520px;padding:var(--spacing-content)}.ihabdevteam-core-scope .tooltip-textbox__root{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-textbox__box{background:transparent}.ihabdevteam-core-scope .tooltip-textbox__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .tooltip-textbox__text{color:var(--color-darkGray);overflow-wrap:anywhere;white-space:normal;word-break:keep-all}.ihabdevteam-core-scope .tooltip-textbox__line{align-items:center;display:flex;gap:var(--spacing-s);margin-bottom:0;min-height:60px;padding:10px 0}.ihabdevteam-core-scope .tooltip-textbox__line:last-child{margin-bottom:0}.ihabdevteam-core-scope .tooltip-textbox__line:not(:last-child){border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .tooltip-textbox.is-dark .tooltip-textbox__line:not(:last-child){border-bottom-color:hsla(0,0%,100%,.06)}.ihabdevteam-core-scope .tooltip-textbox__marker{--marker-pos:50%;align-items:center;background-color:var(--color-main);background:color-mix(in srgb,var(--color-main) 50%,var(--color-sub) 50%);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:#fff;display:inline-flex;height:24px;justify-content:center;min-width:24px}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .tooltip-textbox__marker{background:color-mix(in srgb,var(--color-main) calc(100% - var(--marker-pos)),var(--color-sub) var(--marker-pos))}}.ihabdevteam-core-scope .tooltip-textbox__line-number{color:#fff;min-width:auto;text-align:center}.ihabdevteam-core-scope .tooltip-textbox__line-text{flex:1 1 auto}.ihabdevteam-core-scope .tooltip-textbox__buttons{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:center;margin-top:10px;position:relative}.ihabdevteam-core-scope .tooltip-textbox.is-dark{background:var(--color-darkGray);border-color:var(--color-gray)}.ihabdevteam-core-scope .tooltip-textbox.is-dark .tooltip-textbox__text{color:var(--color-deepWhite)}";ce(CA);function Nr(e){const{t}=_e.useTranslation(),{text:a,label:o,anchorRect:n=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:h,decrease:p,canIncrease:m,canDecrease:C,fontSize:v,lineHeight:f}=yi({storageKey:"tooltip-fontScale"}),g=s.useCallback(()=>d(A=>A==="dark"?"light":"dark"),[]),x=s.useCallback(A=>{try{A.stopPropagation()}catch{}try{typeof i=="function"&&i()}catch{}},[i]),b=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],w={fontSize:`${v}px`,lineHeight:`${f}px`,"--tt-line-height":`${f}px`,"--tt-marker-size":"28px"},_=r.jsxs("div",{className:`tooltip-textbox__root ${u==="dark"?"is-dark":""}`,children:[r.jsxs("div",{className:"tooltip-textbox__box",children:[o&&r.jsx("div",{className:"tooltip-textbox__label body-2b",children:o}),r.jsx("div",{className:"tooltip-textbox__text body-1",style:w,children:b.map((A,y)=>r.jsxs("div",{className:"tooltip-textbox__line",children:[b.length>1?r.jsx("div",{className:"tooltip-textbox__marker",children:r.jsx("span",{className:"tooltip-textbox__line-number button-1",children:y+1})}):null,r.jsx("span",{className:"tooltip-textbox__line-text",children:A})]},y))})]}),r.jsxs("div",{className:"tooltip-textbox__buttons",children:[r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:p,ariaLabel:t("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!C}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:h,ariaLabel:t("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!m}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:u==="dark"?"moon":"sun-medium",onClick:g,ariaLabel:t("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:u==="dark"?"transparent-white":"transparent-gray"}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:x,ariaLabel:t("common.close","\uB2EB\uAE30"),variant:u==="dark"?"transparent-white":"transparent-gray"})]})]});return n?r.jsx(xa,{anchorRect:n,className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,onClose:i,closeOnOutsideClick:l,isMobilePopup:c,ariaLabel:o||t("tooltip.textbox","\uBCF8\uBB38"),children:_}):r.jsx("div",{className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,children:_})}var xA=".ihabdevteam-core-scope .training-page-bottom{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;flex:0 0 auto;gap:var(--spacing-s);justify-content:space-between;padding:12px 18px calc(12px + env(safe-area-inset-bottom));width:100%;z-index:5}.ihabdevteam-core-scope .pp-bottom__left{align-items:center;display:flex;gap:var(--spacing-m)}.ihabdevteam-core-scope .pp-bottom__right{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .pp-bottom__meters{border:1px solid var(--color-whiteLine);border-radius:14px;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;height:56px;justify-content:center;padding:8px 12px}.ihabdevteam-core-scope .pp-bottom__meter{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-label{color:var(--color-gray);min-width:28px}.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:none}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:flex}@media (min-width:768px){.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:block}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:none}}@media (max-width:1024px){.ihabdevteam-core-scope .pp-bottom__meters{height:50px;padding:4px 12px}}@media (max-width:768px){.ihabdevteam-core-scope .pp-bottom__meters{height:46px;padding:2px 10px}}.ihabdevteam-core-scope .pp-bottom__tooltip-trigger{display:inline-block}.ihabdevteam-core-scope .pp-bottom__meters--floating{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-trigger{display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .training-steps{box-sizing:border-box;display:flex;flex-direction:column;overflow:visible;width:100%}.ihabdevteam-core-scope .training-step{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--spacing-m);overflow:visible;width:100%}.ihabdevteam-core-scope .training-step__content{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;gap:var(--spacing-s);gap:var(--spacing-m);min-width:0;overflow:visible;width:100%}.ihabdevteam-core-scope .training-step__title{color:#0b2b35;color:var(--text,#0b2b35);margin:0;text-align:left}.ihabdevteam-core-scope .training-step__locked-hint{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .training-step__buttons{-ms-overflow-style:none;align-items:stretch;display:flex;flex-direction:row;gap:var(--spacing-content);overflow-x:auto;scrollbar-width:none;width:100%}.ihabdevteam-core-scope .training-step__buttons::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .training-step__buttons>*{align-self:stretch;flex:1 1 0;margin:0;min-width:0}.ihabdevteam-core-scope .training-step__buttons.training-step__buttons--wrap-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow-x:visible}.ihabdevteam-core-scope .training-step__buttons.training-step__buttons--wrap-3>*{width:100%}.ihabdevteam-core-scope .training-step__buttons .button{align-items:center;align-self:stretch;display:flex}@media (max-width:640px){.ihabdevteam-core-scope .training-step{flex-direction:row;gap:10px}}.ihabdevteam-core-scope .training-step__cards{box-sizing:border-box;display:flex;gap:var(--spacing-s);width:100%}@media (max-width:767px){.ihabdevteam-core-scope .training-step__cards{grid-gap:var(--spacing-s);display:grid;gap:var(--spacing-s);grid-template-columns:repeat(3,1fr)}}.ihabdevteam-core-scope .training-step__listen-sticky{width:100%}.ihabdevteam-core-scope .training-step.training-step--has-nested .training-step__content{margin-bottom:100px}.ihabdevteam-core-scope .training-steps>.training-step:last-child .training-step__content{margin-bottom:0}.ihabdevteam-core-scope .training-step:not(.training-step--last) .training-step__content{margin-bottom:var( --margin-page)}.ihabdevteam-core-scope .training-step.training-step--last .training-step__content{margin-bottom:0}";ce(xA);var _A='.ihabdevteam-core-scope .ts-bullet{--dot-size:28px;--dot-gap:10px;align-items:center;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start;position:relative;width:28px;width:var(--dot-size)}.ihabdevteam-core-scope .bullet__dot{align-items:center;border:2px solid rgba(43,138,125,.12);border-radius:50%;display:flex;height:var(--dot-size);justify-content:center;width:var(--dot-size);z-index:2}.ihabdevteam-core-scope .bullet__icon{align-items:center;color:var(--color-darkGray);display:inline-flex;height:20px;justify-content:center;position:relative;width:20px;z-index:1}.ihabdevteam-core-scope .bullet__icon-img{display:block;height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.ihabdevteam-core-scope .bullet__icon-mask{background-color:currentColor;height:100%;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.ihabdevteam-core-scope .bullet__icon-svg svg{fill:currentColor;height:100%;width:100%}.ihabdevteam-core-scope .ts-bullet__line{background:var(--color-whiteLine);border-radius:var(--radius-xs);bottom:20px;left:50%;position:absolute;top:calc(var(--dot-size) + var(--dot-gap));transform:translateX(-50%);width:2px;z-index:1}.ihabdevteam-core-scope .ts-bullet--done .bullet__icon{color:transparent}.ihabdevteam-core-scope .ts-bullet--active .bullet__icon{color:#fff}.ihabdevteam-core-scope .ts-bullet--disabled .bullet__icon{color:transparent}.ihabdevteam-core-scope .ts-bullet--done .bullet__dot{border:2px solid var(--color-main)}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot{background-color:var(--color-main);position:relative}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:after,.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:before{animation:bullet-ripple 3s cubic-bezier(.2,.6,.2,1) infinite;background:var(--color-main);border-radius:50%;content:"";inset:0;opacity:.5;pointer-events:none;position:absolute}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:after{animation-delay:1.5s;opacity:.3}@keyframes bullet-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(2.2)}}.ihabdevteam-core-scope .ts-bullet--disabled .bullet__dot{border:2px solid var(--color-whiteLine)}.ihabdevteam-core-scope .ts-bullet--done .bullet__line{background-color:var(--color-main)}.ihabdevteam-core-scope .ts-bullet--active .bullet__line,.ihabdevteam-core-scope .ts-bullet--disabled .bullet__line{background-color:var(--color-whiteLine)}.ihabdevteam-core-scope .training-step--last .ts-bullet__line,.ihabdevteam-core-scope .training-step.training-step--last .ts-bullet__line{display:none}@media (max-width:1024px){.ihabdevteam-core-scope .ts-bullet{--dot-size:26px}}@media (max-width:768px){.ihabdevteam-core-scope .ts-bullet{--dot-size:24px}}';ce(_A);function Wd({state:e="disabled"}){const{t}=_e.useTranslation();return r.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[r.jsx("div",{className:"bullet__dot",children:r.jsx(ot,{icon:"chevron-right",label:t("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),r.jsx("div",{className:"ts-bullet__line"})]})}function u1(e,t,a){const o=s.useRef(t),n=s.useRef(a);s.useEffect(()=>{o.current=t,n.current=a}),s.useEffect(()=>{if(!e||typeof document>"u")return;let i=null,l=10;const c=()=>{i=null;const u=o.current(),d=u?Array.from(u.querySelectorAll(Oa)).find(h=>!h.closest('[aria-hidden="true"]')):void 0;if(d){try{d.focus()}catch{}if(document.activeElement===d)return}--l>0&&(i=requestAnimationFrame(c))};return i=requestAnimationFrame(c),()=>{i!==null&&cancelAnimationFrame(i);const u=document.activeElement;if(!u||u===document.body||!document.contains(u)||u.closest(".tooltip-content")){const d=n.current();if(d)try{d.focus()}catch{}}}},[e])}var yA=".ihabdevteam-core-scope .training-step__title-row{align-items:center;display:flex;gap:var(--spacing-xs);padding-right:72px;position:relative;width:100%}.ihabdevteam-core-scope .training-step__title-row .training-step__title{color:var(--color-black);margin:0;padding:0}.ihabdevteam-core-scope .training-step__title--faded .training-step__title-text{background-color:var(--color-darkWhite);border-radius:var(--radius-xs);color:transparent;opacity:1;transition:color .14s ease,opacity .14s ease}.ihabdevteam-core-scope .training-step__title-row .title-controls{align-items:center;display:flex;gap:6px;margin-left:auto}.ihabdevteam-core-scope .training-step__title-row .title-controls .title-buttons{align-items:center;display:inline-flex;gap:6px;justify-content:center;overflow:visible;position:absolute;right:0;top:50%;transform:translateY(-50%)}.ihabdevteam-core-scope .training-step__title-row .title-controls .title-buttons .button28{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .training-step__title-row--disabled .training-step__title,.ihabdevteam-core-scope .training-step__title-row--done .training-step__title{pointer-events:none}.ihabdevteam-core-scope .training-step__title-row--disabled .title-controls{opacity:.6;pointer-events:none}.ihabdevteam-core-scope .training-step__title-row--active .title-controls,.ihabdevteam-core-scope .training-step__title-row--done .title-controls{opacity:1;pointer-events:auto}.ihabdevteam-core-scope .training-step__title-row--disabled .training-step__title,.ihabdevteam-core-scope .training-step__title-row--done .training-step__title{color:var(--color-disabled)}.ihabdevteam-core-scope .training-step__title-row--active .training-step__title{color:var(--color-black)}";ce(yA);function Gd({title:e,children:t,className:a="",state:o="disabled",usePreviewTextBtn:n=!1,onPreviewTextBtn:i,previewText:l=null,useFaded:c,usePlayAllBtn:u=!1,onPlayAll:d,playAllActive:h=!1}){const{t:p}=_e.useTranslation(),m=sa("(max-width: 767px)"),C=`training-step__title h4 ${c&&o==="disabled"?"training-step__title--faded":""} ${a}`.trim(),v=`training-step__title-row training-step__title-row--${o}`.trim(),f=s.useRef(null),[g,x]=s.useState(!1),[b,w]=s.useState(null),[_,A]=s.useState(null);u1(g&&!!b,()=>{if(typeof document>"u")return null;const E=Array.from(document.querySelectorAll(".tooltip-content"));for(let D=E.length-1;D>=0;D--)if(E[D].querySelector(".tooltip-textbox__root"))return E[D];return null},()=>f.current?.querySelector("button")??null);const y=s.useRef(i);s.useEffect(()=>{y.current=i});const B=s.useMemo(()=>l==null?"":typeof l=="string"||typeof l=="number"?String(l):Array.isArray(l)&&l.every(E=>typeof E=="string"||typeof E=="number")?l.join(""):"",[l]),k=s.useCallback(()=>{x(!1),w(null),A(null)},[]);s.useEffect(()=>{if(!g)return;let E;try{typeof y.current=="function"&&(E=y.current())}catch{}if(E===!1){k();return}A(typeof E<"u"&&E!==null?E:null)},[B]);const S=s.useCallback(()=>{let E;try{typeof i=="function"&&(E=i())}catch{}if(E!==!1){if(A(typeof E<"u"&&E!==null?E:l),!f.current){x(D=>!D);return}if(g)x(!1),w(null),A(null);else{const D=f.current.getBoundingClientRect();w(D),x(!0)}}},[i,l,g]);return r.jsxs("div",{className:v,children:[r.jsx("p",{className:C,children:r.jsx("span",{className:"training-step__title-text",children:e??t})}),n||u?r.jsxs("div",{className:"title-controls",children:[r.jsxs("div",{className:"title-buttons",children:[u&&r.jsx(Ce,{htmlType:"button",size:32,type:m?"dot":"bar",icon:"play-circle",label:m?void 0:p("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:p("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:h,onClick:d,variant:o==="disabled"?"disabled":"default",disabled:o==="disabled"||h,onDisabledClick:h&&o!=="disabled"?()=>{}:void 0}),n&&r.jsx("div",{ref:f,children:r.jsx(Ce,{htmlType:"button",size:32,type:m?"dot":"bar",icon:"eye",label:m?void 0:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),onClick:S,className:g?"is-selected":void 0,"aria-expanded":g,"aria-haspopup":"dialog",variant:o==="disabled"?"disabled":"default",disabled:!l&&typeof i!="function"})})]}),g&&r.jsx(Nr,{text:_??l,label:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:b,onClose:k,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function Ud(e,t){return typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled"}function wo({index:e,stepIndex:t,isLast:a=!1,title:o="",titleProps:n={},children:i,className:l="",onDone:c=void 0,useTitleFaded:u=void 0,lockedHint:d}){const{t:h}=_e.useTranslation(),[p,m]=s.useState(()=>Ud(e,t));s.useEffect(()=>{const y=Ud(e,t);if(y!==p){const B=setTimeout(()=>m(y),0);return()=>clearTimeout(B)}},[e,t,p]);const C=s.useCallback((...y)=>{Ud(e,t)==="done"||p==="done"||typeof c=="function"&&c(...y)},[e,t,p,c]),[v,f]=s.useState(!1),[g,x]=s.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),b=s.useCallback(y=>{if(!y)return null;try{const B=y;if(typeof y=="object"&&(B.currentTarget||B.target)&&(B.nativeEvent||B.type)){const E=B.currentTarget??B.target;if(E&&typeof E.getBoundingClientRect=="function")return E.getBoundingClientRect()}if(y instanceof DOMRect)return y;const k=y;if(k&&typeof k.getBoundingClientRect=="function")return k.getBoundingClientRect();const S=y?.current;return S&&typeof S.getBoundingClientRect=="function"?S.getBoundingClientRect():null}catch{return null}},[]),w=s.useCallback((y,{text:B="",label:k="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:S=!1,alignX:E="center",alignY:D="top"}={})=>{const I=b(y);x({text:B,label:k,anchorRect:I,backdrop:S,alignX:E,alignY:D}),f(!0)},[b]),_=s.useCallback(()=>{f(!1),x(y=>({...y,anchorRect:null}))},[]),A=s.Children.map(i,y=>{if(s.isValidElement(y)){const B=y;if(typeof B.type=="string")return B;const k=B.props??{},S=typeof k.onDone=="function"?k.onDone:C,E=typeof k.disabled=="boolean";let D=p==="disabled";return E&&(D=!!k.disabled),s.cloneElement(B,{onDone:S,disabled:D,showTooltip:w,hideTooltip:_})}return y});return r.jsxs("div",{className:`training-step training-step--${p} ${a?"training-step--last":""} ${l}`,"aria-current":p==="active",children:[r.jsx(Wd,{state:p}),r.jsxs("div",{className:"training-step__content",children:[r.jsx(Gd,{state:p,title:o,...n,useFaded:u}),p==="disabled"&&d&&typeof e=="number"&&typeof t=="number"&&e===t+1&&r.jsx("p",{className:"training-step__locked-hint caption-1",role:"status",children:d}),A]}),v?r.jsx(xa,{anchorRect:g.anchorRect,backdrop:g.backdrop,onClose:_,ariaLabel:h("tooltip.textbox","\uBCF8\uBB38"),children:r.jsx(Nr,{text:g.text,onClose:_})}):null]})}var wA='.ihabdevteam-core-scope .training-text-box{background:var(--color-darkWhite);border:1px solid var(--color-deepWhite);border-radius:var(--radius-m);color:var(--color-black);display:flex;flex-direction:column;max-width:100%;min-height:160px;overflow:visible;overflow-wrap:anywhere;padding:var(--spacing-content);position:relative;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .training-text-box--disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .training-text-box--disabled .training-text-box__inner{visibility:hidden}.ihabdevteam-core-scope .training-text-box--disabled:after{content:"";pointer-events:none;position:absolute;z-index:5}.ihabdevteam-core-scope .training-text-box__preview{align-items:center;display:flex;justify-content:center;left:50%;pointer-events:auto;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:60}.ihabdevteam-core-scope .training-text-box__buttons{border-radius:999px;gap:4px;height:28px;left:0;right:0}.ihabdevteam-core-scope .training-text-box__area,.ihabdevteam-core-scope .training-text-box__buttons{align-items:center;box-sizing:border-box;display:flex;justify-content:center;pointer-events:auto;position:relative;z-index:40}.ihabdevteam-core-scope .training-text-box__area{flex:1 1 auto;margin:0 auto;min-height:0;text-align:center;width:100%}.ihabdevteam-core-scope .training-text-box--active,.ihabdevteam-core-scope .training-text-box--done{background-color:var(--color-white);border-color:var(--color-main);pointer-events:auto;transition:box-shadow .18s ease,transform .18s ease,opacity .16s ease;-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.ihabdevteam-core-scope .training-text-box.is-dark{background:var(--color-darkGray);border:1px solid var(--color-black);color:var(--color-deepWhite)}.ihabdevteam-core-scope .training-text-box .training-text-box__inner{display:block;overflow-wrap:anywhere;text-align:center;white-space:normal;width:100%;word-break:keep-all}.ihabdevteam-core-scope .training-text-box.is-dark .tooltip-textbox__text,.ihabdevteam-core-scope .training-text-box.is-dark .training-text-box__inner{color:var(--color-deepWhite)}';ce(wA);function qd({context:e,state:t="disabled",theme:a="light"}){const{t:o}=_e.useTranslation(),[n,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(j=>j==="dark"?"light":"dark"),{increase:d,decrease:h,canIncrease:p,canDecrease:m,fontSize:C,lineHeight:v}=yi({storageKey:"textbox_fontScale"}),[f,g]=s.useState(""),x=s.useRef(null),b=s.useRef(!1),w=s.useCallback(()=>{b.current=Wi()&&!!x.current&&x.current.contains(document.activeElement),i("active")},[]),_=s.useCallback(()=>g(""),[]),A=j=>{try{g(j)}catch{}},y=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");s.useEffect(()=>{if(t!=="disabled"){const j=setTimeout(()=>i(t),0);return()=>clearTimeout(j)}},[t]);const B=s.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]),[k,S]=s.useState(B);k!==B&&(S(B),i("disabled"));const E=t==="disabled"?n:t,D=E==="disabled"?"training-text-box--disabled":E==="active"?"training-text-box--active":E==="done"?"training-text-box--done":"",I=s.useMemo(()=>({fontSize:`${C}px`,lineHeight:`${v}px`}),[C,v]);return s.useEffect(()=>{if(E==="disabled"||!b.current)return;b.current=!1;const j=document.activeElement;j&&j!==document.body||x.current?.querySelector(".training-text-box__buttons button")?.focus()},[E]),r.jsxs("div",{ref:x,className:`training-text-box ${D} ${E!=="disabled"&&l==="dark"?"is-dark":""}`,children:[E==="disabled"&&r.jsx("div",{className:"training-text-box__preview",children:r.jsx(Ce,{htmlType:"button",size:48,type:"bar",onClick:w,icon:"eye",ariaLabel:o("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),label:o("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),useBorder:!1})}),r.jsx("div",{className:"training-text-box__area","aria-hidden":E==="disabled",children:r.jsx("span",{className:"training-text-box__inner h3",style:I,children:B})}),E!=="disabled"&&r.jsxs("div",{className:"training-text-box__buttons","aria-hidden":E==="disabled",children:[r.jsx(Ce,{htmlType:"button",size:32,type:"dot",onClick:h,onDisabledClick:()=>A(o("training.fontSizeMin","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.")),ariaLabel:o("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),icon:"minus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!m,useBorder:!1,showTooltipInfo:!0,...!y&&{width:"60px"}}),r.jsx(Ce,{htmlType:"button",size:32,type:"dot",onClick:d,onDisabledClick:()=>A(o("training.fontSizeMax","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.")),ariaLabel:o("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),icon:"plus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!p,useBorder:!1,showTooltipInfo:!0,...!y&&{width:"60px"}}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:l==="dark"?"moon":"sun-medium",onClick:u,ariaLabel:o("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:l==="dark"?"transparent-white":"transparent-gray"})]}),r.jsx(Wo,{message:f,position:"top",onClose:_})]})}function Ko(e){return e==="active"||e==="done"}function rs({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,useTitleFaded:i,onDone:l,onChange:c,answer:u,wrongAnswers:d,choices:h,multiSelect:p=!1,correctCount:m=0,useDisabledCovered:C=!1,choiceIcons:v,shuffleChoices:f=!0}){const{t:g}=_e.useTranslation(),x=n??g("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),b=typeof e=="number"?e:-1,w=typeof t!="number"?"disabled":b<t?"done":b===t?"active":"disabled",_=Array.isArray(h)&&h.length?h:typeof u<"u"?[u].concat(Array.isArray(d)?d:[]):void 0,A=d?d.join("||"):"",y=h?h.join("||"):"",[B,k]=s.useState(()=>Array.isArray(_)?f?nt(_):_.slice():void 0);s.useEffect(()=>{Array.isArray(_)&&_.length?k(f?nt(_):_.slice()):k(void 0)},[u,A,y,f]);const[S,E]=s.useState(null),[D,I]=s.useState(()=>new Set);s.useEffect(()=>{E(null),I(new Set)},[y,u,A]);const j=s.useRef(void 0);s.useEffect(()=>{const M=j.current;typeof M=="number"&&typeof t=="number"&&typeof e=="number"&&M>=e&&t<e&&(E(null),I(new Set)),j.current=t},[t,e]);const W=s.useCallback(M=>{if(!Ko(w))return;const z=B?.[M];if(z==null)return;const q=z;if(p){const Y=new Set(D);Y.has(q)?Y.delete(q):Y.add(q),I(Y),typeof c=="function"&&c({selectedValues:[...Y],__ts:Date.now()}),typeof l=="function"&&l({selectedValues:[...Y],__ts:Date.now()})}else E(q),typeof c=="function"&&c({selectedIndex:M,selectedValue:q,__ts:Date.now()}),typeof l=="function"&&l({selectedIndex:M,selectedValue:q,__ts:Date.now()})},[B,w,p,c,D]),L=`training-step__buttons${Array.isArray(B)&&B.length>3?" training-step__buttons--wrap-3":""}`;return r.jsx(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:x,useTitleFaded:i,children:r.jsx("div",{className:L,children:Array.isArray(B)&&B.length>0?B.map((M,z)=>r.jsx(Ce,{htmlType:"button",size:56,type:"bar",onClick:()=>W(z),ariaLabel:String(M),label:M,useLabel:!0,icon:v?v[String(M)]:void 0,variant:"default",disabled:w==="disabled",selected:p?D.has(M):S===M,useDisabledCovered:C,minWidth:0},String(M))):null})})}function ns({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,onDone:i,onChange:l,context:c,demoSelected:u}){const{t:d}=_e.useTranslation(),h=n??d("training.confirmTitle","\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694."),p=typeof e=="number"?e:-1,m=typeof t!="number"?"disabled":p<t?"done":p===t?"active":"disabled",C=c&&typeof c=="object"?c.sentence||"":typeof c=="string"?c:"",v=c&&typeof c=="object"?c.choices:void 0,[f,g]=s.useState(u??null),x=`${String(C)}\0${JSON.stringify(v??null)}`,[b,w]=s.useState(x);b!==x&&(w(x),u==null&&g(null));const[_,A]=s.useState(u);Object.is(_,u)||(A(u),g(u??null));const y=s.useRef(void 0);s.useEffect(()=>{const E=y.current;typeof E=="number"&&typeof t=="number"&&typeof e=="number"&&E>=e&&t<e&&u==null&&g(null),y.current=t},[t,e,u]);const B=s.useCallback(E=>{const D=typeof E=="object"&&E!==null?Object.assign({},E,{__ts:Date.now()}):{value:E,__ts:Date.now()};typeof l=="function"&&l(D),Ko(m)&&typeof i=="function"&&i(D)},[l,m,i]),k=s.useCallback(()=>{Ko(m)&&(g(!1),B(!1))},[B,m]),S=s.useCallback(()=>{Ko(m)&&(g(!0),B(!0))},[B,m]);return r.jsxs(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:h,onDone:i,useTitleFaded:!1,children:[r.jsx(qd,{context:c,state:m}),r.jsx("div",{className:"training-step__buttons",children:Array.isArray(v)&&v.length>0?v.slice(0,6).map((E,D)=>r.jsx(Ce,{htmlType:"button",size:56,type:"bar",onClick:()=>{Ko(m)&&(g(D),B&&B(D))},disabled:m==="disabled",ariaLabel:String(E),label:E,variant:m,selected:f===D},D)):r.jsxs(r.Fragment,{children:[r.jsx(Ce,{htmlType:"button",size:56,type:"bar",onClick:k,disabled:m==="disabled",icon:"x",ariaLabel:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:f===!1}),r.jsx(Ce,{htmlType:"button",size:56,type:"bar",onClick:S,disabled:m==="disabled",icon:"circle",ariaLabel:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:f===!0})]})})]})}function is({index:e,stepIndex:t,isLast:a=!1,title:o,onDone:n,btnLabel:i,soundSrc:l,bucketPath:c,usePreviewTextBtn:u,previewText:d=null,onPreviewTextBtn:h,disabled:p,_pageIndex:m,showSoundWaveForm:C,showNoiseWaveForm:v,leadInMs:f,tailMs:g}){const{t:x}=_e.useTranslation(),b=o??x("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),w=p??(typeof t=="number"&&typeof e=="number"?e>t:!1);return r.jsx(wo,{index:e,stepIndex:t,isLast:a,title:b,onDone:n,titleProps:{usePreviewTextBtn:u,previewText:d,onPreviewTextBtn:h},children:r.jsx(Tn,{soundSrc:l,ttsText:l?null:d??b,bucketPath:c,btnLabel:i||x("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:w,className:"training-step__listen-sticky",showSoundWaveForm:C,showNoiseWaveForm:v,leadInMs:f,tailMs:g},`audio-p${m??0}-s${e}`)})}var kA=".ihabdevteam-core-scope .page-popup--closing{opacity:0;pointer-events:none;transition:opacity .16s ease}.ihabdevteam-core-scope .page-popup__panel{overflow:auto}.ihabdevteam-core-scope .page-popup__close{font-size:20px;right:12px;top:10px}.ihabdevteam-core-scope .page-popup{align-items:stretch;display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-page-popup)}.ihabdevteam-core-scope .page-popup__panel{background:var(--color-deepWhite);border-radius:0;box-shadow:none;color:var(--color-black);display:flex;flex-direction:column;height:100%;max-height:none;max-width:none;overflow:hidden;position:relative;width:100%}.ihabdevteam-core-scope .page-popup__scroll{-webkit-overflow-scrolling:touch;align-items:flex-start;display:flex;flex:1 1 0;justify-content:center;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:rgba(0,0,0,.15) transparent;scrollbar-width:thin;touch-action:pan-y}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-track{background:transparent}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.28)}.ihabdevteam-core-scope .page-popup__panel--measuring .page-popup__scroll{opacity:0;pointer-events:none}.ihabdevteam-core-scope .page-popup__scroll{transition:opacity .12s ease}.ihabdevteam-core-scope .nt-debug{background:rgba(0,0,0,.03);border-radius:var(--radius-sm);color:var(--text,var(--color-black));font-family:monospace;font-size:12px;line-height:1.2;max-width:300px;padding:8px 10px;position:absolute;right:20px;top:84px;white-space:pre-wrap;z-index:calc(var(--z-page-popup) + 1)}.ihabdevteam-core-scope .page-popup--backdrop{display:none}.ihabdevteam-core-scope .page-popup__close{background:transparent;border:none;color:var(--text,var(--color-black));cursor:pointer;font-size:22px;line-height:1;position:absolute;right:14px;top:12px}.ihabdevteam-core-scope .page-popup__panel>*{box-sizing:border-box}.ihabdevteam-core-scope .page-popup__body{padding:16px 20px}.ihabdevteam-core-scope .page-popup__content{box-sizing:border-box;margin:0 auto;max-width:800px;min-width:0;padding:var(--spacing-page);width:100%}.ihabdevteam-core-scope .page-popup__content--full{max-width:none;padding:0}.ihabdevteam-core-scope .page-popup__content--center{margin-bottom:auto;margin-top:auto}.ihabdevteam-core-scope .pp-empty{color:var(--color-gray);padding:24px 0;text-align:center;width:100%}.ihabdevteam-core-scope .page-popup__content .training-steps{box-sizing:border-box;min-width:0;width:100%}.ihabdevteam-core-scope .page-popup__bottom,.ihabdevteam-core-scope .page-popup__top{flex-shrink:0}.ihabdevteam-core-scope .page-popup__panel--center .page-popup__scroll{align-items:center}.ihabdevteam-core-scope .page-popup--result-empty{background:var(--color-deepWhite)}.ihabdevteam-core-scope .page-popup__empty{align-items:center;color:var(--color-gray);display:flex;flex-direction:column;justify-content:center;padding:2rem;text-align:center;width:100%}";ce(kA);var BA=".ihabdevteam-core-scope .order-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .order-list__item{align-items:flex-start;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .order-list__draggable{align-items:center;border-radius:var(--radius-m);display:flex;flex:1;gap:var(--spacing-xs);justify-content:space-between;min-height:60px;padding:0 0 0 4px;will-change:transform}.ihabdevteam-core-scope .order-list__item-text{color:var(--color-black)}.ihabdevteam-core-scope .order-list__item-buttons{align-items:center;align-self:center;display:inline-flex;gap:2px}@media (max-width:600px){.ihabdevteam-core-scope .order-list__item-buttons{align-items:center;align-self:center;display:flex;flex-direction:column}.ihabdevteam-core-scope .order-list__item-buttons>*{box-sizing:border-box;display:inline-flex}}.ihabdevteam-core-scope .order-list__item.correct{border:1px solid var(--color-main)}.ihabdevteam-core-scope .order-list__slot{align-items:center;background-color:var(--color-darkWhite);border-radius:var(--radius-m);box-sizing:border-box;display:flex;gap:var(--spacing-xs);height:auto;padding:4px 10px;width:100%}.ihabdevteam-core-scope .order-list__marker{--marker-pos:50%;align-items:center;background-color:var(--color-main);background:color-mix(in srgb,var(--color-main) 50%,var(--color-sub) 50%);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:#fff;display:inline-flex;height:24px;justify-content:center;width:24px}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .order-list__marker{background:color-mix(in srgb,var(--color-main) calc(100% - var(--marker-pos)),var(--color-sub) var(--marker-pos))}}@media (max-width:600px){.ihabdevteam-core-scope .order-list__marker{height:24px;min-width:24px;width:24px}}.ihabdevteam-core-scope .order-list__item:hover .order-list__slot{background-color:var(--color-deepWhite);box-shadow:inset 0 0 0 1px var(--color-main);transition:box-shadow .16s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__item.drag-over .order-list__slot{background-color:var(--color-white);box-shadow:inset 0 0 0 1px var(--color-main)}.ihabdevteam-core-scope .order-list__slot.pulse{background-color:var(--color-white);transition:background-color .42s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__slot.pulse.to-dark{background-color:var(--color-darkWhite)}.ihabdevteam-core-scope .order-list__slot-number{align-items:center;align-self:center;border-radius:var(--radius-sm);color:#fff;display:inline-flex;height:32px;justify-content:center;width:32px}.ihabdevteam-core-scope .order-list__draggable.dragging{background-color:var(--color-white);opacity:.2}.ihabdevteam-core-scope .order-list__dragging-object{align-items:center;background:var(--color-white);border-radius:var(--radius-m);box-shadow:0 14px 40px rgba(16,24,40,.18);box-sizing:border-box;color:var(--color-black);display:inline-flex;gap:var(--spacing-s);left:0;max-width:calc(100vw - var(--spacing-page)*3);min-height:60px;opacity:1;overflow-wrap:anywhere;padding:20px;pointer-events:none;position:fixed;top:0;transform:translate3d(-9999px,-9999px,0) scale(1);transition:transform .16s cubic-bezier(.22,.9,.39,1),opacity .18s ease;white-space:normal;width:auto;will-change:transform,opacity;word-break:keep-all;z-index:var(--z-popover)}.ihabdevteam-core-scope .order-list__dragging-object--visible{opacity:1}.ihabdevteam-core-scope .order-list__item.drag-over .order-list__slot:hover{background-color:var(--color-white);border-radius:var(--radius-m);box-shadow:inset 0 0 0 1px var(--color-main);transition:box-shadow .16s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__item-text{display:block;line-height:1.4;margin:0;overflow-wrap:anywhere;white-space:normal;width:100%;word-break:keep-all}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true],.ihabdevteam-core-scope .order-list__draggable[draggable=false]{background-color:var(--color-darkWhite);box-shadow:none!important;cursor:default;opacity:.9;pointer-events:none}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__item-text,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__item-text{color:var(--color-gray);display:none!important;opacity:.9}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__item-buttons,.ihabdevteam-core-scope .order-list__draggable[data-disabled=true]~.order-list__slot .order-list__slot-number,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__item-buttons,.ihabdevteam-core-scope .order-list__draggable[draggable=false]~.order-list__slot .order-list__slot-number,.ihabdevteam-core-scope .order-list__slot-number[hidden]{display:none!important}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__slot,.ihabdevteam-core-scope .order-list__draggable[data-disabled=true]+.order-list__slot,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__slot,.ihabdevteam-core-scope .order-list__draggable[draggable=false]+.order-list__slot,.ihabdevteam-core-scope .order-list__slot[data-disabled=true]{background-color:var(--color-darkWhite)!important;box-shadow:none!important}.ihabdevteam-core-scope .order-list__slot[data-disabled=true]{cursor:default!important;pointer-events:none!important}.ihabdevteam-core-scope .order-list__slot[data-disabled=true] .order-list__slot-number{display:none!important}";ce(BA);const AA=[];function ss({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,onDone:i,onChange:l,context:c=AA}){const{t:u}=_e.useTranslation(),d=n??u("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),h=F=>typeof F=="string"?F:F&&(F.context||F.sentence||F.question||"")||"",[p,m]=s.useState(Array.isArray(c)?c:[]),[C,v]=s.useState(()=>(p||[]).map((F,N)=>({id:N,text:h(F)}))),f=s.useMemo(()=>typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled",[t,e]),g=f!=="disabled",x=s.useRef(void 0),b=s.useRef(void 0);s.useEffect(()=>{if(x.current===c)return;x.current=c;const F=Array.isArray(c)?c:[];m(F);const N=(O=>{const H=(O||[]).map((be,X)=>({id:X,text:h(be)}));if(H.length<=1)return H;const Z=(be,X)=>{if(be.length!==X.length)return!1;for(let re=0;re<be.length;re++)if(be[re].text!==X[re].text)return!1;return!0};let te=nt(H),se=0;for(;Z(te,H)&&se<20;)te=nt(H),se+=1;return te})(F);v(N);try{if(typeof l=="function"){const O=N.filter((H,Z)=>H.text===h(F[Z])).length;l({shuffled:N,score:O,total:(F||[]).length,initial:!0,__ts:Date.now()})}if(typeof i=="function"&&f==="active"){const O=N.filter((H,Z)=>H.text===h(F[Z])).length;b.current=c,i({shuffled:N,score:O,total:(F||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[c]),s.useEffect(()=>{if(f!=="active"||b.current===c||(b.current=c,typeof i!="function"))return;const F=Array.isArray(c)?c:[],N=C.filter((O,H)=>O.text===h(F[H])).length;i({shuffled:C,score:N,total:F.length,initial:!0,__ts:Date.now()})},[f,c]);const w=(F,N)=>{const O=[...C],H=F+N;if(H<0||H>=O.length)return;const Z=O[H];O[H]=O[F],O[F]=Z,q(O);try{if(typeof i=="function"&&f==="active"){const te=O.filter((se,be)=>se.text===h(p[be])).length;i({shuffled:O,score:te,total:(p||[]).length,__ts:Date.now()})}}catch{}},[_,A]=s.useState(null),y=s.useRef(null),B=s.useRef(null),k=s.useRef(null),S=s.useRef(null),E=s.useRef(null),D=s.useRef({x:0,y:0}),I=s.useRef(null),j=s.useRef({dx:0,dy:0}),W=()=>{if(I.current!==null)return;const F=()=>{if(!y.current){I.current=null;return}I.current=requestAnimationFrame(F);const N=D.current,O=j.current||{dx:0,dy:0};y.current&&(y.current.style.transform=`translate3d(${N.x-O.dx}px, ${N.y-O.dy}px, 0)`)};I.current=requestAnimationFrame(F)},L=s.useRef(new Map),M=s.useRef(new Map),z=()=>{const F=new Map;return L.current.forEach((N,O)=>{N&&N.getBoundingClientRect&&F.set(O,N.getBoundingClientRect())}),F},q=F=>{const N=z();v(F);try{if(typeof l=="function"){const O=F.filter((H,Z)=>H.text===h(p[Z])).length;l({shuffled:F,score:O,total:(p||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const O=z();F.forEach(H=>{const Z=N.get(H.id),te=O.get(H.id),se=L.current.get(H.id);if(!se||!Z||!te)return;const be=Z.top-te.top;be&&(se.style.transition="none",se.style.transform=`translateY(${be}px)`,requestAnimationFrame(()=>{se.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",se.style.transform="";const X=()=>{se.style.transition="",se.removeEventListener("transitionend",X)};se.addEventListener("transitionend",X)}))})})},Y=(F,N)=>{try{try{N.dataTransfer?.setData("text/plain",String(F))}catch{}try{N.dataTransfer&&(N.dataTransfer.effectAllowed="move")}catch{}try{const O=document.createElement("div");O.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(O),N.dataTransfer?.setDragImage(O,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(O)}catch{}})}catch{}}catch{}A(F);try{const O=C[F],H=document.createElement("div");H.className="order-list__dragging-object order-list__dragging-object--visible",H.textContent=O&&O.text?O.text:"",document.body.appendChild(H),y.current=H;const Z=L.current.get(O.id);let te=N.clientX||0,se=N.clientY||0;try{if(Z&&Z.getBoundingClientRect){const ie=Z.getBoundingClientRect();te=ie.left+ie.width/2,se=ie.top+ie.height/2}}catch{}const be=H.getBoundingClientRect(),X=be.width/2,re=be.height/2;j.current={dx:X,dy:re},H.style.transition="none",D.current={x:te,y:se},H.style.transform=`translate3d(${te-X}px, ${se-re}px, 0)`,requestAnimationFrame(()=>{try{H.style.transition=""}catch{}W()});const Ae=ie=>{const ue=ie;D.current={x:ue.clientX,y:ue.clientY},W()};k.current=Ae,document.addEventListener("mousemove",Ae);const K=ie=>{const ue=ie;D.current={x:ue.clientX,y:ue.clientY},W()};B.current=K,document.addEventListener("dragover",K);try{N.dataTransfer?.setData("text/plain",String(F));try{N.dataTransfer?.setData("application/json",JSON.stringify({idx:F}))}catch{}}catch{}}catch{}},P=(F,N)=>{N.preventDefault();try{N.dataTransfer&&(N.dataTransfer.dropEffect="move")}catch{}try{E.current!==null&&(clearTimeout(E.current),E.current=null);const O=N.currentTarget&&N.currentTarget.closest?N.currentTarget.closest(".order-list__item"):null;if(O&&S.current!==O){if(S.current)try{S.current.classList.remove("drag-over")}catch{}try{O.classList.add("drag-over")}catch{}S.current=O}}catch{}},V=(F,N)=>{N.preventDefault();const O=N.dataTransfer?.getData("text/plain")||"",H=O?parseInt(O,10):_,Z=F;if(typeof H!="number"||isNaN(H)||H===Z){A(null),T(),$();return}const te=Dl(C,H,Z);q(te),A(null),$();try{if(typeof i=="function"&&f==="active"){const se=te.filter((be,X)=>be.text===h(p[X])).length;i({shuffled:te,score:se,total:(p||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const se=document.querySelectorAll(".order-list .order-list__item")[Z];if(!se)return;const be=se.querySelector(".order-list__slot")||se;try{be.classList.add("pulse"),be.offsetHeight,be.classList.add("to-dark");const X=()=>{be.classList.remove("pulse","to-dark"),be.removeEventListener("transitionend",X)};be.addEventListener("transitionend",X)}catch{}})}catch{}T()},$=()=>{if(y.current){try{document.body.removeChild(y.current)}catch{}y.current=null}B.current&&(document.removeEventListener("dragover",B.current),B.current=null),k.current&&(document.removeEventListener("mousemove",k.current),k.current=null),I.current!==null&&(cancelAnimationFrame(I.current),I.current=null)},U=()=>{A(null),T(),$()};s.useEffect(()=>()=>$(),[]);const T=()=>{try{if(E.current!==null&&(clearTimeout(E.current),E.current=null),S.current){try{S.current.classList.remove("drag-over")}catch{}S.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(F=>F.classList.remove("drag-over"))}catch{}};return s.useEffect(()=>{try{const F=Math.max(1,(C||[]).length);C.forEach((N,O)=>{const H=M.current.get(N.id);if(!H)return;let Z=50;F>1&&(Z=Math.round(O/(F-1)*100));try{H.style.setProperty("--marker-pos",Z+"%")}catch{}})}catch{}},[C]),s.useEffect(()=>()=>{$(),E.current!==null&&(clearTimeout(E.current),E.current=null)},[]),r.jsx(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:d,children:r.jsx("div",{className:"order-list",children:C.map((F,N)=>{const O=Math.max(1,(C||[]).length),H=O>1?Math.round(N/(O-1)*100):50;return r.jsx("div",{className:"order-list__item",children:r.jsxs("div",{className:"order-list__slot","data-disabled":f==="disabled","aria-disabled":f==="disabled",children:[f!=="disabled"?r.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":H+"%"},ref:Z=>{const te=M.current;Z?te.set(F.id,Z):te.delete(F.id)},children:r.jsx("span",{className:"order-list__slot-number button-1",children:N+1})}):null,r.jsxs("div",{ref:Z=>{const te=L.current;Z?te.set(F.id,Z):te.delete(F.id)},className:`order-list__draggable ${_===N?"dragging":""}`,"data-disabled":f==="disabled","aria-disabled":f==="disabled",tabIndex:f==="disabled"?-1:0,draggable:g,onDragStart:g?Z=>Y(N,Z):void 0,onDragEnter:g?Z=>P(N,Z):void 0,onDragOver:g?Z=>P(N,Z):void 0,onDragLeave:g?()=>{try{E.current!==null&&clearTimeout(E.current),E.current=setTimeout(()=>{try{const Z=document.querySelectorAll(".order-list .order-list__item");Z&&Z[N]&&(Z[N].classList.remove("drag-over"),S.current===Z[N]&&(S.current=null))}catch{}},80)}catch{}}:void 0,onDrop:g?Z=>V(N,Z):void 0,onDragEnd:g?U:void 0,children:[r.jsx("span",{className:"order-list__item-text body-2",children:F.text}),g?r.jsxs("span",{className:"order-list__item-buttons",children:[r.jsx(Ce,{htmlType:"button",size:32,type:"dot",onClick:()=>w(N,-1),ariaLabel:u("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:N===0,useBorder:!1,useDisabledInvisible:!0}),r.jsx(Ce,{htmlType:"button",size:32,type:"dot",onClick:()=>w(N,1),ariaLabel:u("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:N===C.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},F.id)})})})}var SA="";ce(SA);const EA=8e3;function DA(e,t){return new Promise(a=>{let o=!1;const n=()=>{o||(o=!0,a())};e.then(n,n),setTimeout(n,t)})}function Yd({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,onDone:i,onChange:l,context:c=[],selectable:u=!1,hideLabel:d=!1,hideAudio:h=!1,maxCards:p,playAllGapMs:m=0}){const{t:C}=_e.useTranslation(),v=n??C("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),f=s.useMemo(()=>Array.isArray(c)?c:c&&c.items||[],[c]),g=p??3,x=(f||[]).slice(0,g);(f||[]).length>g&&console.warn(`TrainingStepCard: ${f.length} items passed but only ${g} shown`);const b=typeof e=="number"?e:-1,w=typeof t!="number"?"disabled":b<t?"done":b===t?"active":"disabled",[_,A]=s.useState(null),y=s.useRef([]),[B,k]=s.useState(!1),S=s.useRef(null),E=s.useRef(!0);s.useEffect(()=>(E.current=!0,()=>{E.current=!1}),[]);const D=s.useMemo(()=>f.map(z=>z?.id??z?.word??"").join("|"),[f]);s.useEffect(()=>{A(null)},[D]);const I=s.useRef(void 0);s.useEffect(()=>{const z=I.current;typeof z=="number"&&typeof t=="number"&&typeof e=="number"&&z>=e&&t<e&&A(null),I.current=t},[t,e]);const j=s.useCallback((z,q)=>{if(u)return;const Y={item:z,index:q,__ts:Date.now()};try{typeof l=="function"&&l(Y)}catch{}if(w==="active"&&typeof i=="function")try{i(Y)}catch{}},[u,l,w,i]),W=s.useRef(m);s.useEffect(()=>{W.current=Math.max(0,m||0)},[m]);const L=s.useCallback(async()=>{if(B||w==="disabled")return;k(!0);let z=!1;const q=new Promise(Y=>{S.current=()=>{z=!0,Y()}});try{for(let Y=0;Y<x.length&&!(!E.current||z);Y++){const P=y.current[Y];if(!P)continue;await Promise.race([DA(P.play(),EA),q]);const V=Math.max(0,W.current||0);V>0&&Y<x.length-1&&!z&&E.current&&await Promise.race([new Promise($=>{setTimeout($,V)}),q])}}finally{S.current=null,k(!1)}},[B,w,x.length]),M=s.useCallback((z,q)=>{if(!Ko(w))return;A(q);const Y={selectedValue:z.word||z.title||"",selectedIndex:q,item:z,__ts:Date.now()};try{typeof l=="function"&&l(Y)}catch{}if(typeof i=="function")try{i(Y)}catch{}},[l,w,i]);return r.jsx(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:v,onDone:i,titleProps:{usePlayAllBtn:!h&&x.length>0,onPlayAll:L,playAllActive:B},children:r.jsx("div",{className:"training-step__cards",onClickCapture:z=>{const q=S.current;if(!q)return;const Y=z.target;Y&&typeof Y.closest=="function"&&Y.closest(".training-word-card__bottom")&&q()},children:x.length===0?r.jsx("div",{className:"training-step__empty",children:C("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):x.map((z,q)=>r.jsx(Ui,{ref:Y=>{y.current[q]=Y},item:z,disabled:w==="disabled",onPlayDone:()=>j(z,q),selectable:u,selected:u&&_===q,onSelect:u?()=>M(z,q):void 0,flipDelay:q*120,hideLabel:d,hideAudio:h},z&&z.id||q))})})}const NA=160;var TA=".ihabdevteam-core-scope .panel{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);display:flex;flex-direction:column;overflow:visible;padding:0;text-align:left}.ihabdevteam-core-scope .panel--no-border{border:none}.ihabdevteam-core-scope .panel--no-bg{background:transparent;border-radius:0}.ihabdevteam-core-scope .panel--no-border .panel-row{padding-left:0;padding-right:0}.ihabdevteam-core-scope .panel--no-row-border .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel__header{align-items:center;border-bottom:1px solid var(--color-darkWhite);box-sizing:border-box;display:flex;gap:var(--spacing-xs);justify-content:space-between;margin:0;padding:0 20px}.ihabdevteam-core-scope .panel__header:last-child{border-bottom:none}.ihabdevteam-core-scope .panel--small .panel__header{min-height:48px}.ihabdevteam-core-scope .panel--medium .panel__header{min-height:56px}.ihabdevteam-core-scope .panel--large .panel__header{min-height:64px}.ihabdevteam-core-scope .panel__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;margin-right:var(--spacing-s);width:20px}.ihabdevteam-core-scope .panel__title-group{display:flex;flex-direction:column;gap:4px;margin-right:auto;min-width:0}.ihabdevteam-core-scope .panel__title{color:var(--color-darkGray);margin:0}.ihabdevteam-core-scope .panel__disc{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .panel__actions{display:flex;flex-shrink:0;gap:6px}.ihabdevteam-core-scope .panel-row{align-items:center;box-sizing:border-box;display:flex;gap:var(--spacing-m);justify-content:space-between;padding:4px 20px}.ihabdevteam-core-scope .panel--small .panel-row{min-height:48px}.ihabdevteam-core-scope .panel--medium .panel-row{min-height:56px}.ihabdevteam-core-scope .panel--large .panel-row{min-height:64px}.ihabdevteam-core-scope .panel--compact-rows .panel-row{min-height:46px;padding-bottom:3px;padding-top:3px}.ihabdevteam-core-scope .panel-row+.panel-row{border-top:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel--fill .panel-row{border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel--fill .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel--no-row-border .panel-row{border-bottom:none}.ihabdevteam-core-scope .panel>:not(.panel-row)+.panel-row{border-top:none}.ihabdevteam-core-scope .panel-grid{grid-gap:1px;grid-gap:var(--panel-grid-gap,1px);background:var(--color-darkWhite);display:grid;gap:1px;gap:var(--panel-grid-gap,1px);grid-template-columns:repeat(2,1fr);grid-template-columns:repeat(var(--panel-grid-cols,2),1fr);overflow:hidden;padding-bottom:1px}.ihabdevteam-core-scope .panel-grid:not(.panel-grid--columns) .panel-row{background:var(--color-white)}.ihabdevteam-core-scope .panel-grid:not(.panel-grid--columns) .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel-grid--columns{background:transparent;-moz-column-count:2;column-count:2;-moz-column-count:var(--panel-grid-cols,2);column-count:var(--panel-grid-cols,2);-moz-column-gap:1px;column-gap:1px;-moz-column-gap:var(--panel-grid-gap,1px);column-gap:var(--panel-grid-gap,1px);display:block;overflow:visible;padding-bottom:0}.ihabdevteam-core-scope .panel-grid--columns>*{-moz-column-break-inside:avoid;box-sizing:border-box;break-inside:avoid;display:inline-flex;flex-direction:column;margin-bottom:1px;margin-bottom:var(--panel-grid-gap,1px);page-break-inside:avoid;vertical-align:top;width:100%}.ihabdevteam-core-scope .panel-grid--columns>:last-child{margin-bottom:0}.ihabdevteam-core-scope .panel-row--empty{color:var(--color-lightGray);justify-content:center}.ihabdevteam-core-scope .panel-row--loading{justify-content:center}.ihabdevteam-core-scope .panel__body--scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .panel__body--gutter-stable{scrollbar-gutter:stable}.ihabdevteam-core-scope .panel-row--content{display:block;min-height:0;padding:16px}.ihabdevteam-core-scope .panel-row--content+.panel-row--content{border-top:none}.ihabdevteam-core-scope .panel-row__icon{align-items:center;display:flex;flex-shrink:0;margin-right:-4px}.ihabdevteam-core-scope .panel-row__left{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__label{color:var(--color-deepGray)}.ihabdevteam-core-scope .panel-row__sub{color:var(--color-gray);margin-top:2px}.ihabdevteam-core-scope .panel-row__right{align-items:center;display:flex;flex:0 0 auto;justify-content:flex-end}@media (max-width:767px){.ihabdevteam-core-scope .panel-row{flex-wrap:wrap}.ihabdevteam-core-scope .panel-row__right{flex:0 1 auto;min-width:0}}.ihabdevteam-core-scope .panel--form .panel-row{grid-gap:var(--spacing-m);align-items:center;display:grid;gap:var(--spacing-m);grid-template-columns:80px 1fr;grid-template-columns:var(--panel-label-width,80px) 1fr}.ihabdevteam-core-scope .panel--form .panel-row:has(.text-field--full-width){align-items:flex-start}.ihabdevteam-core-scope .panel--form .panel-row:has(.text-field--full-width) .panel-row__left{padding-top:9px}.ihabdevteam-core-scope .panel-row--label-fixed .panel-row__left{flex:0 0 120px;flex:0 0 var(--panel-label-width,120px)}.ihabdevteam-core-scope .panel-row--label-fixed .panel-row__right{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--fill .panel-row__right{align-items:center;display:flex}.ihabdevteam-core-scope .panel-row--fill .panel-row__right>*,.ihabdevteam-core-scope .panel-row--fill>.dropdown,.ihabdevteam-core-scope .panel-row--fill>.form-input,.ihabdevteam-core-scope .panel-row--fill>.text-field{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--clickable{cursor:pointer;transition:background .1s,box-shadow .1s}.ihabdevteam-core-scope .panel-row--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .panel-row__text{color:var(--color-darkGray);overflow-wrap:break-word;text-align:right;word-break:break-word}.ihabdevteam-core-scope .panel-row--text .panel-row__right{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--block{align-items:stretch;display:flex;flex-direction:column;justify-content:center}.ihabdevteam-core-scope .panel-row__description{color:var(--color-gray);line-height:1.6;margin:0;overflow-wrap:break-word;word-break:break-word}.ihabdevteam-core-scope .panel-row__dropdown-group{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .panel-row__dropdown-group--full,.ihabdevteam-core-scope .panel-row__dropdown-item--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap{display:flex;flex-direction:column}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__text--full{text-align:left;width:100%}.ihabdevteam-core-scope .panel-row__input-wrap{display:flex;flex-direction:column}.ihabdevteam-core-scope .panel-row__input-wrap--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--vertical{align-items:flex-start;flex-direction:column;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .panel-row--vertical .panel-row__left{flex:none;width:100%}.ihabdevteam-core-scope .panel-row--vertical .panel-row__right{align-items:flex-start;flex:none;justify-content:flex-start;width:100%}.ihabdevteam-core-scope .panel-row--vertical .panel-row__text{margin-left:0;text-align:left}.ihabdevteam-core-scope .panel-row--device{grid-gap:0;align-items:stretch;display:grid;gap:0;grid-template-columns:1fr 1fr;min-height:0;padding:0}.ihabdevteam-core-scope .panel-row__device-column{box-sizing:border-box;display:flex;flex-direction:column;gap:0;min-height:164px;padding:14px 16px}.ihabdevteam-core-scope .panel-row__device-column+.panel-row__device-column{border-left:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel-row__device-head{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px;min-height:32px}.ihabdevteam-core-scope .panel-row__device-side{color:var(--color-darkGray);margin:0;text-align:left}.ihabdevteam-core-scope .panel-row__device-info{margin:0;text-align:left}.ihabdevteam-core-scope .panel-row__device-info,.ihabdevteam-core-scope .panel-row__device-kind{align-items:flex-start;display:flex;flex-direction:column;gap:3px}.ihabdevteam-core-scope .panel-row__device-name{color:var(--color-darkGray)}.ihabdevteam-core-scope .panel-row__device-detail{color:var(--color-gray)}.ihabdevteam-core-scope .panel-row__device-date{color:var(--color-lightGray);margin-top:2px}.ihabdevteam-core-scope .panel-row__device-empty{align-items:center;color:var(--color-lightGray);display:flex;flex:1;justify-content:center;text-align:center}.ihabdevteam-core-scope .required-mark{color:var(--color-main);margin-left:2px}.ihabdevteam-core-scope .panel-row__error{color:var(--color-error);margin-top:4px}.ihabdevteam-core-scope .panel-row__helper{color:var(--color-lightGray);margin-top:4px}.ihabdevteam-core-scope .panel-row__button-group{display:flex;gap:6px}@media (max-width:767px){.ihabdevteam-core-scope .panel-row__dropdown-group{flex-wrap:wrap}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap--full,.ihabdevteam-core-scope .panel-row__dropdown-item--full{flex:1 1 104px}}";ce(TA);const jA={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function LA(e,t){const a=jA[e];return a?t(`device.type.${a}`,{defaultValue:e}):e}const d1=()=>{};function Ua(e){const t=s.useId();if(!("variant"in e)){const{label:b,sub:w,onClick:_,children:A,align:y="horizontal",icon:B,useFullWidth:k=!1}=e,S=E=>{_&&E.target===E.currentTarget&&(E.key==="Enter"||E.key===" ")&&(E.preventDefault(),_())};return r.jsxs("div",{className:Ne("panel-row",y==="vertical"?"panel-row--vertical":"",k?"panel-row--label-fixed panel-row--fill":"",_?"panel-row--clickable":""),onClick:_,onKeyDown:_?S:void 0,role:_?"button":void 0,tabIndex:_?0:void 0,children:[B!=null&&r.jsx("div",{className:"panel-row__icon",children:B}),b!=null&&r.jsxs("div",{className:"panel-row__left",children:[r.jsx("div",{className:"panel-row__label body-3",children:b}),w&&r.jsx("div",{className:"panel-row__sub caption-1",children:w})]}),r.jsx("div",{className:"panel-row__right",children:A})]})}if(e.variant==="description")return r.jsx("div",{className:"panel-row panel-row--block",children:r.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return r.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return r.jsx("div",{className:"panel-row panel-row--loading",children:r.jsx(yr,{size:28})});if(e.variant==="custom"&&!e.label)return r.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:o,sub:n,onClick:i,required:l,error:c,align:u="horizontal",useFullWidth:d=!1,icon:h}=e,p=a==="button"?void 0:i;let m=null;const C=a==="toggle"?`panel-toggle-${t}`:void 0,v=c?`panel-error-${t}`:void 0,f=`panel-helper-${t}`;if(a==="toggle"){const b=e;m=r.jsx(id,{checked:b.checked,onChange:b.onChange,id:C})}else if(a==="segmented"){const b=e;m=r.jsx(Ta,{options:b.options,value:b.value,onChange:b.onChange,size:b.size??40,ariaLabel:o})}else if(a==="dropdown"){const b=e,w=b.dropdowns?.length?r.jsx("div",{className:`panel-row__dropdown-group${d?" panel-row__dropdown-group--full":""}`,children:b.dropdowns.map((_,A)=>r.jsx("div",{className:d?"panel-row__dropdown-item--full":void 0,children:r.jsx(_a,{options:_.options,value:_.value,onChange:_.onChange,placeholder:_.placeholder,block:d,error:!!c,ariaDescribedBy:v,ariaLabel:_.ariaLabel??([o,_.placeholder].filter(Boolean).join(" ")||void 0)})},A))}):r.jsx(_a,{options:b.options??[],value:b.value??"",onChange:b.onChange??d1,block:d,error:!!c,ariaLabel:o,ariaDescribedBy:v});m=c?r.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[w,r.jsx("span",{id:v,className:"caption-1 panel-row__error",role:"alert",children:c})]}):w}else if(a==="button"){const b=e;b.buttons?.length?m=r.jsx("div",{className:"panel-row__button-group",children:b.buttons.map((w,_)=>r.jsx(Ce,{htmlType:"button",size:w.btnSize??40,variant:w.btnVariant??"default",disabled:w.disabled,onClick:w.onClick,children:w.label},_))}):m=r.jsx(Ce,{htmlType:"button",size:b.btnSize??40,variant:b.btnVariant??"default",disabled:b.disabled,onClick:b.onClick,children:b.buttonLabel})}else if(a==="text"){const b=e;m=r.jsx("span",{className:`panel-row__text body-2${d?" panel-row__text--full":""}`,style:b.valueColor?{color:b.valueColor}:void 0,children:b.value})}else if(a==="input"){const b=e;m=r.jsxs("div",{className:`panel-row__input-wrap${d?" panel-row__input-wrap--full":""}`,children:[r.jsx(yo,{value:b.value,onChange:b.onChange??d1,onKeyDown:b.onKeyDown,onEnter:b.onEnter,placeholder:b.placeholder,ghostText:b.ghostText,ghostHint:b.ghostHint,inputMode:b.inputMode,readOnly:b.readOnly,disabled:b.disabled,type:b.type,autoComplete:b.autoComplete,maxLength:b.maxLength,showCount:b.showCount,multiline:b.multiline,rows:b.rows,fullWidth:d,error:c,ariaLabel:o,required:l,ariaDescribedBy:b.helperText?f:void 0}),b.helperText&&r.jsx("div",{id:f,className:"panel-row__helper caption-1",children:b.helperText})]})}else a==="custom"&&(m=e.children);c&&a!=="input"&&a!=="dropdown"&&(m=r.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[m,r.jsx("span",{id:v,className:"caption-1 panel-row__error",role:"alert",children:c})]}));const g=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&d,x=b=>{p&&b.target===b.currentTarget&&(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),p())};return r.jsxs("div",{className:Ne("panel-row",u==="vertical"?"panel-row--vertical":"",g?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",p?"panel-row--clickable":""),onClick:p,onKeyDown:p?x:void 0,role:p?"button":void 0,tabIndex:p?0:void 0,children:[h!=null&&r.jsx("div",{className:"panel-row__icon",children:h}),r.jsxs("div",{className:"panel-row__left",children:[C?r.jsxs("label",{htmlFor:C,className:"panel-row__label body-3",children:[o,l&&r.jsx("span",{className:"required-mark",children:"*"})]}):r.jsxs("div",{className:"panel-row__label body-3",children:[o,l&&r.jsx("span",{className:"required-mark",children:"*"})]}),n&&r.jsx("div",{className:"panel-row__sub caption-1",children:n})]}),r.jsx("div",{className:"panel-row__right",children:m})]})}function p1(e){const t=e.productName||e.brand,a=[e.brand,e.fitType].filter(o=>!!o&&o!==t);return[...new Set(a)].join(" \xB7 ")}function h1({devices:e,onRelease:t,emptyLabel:a}){const{t:o,i18n:n}=_e.useTranslation();return r.jsx("div",{className:"panel-row panel-row--device",children:["\uC88C","\uC6B0"].map(i=>{const l=e[i],c=i==="\uC88C"?o("device.direction.left","\uC88C"):o("device.direction.right","\uC6B0");return r.jsxs("div",{className:"panel-row__device-column",children:[r.jsxs("div",{className:"panel-row__device-head",children:[r.jsx("span",{className:"panel-row__device-side body-2b",children:c}),l&&t&&r.jsx(Ce,{htmlType:"button",size:32,type:"dot",icon:"x",ariaLabel:`${c} ${o("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C")}`,showTooltipInfo:o("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>t(i)})]}),l?r.jsxs("div",{className:"panel-row__device-info",children:[r.jsxs("span",{className:"panel-row__device-kind",children:[l.device&&r.jsx(St,{size:"small",variant:O0(l.device),fill:"soft",label:LA(l.device,o)}),p1(l)&&r.jsx("span",{className:"panel-row__device-detail body-3",children:p1(l)})]}),r.jsx("span",{className:"panel-row__device-name body-2b",children:l.productName||l.brand}),_d(l.wornYear,l.wornMonth,l.wornDay,n.language)&&r.jsx("span",{className:"panel-row__device-date caption-1",children:o("customers.device.wornSince",{date:_d(l.wornYear,l.wornMonth,l.wornDay,n.language)})})]}):r.jsx("span",{className:"panel-row__device-empty body-3",children:a??o("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},i)})})}function jn({title:e,titleLevel:t=2,icon:a,disc:o,actions:n,size:i="medium",minHeight:l,maxWidth:c,className:u,scrollable:d,scrollbarGutter:h="auto",compactRows:p=!1,useBorder:m=!0,useBg:C=!0,useRowBorder:v=!0,labelWidth:f,form:g=!1,loading:x,empty:b,children:w}){const _=Ne("panel",`panel--${i}`,g?"panel--form":"",l!==void 0?"panel--fill":"",m?"":"panel--no-border",C?"":"panel--no-bg",v?"":"panel--no-row-border",p?"panel--compact-rows":"",u),A={};l!==void 0&&(A.minHeight=l),c!==void 0&&(A.maxWidth=typeof c=="number"?`${c}px`:c),f!==void 0&&(A["--panel-label-width"]=typeof f=="number"?`${f}px`:f);const y=t?`h${t}`:"div";return r.jsxs("div",{className:_,style:Object.keys(A).length?A:void 0,children:[(!!e||o!=null)&&r.jsxs("div",{className:Ne("panel__header",o!=null?"panel__header--with-disc":""),children:[a&&r.jsx(ot,{icon:a,label:typeof e=="string"?e:void 0,className:"panel__icon"}),r.jsxs("div",{className:"panel__title-group",children:[!!e&&r.jsx(y,{className:`panel__title ${o!=null?"body-3b":"h5b"}`,children:e}),o!=null&&r.jsx("p",{className:"panel__disc caption-1",children:o})]}),n&&r.jsx("div",{className:"panel__actions",children:n})]}),x?r.jsx(Ua,{variant:"loading"}):b!=null&&s.Children.toArray(w).length===0?r.jsx(Ua,{variant:"empty",children:b}):d?r.jsx("div",{className:Ne("panel__body--scroll",h==="stable"&&"panel__body--gutter-stable"),children:w}):w]})}function m1({cols:e=2,layout:t="grid",gap:a=1,collapseAt:o,className:n,style:i,children:l}){const c=s.useRef(null),[u,d]=s.useState();s.useEffect(()=>{const p=c.current;if(o===void 0||!p||(d(p.clientWidth),typeof ResizeObserver>"u"))return;const m=new ResizeObserver(([C])=>d(C.contentRect.width));return m.observe(p),()=>m.disconnect()},[o]);const h=o!==void 0&&u!==void 0&&u<=o;return r.jsx("div",{ref:c,className:Ne("panel-grid",t==="columns"&&"panel-grid--columns",n),style:{"--panel-grid-cols":h?1:e,"--panel-grid-gap":typeof a=="number"?`${a}px`:a,...i},children:l})}function MA(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 b1(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"}]}MA(xt.t.bind(xt)),b1(xt.t.bind(xt));var $A='.ihabdevteam-core-scope .noise-settings{border-radius:var(--radius-m);box-sizing:border-box;max-width:calc(100vw - 40px);padding:0 20px 20px}.ihabdevteam-core-scope .tooltip-content:has(.noise-settings__header) .tooltip-content__header{border-bottom:1px solid var(--color-darkWhite);height:60px;padding:0 20px}.ihabdevteam-core-scope .noise-settings__header{align-items:center;display:flex;justify-content:space-between;width:100%}.ihabdevteam-core-scope .noise-settings__header span{color:var(--color-darkGray);font-weight:600}.ihabdevteam-core-scope .noise-settings__slider-input.slider--horizontal{flex:1 1 auto}.ihabdevteam-core-scope .noise-settings__value{font-feature-settings:"tnum";color:var(--color-main);flex:0 0 auto;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;width:44px}.ihabdevteam-core-scope .noise-settings__value--disabled{opacity:.4}.ihabdevteam-core-scope .noise-settings__width-ghost{height:0;overflow:hidden;pointer-events:none;visibility:hidden}.ihabdevteam-core-scope .noise-settings__width-ghost .panel-row{border:0;margin:0;min-height:0;padding-bottom:0;padding-top:0}';ce($A);const ls="none",RA=.5,PA=1.5,zA=.25;function Kd({title:e,valueLabel:t,value:a,min:o,max:n,step:i,tickStep:l,size:c,disabled:u,onChange:d}){return r.jsxs(Ua,{variant:"custom",label:e,useFullWidth:!0,children:[r.jsx(bd,{value:a,onChange:d,min:o,max:n,step:i,size:c,showBgTick:!0,tickStep:l,ariaLabel:e,disabled:u,className:"noise-settings__slider-input"}),r.jsx("div",{className:Ne("noise-settings__value","button-1",u?"noise-settings__value--disabled":""),children:t})]})}function Zd({anchorRect:e,onClose:t,hideNoiseRows:a=!1}){const{t:o}=_e.useTranslation(),n=sa("(max-width: 767px)")?40:24,i=En(),l=Sr(i?.settings??Dr),c=i?.settings.type??"defaultNoise",u=i?.settings.enabled??!0,d=i?.playbackRate??1,h=i?.mainVolume??1,p=Math.round(h*100),m=s.useCallback(x=>{try{i?.setMainVolume(Math.max(0,Math.min(1,x/100)))}catch{}},[i]),C=s.useCallback(x=>{try{i?.setPlaybackRate(x)}catch{}},[i]),v=s.useCallback(x=>{const b=Math.min(Ar,Math.max(0,Math.round(x*10)/10));try{i?.setSettings({noiseRatio:b})}catch{}},[i]),f=s.useCallback(x=>{try{x===ls?i?.setSettings({enabled:!1}):i?.setSettings({type:x,enabled:!0})}catch{}},[i]),g=[{key:ls,label:o("training.noise.type.none","\uC5C6\uC74C")},...b1(o).map(x=>({key:x.value,label:x.label}))];return r.jsx(xa,{anchorRect:e,offset:12,onClose:t,ariaLabel:o("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:r.jsxs("div",{className:"noise-settings__header",children:[r.jsx("span",{children:o("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),r.jsx(Ce,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:o("common.close","\uB2EB\uAE30"),onClick:t})]}),children:r.jsxs(jn,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[r.jsx(Kd,{title:o("training.playVolumeTitle","\uC804\uCCB4 \uC18C\uB9AC"),valueLabel:`${p}%`,value:p,min:0,max:100,step:10,size:n,onChange:m}),r.jsx(Kd,{title:o("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${d.toFixed(2)}x`,value:d,min:RA,max:PA,step:zA,size:n,onChange:C}),!a&&r.jsxs(r.Fragment,{children:[r.jsx(Ua,{variant:"custom",label:o("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:r.jsx(Ta,{ariaLabel:o("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:g,value:u?c:ls,onChange:f})}),r.jsx(Kd,{title:o("training.noiseRatioTitle","\uC18C\uC74C \uBE44\uC728"),valueLabel:o("training.noiseRatioValue","{{ratio}}\uBC30",{ratio:l.toFixed(1)}),value:l,min:0,max:Ar,step:Od,size:n,disabled:!u,onChange:v})]}),a&&r.jsx("div",{className:"noise-settings__width-ghost","aria-hidden":"true",inert:!0,children:r.jsx(Ua,{variant:"custom",label:"\xA0",useFullWidth:!0,children:r.jsx(Ta,{ariaLabel:"width-ghost",size:40,shape:"rounded",options:g,value:ls,onChange:()=>{}})})})]})})}var IA=".ihabdevteam-core-scope .training-page-bottom{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;flex:0 0 auto;gap:var(--spacing-s);justify-content:space-between;padding:12px 18px calc(12px + env(safe-area-inset-bottom));width:100%;z-index:5}.ihabdevteam-core-scope .pp-bottom__left{align-items:center;display:flex;gap:var(--spacing-m)}.ihabdevteam-core-scope .pp-bottom__right{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .pp-bottom__meters{border:1px solid var(--color-whiteLine);border-radius:14px;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;height:56px;justify-content:center;padding:8px 12px}.ihabdevteam-core-scope .pp-bottom__meter{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-label{color:var(--color-gray);min-width:28px}.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:none}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:flex}@media (min-width:768px){.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:block}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:none}}@media (max-width:1024px){.ihabdevteam-core-scope .pp-bottom__meters{height:50px;padding:4px 12px}}@media (max-width:768px){.ihabdevteam-core-scope .pp-bottom__meters{height:46px;padding:2px 10px}}.ihabdevteam-core-scope .pp-bottom__tooltip-trigger{display:inline-block}.ihabdevteam-core-scope .pp-bottom__meters--floating{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-trigger{display:inline-flex;flex-shrink:0}";ce(IA);function Xd({useNoiseSettingBtn:e=!1,onSettings:t,onNext:a,onResult:o,stepIndex:n=0,stepCount:i=0,pageIndex:l=0,pageCount:c=1,resultOpen:u=!1,hideNoiseRows:d=!1}){const{t:h}=_e.useTranslation(),[p,m]=s.useState(!1),[C,v]=s.useState(null),[f,g]=s.useState(!1),x=s.useRef(null),b=s.useRef(null),w=En(),_=c>0,A=_&&l<c-1,y=!_||l>=c-1,B=n===Math.max(0,i);s.useEffect(()=>{e||(m(!1),v(null))},[e]);const k=s.useCallback(()=>{m(!1),v(null)},[]),S=s.useCallback(()=>{if(p){m(!1),v(null);return}const q=x?.current?.getBoundingClientRect();q&&v(q),t?.(),m(!0)},[p,t]),E=s.useCallback(()=>{if(p){m(!1),v(null);return}const q=b?.current?.getBoundingClientRect();q&&v(q),t?.(),m(!0)},[p,t]),D=sa("(max-width: 767px)"),I=s.useRef(null),[j,W]=s.useState(null),L=s.useCallback(()=>{g(q=>{const Y=!q;return W(Y?I.current?.getBoundingClientRect()??null:null),Y})},[]),M=s.useCallback(()=>{g(!1),W(null)},[]);s.useEffect(()=>{u&&(g(!1),W(null))},[u]);const z=r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"pp-bottom__meter",children:[r.jsx("span",{className:"pp-bottom__meter-label caption-1",children:h("training.meter.sentence","\uC7AC\uC0DD")}),r.jsx(Hi,{analyser:w?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:h("training.meter.sentence","\uC7AC\uC0DD")})]}),r.jsxs("div",{className:"pp-bottom__meter",children:[r.jsx("span",{className:"pp-bottom__meter-label caption-1",children:h("training.meter.noise","\uC18C\uC74C")}),r.jsx(Hi,{analyser:w?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:h("training.meter.noise","\uC18C\uC74C")})]})]});return u1(e&&p,()=>typeof document<"u"?document.querySelector(".noise-settings__header")?.closest(".tooltip-content")??null:null,()=>[x.current,b.current].map(q=>q?.querySelector("button")??null).find(q=>!!q&&q.getClientRects().length>0)??x.current?.querySelector("button")??null),r.jsxs("div",{className:"pp-bottom",children:[r.jsxs("div",{className:"pp-bottom__left",children:[e?r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"pp-bottom__settings--desktop",children:r.jsx("div",{ref:x,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:r.jsx(Ce,{htmlType:"button",size:56,type:"bar",icon:"settings",onClick:S,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:h("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:h("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),r.jsx("div",{className:"pp-bottom__settings--mobile",children:r.jsx("div",{ref:b,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:r.jsx(Ce,{htmlType:"button",size:56,type:"dot",shape:"pill",icon:"settings",onClick:E,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:h("training.settings","\uC124\uC815")})})})]}):null,e&&r.jsx("div",{ref:I,className:"pp-bottom__meter-trigger","data-tooltip-ignore":!0,children:r.jsx(Ce,{htmlType:"button",size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:L,selected:f,"aria-expanded":D?f:void 0,ariaLabel:h("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")})}),e&&f&&!D&&r.jsx("div",{className:"pp-bottom__meters",children:z})]}),e&&f&&D&&j&&r.jsx(xa,{anchorRect:j,onClose:M,ariaLabel:h("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"),children:r.jsx("div",{className:"pp-bottom__meters pp-bottom__meters--floating",children:z})}),r.jsxs("div",{className:"pp-bottom__right",children:[y&&r.jsx(Ce,{htmlType:"button",size:56,type:"bar",icon:"check",onClick:typeof o=="function"?o:a,ariaLabel:h("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),label:h("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),variant:"main",disabled:!B}),A&&r.jsx(Ce,{htmlType:"button",size:56,type:"bar",rightIcon:"chevron-right",align:"right",onClick:a,ariaLabel:h("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),label:h("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),variant:"main",disabled:!B})]}),e&&p&&r.jsx(Zd,{anchorRect:C,onClose:k,hideNoiseRows:d})]})}var OA=".ihabdevteam-core-scope .training-page-top{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-title.training-popup-title{align-items:center;background:var(--color-deepWhite);border-bottom:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;gap:var(--spacing-s);justify-content:space-between;padding:12px 16px;position:relative;width:100%;z-index:6}.ihabdevteam-core-scope .pp-title__left{align-items:center;display:flex;gap:var(--spacing-s);min-width:0}.ihabdevteam-core-scope .pp-title__text{display:flex;flex-direction:column;min-width:0}.ihabdevteam-core-scope .pp-title__depth{color:var(--color-gray)}.ihabdevteam-core-scope .pp-title__title{font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .pp-title__title--empty{color:var(--color-whiteLine)}.ihabdevteam-core-scope .pp-title__description{color:var(--color-gray);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:767px){.ihabdevteam-core-scope .pp-title.training-popup-title{gap:var(--spacing-xs);padding:10px 12px}.ihabdevteam-core-scope .pp-title__depth{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .pp-title__left{flex:1;min-width:0;overflow:hidden}}";ce(OA);function Jd({title:e,subtitle:t,desc:a,depth:o,icon:n,wrapperStyle:i,iconTooltip:l,pageIndex:c,pageCount:u,progressMax:d,progressIndex:h,onBack:p,onClose:m}){const{t:C}=_e.useTranslation(),v=sa("(max-width: 767px)"),f=Number.isInteger(h)?h:c||0,g=Number.isInteger(d)?d:u||0,x=p||m,b=Array.isArray(o)?v?o[o.length-1]:o.join(" / "):o,w=typeof e=="string"?e.trim():e,_=typeof t=="string"?t.trim():t,A=!!(w||_),y=A?w||_:C("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),B=b||(w?t:void 0),k=v&&typeof B=="string"&&(B.includes(" \xB7 ")||B.includes(" / "))?B.split(/\s[·/]\s/).pop():B,S=s.useMemo(()=>{const E=i&&typeof i=="object"?{...i}:{};return!("width"in E)&&!("height"in E)&&(E.width="40px",E.height="40px"),E},[i]);return r.jsxs("header",{className:"pp-title training-popup-title",children:[r.jsxs("div",{className:"pp-title__left",children:[x?r.jsx(Ce,{htmlType:"button",size:48,type:"dot",icon:"chevron-left",ariaLabel:C("common.back","\uB4A4\uB85C"),onClick:x,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,r.jsx("div",{children:n?r.jsx(n0,{icon:n,label:e,tooltip:l,wrapperStyle:S}):null}),r.jsxs("div",{className:"pp-title__text",children:[k?r.jsx("span",{className:"pp-title__depth caption-1",children:k}):null,r.jsx("span",{className:`pp-title__title h2${A?"":" pp-title__title--empty"}`,children:y}),a?r.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),r.jsx(Cd,{max:Math.max(0,g??0),index:Math.max(0,f??0)})]})}function g1(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function f1(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(t=>typeof t=="string"?t.split("|").map(a=>a.trim()).filter(Boolean):t||t===0?[String(t)]:[]):typeof e=="string"?e.split("|").map(t=>t.trim()).filter(Boolean):[String(e)]}const v1=(e,t)=>{if(!t)return t;const a=typeof xt?.t=="function"?xt.t(e,{defaultValue:t}):void 0;return typeof a=="string"&&a?a:t};function Qd(e,t,a){const o=e,n=o?.title||o?.name||(Array.isArray(t)?t[t.length-1]:void 0)||a||"\uD6C8\uB828",i=si().find(c=>c.key===(o?.category_0||o?.category_main_code)),l=i?.subs?.find(c=>c.key===(o?.category_1||o?.category_sub_code));return{title:n,label:o?.title||n,depth:t,icon:i?.icon,wrapperStyle:i?.color?{"--t-item-fg":i.color}:void 0,iconTooltip:[i?v1(`topic.${i.key}`,i.label):void 0,l?v1(`topic.sub.${l.key}`,l.label):void 0].filter(Boolean).join(" / ")||void 0}}function cs(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function ep(e,t,a){if(!e||typeof e!="object"||Array.isArray(e))return e;const o=e,n=typeof a=="number"&&a>0?a:Date.now();return{...o,...o.shownAt===void 0&&t?{shownAt:t}:{},...o.answeredAt===void 0?{answeredAt:new Date(n).toISOString()}:{}}}function C1(e){const t=e;return Array.isArray(t?.items)?t.items:Array.isArray(e)?e:e?[e]:[]}function x1({idPrefix:e,trainingData:t,depth:a,fallbackTitle:o="\uD6C8\uB828",pages:n=[],emptyMessage:i,buildResults:l,metaPatch:c}){const u=Qd(t,a,o),d=typeof c=="function"?c(u)||{}:c||{},h=t?.id||t?.title||n.length;return{id:`${e}:${h}`,meta:{...u,...d},pages:n,emptyMessage:i,buildResults:l}}function _1(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const t=e;return t.context||t.sentence||t.question||""||""}return""}function y1(e){if(e&&typeof e=="object"){const t=e;if(Array.isArray(t.selectedValues))return t.selectedValues;if(t.selectedValue!==void 0)return t.selectedValue;if(t.selectedIndex!==void 0)return t.selectedIndex;if(t.value!==void 0)return t.value}return e}function w1(e,t=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(t))return String(t[e]??"");if(typeof e=="string")return e}function tp(e,t){if(!(!e||typeof e!="object"))return e[`step-${t}`]}function k1(e,t,a,o){return tp(e,t*a+o)}function B1({payload:e,selected:t,choices:a=[],correctAnswers:o=[]}){if(e&&typeof e=="object"){const n=e;if(Array.isArray(n.selectedValues))return o.every(i=>n.selectedValues.includes(i))&&n.selectedValues.every(i=>o.includes(i));if(typeof n.correct=="boolean")return n.correct}if(o.length){if(typeof t=="number"&&Array.isArray(a)&&a.length)return o.some(n=>String(n)===String(a[t]));if(typeof t<"u")return o.some(n=>String(n)===String(t))}}function A1(e){return e?Array.isArray(e.items)?e.items.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const S1=s.createContext(null);function FA(){const e=s.useContext(S1);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function HA({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,choices:i=[],onDone:l,onChange:c}){const{t:u}=_e.useTranslation(),d=typeof e=="number"?e:-1,h=typeof t!="number"?"disabled":d<t?"done":d===t?"active":"disabled",[p,m]=s.useState(()=>i.map(()=>null)),C=JSON.stringify(i),v=i.length;s.useEffect(()=>{m(Array.from({length:v},()=>null))},[C]);const f=s.useRef(void 0);s.useEffect(()=>{const w=f.current;typeof w=="number"&&typeof t=="number"&&typeof e=="number"&&w>=e&&t<e&&m(Array.from({length:v},()=>null)),f.current=t},[t,e,v]);const g=s.useMemo(()=>p.filter(w=>w!==null).length+1,[p]),x=s.useCallback(w=>{if(!Ko(h))return;const _=p;let A;if(_[w]!=null){const B=_[w];A=_.map(k=>k!==null&&k>=B?null:k)}else A=[..._],A[w]=g;m(A);const y={selectedOrder:A,words:i,__ts:Date.now()};try{typeof c=="function"&&c(y)}catch{}if(_[w]==null&&A.length>0&&A.every(B=>B!==null))try{typeof l=="function"&&l(y)}catch{}},[h,p,g,c,l,i]),b=n??u("training.selectInOrder","\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.");return r.jsx(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:b,onDone:l,children:r.jsx("div",{className:"training-step__cards",children:i.map((w,_)=>r.jsx(Ui,{item:{word:w},disabled:h==="disabled",selectable:!0,selected:p[_]!==null,orderRank:p[_],onSelect:()=>x(_),flipDelay:_*120,hideLabel:!1,hideAudio:!0},`${w}-${_}`))})})}function Ln(e){return null}Ln.__isTrainingPage=!0;function Tr(e,t){const a=FA();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof t=="number"?e===t-1:!1,onDone:o=>a.handleStepDone(o,e),onChange:o=>a.handleStepChange(o,e)}}function ap({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l}=Tr(e,t);return r.jsx(is,{...a,index:o,stepIndex:n,isLast:i,onDone:l})}function op({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(rs,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}function rp({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(ns,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}function np({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(ss,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}function ip({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(Yd,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}function VA({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(HA,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}var WA=`.ihabdevteam-core-scope .trp-result{display:flex;flex:1;flex-direction:column;min-height:0;padding:0;position:relative}.ihabdevteam-core-scope .popup--training-result .popup-header{padding:var(--spacing-l) var(--spacing-l) 0;position:absolute;right:0;top:0;z-index:1}.ihabdevteam-core-scope .trp-result__head{padding:12px 72px 20px;position:relative;text-align:center}.ihabdevteam-core-scope .trp-result__eyebrow{align-items:center;color:var(--color-main);display:inline-flex;gap:var(--spacing-xs);letter-spacing:.22em;margin:0 0 14px;text-transform:uppercase}.ihabdevteam-core-scope .trp-result__eyebrow:after,.ihabdevteam-core-scope .trp-result__eyebrow:before{background:currentColor;content:"";height:1px;opacity:.35;width:24px}.ihabdevteam-core-scope .trp-result__title{color:var(--color-black);font-size:28px;margin:0}.ihabdevteam-core-scope .trp-result__subtitle{color:var(--color-gray);margin:10px 0 0}.ihabdevteam-core-scope .trp-score{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-m);margin:36px auto 8px}.ihabdevteam-core-scope .trp-score__figure{font-feature-settings:"tnum";align-items:baseline;display:flex;font-variant-numeric:tabular-nums;gap:var(--spacing-s)}.ihabdevteam-core-scope .trp-score__sep,.ihabdevteam-core-scope .trp-score__total{align-self:flex-end;color:var(--color-lightGray);font-size:44px;letter-spacing:-1px;padding-bottom:18px}.ihabdevteam-core-scope .trp-score__big{background:var(--color-main);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:112px;letter-spacing:-5px;line-height:.92}.ihabdevteam-core-scope .trp-result__body{padding:16px 0 0}.ihabdevteam-core-scope .result-table{width:100%}.ihabdevteam-core-scope .result-table__head{grid-gap:var(--spacing-m);border-bottom:1px solid var(--color-whiteLine);color:var(--color-lightGray);display:grid;gap:var(--spacing-m);grid-template-columns:1fr 100px;letter-spacing:.16em;padding:12px 4px 14px;text-transform:uppercase}.ihabdevteam-core-scope .result-table--answer .result-table__head,.ihabdevteam-core-scope .result-table--answer .result-table__row{grid-template-columns:1fr 200px 100px}.ihabdevteam-core-scope .result-table__head .col-right{text-align:center}.ihabdevteam-core-scope .result-table__row{grid-gap:var(--spacing-m);align-items:center;border-bottom:1px solid var(--color-whiteLine);display:grid;gap:var(--spacing-m);grid-template-columns:1fr 100px;padding:22px 4px;transition:background .18s ease}.ihabdevteam-core-scope .result-table__row:hover{background:var(--color-deepWhite)}.ihabdevteam-core-scope .result-table__row:last-child{border-bottom:0}.ihabdevteam-core-scope .trp-row__problem{align-items:baseline;display:flex;gap:10px}.ihabdevteam-core-scope .trp-row__no{font-feature-settings:"tnum";color:var(--color-lightGray);flex-shrink:0;font-variant-numeric:tabular-nums;width:32px}.ihabdevteam-core-scope .trp-row__q{color:var(--color-black);letter-spacing:-.1px}.ihabdevteam-core-scope .trp-row__judge{align-self:center;display:flex;justify-content:center}.ihabdevteam-core-scope .trp-row__answers{align-self:center;display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .trp-row__answer-line{align-items:baseline;display:flex;gap:10px}.ihabdevteam-core-scope .trp-row__answer-label{flex-shrink:0;width:32px}.ihabdevteam-core-scope .trp-row__answer-label.answer-correct{color:var(--color-lightGray)}.ihabdevteam-core-scope .trp-row__answer-label.answer-selected.is-correct{color:var(--color-main)}.ihabdevteam-core-scope .trp-row__answer-label.answer-selected.is-wrong{color:var(--color-error)}.ihabdevteam-core-scope .trp-row__answer-value{color:var(--color-black)}.ihabdevteam-core-scope .trp-row__answer-value.is-correct{color:var(--color-main)}.ihabdevteam-core-scope .trp-row__answer-value.is-wrong{color:var(--color-error)}.ihabdevteam-core-scope .popup-footer.trp-result__foot{align-items:center;background:var(--color-white);display:flex;flex-shrink:0;gap:var(--spacing-s);justify-content:center;padding:var(--spacing-l)}.ihabdevteam-core-scope .trp-actions{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .popup-footer.trp-result__foot{flex-wrap:wrap}.ihabdevteam-core-scope .trp-actions__reason{flex-basis:100%;margin:0;text-align:center}@keyframes result-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ihabdevteam-core-scope .trp-result.is-on{animation:result-rise .5s cubic-bezier(.22,.9,.3,1) both}.ihabdevteam-core-scope .trp-result.is-on .trp-score__big{animation:result-rise .7s cubic-bezier(.22,.9,.3,1) .1s both}.ihabdevteam-core-scope .trp-result.is-on .result-table__row{animation:result-rise .5s cubic-bezier(.22,.9,.3,1) both}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(2){animation-delay:.18s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(3){animation-delay:.24s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(4){animation-delay:.3s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(5){animation-delay:.36s}@media (max-width:767px){.ihabdevteam-core-scope .trp-result{padding:0}.ihabdevteam-core-scope .trp-result__head{padding:0 20px 20px}.ihabdevteam-core-scope .trp-result__body{padding:0}.ihabdevteam-core-scope .popup-footer.trp-result__foot{border-top:1px solid var(--color-whiteLine);gap:var(--spacing-xs);padding:var(--spacing-l)}.ihabdevteam-core-scope .trp-actions{display:flex;gap:var(--spacing-xs);width:100%}.ihabdevteam-core-scope .trp-actions>*{flex:1;min-width:0}.ihabdevteam-core-scope .trp-score{gap:10px;margin:20px auto 4px}.ihabdevteam-core-scope .trp-score__big{font-size:72px;letter-spacing:-3px}.ihabdevteam-core-scope .trp-score__sep,.ihabdevteam-core-scope .trp-score__total{font-size:28px;padding-bottom:10px}.ihabdevteam-core-scope .result-table__head{display:none}.ihabdevteam-core-scope .result-table__head,.ihabdevteam-core-scope .result-table__row{gap:var(--spacing-xs);grid-template-columns:1fr auto}.ihabdevteam-core-scope .result-table__row{padding:14px 4px}.ihabdevteam-core-scope .trp-row__judge{justify-content:flex-start}.ihabdevteam-core-scope .result-table--answer .result-table__row{align-items:start;gap:6px;grid-template-columns:1fr;grid-template-rows:auto auto auto;padding:14px 4px}.ihabdevteam-core-scope .result-table--answer .trp-row__judge{grid-row:1;justify-content:flex-start}.ihabdevteam-core-scope .result-table--answer .trp-row__problem{grid-row:2}.ihabdevteam-core-scope .result-table--answer .trp-row__answers{grid-row:3}
|
|
1065
|
+
`).map((l,c,u)=>r.jsxs(s.Fragment,{children:[l,c<u.length-1&&r.jsx("br",{})]},c))})}),r.jsxs("div",{className:"site-footer__links",children:[r.jsxs("div",{className:"site-footer__column",children:[r.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.site.title","\uC0AC\uC774\uD2B8")}),r.jsxs("ul",{children:[r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.malgwi","\uB9D0\uADC0")})}),r.jsx("li",{children:r.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")})}),r.jsx("li",{children:r.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")})}),r.jsx("li",{children:r.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")})})]})]}),r.jsxs("div",{className:"site-footer__column",children:[r.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.sns.title","SNS")}),r.jsxs("ul",{children:[r.jsx("li",{children:r.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")})}),r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),r.jsx("li",{children:r.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"})})]})]}),r.jsxs("div",{className:"site-footer__column",children:[r.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.policy.title","\uC815\uCC45")}),r.jsxs("ul",{children:[r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"#",onClick:l=>{e&&(l.preventDefault(),e())},children:i("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),r.jsx("li",{children:r.jsx("a",{className:"footer-link",href:"#",onClick:l=>{t&&(l.preventDefault(),t())},children:i("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),r.jsx("hr",{className:"site-footer__rule"}),r.jsxs("div",{className:"site-footer__bottom",children:[r.jsx("div",{className:"site-footer__brand",children:r.jsx("img",{src:Ku,alt:"IHAB",className:"site-footer__logo"})}),r.jsxs("div",{className:"site-footer__meta",children:[r.jsxs("div",{children:[r.jsx("span",{className:"footer-title",children:i("footer.ceo","\uB300\uD45C")})," ",r.jsx("span",{className:"footer-meta caption-1",children:i("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),r.jsxs("div",{children:[r.jsx("span",{className:"footer-title",children:i("footer.address","\uC8FC\uC18C")})," ",r.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")})]}),r.jsxs("div",{children:[r.jsx("span",{className:"footer-title",children:i("footer.support","\uACE0\uAC1D\uC13C\uD130")})," ",r.jsxs("span",{className:"footer-meta caption-1",children:[o," \xA0 ",n]})]})]})]}),r.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}var zB='.ihabdevteam-core-scope .landing-header{background:var(--landing-header-bg,var(--color-deepWhite));border-bottom:1px solid rgba(15,18,60,.05);border-bottom:1px solid var(--landing-header-border,rgba(15,18,60,.05));position:sticky;top:0;transform:translateZ(0);will-change:transform;z-index:500;z-index:var(--z-sticky,500)}.ihabdevteam-core-scope .landing-header__inner{align-items:center;display:flex;height:72px;height:var(--landing-header-height,72px);justify-content:space-between;position:relative}.ihabdevteam-core-scope .landing-header__brand{align-items:center;display:flex;flex:0 0 auto;margin-right:auto;text-decoration:none}.ihabdevteam-core-scope .landing-header__logo{display:block;height:40px;height:var(--landing-header-logo-height,40px);max-width:none;transform-origin:left center;transition:transform .3s cubic-bezier(.2,.9,.2,1.2),filter .3s;width:auto}.ihabdevteam-core-scope .landing-header__brand:hover .landing-header__logo{filter:brightness(1.08);transform:scale(1.05)}.ihabdevteam-core-scope .landing-header__links{align-items:center;color:var(--landing-header-link-color,var(--color-deepGray));display:flex;font-size:15px;font-weight:500;gap:36px;left:50%;position:absolute;transform:translateX(-50%)}.ihabdevteam-core-scope .landing-header__links a{color:inherit;padding:6px 0;position:relative;text-decoration:none;transition:color .2s}.ihabdevteam-core-scope .landing-header__links a:hover{color:var(--landing-header-link-hover,var(--color-main))}.ihabdevteam-core-scope .landing-header__links a:after{background:linear-gradient(90deg,var(--color-main),var(--color-sub));border-radius:1px;bottom:0;content:"";height:2px;left:0;position:absolute;right:100%;transition:right .35s cubic-bezier(.2,.7,.2,1)}.ihabdevteam-core-scope .landing-header__links a:hover:after{right:0}.ihabdevteam-core-scope .landing-header__actions{align-items:center;display:flex;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .landing-header__toggle{align-items:center;background:none;border:0;color:var(--landing-header-link-color,var(--color-deepGray));cursor:pointer;display:none;height:44px;justify-content:center;margin-right:-10px;width:44px}.ihabdevteam-core-scope .landing-header__burger{display:block;height:14px;position:relative;width:22px}.ihabdevteam-core-scope .landing-header__burger>span{background:currentColor;border-radius:1px;height:2px;inset-inline:0;position:absolute;transition:transform .2s cubic-bezier(.2,.7,.2,1),opacity .2s cubic-bezier(.2,.7,.2,1)}.ihabdevteam-core-scope .landing-header__burger>span:first-child{top:0}.ihabdevteam-core-scope .landing-header__burger>span:nth-child(2){top:6px}.ihabdevteam-core-scope .landing-header__burger>span:nth-child(3){top:12px}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:first-child{transform:translateY(6px) rotate(45deg)}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:nth-child(2){opacity:0}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.ihabdevteam-core-scope .landing-header__drawer{background:var(--landing-header-bg,var(--color-deepWhite));border-top:1px solid rgba(15,18,60,.05)}.ihabdevteam-core-scope .landing-header__drawer-item{display:block}.ihabdevteam-core-scope .landing-header__drawer-item a{align-items:center;color:var(--landing-header-link-color,var(--color-deepGray));display:flex;font-size:15px;font-weight:500;min-height:48px;text-decoration:none;transition:color .2s}.ihabdevteam-core-scope .landing-header__drawer-item a:hover,.ihabdevteam-core-scope .landing-header__drawer-item a[aria-current=page]{color:var(--landing-header-link-hover,var(--color-main))}@media (max-width:960px){.ihabdevteam-core-scope .landing-header__links{display:none}.ihabdevteam-core-scope .landing-header__toggle{display:flex}}@media (min-width:961px){.ihabdevteam-core-scope .landing-header__drawer{display:none}}';ce(zB);function Yf({logo:e,logoAlt:t="",logoHref:a,links:o=[],actions:n,className:i,containerClassName:l,renderLink:c,menuLabel:u}){const{t:d}=_e.useTranslation(),h=u??{open:d("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),close:d("header.menuClose","\uBA54\uB274 \uB2EB\uAE30")},[p,m]=s.useState(!1),C=s.useId(),v=s.useRef(null);s.useEffect(()=>{if(!p)return;const x=Io(()=>{const _=document.getElementById(C);_&&_.contains(document.activeElement)&&v.current?.focus(),m(!1)}),b=typeof window<"u"&&window.matchMedia?window.matchMedia("(min-width: 961px)"):null,w=_=>{_.matches&&m(!1)};return b&&(b.matches&&m(!1),b.addEventListener?.("change",w)),()=>{x(),b?.removeEventListener?.("change",w)}},[p,C]);const f=l?`${l} landing-header__inner`:"landing-header__inner",g=(x,b)=>c?c(x,{onClick:b}):r.jsx("a",{href:x.href,onClick:b,"aria-current":x.current?"page":void 0,children:x.label});return r.jsxs("header",{className:i?`landing-header ${i}`:"landing-header",children:[r.jsxs("div",{className:f,children:[e!=null&&(()=>{const x=typeof e=="string"?r.jsx("img",{src:e,alt:t,className:"landing-header__logo"}):e;return a?r.jsx("a",{href:a,className:"landing-header__brand",children:x}):r.jsx("div",{className:"landing-header__brand",children:x})})(),o.length>0&&r.jsx("nav",{className:"landing-header__links",children:o.map((x,b)=>r.jsx("span",{children:g(x)},`${b}:${x.href}`))}),r.jsxs("div",{className:"landing-header__actions",children:[n,o.length>0&&r.jsx("button",{ref:v,type:"button",onClick:()=>m(x=>!x),"aria-expanded":p,"aria-controls":C,"aria-label":p?h.close:h.open,className:p?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:r.jsxs("span",{className:"landing-header__burger",children:[r.jsx("span",{}),r.jsx("span",{}),r.jsx("span",{})]})})]})]}),o.length>0&&r.jsx("nav",{id:C,hidden:!p,className:"landing-header__drawer",children:r.jsx("div",{className:l??void 0,children:o.map((x,b)=>r.jsx("span",{className:"landing-header__drawer-item",children:g(x,()=>m(!1))},`${b}:${x.href}`))})})]})}var IB=".ihabdevteam-core-scope .bottom-sticky{animation:bottom-sticky-in .4s cubic-bezier(.2,.9,.2,1) both;bottom:24px;bottom:var(--bottom-sticky-offset,24px);left:50%;max-width:680px;max-width:var(--bottom-sticky-max-width,680px);position:fixed;transform:translateX(-50%);width:calc(100% - 48px);z-index:500;z-index:var(--z-sticky,500)}@keyframes bottom-sticky-in{0%{opacity:0;transform:translateX(-50%) translateY(16px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.ihabdevteam-core-scope .bottom-sticky__inner{align-items:center;background:var(--bottom-sticky-bg,var(--color-pureWhite));border-radius:20px;border-radius:var(--radius-m,20px);box-shadow:0 8px 40px rgba(15,18,60,.18),0 2px 8px rgba(15,18,60,.06);display:flex;gap:16px;gap:var(--spacing-m,16px);justify-content:space-between;padding:12px 12px 12px 24px;transition:box-shadow .2s,transform .2s}.ihabdevteam-core-scope .bottom-sticky__inner--clickable{cursor:pointer}.ihabdevteam-core-scope .bottom-sticky__inner--clickable:hover{border:1px solid var(--color-main);box-shadow:0 16px 56px color-mix(in srgb,var(--color-main) 30%,transparent),0 4px 12px color-mix(in srgb,var(--color-main) 15%,transparent);transform:translateY(-4px)}.ihabdevteam-core-scope .bottom-sticky__content{align-items:center;display:flex;flex:1;gap:12px;gap:var(--spacing-s,12px);justify-content:center}.ihabdevteam-core-scope .bottom-sticky__tagline{align-items:center;color:var(--color-black);display:flex;gap:0;margin:0;white-space:nowrap}.ihabdevteam-core-scope .bottom-sticky__tagline-highlight{background:linear-gradient(90deg,var(--color-main),var(--color-sub),var(--color-infoLink));-webkit-background-clip:text;background-clip:text;color:transparent;display:inline}.ihabdevteam-core-scope .bottom-sticky__tagline-part{align-items:center;display:flex;white-space:nowrap}.ihabdevteam-core-scope .bottom-sticky__tagline-logo{display:block;height:32px;width:auto}@media (max-width:600px){.ihabdevteam-core-scope .bottom-sticky{bottom:16px;bottom:var(--bottom-sticky-offset,16px);width:calc(100% - 32px)}.ihabdevteam-core-scope .bottom-sticky__inner{align-items:stretch;flex-direction:column;gap:12px;gap:var(--spacing-s,12px);padding:16px;padding:var(--spacing-m,16px)}.ihabdevteam-core-scope .bottom-sticky__content{flex:none;gap:6px;justify-content:center}.ihabdevteam-core-scope .bottom-sticky__tagline{flex-wrap:wrap;justify-content:center;text-align:center;white-space:normal}.ihabdevteam-core-scope .bottom-sticky__tagline-logo{height:26px}}";ce(IB);function Kf({children:e,action:t,onClick:a,className:o}){const n=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return r.jsx("div",{className:o?`bottom-sticky ${o}`:"bottom-sticky",children:r.jsxs("div",{className:n,onClick:a,...V0(a),children:[r.jsx("div",{className:"bottom-sticky__content",children:e}),t]})})}function OB({mountedRef:e}){const t=s.useRef({phase:"sound",at:0}),a=s.useRef(0),o=s.useRef(null),n=s.useRef(null),i=s.useCallback(()=>{const f=t.current,g=f.phase!=="sound"&&f.at>0;n.current=g?{phase:f.phase,\uD750\uB978:Math.max(0,Date.now()-f.at)}:null},[]),l=s.useCallback(()=>{const f=n.current;return n.current=null,f},[]),c=s.useCallback(()=>{a.current+=1,t.current={phase:"sound",at:0}},[]),u=s.useCallback((f,g,x=0)=>{if(!(f>0))return Promise.resolve(!0);const b=a.current;return t.current={phase:g,at:Date.now()-Math.max(0,x)},new Promise(w=>{const _=setTimeout(()=>{o.current===_&&(o.current=null),w(!!e.current&&b===a.current)},f);o.current=_})},[e]),d=s.useCallback(()=>{t.current={phase:"sound",at:Date.now()}},[]),h=s.useCallback(()=>{t.current={phase:"sound",at:0}},[]),p=s.useCallback(()=>{const f=t.current;return f.phase!=="sound"&&f.at>0},[]),m=s.useCallback(()=>a.current,[]),C=s.useCallback(f=>f===a.current,[]),v=s.useCallback(()=>{a.current+=1},[]);return s.useEffect(()=>()=>{o.current&&(clearTimeout(o.current),o.current=null)},[]),s.useMemo(()=>({positionRef:t,isRunning:p,generation:m,isCurrent:C,abort:c,waitPad:u,enterSound:d,leave:h,pause:i,resume:l,__bumpGenerationForTest:v}),[p,m,C,c,u,d,h,i,l,v])}const Yo=9,Zf=e=>Math.round(Math.min(Yo,Math.max(0,e))/Yo*100),Xf=e=>e/100*Yo,Ar=2,Od=.1,FB=e=>Math.min(Ar,Math.max(0,e)),HB=.1,VB=e=>Math.round(e*1e6)/1e6;function Sr(e){const{noiseRatio:t}=e;if(typeof t=="number"&&Number.isFinite(t))return FB(t);const a=Math.min(Yo,Math.max(0,Number(e.level)||0))/Yo,o=Number(e.mainVolume);return o>0?a>0?VB(Math.min(Ar,Math.max(HB,a/o))):0:1}const Jf=e=>Math.min(1,Math.max(0,Number(e.mainVolume)||0));function Fd(e){return Jf(e)}function Qi(e){return Jf(e)*Sr(e)}function es(e,t=Rs()){const a=Number.isFinite(t)&&t>0?t:1;return Math.min(1,Qi(e)/a)}function Er(e,t){const a={...e,...t??{}};return t&&"level"in t&&typeof t.noiseRatio!="number"&&(a.noiseRatio=Sr({level:a.level,mainVolume:a.mainVolume})),a}const Dr={enabled:!0,type:"defaultNoise",level:4.5,noiseRatio:1,speed:1,mainVolume:1,mainSpeed:1},ts=s.createContext(null);function En(){return s.useContext(ts)}const Hd=e=>`${$s()}/${e}`,Qf=e=>Array.from({length:10},(t,a)=>Hd(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),as={get defaultNoise(){return Hd("noise1.mp3")},get street(){return Qf("noise2")},get restaurant(){return Qf("noise3")},get buzz(){return Hd("noise4.mp3")}};function WB(e){const t=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return as.defaultNoise;case"street":return as.street[t];case"restaurant":return as.restaurant[t];case"buzz":return as.buzz;default:return null}}function GB({noisePlayer:e,audioRef:t,playbackStateRef:a,sequencer:o}){const n=s.useRef(e?.registerAnalyser);n.current=e?.registerAnalyser;const i=s.useRef(null),[l,c]=s.useState(null),u=s.useRef(null),d=s.useRef(null),h=s.useRef(null),p=s.useRef(null),m=s.useRef(0),C=s.useRef(null),v=s.useCallback(()=>!!o?.isRunning(),[o]),f=s.useCallback(()=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),C.current!==null&&(clearTimeout(C.current),C.current=null)},[]),g=s.useCallback((A,y=250)=>{const B=i.current;if(!B)return;const k=d.current;if(k){d.current=null;try{B.pause()}catch{}B.src=k,B.load()}if(!B.src)return;m.current+=1,f();try{Fr(),tr(B).then(I=>{if(i.current===B)try{n.current?.("noise",I)}catch{}})}catch{}const S=B.paused?0:ar(B);B.paused&&$a(B,0),B.play().catch(()=>{});const E=performance.now(),D=()=>{const I=Math.min(1,(performance.now()-E)/y);try{$a(B,S+(A-S)*I)}catch{}I<1?p.current=requestAnimationFrame(D):p.current=null};p.current=requestAnimationFrame(D)},[f]),x=s.useCallback((A=250,y)=>{const B=i.current;if(!B||B.paused){y?.();return}const k=++m.current;f();const S=performance.now(),E=ar(B),D=()=>{const I=Math.min(1,(performance.now()-S)/A);try{$a(B,E*(1-I))}catch{}if(I<1)p.current=requestAnimationFrame(D);else{p.current=null,C.current!==null&&(clearTimeout(C.current),C.current=null);try{B.pause()}catch{}y?.()}};p.current=requestAnimationFrame(D),C.current=setTimeout(()=>{if(C.current=null,m.current===k){p.current!==null&&(cancelAnimationFrame(p.current),p.current=null);try{B.paused||($a(B,0),B.pause(),y?.())}catch{}}},A+150)},[f]);s.useEffect(()=>{const A=document.createElement("audio");return A.loop=!0,A.crossOrigin="anonymous",i.current=A,()=>{f();try{A.pause(),A.removeAttribute("src"),A.load()}catch{}i.current=null,u.current=null,d.current=null}},[f]);const b=e?es(e.settings):0,w=!!e?.settings.enabled&&b>0;s.useEffect(()=>{if(!w)return;let A=0;const y=setInterval(()=>{const B=i.current;if(!B||B.paused){A=0;return}const k=t.current;if(k&&!k.paused&&!k.ended||v()||a.current==="playing"){A=0;return}A+=1,A>=2&&(A=0,x())},400);return()=>clearInterval(y)},[x,w,t,a,v]),s.useEffect(()=>{const A=()=>{const y=i.current;if(document.hidden){if(y&&!y.paused){f();try{y.pause()}catch{}}return}if(!y||!y.paused)return;const B=t.current,k=!!B&&!B.paused&&!B.ended||v()||a.current==="playing",S=h.current;k&&S?.enabled&&S.volume>0&&g(S.volume)};return document.addEventListener("visibilitychange",A),()=>document.removeEventListener("visibilitychange",A)},[f,g,t,a,v]),s.useEffect(()=>{h.current=e?{enabled:e.settings.enabled,volume:b,type:e.settings.type}:null},[e,e?.settings.enabled,b,e?.settings.type]);const _=s.useRef(null);return s.useEffect(()=>()=>{_.current?.(),_.current=null},[]),s.useEffect(()=>{const A=e?.settings,y=i.current;if(!y)return;const B=A?es(A):0;if(!A||!A.enabled||B===0){x();return}if(u.current!==A.type){const k=WB(A.type);k&&(u.current=A.type,c(k),d.current=k,x(150,()=>{if(d.current!==k)return;d.current=null,y.src=k,y.load();const S=t.current;if(S&&!S.paused||v()){_.current?.();const E=()=>{y.removeEventListener("canplay",E),_.current===D&&(_.current=null);const I=t.current,j=h.current;(I&&!I.paused&&!I.ended||v())&&j?.enabled&&j.volume>0&&g(j.volume)},D=()=>y.removeEventListener("canplay",E);_.current=D,y.addEventListener("canplay",E)}}))}else{const k=t.current,S=!!k&&!k.paused&&!k.ended||v()||a.current==="playing";if(S&&d.current)g(B);else if(S&&y.paused&&y.src)g(B);else if(!y.paused)if(!S)x();else{f();const E=ar(y),D=performance.now(),I=()=>{const j=Math.min(1,(performance.now()-D)/150);try{$a(y,E+(B-E)*j)}catch{}j<1?p.current=requestAnimationFrame(I):p.current=null};p.current=requestAnimationFrame(I)}}},[e?.settings,e?.settings.enabled,b,e?.settings.type,f,g,x,t,a,h,v]),s.useEffect(()=>{const A=i.current;if(A)try{A.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:i,activeNoiseUrl:l,noiseSettingsRef:h,cancelNoiseFade:f,fadeInNoise:g,fadeOutNoise:x}}function UB({ttsText:e,playbackRate:t,mainVolume:a,fillRef:o,waveProgressRef:n,setProgress:i,setPlaybackState:l,setStateLocal:c,fadeInNoise:u,fadeOutNoise:d,noiseSettingsRef:h,onDoneRef:p,handleEndRef:m}){const C=s.useRef(null),v=s.useRef(0),f=s.useRef(null),g=s.useRef(0),x=s.useRef(!1);s.useEffect(()=>()=>{g.current++;try{if(f.current&&(cancelAnimationFrame(f.current),f.current=null),x.current&&window.speechSynthesis){try{window.speechSynthesis.cancel()}catch{}x.current=!1}}catch{}},[]);const b=(A,y=1)=>{try{const B=(A||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(A||"").length);return Math.max(700,Math.round(B*300/Math.max(.25,y)))}catch{return 1200}},w=s.useCallback(A=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof p.current=="function"&&p.current(!1)}catch{}return}const y=window.speechSynthesis,B=++g.current;try{try{y.cancel()}catch{}const k=A??e,S=Array.isArray(k)?k.filter(L=>!!L):[k||""];S.length===0&&S.push("");const E=Math.max(.3,Math.min(3,t));v.current=S.reduce((L,M)=>L+b(M,E||1),0),C.current=performance.now(),i(0),l("playing"),c("playMode");const D=h.current;D?.enabled&&(D?.volume??0)>0&&u(D.volume);const I=()=>{try{const L=C.current||performance.now(),M=performance.now()-L,z=v.current||1200,q=Math.min(1,M/z);try{o.current&&(o.current.style.left=`${q*100}%`),n.current&&n.current.style.setProperty("--progress",String(q))}catch{}q<1&&(f.current=requestAnimationFrame(I))}catch{}},j=()=>{if(B===g.current)try{f.current&&(cancelAnimationFrame(f.current),f.current=null),i(1),l("stopped");try{m.current?.()}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}}catch{}},W=L=>{const M=new SpeechSynthesisUtterance(S[L]);try{M.rate=E}catch{}try{M.volume=Math.max(0,Math.min(1,a))}catch{}M.onend=()=>{if(B===g.current){if(L<S.length-1){try{W(L+1)}catch{j()}return}j()}},M.onerror=()=>{j()},M.onstart=()=>{if(!(L>0))try{f.current&&(cancelAnimationFrame(f.current),f.current=null),f.current=requestAnimationFrame(I)}catch{}},x.current=!0,y.speak(M)};try{W(0)}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}},[e,t,a,u,o,n,i,l,c,h,p,m]),_=s.useCallback(()=>{g.current++;try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}f.current&&(cancelAnimationFrame(f.current),f.current=null),d(),C.current=null}catch{}l("stopped"),c("active"),i(0)},[d,l,c,i]);return{startTTS:w,stopTTS:_}}var qB='.ihabdevteam-core-scope .audio-player{align-items:center;display:flex;flex-direction:column;width:100%}.ihabdevteam-core-scope .audio-player__no-waveform{align-items:center;align-self:flex-start;color:var(--color-lightGray);display:flex;gap:4px;margin:6px 0 0}.ihabdevteam-core-scope .audio-player__no-waveform .iconRenderer-icon{align-items:center;display:inline-flex}.ihabdevteam-core-scope .audio-player__panel{align-items:center;background:linear-gradient(90deg,var(--color-main),var(--color-sub));background:linear-gradient(var(--angle,90deg),var(--color-main),var(--color-sub));border-radius:var(--radius-m);display:flex;height:120px;position:relative;width:100%}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__panel{background:var(--color-darkWhite);border:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__buttons,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__play,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__wave{pointer-events:none}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__buttons .button,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__play .button{opacity:.7}.ihabdevteam-core-scope .audio-player__play{align-items:center;bottom:0;display:flex;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:relative;right:0;top:0;transition:opacity .16s ease,transform .16s ease;width:100%;z-index:10}.ihabdevteam-core-scope .audio-player__play.is-visible{opacity:1;pointer-events:auto}.ihabdevteam-core-scope .audio-player__panel>.button{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .16s ease,transform .16s ease;will-change:opacity,transform;z-index:35}.ihabdevteam-core-scope .audio-player__button{align-items:center;background:transparent;border:0;cursor:pointer;display:flex;inset:0;justify-content:center;padding:0;position:absolute;z-index:35}.ihabdevteam-core-scope .audio-player__button-triangle-wrap{align-items:center;display:flex;height:90px;justify-content:center;transition:transform .32s cubic-bezier(.2,.7,.2,1);width:90px}.ihabdevteam-core-scope .audio-player__button:hover .audio-player__button-triangle-wrap{transform:scale(1.18)}.ihabdevteam-core-scope .audio-player__button:active .audio-player__button-triangle-wrap{transform:scale(1.06)}.ihabdevteam-core-scope .audio-player__button-triangle{height:100%;width:100%}.ihabdevteam-core-scope .audio-player__button-triangle path{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__button{cursor:default;opacity:.5;pointer-events:none}.ihabdevteam-core-scope .audio-player__slider{align-items:center;bottom:50px;box-sizing:border-box;display:flex;left:20px;pointer-events:none;position:absolute;right:20px;top:20px}.ihabdevteam-core-scope .audio-player__buttons{align-items:center;border-radius:999px;bottom:10px;box-sizing:border-box;display:flex;gap:0;height:28px;justify-content:center;left:0;pointer-events:auto;position:absolute;right:0;z-index:40}.ihabdevteam-core-scope .audio-player__source-buttons{align-items:center;border:1px solid var(--color-white-a30);border-radius:var(--radius-m);display:inline-flex;justify-content:center;overflow:visible}.ihabdevteam-core-scope .audio-player__source-buttons .button{flex:0 0 auto;max-width:60px}.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\B2E4\\C74C],.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\C774\\C804],.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\C815\\C9C0]{display:none}.ihabdevteam-core-scope .audio-player__buttons>.button{align-items:center;display:inline-flex;justify-content:center;margin:0;width:auto}.ihabdevteam-core-scope .audio-player__fill{backface-visibility:hidden;background:var(--color-pureWhite);border-radius:var(--radius-sm);height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) scaleY(0);transform-origin:center center;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .16s ease;width:8px;will-change:transform,opacity;z-index:70}.ihabdevteam-core-scope .audio-player__fill.is-visible{opacity:1}.ihabdevteam-core-scope .audio-player__fill.is-expanded{transform:translateX(-50%) translateY(-50%) scaleY(1)}.ihabdevteam-core-scope .audio-player__fill.is-paused{transition:opacity .16s ease}.ihabdevteam-core-scope .audio-player__fill.is-out{animation:audio-player-fill-out .28s cubic-bezier(.2,.8,.2,1) forwards}@keyframes audio-player-fill-out{0%{opacity:1;transform:translateX(-50%) translateY(-50%) scaleY(1)}to{opacity:0;transform:translateX(-50%) translateY(-50%) scaleY(0)}}.ihabdevteam-core-scope .audio-player__loading{align-items:center;background:transparent;border-radius:var(--radius-sm);color:rgba(0,0,0,.85);color:var(--audio-loading-foreground,rgba(0,0,0,.85));display:inline-flex;font-size:13px;gap:var(--spacing-xs);left:50%;padding:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:999}.ihabdevteam-core-scope .audio-player__debug{align-items:center;background:hsla(0,0%,100%,.06);border-radius:18px;color:#fff;display:flex;font-size:12px;gap:8px;padding:6px 10px;pointer-events:none;position:absolute;right:12px;top:12px}.ihabdevteam-core-scope .audio-player__debug-dot{border-radius:10px;box-shadow:0 0 6px rgba(0,0,0,.4);display:inline-block;height:10px;width:10px}.ihabdevteam-core-scope .audio-player__loading .audio-player__loading-text,.ihabdevteam-core-scope .audio-player__panel.is-loading .audio-player__loading-text{display:none}.ihabdevteam-core-scope .audio-player__loading-spinner{animation:audio-player-spinner .9s linear infinite;border:4px solid hsla(0,0%,100%,.2);border-radius:50%;border-top-color:#fff;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25));height:40px;width:40px}@keyframes audio-player-spinner{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .audio-player__wave{height:90%;height:var(--wave-h,90%);position:absolute;transition:height .35s cubic-bezier(.22,.9,.3,1)}.ihabdevteam-core-scope .audio-player__wave,.ihabdevteam-core-scope .audio-player__wave-inner{align-items:center;display:flex;justify-content:center;pointer-events:none;width:100%;z-index:60}.ihabdevteam-core-scope .audio-player__wave-inner{cursor:default;gap:3px;gap:var(--bar-gap,3px);height:100%;margin:0 auto;padding:0}.ihabdevteam-core-scope .audio-player__wave-inner:not(.is-ready) .audio-player__bar:after{opacity:0}.ihabdevteam-core-scope .audio-player__wave-inner.is-ready .audio-player__bar:after{animation:wave-bar-in .35s cubic-bezier(.22,.9,.3,1) backwards;animation-delay:0ms;animation-delay:calc(var(--i, 0)*2ms)}@keyframes wave-bar-in{0%{opacity:0;transform:translateY(-50%) scaleY(.05)}to{opacity:1;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15))}}.ihabdevteam-core-scope .audio-player__wave-inner.is-ready .audio-player__bar--hidden:after,.ihabdevteam-core-scope .audio-player__wave-noise.is-ready .audio-player__bar--hidden:after{animation:none;opacity:0}.ihabdevteam-core-scope .audio-player__wave-played{bottom:0;clip-path:inset(0 100% 0 0);clip-path:inset(0 calc((1 - var(--progress, 0))*100%) 0 0);left:0;pointer-events:none;position:absolute;right:0;top:0}.ihabdevteam-core-scope .audio-player__bar{box-sizing:border-box;flex:0 0 3px;flex:0 0 var(--bar-w,3px);height:100%;position:relative}.ihabdevteam-core-scope .audio-player__wave-unplayed .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) 0);border-radius:999px;content:"";height:100%;height:var(--wave-h1,100%);left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15));transform-origin:center center;transition:transform .35s cubic-bezier(.22,.9,.3,1);z-index:61}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-unplayed .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-played .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) 0);border-radius:999px;content:"";height:100%;height:var(--wave-h1,100%);left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15));transform-origin:center center;transition:transform .35s cubic-bezier(.22,.9,.3,1);z-index:62}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-played .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-noise{align-items:center;bottom:0;display:flex;gap:3px;gap:var(--bar-gap,3px);justify-content:center;left:0;margin:0 auto;pointer-events:none;position:absolute;right:0;top:0;width:100%;z-index:58}.ihabdevteam-core-scope .audio-player__wave-noise .audio-player__bar:after{background:color-mix(in srgb,var(--color-deepMain),var(--color-deepSub) 0);border-radius:999px;content:"";height:100%;height:var(--wave-h1,100%);left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.1);transform:translateY(-50%) scaleY(var(--val,.1));transform-origin:center center;transition:transform .35s cubic-bezier(.22,.9,.3,1);z-index:58}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-noise .audio-player__bar:after{background:color-mix(in srgb,var(--color-deepMain),var(--color-deepSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-noise:not(.is-ready) .audio-player__bar:after{opacity:0}.ihabdevteam-core-scope .audio-player__wave-noise.is-ready .audio-player__bar:after{animation:wave-bar-in .35s cubic-bezier(.22,.9,.3,1) backwards;animation-delay:0ms;animation-delay:calc(var(--i, 0)*2ms)}.ihabdevteam-core-scope .audio-player__segments{align-items:center;display:flex;gap:3px;gap:var(--bar-gap,3px);height:100%;position:relative;width:100%}.ihabdevteam-core-scope .audio-player__segment{align-items:center;cursor:pointer;display:flex;height:100%;justify-content:center;padding:10px 0;pointer-events:auto;position:relative}.ihabdevteam-core-scope .audio-player__segment-inner{align-items:center;display:flex;gap:3px;gap:var(--bar-gap,3px);height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .audio-player__buttons>.button--variant-transparent-white[aria-pressed=true]:not(:hover):not(:focus-visible){background:transparent;color:#fbfdff}.ihabdevteam-core-scope .audio-player__source-buttons .button--variant-transparent-white[aria-pressed=true]{background:var(--color-white);color:var(--color-darkGray)}';ce(qB);const YB=.01,KB=.3;async function ZB(e,t,a,o=!1){let n=null;try{const i=window.AudioContext||window.webkitAudioContext;n=new i;const l=await n.decodeAudioData(e.slice(0)),c=l.numberOfChannels>0?l.getChannelData(0):null;if(!c)return null;let u=0;if(o){const C=Math.floor(KB*l.sampleRate),v=Math.min(c.length,C);for(;u<v&&Math.abs(c[u])<=YB;)u++;u>=v&&(u=0)}const d=c.length-u,h=a&&a>0?Math.min(d,Math.floor(a*l.sampleRate)):d,p=Math.max(t,h),m=Math.floor(p/t)||1;return new Array(t).fill(0).map((C,v)=>{const f=u+v*m,g=Math.min(f+m,u+p,c.length);let x=0;for(let b=f;b<g;b++){const w=Math.abs(c[b]);w>x&&(x=w)}return x})}catch{return null}finally{try{n?.close?.()}catch{}}}async function e1(e,t,a,o=!1){try{const n=await fetch(e);if(n.ok===!1)return null;const i=await n.arrayBuffer();return await ZB(i,t,a,o)}catch(n){try{const i=en(n)}catch{}return null}}const os=45,t1=74,a1=2;function Dn(e){const t=Math.min(2,Math.max(0,Number(e)||0));return t<=1?t*45:45+(t-1)*29}function Nn(e){return Dn(e)/45}const XB=e=>Math.max(0,(typeof e=="number"&&Number.isFinite(e)?e:0)*1e3),o1=e=>Math.max(0,typeof e=="number"&&Number.isFinite(e)?e:0);function r1({durationsSec:e,leadInMs:t=0,tailMs:a=0}){const o=o1(t),n=o1(a),i=[];let l=0;return e.forEach((c,u)=>{for(const[d,h]of[["lead",o],["sound",XB(c)],["tail",n]])i.push({kind:d,track:u,startMs:l,durMs:h}),l+=h}),{segments:i,totalMs:l,trackCount:e.length}}function n1(e,t){const a=(t|0)*3;if(t<0||a+2>=e.segments.length)return null;const[o,n,i]=[e.segments[a],e.segments[a+1],e.segments[a+2]];return{lead:o,sound:n,tail:i,totalMs:o.durMs+n.durMs+i.durMs}}function JB(e,t){const a=n1(e,t.track);if(!a||!(a.totalMs>0))return 0;const o=a[t.kind],n=Math.min(Math.max(0,Number.isFinite(t.elapsedMs)?t.elapsedMs:0),o.durMs);return Math.max(0,Math.min(1,(o.startMs-a.lead.startMs+n)/a.totalMs))}function QB(e,t,a){const o=Math.max(0,Math.floor(a)),n=n1(e,t);if(!n||o===0||!(n.totalMs>0)||n.lead.durMs===0&&n.tail.durMs===0||!(n.sound.durMs>0))return{lead:0,sound:o,tail:0};const i=Math.round(n.lead.durMs/n.totalMs*o),l=Math.round(n.tail.durMs/n.totalMs*o),c=Math.max(1,o-i-l),u=i+c+l-o;return{lead:Math.max(0,i-Math.ceil(u/2)),sound:c,tail:Math.max(0,l-Math.floor(u/2))}}function eA({currentTime:e,sources:t,index:a,audioDuration:o}){const n=a||0,i=Array.isArray(t)&&t.length>0?t[n]:void 0,l=i?i.duration||o||0:o||0;if(!(l>0))return 0;const c=Number.isFinite(e)?e:0;return Math.max(0,Math.min(1,c/l))}function tA({phase:e,phaseElapsedMs:t,currentTime:a,trackDurationSec:o,leadInMs:n,tailMs:i}){const l=r1({durationsSec:[o],leadInMs:n,tailMs:i});return JB(l,{track:0,kind:e,elapsedMs:e==="sound"?(Number.isFinite(a)?a:0)*1e3:t})}function aA({bars:e,trackDurationSec:t,leadInMs:a,tailMs:o}){return QB(r1({durationsSec:[t],leadInMs:a,tailMs:o}),0,e)}function oA(e,t){if(!Array.isArray(e))return null;const a=t||0;return a<e.length-1?a+1:null}function rA({ended:e,completedByEnd:t}){return!!e||!!t}function nA(e){return e.map((t,a)=>({src:t.src,label:String(a+1),color:void 0,duration:t.duration||0}))}function iA(e){return e.reduce((t,a)=>t+(a.duration||0),0)}function sA(e,t,a){const o=Array.isArray(e)?e:e?[e]:[],n=[];for(const i of o)if(i){if(typeof i=="object"&&i!==null&&"src"in i&&i.src){const l=i;n.push({code:l.code??null,src:l.src});continue}if(typeof i=="string"&&(i.startsWith("http")||i.includes("/"))){n.push({code:null,src:i});continue}if(typeof i=="string"||typeof i=="number"){const l=String(i),c=a(l,t);c&&n.push({code:l,resolvedPath:c})}}return n}const i1=4,lA=Nn(i1/os);function cA(e){const{src:t,segments:a,progress:o=0,waveProgressRef:n,noiseSrc:i,noiseRatio:l=0,noiseSpeed:c=1,totalDuration:u=0,mainVolume:d=1,onReadyChange:h,showSoundWaveForm:p=!0,leadInMs:m=0,tailMs:C=0,trackDurationSec:v=0}=e,f=s.useRef(null),g=s.useRef(null),[x,b]=s.useState(null),[w,_]=s.useState(!1),[A,y]=s.useState(null),[B,k]=s.useState(2),[S,E]=s.useState(0),[D,I]=s.useState(null),[j,W]=s.useState(!1),[L,M]=s.useState(!1),z=3,q=3,Y=1,P=300,V=s.useRef(0),$=s.useCallback(()=>{const ye=f.current,le=g&&g.current?g.current:ye?ye.closest(".audio-player__wave"):null,he=le?le.getBoundingClientRect():ye?ye.getBoundingClientRect():null,ve=he?he.width:0,G=he?Math.max(100,he.width):320,oe=he?he.height:0,me=Math.max(Y,Math.min(P,Math.floor((G+q)/(z+q)))),Te=me*z,ke=Math.max(0,me-1),Pe=Math.max(0,ke>0?(G-Te)/ke:q);return{bars:me,gap:Pe,height:oe,width:ve}},[]),U=s.useRef(void 0),T=s.useRef(null),F=s.useCallback(async(ye,le,{quiet:he=!1}={})=>{const ve=++V.current,G=()=>V.current===ve;try{if(he||_(!1),U.current=ye,!ye){G()&&b(null);return}let oe=le;if(!oe)try{for(let ke=0;ke<4&&!(f.current||g.current);ke++)await new Promise(Pe=>requestAnimationFrame(Pe));await new Promise(ke=>requestAnimationFrame(ke));const Te=$();Te.height>0&&E(Te.height),oe=Te.bars,k(Te.gap)}catch{oe=120}T.current=oe;const me=await e1(ye,oe);if(!G())return;if(!me){b(null),_(!1);return}b(me),y(oe),_(!0)}catch{if(!G())return;b(null),_(!1)}},[_,b,E,k,y,$]);s.useEffect(()=>{const ye=g.current;if(!ye||typeof ResizeObserver>"u")return;let le=null;const he=new ResizeObserver(()=>{le!==null&&cancelAnimationFrame(le),le=requestAnimationFrame(()=>{le=null;try{const ve=$();if(ve.width<=0||(ve.height>0&&E(ve.height),T.current===null||ve.bars===T.current))return;const G=U.current;k(ve.gap),G?F(G,ve.bars,{quiet:!0}).catch(()=>{}):T.current=ve.bars}catch{}})});return he.observe(ye),()=>{he.disconnect(),le!==null&&cancelAnimationFrame(le)}},[$,F]),s.useEffect(()=>{const ye=a&&a[0]&&a[0].src||t||a&&a.length===1&&a[0]&&a[0].src;F(typeof ye=="string"?ye:void 0).catch(()=>{}),M(!1)},[t,a,F]),s.useEffect(()=>{let ye=!1;if(W(!1),!i||!A){I(null);return}const le=u>0?u*(c||1):void 0;return e1(i,A,le,!0).then(he=>{ye||(I(he),he||W(!0))}).catch(()=>{ye||(I(null),W(!0))}),()=>{ye=!0}},[i,A,u,c]);const N=Math.max(0,Math.min(1,d)),O=s.useMemo(()=>x&&x.length&&Math.max(...x)||1,[x]),H=A||40,Z=s.useMemo(()=>aA({bars:H,trackDurationSec:v,leadInMs:m,tailMs:C}),[H,v,m,C]),te=s.useMemo(()=>Array.from({length:H}).map((ye,le)=>{const he=le>=Z.lead&&le<Z.lead+Z.sound,ve=Z.sound>0&&he?Math.min(H-1,Math.round((le-Z.lead)/Z.sound*H)):-1,G=he?x&&x[ve]!=null?x[ve]:null:x?0:null,oe=G==null?null:Math.min(1,G/O*N),me=oe!=null&&S>0&&Dn(oe)<=i1,Te=oe==null?.15:me?0:Nn(oe),ke=me,Pe=H>1?le/(H-1):0;return r.jsx("div",{className:ke?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":Te,"--i":le,"--mix":Pe}},le)}),[H,x,O,N,S,Z]),se={"--progress":String(Math.max(0,Math.min(1,o)))},be=s.useMemo(()=>D&&D.length&&Math.max(...D.map(ye=>Number.isFinite(ye)?Math.abs(ye):0))||1,[D]),X=N*Math.max(0,l),re=!i||!D||!D.length?1:Math.max(1,X),Ae={"--bar-gap":`${B}px`,"--wave-h":`${Dn(re)}px`,"--wave-h1":`${os}px`},K=w&&(i?!!D||j:!0);s.useEffect(()=>{K&&M(!0)},[K]);const ie=L?w:K;s.useEffect(()=>{h?.(ie)},[ie,h]);const ue=A||40,je=s.useMemo(()=>Array.from({length:ue}).map((ye,le)=>{const he=D&&D[le]!=null?D[le]:null,ve=he==null?0:Math.abs(he)/be*X,G=Math.max(lA,Nn(ve)),oe=ue>1?le/(ue-1):0;return r.jsx("div",{className:"audio-player__bar",style:{"--val":G,"--i":le,"--mix":oe}},le)}),[ue,D,be,X,S]);return r.jsxs("div",{className:"audio-player__wave",ref:g,style:Ae,children:[i&&r.jsx("div",{className:`audio-player__wave-noise ${K?"is-ready":""}`,"aria-hidden":"true",children:je}),p&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${ie?"is-ready":""}`,ref:f,children:te}),r.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${ie?"is-ready":""}`,ref:n,style:se,children:te})]})]})}const uA={idle:"\uB300\uAE30",synthesizing:"\uC18C\uB9AC\uB97C \uB9CC\uB4E4\uACE0 \uC788\uC2B5\uB2C8\uB2E4\u2026",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"},s1={idle:!1,synthesizing:!0,resolving:!0,checking_exists:!0,getting_signed_url:!0,downloading:!0,measuring_duration:!0,ready:!1,error:!0};function Vd(e,t){return new Promise((a,o)=>{const n=document.createElement("audio");let i=!1;const l=()=>{try{n.removeAttribute("src"),n.load()}catch{}},c=()=>{if(i)return;i=!0;const d=isFinite(n.duration)&&n.duration||0;l(),a(d)},u=d=>{i||(i=!0,l(),t.rejectOnError?o(new Error(d)):a(0))};n.addEventListener("loadedmetadata",c),n.addEventListener("error",()=>u("audio load failed")),setTimeout(()=>u("audio load timeout"),t.timeoutMs),n.src=e})}const dA=2e3;function l1(e,t=dA){return new Promise(a=>{let o=!1;const n=()=>{o||(o=!0,a())};e.addEventListener("canplay",n,{once:!0}),e.addEventListener("error",n,{once:!0}),setTimeout(n,t)})}function pA({showSoundWaveForm:e,showNoiseWaveForm:t,timeoutMs:a=2500}){const o=s.useRef(!1),n=s.useRef([]),i=s.useCallback(u=>{if(o.current=u,!u||!n.current.length)return;const d=n.current;n.current=[];for(const h of d)h(!0)},[]),l=s.useCallback(()=>{o.current=!1},[]),c=s.useCallback(()=>!e&&!t||o.current?Promise.resolve(!0):new Promise(u=>{const d=p=>{clearTimeout(h),n.current=n.current.filter(m=>m!==d),u(p)},h=setTimeout(()=>d(!0),a);n.current.push(d)}),[e,t,a]);return s.useEffect(()=>()=>{const u=n.current;n.current=[];for(const d of u)d(!1)},[]),{onReadyChange:i,waitForReady:c,markNotReady:l}}function hA(){const e=s.useRef([]),t=s.useCallback(n=>(e.current.push(n),n),[]),a=s.useCallback(n=>{const i=new Set([...n].filter(Boolean));e.current=e.current.filter(l=>{if(i.has(l))return!0;try{URL.revokeObjectURL(l)}catch{}return!1})},[]),o=s.useCallback(()=>{a([])},[a]);return s.useEffect(()=>()=>{for(const n of e.current)try{URL.revokeObjectURL(n)}catch{}e.current=[]},[]),{track:t,keepOnly:a,revokeAll:o}}function mA({offsetY:e=8}={}){const t=s.useRef(null),[a,o]=s.useState(null),n=s.useCallback(()=>o(null),[]),i=s.useCallback(()=>{try{const l=t.current?.getBoundingClientRect();if(!l)return;o({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",n),()=>document.removeEventListener("mousedown",n)},[a,n]),{ref:t,rect:a,show:i,hide:n}}function bA(e){if(!e)return 0;const t=e.duration;if(Number.isFinite(t)&&t>0)return t;if(t===0)return 0;try{const a=e.seekable;if(a&&a.length>0){const o=a.end(a.length-1);if(Number.isFinite(o)&&o>0)return o}}catch{}return null}const gA=400,fA=2e3,c1=5;function vA({audioRef:e,fillRef:t,waveProgressRef:a,sourcesRef:o,currentIndexRef:n,sequencer:i,leadInMs:l=0,tailMs:c=0}){const u=s.useRef(null),d=s.useRef(0),h=s.useRef(null),p=s.useCallback(()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)},[]),m=s.useCallback(()=>{if(u.current!==null)return;let v=0;const f=()=>{if(Xo){const g=typeof performance<"u"&&performance.now?performance.now():Date.now();if(v>0&&g-v>gA){const x=h.current===null||g-h.current>fA;if(h.current=g,x&&d.current<c1){d.current+=1;const b=d.current;let w=null;try{w=typeof document<"u"?document.visibilityState:null}catch{}ra(`progress-ticker-slow-frames#${b}`,`[ihab-core] \uC9C4\uD589 \uC0AC\uC2AC\uC758 \uD2C0 \uC0AC\uC774\uAC00 ${Math.round(g-v)}ms \uC785\uB2C8\uB2E4(\uBCF4\uD1B5 16ms).`,w==="hidden"?"\uC774 \uCE78\uC774 **\uC228\uC5B4 \uC788\uC5B4** \uBE0C\uB77C\uC6B0\uC800\uAC00 \uD2C0\uC744 \uC904\uC600\uC2B5\uB2C8\uB2E4 \u2014 \uC7AC\uC0DD\uBC14\xB7\uD30C\uD615\uC740 \uD2C0\uB9C8\uB2E4 \uADF8\uB824\uC9C0\uBBC0\uB85C, \uC9C0\uAE08 \uC7AC\uB294 \uAC12\uC740 **\uC0AC\uB78C\uC774 \uBCF4\uB294 \uD654\uBA74\uACFC \uB2E4\uB985\uB2C8\uB2E4.** \uCE78\uC744 \uC55E\uC73C\uB85C \uAEBC\uB0B4\uACE0 \uB2E4\uC2DC \uC7AC\uC2ED\uC2DC\uC624.":"\uCE78\uC740 \uBCF4\uC774\uB294\uB370 \uD2C0\uC774 \uB290\uB9BD\uB2C8\uB2E4 \u2014 \uAC19\uC740 \uD654\uBA74\uC5D0\uC11C \uBB34\uAC70\uC6B4 \uC77C\uC774 \uB3C4\uB294\uC9C0 \uBCF4\uC2ED\uC2DC\uC624. \uC7AC\uC0DD\uBC14\xB7\uD30C\uD615\uC774 \uB04A\uACA8 \uBCF4\uC774\uB294 \uAC83\uC740 \uC774 \uD0D3\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4.",b>=c1?`(${b}\uBC88\uC9F8 \u2014 \uB354\uB294 \uC548 \uC54C\uB9BD\uB2C8\uB2E4)`:`(${b}\uBC88\uC9F8)`)}}v=g}try{const g=e.current,x=Array.isArray(o.current)?o.current[n.current||0]:void 0,b=!!x&&Number.isFinite(x.duration)&&(x.duration??0)>0,w=b?0:bA(g),_=t.current,A=(l||0)>0||(c||0)>0,y=A&&(i?.positionRef.current?.phase??"sound")!=="sound";if(w===null&&!y)try{_&&_.style.visibility!=="hidden"&&(_.style.visibility="hidden")}catch{}else{const B=b?x.duration:w||0;Xo&&y&&!(B>0)&&ra("progress-ticker-pad-without-duration","[ihab-core] \uB738\uC774 \uB3C4\uB294\uB370 **\uC18C\uB9AC \uAE38\uC774\uB97C \uBAA8\uB985\uB2C8\uB2E4** \u2014 \uC7AC\uC0DD\uBC14\uAC00 \uB738\uB9CC\uC73C\uB85C \uC5B4\uB9BC\uC7A1\uC544 \uC6C0\uC9C1\uC785\uB2C8\uB2E4.","\uC18C\uB9AC \uAE38\uC774 \uC7AC\uAE30(measureAudioDuration)\uAC00 0 \uC744 \uC92C\uAC70\uB098 `<audio>` \uAC00 \uC544\uC9C1 \uC548 \uC2E4\uB838\uC2B5\uB2C8\uB2E4. \uAE38\uC774\uB97C \uC54C\uAC8C \uB418\uBA74 \uB9C8\uCEE4\uAC00 \uADF8 \uC21C\uAC04 **\uB4A4\uB85C \uBB3C\uB7EC\uB0A9\uB2C8\uB2E4**(\uC5B4\uB9BC\uC740 \uB298 \uCC38\uBCF4\uB2E4 \uD07D\uB2C8\uB2E4). \uC774 \uC904\uC774 \uBCF4\uC774\uBA74 \uADF8 \uC790\uB9AC\uB97C \uC54C\uB824 \uC8FC\uC2ED\uC2DC\uC624 \u2014 \uD3C9\uC18C \uAE38\uC5D0\uC11C\uB294 \uC548 \uB098\uC640\uC57C \uD569\uB2C8\uB2E4.");const k=A?tA({phase:i?.positionRef.current?.phase??"sound",phaseElapsedMs:i?.positionRef.current?Math.max(0,Date.now()-i.positionRef.current.at):0,currentTime:g&&typeof g.currentTime=="number"?g.currentTime:0,trackDurationSec:B,leadInMs:l||0,tailMs:c||0}):eA({currentTime:g&&typeof g.currentTime=="number"?g.currentTime:0,sources:o.current,index:n.current,audioDuration:w??0});try{_&&(_.style.visibility&&(_.style.visibility=""),_.style.left=`${k*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(k))}catch{}}}catch{}u.current=requestAnimationFrame(f)};u.current=requestAnimationFrame(f)},[e,t,a,o,n,i,l,c]),C=s.useCallback(v=>{p();try{t.current&&(t.current.style.visibility="",t.current.style.left=`${v*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(v))}catch{}},[p,t,a]);return s.useEffect(()=>p,[p]),{start:m,stop:p,settleTo:C}}function Tn({btnLabel:e,soundSrc:t,bucketPath:a,onDone:o,disabled:n=!1,ttsText:i=null,className:l,showSoundWaveForm:c=!0,showNoiseWaveForm:u=!0,leadInMs:d=0,tailMs:h=0}){const{t:p}=_e.useTranslation(),m=e,C=En(),v=s.useRef(C?.registerAnalyser);s.useEffect(()=>{v.current=C?.registerAnalyser});const f=s.useRef(null),g=s.useRef(null),x=s.useRef(null),b=hA(),w=s.useRef(null),_=s.useRef(!1),A=s.useRef(null),{ref:y,rect:B,show:k,hide:S}=mA();s.useEffect(()=>()=>{v.current?.("main",null),v.current?.("noise",null)},[]);const[E,D]=s.useState(!1),[I,j]=s.useState("idle"),[W,L]=s.useState("stopped"),M=s.useRef("stopped");s.useEffect(()=>{M.current=W},[W]);const[z,q]=s.useState(0),[Y,P]=s.useState("active"),V=s.useRef(!1);s.useEffect(()=>{if(Y!=="playMode"||!V.current)return;V.current=!1;const Q=typeof document<"u"?document.activeElement:null;if(Q&&Q!==document.body)return;const fe=x.current?.querySelectorAll("button")[1];try{fe?.focus()}catch{}},[Y]);const[$,U]=s.useState(null),[T,F]=s.useState(null),[N,O]=s.useState(0),[H,Z]=s.useState(!1),[te,se]=s.useState(0),be=C?.playbackRate??1,X=C?.mainVolume??1,re=C?Qi(C.settings):0,Ae=C?Fd(C.settings):X,[K,ie]=s.useState("idle"),[ue,je]=s.useState(""),[ye]=s.useState("top"),le=s.useRef(null),he=s.useRef(0),ve=s.useRef(null),G=s.useRef(!0),oe=OB({mountedRef:G}),me=s.useRef(null),Te=s.useRef(d),ke=s.useRef(h);s.useEffect(()=>{Te.current=Math.max(0,d||0)},[d]),s.useEffect(()=>{ke.current=Math.max(0,h||0)},[h]);const{start:Pe,stop:He,settleTo:lt}=vA({audioRef:f,fillRef:g,waveProgressRef:ve,sourcesRef:le,currentIndexRef:he,sequencer:oe,leadInMs:d,tailMs:h}),{onReadyChange:rt,waitForReady:at,markNotReady:ht}=pA({showSoundWaveForm:c,showNoiseWaveForm:u}),De=s.useRef(null),Ue=s.useRef(n),Se=s.useRef(o),Ye=s.useRef(null),ee=s.useRef(!1),[pe,Ee]=s.useState(!1),Re=s.useCallback(Q=>{ee.current=Q,Ee(Q)},[]),Ve=s.useRef(null),{activeNoiseUrl:We,noiseSettingsRef:ct,fadeInNoise:mt,fadeOutNoise:gt}=GB({noisePlayer:C,audioRef:f,playbackStateRef:M,sequencer:oe}),{startTTS:Et,stopTTS:ft}=UB({ttsText:i,playbackRate:be,mainVolume:Ae,fillRef:g,waveProgressRef:ve,setProgress:q,setPlaybackState:L,setStateLocal:P,fadeInNoise:mt,fadeOutNoise:gt,noiseSettingsRef:ct,onDoneRef:Se,handleEndRef:Ve});s.useEffect(()=>{Ze.current=ft});const et=Q=>{if(typeof window>"u"||!window.speechSynthesis){try{je(p("training.ttsUnavailable","\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."))}catch{}Et(Q);return}tt("tts"),Et(Q)},Ie=Array.isArray(t)?t.filter(Boolean):t?[t]:[],Oe=(!Ie||Ie.length===0)&&!!i,bt=Array.isArray($)&&$.length>0?$:Array.isArray(T)&&T.length>0?T:null,it=Math.max(Array.isArray(bt)?bt.length:0,Ie.length);s.useEffect(()=>(G.current=!0,()=>{G.current=!1}),[]);const wt=()=>{oe.abort()},Ze=s.useRef(null),kt=s.useRef(null),Lt=s.useRef(null),qe=s.useRef(null);qe.current||(qe.current=()=>{Lt.current=null;const Q=f.current;if(kt.current==="audio"&&Q&&(!Q.paused||oe.isRunning())){wt();try{Q.pause()}catch{}G.current&&(L("paused"),He(),gt())}else if(kt.current==="tts")try{Ze.current?.()}catch{}});const tt=Q=>{kt.current=Q,Lt.current=Mi(qe.current)},Dt=()=>{Lt.current?.(),Lt.current=null};s.useEffect(()=>()=>{qe.current&&$i(qe.current)},[]);const ca=s.useRef(be);s.useEffect(()=>{ca.current=be||1},[be]);const st=s.useCallback(Q=>{const fe=ca.current||1;try{Q.defaultPlaybackRate=fe}catch{}try{Q.playbackRate=fe}catch{}},[]),Nt=s.useCallback((Q,fe)=>{Q.src=fe,st(Q),Q.load(),st(Q)},[st]),ta=s.useCallback(()=>{Ye.current&&(clearTimeout(Ye.current),Ye.current=null),ie("idle")},[]),vt=s.useCallback(async(Q,fe=3,ne=50,we=0)=>{ta();const $e=oe.generation(),Ge=!!Q&&Q.currentTime>0&&!Q.ended,ut=Math.max(0,Te.current-Math.max(0,we));if(ut>0&&!Ge){tt("audio"),Pe(),L("playing");const Ct=ct.current;if(Ct?.enabled&&(Ct.volume??0)>0)try{mt(Ct.volume)}catch{}if(!await oe.waitPad(ut,"lead",we)||!G.current||!oe.isCurrent($e))return!1}oe.enterSound();for(let Ct=0;Ct<fe;Ct++){if(!G.current||!oe.isCurrent($e))return!1;try{return tt("audio"),await Q.play(),!0}catch(xe){if((xe instanceof Error||typeof xe=="object"&&xe&&"name"in xe?xe.name:void 0)==="AbortError"){if(!oe.isCurrent($e))return!1;await new Promise(R=>setTimeout(R,ne));continue}try{je(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}}try{je(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[p,Pe,oe,mt,ct,ta]),ya=s.useCallback(Q=>{const fe=oe.generation(),ne=Math.max(0,ke.current-Math.max(0,Q));Pe();const we=ct.current;if(we?.enabled&&(we.volume??0)>0)try{mt(we.volume)}catch{}const $e=()=>{try{me.current?.()}catch{}};if(ne<=0){oe.leave(),$e();return}oe.waitPad(ne,"tail",Q).then(Ge=>{oe.leave(),Ge&&oe.isCurrent(fe)&&$e()}).catch(()=>{})},[oe,Pe,mt,ct]),ba=s.useCallback(()=>{const Q=f.current;if(!Q)return;const fe=()=>{L("playing"),P("playMode"),Z(!0),Pe();try{Fr(),tr(Q).then(Ge=>{if(G.current)try{v.current?.("main",Ge)}catch{}})}catch{}const $e=ct.current;$e?.enabled&&($e?.volume??0)>0&&mt($e.volume)},ne=()=>{rA({ended:!!Q?.ended,completedByEnd:ee.current})||(L("paused"),He(),gt())},we=()=>{const $e=()=>{try{const Ge=le.current,ut=oA(Ge,he.current);if(ut!==null){he.current=ut,O(ut),Z(!0);const Ct=Ge?.[ut]&&Ge[ut].src;if(Ct&&Q){Nt(Q,Ct),vt(Q).catch(()=>{});return}}}catch{}L("stopped"),q(1);try{if(Q)try{Q.currentTime=0}catch{}}catch{}He(),Z(!1),gt();try{!Ue.current&&Ve.current&&Ve.current()}catch{}};if(me.current=$e,ke.current>0){Pe(),oe.waitPad(ke.current,"tail").then(Ge=>{oe.leave(),Ge&&$e()}).catch(()=>{});return}$e()};return Q.addEventListener("play",fe),Q.addEventListener("pause",ne),Q.addEventListener("ended",we),()=>{try{Q.removeEventListener("play",fe),Q.removeEventListener("pause",ne),Q.removeEventListener("ended",we),He()}catch{}}},[mt,gt,vt,ct,Pe,He,oe]);s.useEffect(()=>ba(),[ba]),s.useEffect(()=>{Ue.current=n},[n]),s.useEffect(()=>{Se.current=o},[o]),s.useEffect(()=>{if(n||Y!=="active")return;const Q=A.current;if(!Q)return;let fe=null;const ne=requestAnimationFrame(()=>{try{const we=Q.getTotalLength();if(!we)return;const $e=we*.2;Q.style.strokeDasharray=`${we-$e} ${$e}`;const Ge="triFlow_"+Math.random().toString(36).slice(2);fe=document.createElement("style"),fe.textContent=`@keyframes ${Ge}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${we}}}`,document.head.appendChild(fe),Q.style.animation=`${Ge} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(ne),fe?.remove()}},[Y,n]),s.useEffect(()=>{le.current=$},[$]),s.useEffect(()=>{he.current=N},[N]),s.useEffect(()=>{const Q=x.current,fe=w.current;if(!Q||!fe)return;let ne=null;const we=32,$e=60,Ge=()=>{try{const Ct=Array.from(Q.querySelectorAll(":scope > .button"));let xe=0;Ct.forEach(ze=>{if(ze===fe)return;const Je=ze.getBoundingClientRect();xe+=Je.width});const R=Q.getBoundingClientRect().width,J=Math.max(0,Math.floor(R-xe-8)),ge=it;if(!ge||J<=0){Array.from(fe.children).forEach(ze=>{try{ze.style.width=""}catch{}});return}let Le=Math.floor(J/ge);Le>$e&&(Le=$e),Le<we&&(Le=Math.max(we,Math.floor(J/ge))),Array.from(fe.querySelectorAll(".button")).forEach(ze=>{try{ze.style.width=`${Le}px`}catch{}})}catch{}},ut=requestAnimationFrame(Ge);try{ne=new ResizeObserver(()=>{requestAnimationFrame(Ge)}),ne.observe(Q),ne.observe(fe),window.addEventListener("resize",Ge)}catch{}return()=>{try{cancelAnimationFrame(ut)}catch{}try{ne&&(ne.disconnect(),ne=null)}catch{}try{window.removeEventListener("resize",Ge)}catch{}}},[$,T,it]),s.useEffect(()=>()=>{try{De.current&&(clearTimeout(De.current),De.current=null),Ye.current&&(clearTimeout(Ye.current),Ye.current=null)}catch{}},[]);const ja=(Q,fe)=>{U(Q),se(fe),ht(),F(nA(Q)),le.current=Q},La=()=>{P("playMode"),O(0),Z(!0)},no=async(Q,fe)=>{Re(!1),_.current=!1,Nt(Q,fe),await l1(Q),await at()!==!1&&(D(!1),La(),await vt(Q))},ko=async(Q,fe=!1)=>{const ne=f.current;D(!0),j("measuring_duration");try{const we=await Vd(Q,{timeoutMs:1e4,rejectOnError:!0});ja([{src:Q,objectUrl:null,duration:we}],we),j("ready"),fe&&ne&&await no(ne,Q)}finally{_.current=!1,D(!1)}},Bo=async(Q,fe=!1)=>{const ne=f.current;D(!0),j("measuring_duration");try{const we=await Promise.all(Q.map(Ge=>Vd(Ge,{timeoutMs:1e4})));if(!G.current)return;const $e=Q.map((Ge,ut)=>({src:Ge,objectUrl:null,duration:we[ut]||0}));ja($e,iA($e)),j("ready"),fe&&ne&&$e.length>0&&await no(ne,$e[0].src)}finally{_.current=!1,D(!1)}},Wt=async(Q=!1,fe=!0)=>{const ne=f.current,we=t?Array.isArray(t)?t:[t]:[];if(!we||we.length===0||!we.some(Boolean))return!1;if(_.current)return null;_.current=!0,fe&&D(!0),j("resolving");try{const $e=sA(t,a,Rn),Ge=[];let ut=0;for(const Ct of $e){let xe=Ct.src??null,R=null;if(!xe&&Ct.resolvedPath){try{j("getting_signed_url"),xe=await zr(Ct.resolvedPath)}catch{xe=null}if(!G.current)return!1;if(!xe)try{j("downloading");const ge=await Pn(Ct.resolvedPath);if(!G.current)return!1;if(ge){const Le=ge instanceof Blob?ge:new Blob([ge]);R=b.track(URL.createObjectURL(Le)),xe=R}}catch{j("error");try{je(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),P("active")}catch{}}}if(!xe)continue;let J=0;try{j("measuring_duration"),J=await Vd(xe,{timeoutMs:3e3})}catch{J=0}if(!G.current){if(R)try{URL.revokeObjectURL(R)}catch{}for(const ge of Ge)if(ge.objectUrl)try{URL.revokeObjectURL(ge.objectUrl)}catch{}return!1}ut+=J||0,Ge.push({...Ct,src:xe,objectUrl:R,duration:J})}if(ja(Ge,ut),Ge.length>0&&Q&&ne){const Ct=Ge[0];Re(!1);try{b.keepOnly(Ge.map(xe=>xe.objectUrl))}catch{}if(j("ready"),_.current=!1,Ct.src&&ne)try{if(Nt(ne,Ct.src),await l1(ne),await at()===!1)return!1;fe&&D(!1),La(),ne&&await vt(ne)}catch{fe&&D(!1)}else fe&&D(!1);P("playMode"),O(0),Z(!0)}return Ge.length>0}finally{_.current=!1,fe&&D(!1),j($e=>$e==="ready"?"ready":"idle")}},qa=async Q=>{const fe=oe.isRunning();if(Q.paused&&!fe){if(ee.current){await Xt();return}const ne=oe.resume();if(ne){if(L("playing"),ne.phase==="tail"){ya(ne.\uD750\uB978);return}await vt(Q,3,50,ne.\uD750\uB978);return}await vt(Q),L("playing")}else oe.pause(),wt(),Q.pause(),L("paused"),fe&&(He(),gt())},Gt=async()=>{const Q=f.current;if(!(!Q&&!Oe)){if(Oe){const fe=window.speechSynthesis;if(Y==="active"){const ne=Ir(),we=Array.isArray(i)?i.filter(Boolean):i?[i]:[];if(ne&&we.length>0){if(_.current)return;P("load"),D(!0),j("synthesizing"),_.current=!0;try{const $e=await Promise.all(we.map(Ge=>Promise.resolve(ne(Ge))));$e.length>1?await Bo($e,!0):await ko($e[0],!0)}catch{_.current=!1,D(!1),P("active"),et(we.length>0?we:void 0)}return}et(we.length>0?we:void 0);return}if(Y==="playMode"){const ne=!!fe&&(fe.speaking||fe.paused)&&!(Q&&(Q.currentSrc||Q.getAttribute("src")));if(Q&&!ne){await qa(Q);return}try{if(fe&&fe.paused)try{tt("tts"),fe.resume(),L("playing")}catch{}else try{fe.pause(),L("paused")}catch{}}catch{}}return}if(Y==="active"){if(n&&Array.isArray(le.current)&&le.current.length>0){const ne=le.current[0];try{if(ne.src&&Q)try{Nt(Q,ne.src),La(),Q&&await vt(Q)}catch{}La();return}catch{}}P("load");let fe;try{fe=await Wt(!0)}catch{fe=!1}if(fe===!1&&G.current){try{je(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}P("active")}return}if(Y!=="load"&&(Y==="playMode"||Y==="active"))try{Q&&await qa(Q)}catch(fe){(fe instanceof Error||typeof fe=="object"&&fe&&"name"in fe)&&fe.name}}},Xt=async()=>{const Q=f.current;if(Q)try{const fe=le.current;if(Array.isArray(fe)&&fe.length>1){await Ot(0);return}Re(!1);try{Q.currentTime=0}catch{}Q&&await vt(Q),L("playing"),P("playMode")}catch{}},io=()=>{wt(),Dt(),Ze.current?.();const Q=f.current;try{if(Q){try{Q.pause()}catch{}try{Q.currentTime=0}catch{}}}catch{}gt(),L("stopped"),P("active"),q(0),Z(!1)},ga=async(Q,{sameSegment:fe=!1}={})=>{wt();const ne=oe.generation(),we=f.current,$e=le.current?.[Q]?.src;try{if(Re(!1),O(Q),Z(!0),he.current=Q,!$e||!we||(fe||ht(),Nt(we,$e),!fe&&await at()===!1)||!oe.isCurrent(ne)||(await vt(we),!oe.isCurrent(ne)))return;L("playing"),P("playMode")}catch{}},Ya=async()=>{const Q=le.current,fe=he.current||0;if(!Q||fe<=0){await Xt();return}await ga(fe-1)},Ao=async()=>{const Q=le.current,fe=he.current||0;if(!Q||fe>=Q.length-1){io();return}await ga(fe+1)},Ka=()=>{if(ee.current)return;const Q=200,fe=340;Re(!0),wt(),Dt();try{q(1)}catch{}lt(1);try{ie("hold")}catch{}try{const ne=f.current,we=Oe&&!!ne?.src;if(!Oe||we){if(ne){ne.pause();try{ne.currentTime=0}catch{}}}else ft();gt()}catch{}try{L("stopped")}catch{}if(Z(!1),!Ue.current)try{Ye.current&&(clearTimeout(Ye.current),Ye.current=null),Ye.current=setTimeout(()=>{try{ie("out")}catch{}Ye.current=setTimeout(()=>{try{typeof Se.current=="function"&&Se.current(!0)}catch{}try{ie("idle")}catch{}Ye.current=null},fe)},Q)}catch{}};s.useEffect(()=>{Ve.current=Ka});const Jt=s.useCallback(()=>je(""),[]),Ot=async Q=>{(le.current||[])[Q]&&await ga(Q,{sameSegment:Q===he.current})},Qt=W==="playing",Ma=s.useMemo(()=>{if(!T||T.length<=1)return T;const Q=T[N];return Q?[Q]:T},[T,N]),Ut=n===!0;s.useEffect(()=>{try{const Q=f.current;Q&&typeof Q.playbackRate=="number"&&st(Q)}catch{}},[be,st]);const fa=s.useRef({raf:null,timer:null});s.useEffect(()=>{const Q=f.current;if(!Q)return;const fe=Math.max(0,Math.min(1,Ae)),ne=fa.current,we=()=>{ne.raf!==null&&(cancelAnimationFrame(ne.raf),ne.raf=null),ne.timer!==null&&(clearTimeout(ne.timer),ne.timer=null)};we();const $e=ar(Q);if(Q.paused||Math.abs($e-fe)<.001||typeof requestAnimationFrame!="function"){try{$a(Q,fe)}catch{}return}const Ge=performance.now(),ut=()=>{const Ct=Math.min(1,(performance.now()-Ge)/150);try{$a(Q,$e+(fe-$e)*Ct)}catch{}ne.raf=Ct<1?requestAnimationFrame(ut):null};return ne.raf=requestAnimationFrame(ut),ne.timer=setTimeout(()=>{we();try{$a(Q,fe)}catch{}},200),we},[Ae]);const $t=K==="hold",de=K==="out",Be=Y==="playMode"&&!E&&!pe||$t||de,Me=W!=="stopped"||$t||de,Qe=W==="paused",Fe=Math.max(0,Math.min(100,(z||0)*100)),Xe=Ne("audio-player__fill",Be?"is-visible":"",Me?"is-expanded":"",Qe?"is-paused":"",de?"is-out":"");return r.jsxs("div",{className:`audio-player ${Ut?"is-disabled":""}${l?` ${l}`:""}`,role:"group","aria-label":typeof m=="string"?m:void 0,children:[r.jsxs("div",{className:`audio-player__panel ${Qt?"is-playing":""} ${E?"is-loading":""} ${Y!=="default"?"is-revealed":""}`,children:[E?r.jsxs("div",{className:"audio-player__loading",role:s1[I]?"status":void 0,"aria-live":s1[I]?"polite":"off",children:[r.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),r.jsx("span",{className:"audio-player__loading-text",children:p(`training.audioStatus.${I}`,{defaultValue:uA[I]})})]}):null,Y==="active"?r.jsx("button",{className:"audio-player__button",type:"button",disabled:Ut,onClick:()=>{V.current=Wi(),S(),Gt()},"aria-label":typeof m=="string"?m:p("training.listen","\uB4E3\uAE30"),onMouseEnter:k,onMouseLeave:S,onFocus:k,onBlur:S,children:r.jsx("span",{ref:y,className:"audio-player__button-triangle-wrap",children:r.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:r.jsx("path",{ref:A,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,B&&r.jsx(Ea,{anchorRect:B,text:typeof m=="string"&&m?m:p("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),r.jsxs("div",{className:`audio-player__play ${Y==="playMode"||Qt?"is-visible":""}`,inert:!(Y==="playMode"||Qt)||void 0,children:[r.jsxs("div",{ref:x,className:"audio-player__buttons",children:[r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:Ya,ariaLabel:p("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:Y!=="playMode"}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:Qt?"pause":"play",onClick:Gt,ariaLabel:p("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),"aria-pressed":Qt,width:"60px",variant:"transparent-white",disabled:Y!=="playMode"}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:io,ariaLabel:p("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:Y!=="playMode"}),it>1?r.jsx("div",{ref:w,className:"audio-player__source-buttons",children:Array.from({length:it}).map((Q,fe)=>r.jsx(Ce,{htmlType:"button",size:32,type:"dot",shape:"pill",useBorder:!1,label:String(fe+1),onClick:()=>{try{Ot(fe)}catch{}},ariaLabel:p("training.sourcePlay",{n:fe+1}),variant:"transparent-white",selected:H&&N===fe,disabled:Y!=="playMode"||!(Array.isArray($)&&$[fe]),showTooltipInfo:!0},fe))}):null,!Array.isArray($)||$.length<=1?r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:Xt,ariaLabel:p("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:Y!=="playMode"}):null,r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:Ao,ariaLabel:p("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:Y!=="playMode"}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:Ka,ariaLabel:p("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:Y!=="playMode"})]}),r.jsxs("div",{className:"audio-player__slider",children:[r.jsx("div",{className:Xe,ref:g,style:{left:`${Fe}%`},"aria-hidden":"true"}),(c||u)&&r.jsx(cA,{segments:Ma,progress:z,totalDuration:te,waveProgressRef:ve,showSoundWaveForm:c,leadInMs:d,tailMs:h,trackDurationSec:$?.[N]?.duration??0,noiseSrc:u&&C?.settings.enabled&&re>0?We:null,noiseRatio:C?Sr(C.settings):0,noiseSpeed:C?.settings.speed??1,mainVolume:X,onReadyChange:rt})]})]}),r.jsx("audio",{ref:f,crossOrigin:"anonymous",preload:"auto"})]}),!c&&r.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[r.jsx(ot,{icon:"triangle-alert",size:14}),p("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),r.jsx(Wo,{message:ue,position:ye,onClose:Jt})]})}var CA=".ihabdevteam-core-scope .tooltip-textbox{background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;max-width:520px;padding:var(--spacing-content)}.ihabdevteam-core-scope .tooltip-textbox__root{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-textbox__box{background:transparent}.ihabdevteam-core-scope .tooltip-textbox__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .tooltip-textbox__text{color:var(--color-darkGray);overflow-wrap:anywhere;white-space:normal;word-break:keep-all}.ihabdevteam-core-scope .tooltip-textbox__line{align-items:center;display:flex;gap:var(--spacing-s);margin-bottom:0;min-height:60px;padding:10px 0}.ihabdevteam-core-scope .tooltip-textbox__line:last-child{margin-bottom:0}.ihabdevteam-core-scope .tooltip-textbox__line:not(:last-child){border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .tooltip-textbox.is-dark .tooltip-textbox__line:not(:last-child){border-bottom-color:hsla(0,0%,100%,.06)}.ihabdevteam-core-scope .tooltip-textbox__marker{--marker-pos:50%;align-items:center;background-color:var(--color-main);background:color-mix(in srgb,var(--color-main) 50%,var(--color-sub) 50%);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:#fff;display:inline-flex;height:24px;justify-content:center;min-width:24px}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .tooltip-textbox__marker{background:color-mix(in srgb,var(--color-main) calc(100% - var(--marker-pos)),var(--color-sub) var(--marker-pos))}}.ihabdevteam-core-scope .tooltip-textbox__line-number{color:#fff;min-width:auto;text-align:center}.ihabdevteam-core-scope .tooltip-textbox__line-text{flex:1 1 auto}.ihabdevteam-core-scope .tooltip-textbox__buttons{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:center;margin-top:10px;position:relative}.ihabdevteam-core-scope .tooltip-textbox.is-dark{background:var(--color-darkGray);border-color:var(--color-gray)}.ihabdevteam-core-scope .tooltip-textbox.is-dark .tooltip-textbox__text{color:var(--color-deepWhite)}";ce(CA);function Nr(e){const{t}=_e.useTranslation(),{text:a,label:o,anchorRect:n=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:h,decrease:p,canIncrease:m,canDecrease:C,fontSize:v,lineHeight:f}=yi({storageKey:"tooltip-fontScale"}),g=s.useCallback(()=>d(A=>A==="dark"?"light":"dark"),[]),x=s.useCallback(A=>{try{A.stopPropagation()}catch{}try{typeof i=="function"&&i()}catch{}},[i]),b=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],w={fontSize:`${v}px`,lineHeight:`${f}px`,"--tt-line-height":`${f}px`,"--tt-marker-size":"28px"},_=r.jsxs("div",{className:`tooltip-textbox__root ${u==="dark"?"is-dark":""}`,children:[r.jsxs("div",{className:"tooltip-textbox__box",children:[o&&r.jsx("div",{className:"tooltip-textbox__label body-2b",children:o}),r.jsx("div",{className:"tooltip-textbox__text body-1",style:w,children:b.map((A,y)=>r.jsxs("div",{className:"tooltip-textbox__line",children:[b.length>1?r.jsx("div",{className:"tooltip-textbox__marker",children:r.jsx("span",{className:"tooltip-textbox__line-number button-1",children:y+1})}):null,r.jsx("span",{className:"tooltip-textbox__line-text",children:A})]},y))})]}),r.jsxs("div",{className:"tooltip-textbox__buttons",children:[r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:p,ariaLabel:t("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!C}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:h,ariaLabel:t("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!m}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:u==="dark"?"moon":"sun-medium",onClick:g,ariaLabel:t("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:u==="dark"?"transparent-white":"transparent-gray"}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:x,ariaLabel:t("common.close","\uB2EB\uAE30"),variant:u==="dark"?"transparent-white":"transparent-gray"})]})]});return n?r.jsx(xa,{anchorRect:n,className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,onClose:i,closeOnOutsideClick:l,isMobilePopup:c,ariaLabel:o||t("tooltip.textbox","\uBCF8\uBB38"),children:_}):r.jsx("div",{className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,children:_})}var xA=".ihabdevteam-core-scope .training-page-bottom{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;flex:0 0 auto;gap:var(--spacing-s);justify-content:space-between;padding:12px 18px calc(12px + env(safe-area-inset-bottom));width:100%;z-index:5}.ihabdevteam-core-scope .pp-bottom__left{align-items:center;display:flex;gap:var(--spacing-m)}.ihabdevteam-core-scope .pp-bottom__right{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .pp-bottom__meters{border:1px solid var(--color-whiteLine);border-radius:14px;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;height:56px;justify-content:center;padding:8px 12px}.ihabdevteam-core-scope .pp-bottom__meter{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-label{color:var(--color-gray);min-width:28px}.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:none}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:flex}@media (min-width:768px){.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:block}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:none}}@media (max-width:1024px){.ihabdevteam-core-scope .pp-bottom__meters{height:50px;padding:4px 12px}}@media (max-width:768px){.ihabdevteam-core-scope .pp-bottom__meters{height:46px;padding:2px 10px}}.ihabdevteam-core-scope .pp-bottom__tooltip-trigger{display:inline-block}.ihabdevteam-core-scope .pp-bottom__meters--floating{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-trigger{display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .training-steps{box-sizing:border-box;display:flex;flex-direction:column;overflow:visible;width:100%}.ihabdevteam-core-scope .training-step{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--spacing-m);overflow:visible;width:100%}.ihabdevteam-core-scope .training-step__content{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;gap:var(--spacing-s);gap:var(--spacing-m);min-width:0;overflow:visible;width:100%}.ihabdevteam-core-scope .training-step__title{color:#0b2b35;color:var(--text,#0b2b35);margin:0;text-align:left}.ihabdevteam-core-scope .training-step__locked-hint{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .training-step__buttons{-ms-overflow-style:none;align-items:stretch;display:flex;flex-direction:row;gap:var(--spacing-content);overflow-x:auto;scrollbar-width:none;width:100%}.ihabdevteam-core-scope .training-step__buttons::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .training-step__buttons>*{align-self:stretch;flex:1 1 0;margin:0;min-width:0}.ihabdevteam-core-scope .training-step__buttons.training-step__buttons--wrap-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow-x:visible}.ihabdevteam-core-scope .training-step__buttons.training-step__buttons--wrap-3>*{width:100%}.ihabdevteam-core-scope .training-step__buttons .button{align-items:center;align-self:stretch;display:flex}@media (max-width:640px){.ihabdevteam-core-scope .training-step{flex-direction:row;gap:10px}}.ihabdevteam-core-scope .training-step__cards{box-sizing:border-box;display:flex;gap:var(--spacing-s);width:100%}@media (max-width:767px){.ihabdevteam-core-scope .training-step__cards{grid-gap:var(--spacing-s);display:grid;gap:var(--spacing-s);grid-template-columns:repeat(3,1fr)}}.ihabdevteam-core-scope .training-step__listen-sticky{width:100%}.ihabdevteam-core-scope .training-step.training-step--has-nested .training-step__content{margin-bottom:100px}.ihabdevteam-core-scope .training-steps>.training-step:last-child .training-step__content{margin-bottom:0}.ihabdevteam-core-scope .training-step:not(.training-step--last) .training-step__content{margin-bottom:var( --margin-page)}.ihabdevteam-core-scope .training-step.training-step--last .training-step__content{margin-bottom:0}";ce(xA);var _A='.ihabdevteam-core-scope .ts-bullet{--dot-size:28px;--dot-gap:10px;align-items:center;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start;position:relative;width:28px;width:var(--dot-size)}.ihabdevteam-core-scope .bullet__dot{align-items:center;border:2px solid rgba(43,138,125,.12);border-radius:50%;display:flex;height:var(--dot-size);justify-content:center;width:var(--dot-size);z-index:2}.ihabdevteam-core-scope .bullet__icon{align-items:center;color:var(--color-darkGray);display:inline-flex;height:20px;justify-content:center;position:relative;width:20px;z-index:1}.ihabdevteam-core-scope .bullet__icon-img{display:block;height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.ihabdevteam-core-scope .bullet__icon-mask{background-color:currentColor;height:100%;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.ihabdevteam-core-scope .bullet__icon-svg svg{fill:currentColor;height:100%;width:100%}.ihabdevteam-core-scope .ts-bullet__line{background:var(--color-whiteLine);border-radius:var(--radius-xs);bottom:20px;left:50%;position:absolute;top:calc(var(--dot-size) + var(--dot-gap));transform:translateX(-50%);width:2px;z-index:1}.ihabdevteam-core-scope .ts-bullet--done .bullet__icon{color:transparent}.ihabdevteam-core-scope .ts-bullet--active .bullet__icon{color:#fff}.ihabdevteam-core-scope .ts-bullet--disabled .bullet__icon{color:transparent}.ihabdevteam-core-scope .ts-bullet--done .bullet__dot{border:2px solid var(--color-main)}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot{background-color:var(--color-main);position:relative}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:after,.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:before{animation:bullet-ripple 3s cubic-bezier(.2,.6,.2,1) infinite;background:var(--color-main);border-radius:50%;content:"";inset:0;opacity:.5;pointer-events:none;position:absolute}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:after{animation-delay:1.5s;opacity:.3}@keyframes bullet-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(2.2)}}.ihabdevteam-core-scope .ts-bullet--disabled .bullet__dot{border:2px solid var(--color-whiteLine)}.ihabdevteam-core-scope .ts-bullet--done .bullet__line{background-color:var(--color-main)}.ihabdevteam-core-scope .ts-bullet--active .bullet__line,.ihabdevteam-core-scope .ts-bullet--disabled .bullet__line{background-color:var(--color-whiteLine)}.ihabdevteam-core-scope .training-step--last .ts-bullet__line,.ihabdevteam-core-scope .training-step.training-step--last .ts-bullet__line{display:none}@media (max-width:1024px){.ihabdevteam-core-scope .ts-bullet{--dot-size:26px}}@media (max-width:768px){.ihabdevteam-core-scope .ts-bullet{--dot-size:24px}}';ce(_A);function Wd({state:e="disabled"}){const{t}=_e.useTranslation();return r.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[r.jsx("div",{className:"bullet__dot",children:r.jsx(ot,{icon:"chevron-right",label:t("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),r.jsx("div",{className:"ts-bullet__line"})]})}function u1(e,t,a){const o=s.useRef(t),n=s.useRef(a);s.useEffect(()=>{o.current=t,n.current=a}),s.useEffect(()=>{if(!e||typeof document>"u")return;let i=null,l=10;const c=()=>{i=null;const u=o.current(),d=u?Array.from(u.querySelectorAll(Oa)).find(h=>!h.closest('[aria-hidden="true"]')):void 0;if(d){try{d.focus()}catch{}if(document.activeElement===d)return}--l>0&&(i=requestAnimationFrame(c))};return i=requestAnimationFrame(c),()=>{i!==null&&cancelAnimationFrame(i);const u=document.activeElement;if(!u||u===document.body||!document.contains(u)||u.closest(".tooltip-content")){const d=n.current();if(d)try{d.focus()}catch{}}}},[e])}var yA=".ihabdevteam-core-scope .training-step__title-row{align-items:center;display:flex;gap:var(--spacing-xs);padding-right:72px;position:relative;width:100%}.ihabdevteam-core-scope .training-step__title-row .training-step__title{color:var(--color-black);margin:0;padding:0}.ihabdevteam-core-scope .training-step__title--faded .training-step__title-text{background-color:var(--color-darkWhite);border-radius:var(--radius-xs);color:transparent;opacity:1;transition:color .14s ease,opacity .14s ease}.ihabdevteam-core-scope .training-step__title-row .title-controls{align-items:center;display:flex;gap:6px;margin-left:auto}.ihabdevteam-core-scope .training-step__title-row .title-controls .title-buttons{align-items:center;display:inline-flex;gap:6px;justify-content:center;overflow:visible;position:absolute;right:0;top:50%;transform:translateY(-50%)}.ihabdevteam-core-scope .training-step__title-row .title-controls .title-buttons .button28{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .training-step__title-row--disabled .training-step__title,.ihabdevteam-core-scope .training-step__title-row--done .training-step__title{pointer-events:none}.ihabdevteam-core-scope .training-step__title-row--disabled .title-controls{opacity:.6;pointer-events:none}.ihabdevteam-core-scope .training-step__title-row--active .title-controls,.ihabdevteam-core-scope .training-step__title-row--done .title-controls{opacity:1;pointer-events:auto}.ihabdevteam-core-scope .training-step__title-row--disabled .training-step__title,.ihabdevteam-core-scope .training-step__title-row--done .training-step__title{color:var(--color-disabled)}.ihabdevteam-core-scope .training-step__title-row--active .training-step__title{color:var(--color-black)}";ce(yA);function Gd({title:e,children:t,className:a="",state:o="disabled",usePreviewTextBtn:n=!1,onPreviewTextBtn:i,previewText:l=null,useFaded:c,usePlayAllBtn:u=!1,onPlayAll:d,playAllActive:h=!1}){const{t:p}=_e.useTranslation(),m=sa("(max-width: 767px)"),C=`training-step__title h4 ${c&&o==="disabled"?"training-step__title--faded":""} ${a}`.trim(),v=`training-step__title-row training-step__title-row--${o}`.trim(),f=s.useRef(null),[g,x]=s.useState(!1),[b,w]=s.useState(null),[_,A]=s.useState(null);u1(g&&!!b,()=>{if(typeof document>"u")return null;const E=Array.from(document.querySelectorAll(".tooltip-content"));for(let D=E.length-1;D>=0;D--)if(E[D].querySelector(".tooltip-textbox__root"))return E[D];return null},()=>f.current?.querySelector("button")??null);const y=s.useRef(i);s.useEffect(()=>{y.current=i});const B=s.useMemo(()=>l==null?"":typeof l=="string"||typeof l=="number"?String(l):Array.isArray(l)&&l.every(E=>typeof E=="string"||typeof E=="number")?l.join(""):"",[l]),k=s.useCallback(()=>{x(!1),w(null),A(null)},[]);s.useEffect(()=>{if(!g)return;let E;try{typeof y.current=="function"&&(E=y.current())}catch{}if(E===!1){k();return}A(typeof E<"u"&&E!==null?E:null)},[B]);const S=s.useCallback(()=>{let E;try{typeof i=="function"&&(E=i())}catch{}if(E!==!1){if(A(typeof E<"u"&&E!==null?E:l),!f.current){x(D=>!D);return}if(g)x(!1),w(null),A(null);else{const D=f.current.getBoundingClientRect();w(D),x(!0)}}},[i,l,g]);return r.jsxs("div",{className:v,children:[r.jsx("p",{className:C,children:r.jsx("span",{className:"training-step__title-text",children:e??t})}),n||u?r.jsxs("div",{className:"title-controls",children:[r.jsxs("div",{className:"title-buttons",children:[u&&r.jsx(Ce,{htmlType:"button",size:32,type:m?"dot":"bar",icon:"play-circle",label:m?void 0:p("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:p("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:h,onClick:d,variant:o==="disabled"?"disabled":"default",disabled:o==="disabled"||h,onDisabledClick:h&&o!=="disabled"?()=>{}:void 0}),n&&r.jsx("div",{ref:f,children:r.jsx(Ce,{htmlType:"button",size:32,type:m?"dot":"bar",icon:"eye",label:m?void 0:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),onClick:S,className:g?"is-selected":void 0,"aria-expanded":g,"aria-haspopup":"dialog",variant:o==="disabled"?"disabled":"default",disabled:!l&&typeof i!="function"})})]}),g&&r.jsx(Nr,{text:_??l,label:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:b,onClose:k,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function Ud(e,t){return typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled"}function wo({index:e,stepIndex:t,isLast:a=!1,title:o="",titleProps:n={},children:i,className:l="",onDone:c=void 0,useTitleFaded:u=void 0,lockedHint:d}){const{t:h}=_e.useTranslation(),[p,m]=s.useState(()=>Ud(e,t));s.useEffect(()=>{const y=Ud(e,t);if(y!==p){const B=setTimeout(()=>m(y),0);return()=>clearTimeout(B)}},[e,t,p]);const C=s.useCallback((...y)=>{Ud(e,t)==="done"||p==="done"||typeof c=="function"&&c(...y)},[e,t,p,c]),[v,f]=s.useState(!1),[g,x]=s.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),b=s.useCallback(y=>{if(!y)return null;try{const B=y;if(typeof y=="object"&&(B.currentTarget||B.target)&&(B.nativeEvent||B.type)){const E=B.currentTarget??B.target;if(E&&typeof E.getBoundingClientRect=="function")return E.getBoundingClientRect()}if(y instanceof DOMRect)return y;const k=y;if(k&&typeof k.getBoundingClientRect=="function")return k.getBoundingClientRect();const S=y?.current;return S&&typeof S.getBoundingClientRect=="function"?S.getBoundingClientRect():null}catch{return null}},[]),w=s.useCallback((y,{text:B="",label:k="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:S=!1,alignX:E="center",alignY:D="top"}={})=>{const I=b(y);x({text:B,label:k,anchorRect:I,backdrop:S,alignX:E,alignY:D}),f(!0)},[b]),_=s.useCallback(()=>{f(!1),x(y=>({...y,anchorRect:null}))},[]),A=s.Children.map(i,y=>{if(s.isValidElement(y)){const B=y;if(typeof B.type=="string")return B;const k=B.props??{},S=typeof k.onDone=="function"?k.onDone:C,E=typeof k.disabled=="boolean";let D=p==="disabled";return E&&(D=!!k.disabled),s.cloneElement(B,{onDone:S,disabled:D,showTooltip:w,hideTooltip:_})}return y});return r.jsxs("div",{className:`training-step training-step--${p} ${a?"training-step--last":""} ${l}`,"aria-current":p==="active",children:[r.jsx(Wd,{state:p}),r.jsxs("div",{className:"training-step__content",children:[r.jsx(Gd,{state:p,title:o,...n,useFaded:u}),p==="disabled"&&d&&typeof e=="number"&&typeof t=="number"&&e===t+1&&r.jsx("p",{className:"training-step__locked-hint caption-1",role:"status",children:d}),A]}),v?r.jsx(xa,{anchorRect:g.anchorRect,backdrop:g.backdrop,onClose:_,ariaLabel:h("tooltip.textbox","\uBCF8\uBB38"),children:r.jsx(Nr,{text:g.text,onClose:_})}):null]})}var wA='.ihabdevteam-core-scope .training-text-box{background:var(--color-darkWhite);border:1px solid var(--color-deepWhite);border-radius:var(--radius-m);color:var(--color-black);display:flex;flex-direction:column;max-width:100%;min-height:160px;overflow:visible;overflow-wrap:anywhere;padding:var(--spacing-content);position:relative;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .training-text-box--disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .training-text-box--disabled .training-text-box__inner{visibility:hidden}.ihabdevteam-core-scope .training-text-box--disabled:after{content:"";pointer-events:none;position:absolute;z-index:5}.ihabdevteam-core-scope .training-text-box__preview{align-items:center;display:flex;justify-content:center;left:50%;pointer-events:auto;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:60}.ihabdevteam-core-scope .training-text-box__buttons{border-radius:999px;gap:4px;height:28px;left:0;right:0}.ihabdevteam-core-scope .training-text-box__area,.ihabdevteam-core-scope .training-text-box__buttons{align-items:center;box-sizing:border-box;display:flex;justify-content:center;pointer-events:auto;position:relative;z-index:40}.ihabdevteam-core-scope .training-text-box__area{flex:1 1 auto;margin:0 auto;min-height:0;text-align:center;width:100%}.ihabdevteam-core-scope .training-text-box--active,.ihabdevteam-core-scope .training-text-box--done{background-color:var(--color-white);border-color:var(--color-main);pointer-events:auto;transition:box-shadow .18s ease,transform .18s ease,opacity .16s ease;-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.ihabdevteam-core-scope .training-text-box.is-dark{background:var(--color-darkGray);border:1px solid var(--color-black);color:var(--color-deepWhite)}.ihabdevteam-core-scope .training-text-box .training-text-box__inner{display:block;overflow-wrap:anywhere;text-align:center;white-space:normal;width:100%;word-break:keep-all}.ihabdevteam-core-scope .training-text-box.is-dark .tooltip-textbox__text,.ihabdevteam-core-scope .training-text-box.is-dark .training-text-box__inner{color:var(--color-deepWhite)}';ce(wA);function qd({context:e,state:t="disabled",theme:a="light"}){const{t:o}=_e.useTranslation(),[n,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(j=>j==="dark"?"light":"dark"),{increase:d,decrease:h,canIncrease:p,canDecrease:m,fontSize:C,lineHeight:v}=yi({storageKey:"textbox_fontScale"}),[f,g]=s.useState(""),x=s.useRef(null),b=s.useRef(!1),w=s.useCallback(()=>{b.current=Wi()&&!!x.current&&x.current.contains(document.activeElement),i("active")},[]),_=s.useCallback(()=>g(""),[]),A=j=>{try{g(j)}catch{}},y=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");s.useEffect(()=>{if(t!=="disabled"){const j=setTimeout(()=>i(t),0);return()=>clearTimeout(j)}},[t]);const B=s.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]),[k,S]=s.useState(B);k!==B&&(S(B),i("disabled"));const E=t==="disabled"?n:t,D=E==="disabled"?"training-text-box--disabled":E==="active"?"training-text-box--active":E==="done"?"training-text-box--done":"",I=s.useMemo(()=>({fontSize:`${C}px`,lineHeight:`${v}px`}),[C,v]);return s.useEffect(()=>{if(E==="disabled"||!b.current)return;b.current=!1;const j=document.activeElement;j&&j!==document.body||x.current?.querySelector(".training-text-box__buttons button")?.focus()},[E]),r.jsxs("div",{ref:x,className:`training-text-box ${D} ${E!=="disabled"&&l==="dark"?"is-dark":""}`,children:[E==="disabled"&&r.jsx("div",{className:"training-text-box__preview",children:r.jsx(Ce,{htmlType:"button",size:48,type:"bar",onClick:w,icon:"eye",ariaLabel:o("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),label:o("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),useBorder:!1})}),r.jsx("div",{className:"training-text-box__area","aria-hidden":E==="disabled",children:r.jsx("span",{className:"training-text-box__inner h3",style:I,children:B})}),E!=="disabled"&&r.jsxs("div",{className:"training-text-box__buttons","aria-hidden":E==="disabled",children:[r.jsx(Ce,{htmlType:"button",size:32,type:"dot",onClick:h,onDisabledClick:()=>A(o("training.fontSizeMin","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.")),ariaLabel:o("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),icon:"minus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!m,useBorder:!1,showTooltipInfo:!0,...!y&&{width:"60px"}}),r.jsx(Ce,{htmlType:"button",size:32,type:"dot",onClick:d,onDisabledClick:()=>A(o("training.fontSizeMax","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.")),ariaLabel:o("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),icon:"plus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!p,useBorder:!1,showTooltipInfo:!0,...!y&&{width:"60px"}}),r.jsx(Ce,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:l==="dark"?"moon":"sun-medium",onClick:u,ariaLabel:o("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:l==="dark"?"transparent-white":"transparent-gray"})]}),r.jsx(Wo,{message:f,position:"top",onClose:_})]})}function Ko(e){return e==="active"||e==="done"}function rs({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,useTitleFaded:i,onDone:l,onChange:c,answer:u,wrongAnswers:d,choices:h,multiSelect:p=!1,correctCount:m=0,useDisabledCovered:C=!1,choiceIcons:v,shuffleChoices:f=!0}){const{t:g}=_e.useTranslation(),x=n??g("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),b=typeof e=="number"?e:-1,w=typeof t!="number"?"disabled":b<t?"done":b===t?"active":"disabled",_=Array.isArray(h)&&h.length?h:typeof u<"u"?[u].concat(Array.isArray(d)?d:[]):void 0,A=d?d.join("||"):"",y=h?h.join("||"):"",[B,k]=s.useState(()=>Array.isArray(_)?f?nt(_):_.slice():void 0);s.useEffect(()=>{Array.isArray(_)&&_.length?k(f?nt(_):_.slice()):k(void 0)},[u,A,y,f]);const[S,E]=s.useState(null),[D,I]=s.useState(()=>new Set);s.useEffect(()=>{E(null),I(new Set)},[y,u,A]);const j=s.useRef(void 0);s.useEffect(()=>{const M=j.current;typeof M=="number"&&typeof t=="number"&&typeof e=="number"&&M>=e&&t<e&&(E(null),I(new Set)),j.current=t},[t,e]);const W=s.useCallback(M=>{if(!Ko(w))return;const z=B?.[M];if(z==null)return;const q=z;if(p){const Y=new Set(D);Y.has(q)?Y.delete(q):Y.add(q),I(Y),typeof c=="function"&&c({selectedValues:[...Y],__ts:Date.now()}),typeof l=="function"&&l({selectedValues:[...Y],__ts:Date.now()})}else E(q),typeof c=="function"&&c({selectedIndex:M,selectedValue:q,__ts:Date.now()}),typeof l=="function"&&l({selectedIndex:M,selectedValue:q,__ts:Date.now()})},[B,w,p,c,D]),L=`training-step__buttons${Array.isArray(B)&&B.length>3?" training-step__buttons--wrap-3":""}`;return r.jsx(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:x,useTitleFaded:i,children:r.jsx("div",{className:L,children:Array.isArray(B)&&B.length>0?B.map((M,z)=>r.jsx(Ce,{htmlType:"button",size:56,type:"bar",onClick:()=>W(z),ariaLabel:String(M),label:M,useLabel:!0,icon:v?v[String(M)]:void 0,variant:"default",disabled:w==="disabled",selected:p?D.has(M):S===M,useDisabledCovered:C,minWidth:0},String(M))):null})})}function ns({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,onDone:i,onChange:l,context:c,demoSelected:u}){const{t:d}=_e.useTranslation(),h=n??d("training.confirmTitle","\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694."),p=typeof e=="number"?e:-1,m=typeof t!="number"?"disabled":p<t?"done":p===t?"active":"disabled",C=c&&typeof c=="object"?c.sentence||"":typeof c=="string"?c:"",v=c&&typeof c=="object"?c.choices:void 0,[f,g]=s.useState(u??null),x=`${String(C)}\0${JSON.stringify(v??null)}`,[b,w]=s.useState(x);b!==x&&(w(x),u==null&&g(null));const[_,A]=s.useState(u);Object.is(_,u)||(A(u),g(u??null));const y=s.useRef(void 0);s.useEffect(()=>{const E=y.current;typeof E=="number"&&typeof t=="number"&&typeof e=="number"&&E>=e&&t<e&&u==null&&g(null),y.current=t},[t,e,u]);const B=s.useCallback(E=>{const D=typeof E=="object"&&E!==null?Object.assign({},E,{__ts:Date.now()}):{value:E,__ts:Date.now()};typeof l=="function"&&l(D),Ko(m)&&typeof i=="function"&&i(D)},[l,m,i]),k=s.useCallback(()=>{Ko(m)&&(g(!1),B(!1))},[B,m]),S=s.useCallback(()=>{Ko(m)&&(g(!0),B(!0))},[B,m]);return r.jsxs(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:h,onDone:i,useTitleFaded:!1,children:[r.jsx(qd,{context:c,state:m}),r.jsx("div",{className:"training-step__buttons",children:Array.isArray(v)&&v.length>0?v.slice(0,6).map((E,D)=>r.jsx(Ce,{htmlType:"button",size:56,type:"bar",onClick:()=>{Ko(m)&&(g(D),B&&B(D))},disabled:m==="disabled",ariaLabel:String(E),label:E,variant:m,selected:f===D},D)):r.jsxs(r.Fragment,{children:[r.jsx(Ce,{htmlType:"button",size:56,type:"bar",onClick:k,disabled:m==="disabled",icon:"x",ariaLabel:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:f===!1}),r.jsx(Ce,{htmlType:"button",size:56,type:"bar",onClick:S,disabled:m==="disabled",icon:"circle",ariaLabel:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:f===!0})]})})]})}function is({index:e,stepIndex:t,isLast:a=!1,title:o,onDone:n,btnLabel:i,soundSrc:l,bucketPath:c,usePreviewTextBtn:u,previewText:d=null,onPreviewTextBtn:h,disabled:p,_pageIndex:m,showSoundWaveForm:C,showNoiseWaveForm:v,leadInMs:f,tailMs:g}){const{t:x}=_e.useTranslation(),b=o??x("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),w=p??(typeof t=="number"&&typeof e=="number"?e>t:!1);return r.jsx(wo,{index:e,stepIndex:t,isLast:a,title:b,onDone:n,titleProps:{usePreviewTextBtn:u,previewText:d,onPreviewTextBtn:h},children:r.jsx(Tn,{soundSrc:l,ttsText:l?null:d??b,bucketPath:c,btnLabel:i||x("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:w,className:"training-step__listen-sticky",showSoundWaveForm:C,showNoiseWaveForm:v,leadInMs:f,tailMs:g},`audio-p${m??0}-s${e}`)})}var kA=".ihabdevteam-core-scope .page-popup--closing{opacity:0;pointer-events:none;transition:opacity .16s ease}.ihabdevteam-core-scope .page-popup__panel{overflow:auto}.ihabdevteam-core-scope .page-popup__close{font-size:20px;right:12px;top:10px}.ihabdevteam-core-scope .page-popup{align-items:stretch;display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-page-popup)}.ihabdevteam-core-scope .page-popup__panel{background:var(--color-deepWhite);border-radius:0;box-shadow:none;color:var(--color-black);display:flex;flex-direction:column;height:100%;max-height:none;max-width:none;overflow:hidden;position:relative;width:100%}.ihabdevteam-core-scope .page-popup__scroll{-webkit-overflow-scrolling:touch;align-items:flex-start;display:flex;flex:1 1 0;justify-content:center;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:rgba(0,0,0,.15) transparent;scrollbar-width:thin;touch-action:pan-y}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-track{background:transparent}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.28)}.ihabdevteam-core-scope .page-popup__panel--measuring .page-popup__scroll{opacity:0;pointer-events:none}.ihabdevteam-core-scope .page-popup__scroll{transition:opacity .12s ease}.ihabdevteam-core-scope .nt-debug{background:rgba(0,0,0,.03);border-radius:var(--radius-sm);color:var(--text,var(--color-black));font-family:monospace;font-size:12px;line-height:1.2;max-width:300px;padding:8px 10px;position:absolute;right:20px;top:84px;white-space:pre-wrap;z-index:calc(var(--z-page-popup) + 1)}.ihabdevteam-core-scope .page-popup--backdrop{display:none}.ihabdevteam-core-scope .page-popup__close{background:transparent;border:none;color:var(--text,var(--color-black));cursor:pointer;font-size:22px;line-height:1;position:absolute;right:14px;top:12px}.ihabdevteam-core-scope .page-popup__panel>*{box-sizing:border-box}.ihabdevteam-core-scope .page-popup__body{padding:16px 20px}.ihabdevteam-core-scope .page-popup__content{box-sizing:border-box;margin:0 auto;max-width:800px;min-width:0;padding:var(--spacing-page);width:100%}.ihabdevteam-core-scope .page-popup__content--full{max-width:none;padding:0}.ihabdevteam-core-scope .page-popup__content--center{margin-bottom:auto;margin-top:auto}.ihabdevteam-core-scope .pp-empty{color:var(--color-gray);padding:24px 0;text-align:center;width:100%}.ihabdevteam-core-scope .page-popup__content .training-steps{box-sizing:border-box;min-width:0;width:100%}.ihabdevteam-core-scope .page-popup__bottom,.ihabdevteam-core-scope .page-popup__top{flex-shrink:0}.ihabdevteam-core-scope .page-popup__panel--center .page-popup__scroll{align-items:center}.ihabdevteam-core-scope .page-popup--result-empty{background:var(--color-deepWhite)}.ihabdevteam-core-scope .page-popup__empty{align-items:center;color:var(--color-gray);display:flex;flex-direction:column;justify-content:center;padding:2rem;text-align:center;width:100%}";ce(kA);var BA=".ihabdevteam-core-scope .order-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .order-list__item{align-items:flex-start;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .order-list__draggable{align-items:center;border-radius:var(--radius-m);display:flex;flex:1;gap:var(--spacing-xs);justify-content:space-between;min-height:60px;padding:0 0 0 4px;will-change:transform}.ihabdevteam-core-scope .order-list__item-text{color:var(--color-black)}.ihabdevteam-core-scope .order-list__item-buttons{align-items:center;align-self:center;display:inline-flex;gap:2px}@media (max-width:600px){.ihabdevteam-core-scope .order-list__item-buttons{align-items:center;align-self:center;display:flex;flex-direction:column}.ihabdevteam-core-scope .order-list__item-buttons>*{box-sizing:border-box;display:inline-flex}}.ihabdevteam-core-scope .order-list__item.correct{border:1px solid var(--color-main)}.ihabdevteam-core-scope .order-list__slot{align-items:center;background-color:var(--color-darkWhite);border-radius:var(--radius-m);box-sizing:border-box;display:flex;gap:var(--spacing-xs);height:auto;padding:4px 10px;width:100%}.ihabdevteam-core-scope .order-list__marker{--marker-pos:50%;align-items:center;background-color:var(--color-main);background:color-mix(in srgb,var(--color-main) 50%,var(--color-sub) 50%);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:#fff;display:inline-flex;height:24px;justify-content:center;width:24px}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .order-list__marker{background:color-mix(in srgb,var(--color-main) calc(100% - var(--marker-pos)),var(--color-sub) var(--marker-pos))}}@media (max-width:600px){.ihabdevteam-core-scope .order-list__marker{height:24px;min-width:24px;width:24px}}.ihabdevteam-core-scope .order-list__item:hover .order-list__slot{background-color:var(--color-deepWhite);box-shadow:inset 0 0 0 1px var(--color-main);transition:box-shadow .16s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__item.drag-over .order-list__slot{background-color:var(--color-white);box-shadow:inset 0 0 0 1px var(--color-main)}.ihabdevteam-core-scope .order-list__slot.pulse{background-color:var(--color-white);transition:background-color .42s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__slot.pulse.to-dark{background-color:var(--color-darkWhite)}.ihabdevteam-core-scope .order-list__slot-number{align-items:center;align-self:center;border-radius:var(--radius-sm);color:#fff;display:inline-flex;height:32px;justify-content:center;width:32px}.ihabdevteam-core-scope .order-list__draggable.dragging{background-color:var(--color-white);opacity:.2}.ihabdevteam-core-scope .order-list__dragging-object{align-items:center;background:var(--color-white);border-radius:var(--radius-m);box-shadow:0 14px 40px rgba(16,24,40,.18);box-sizing:border-box;color:var(--color-black);display:inline-flex;gap:var(--spacing-s);left:0;max-width:calc(100vw - var(--spacing-page)*3);min-height:60px;opacity:1;overflow-wrap:anywhere;padding:20px;pointer-events:none;position:fixed;top:0;transform:translate3d(-9999px,-9999px,0) scale(1);transition:transform .16s cubic-bezier(.22,.9,.39,1),opacity .18s ease;white-space:normal;width:auto;will-change:transform,opacity;word-break:keep-all;z-index:var(--z-popover)}.ihabdevteam-core-scope .order-list__dragging-object--visible{opacity:1}.ihabdevteam-core-scope .order-list__item.drag-over .order-list__slot:hover{background-color:var(--color-white);border-radius:var(--radius-m);box-shadow:inset 0 0 0 1px var(--color-main);transition:box-shadow .16s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__item-text{display:block;line-height:1.4;margin:0;overflow-wrap:anywhere;white-space:normal;width:100%;word-break:keep-all}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true],.ihabdevteam-core-scope .order-list__draggable[draggable=false]{background-color:var(--color-darkWhite);box-shadow:none!important;cursor:default;opacity:.9;pointer-events:none}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__item-text,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__item-text{color:var(--color-gray);display:none!important;opacity:.9}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__item-buttons,.ihabdevteam-core-scope .order-list__draggable[data-disabled=true]~.order-list__slot .order-list__slot-number,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__item-buttons,.ihabdevteam-core-scope .order-list__draggable[draggable=false]~.order-list__slot .order-list__slot-number,.ihabdevteam-core-scope .order-list__slot-number[hidden]{display:none!important}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__slot,.ihabdevteam-core-scope .order-list__draggable[data-disabled=true]+.order-list__slot,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__slot,.ihabdevteam-core-scope .order-list__draggable[draggable=false]+.order-list__slot,.ihabdevteam-core-scope .order-list__slot[data-disabled=true]{background-color:var(--color-darkWhite)!important;box-shadow:none!important}.ihabdevteam-core-scope .order-list__slot[data-disabled=true]{cursor:default!important;pointer-events:none!important}.ihabdevteam-core-scope .order-list__slot[data-disabled=true] .order-list__slot-number{display:none!important}";ce(BA);const AA=[];function ss({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,onDone:i,onChange:l,context:c=AA}){const{t:u}=_e.useTranslation(),d=n??u("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),h=F=>typeof F=="string"?F:F&&(F.context||F.sentence||F.question||"")||"",[p,m]=s.useState(Array.isArray(c)?c:[]),[C,v]=s.useState(()=>(p||[]).map((F,N)=>({id:N,text:h(F)}))),f=s.useMemo(()=>typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled",[t,e]),g=f!=="disabled",x=s.useRef(void 0),b=s.useRef(void 0);s.useEffect(()=>{if(x.current===c)return;x.current=c;const F=Array.isArray(c)?c:[];m(F);const N=(O=>{const H=(O||[]).map((be,X)=>({id:X,text:h(be)}));if(H.length<=1)return H;const Z=(be,X)=>{if(be.length!==X.length)return!1;for(let re=0;re<be.length;re++)if(be[re].text!==X[re].text)return!1;return!0};let te=nt(H),se=0;for(;Z(te,H)&&se<20;)te=nt(H),se+=1;return te})(F);v(N);try{if(typeof l=="function"){const O=N.filter((H,Z)=>H.text===h(F[Z])).length;l({shuffled:N,score:O,total:(F||[]).length,initial:!0,__ts:Date.now()})}if(typeof i=="function"&&f==="active"){const O=N.filter((H,Z)=>H.text===h(F[Z])).length;b.current=c,i({shuffled:N,score:O,total:(F||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[c]),s.useEffect(()=>{if(f!=="active"||b.current===c||(b.current=c,typeof i!="function"))return;const F=Array.isArray(c)?c:[],N=C.filter((O,H)=>O.text===h(F[H])).length;i({shuffled:C,score:N,total:F.length,initial:!0,__ts:Date.now()})},[f,c]);const w=(F,N)=>{const O=[...C],H=F+N;if(H<0||H>=O.length)return;const Z=O[H];O[H]=O[F],O[F]=Z,q(O);try{if(typeof i=="function"&&f==="active"){const te=O.filter((se,be)=>se.text===h(p[be])).length;i({shuffled:O,score:te,total:(p||[]).length,__ts:Date.now()})}}catch{}},[_,A]=s.useState(null),y=s.useRef(null),B=s.useRef(null),k=s.useRef(null),S=s.useRef(null),E=s.useRef(null),D=s.useRef({x:0,y:0}),I=s.useRef(null),j=s.useRef({dx:0,dy:0}),W=()=>{if(I.current!==null)return;const F=()=>{if(!y.current){I.current=null;return}I.current=requestAnimationFrame(F);const N=D.current,O=j.current||{dx:0,dy:0};y.current&&(y.current.style.transform=`translate3d(${N.x-O.dx}px, ${N.y-O.dy}px, 0)`)};I.current=requestAnimationFrame(F)},L=s.useRef(new Map),M=s.useRef(new Map),z=()=>{const F=new Map;return L.current.forEach((N,O)=>{N&&N.getBoundingClientRect&&F.set(O,N.getBoundingClientRect())}),F},q=F=>{const N=z();v(F);try{if(typeof l=="function"){const O=F.filter((H,Z)=>H.text===h(p[Z])).length;l({shuffled:F,score:O,total:(p||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const O=z();F.forEach(H=>{const Z=N.get(H.id),te=O.get(H.id),se=L.current.get(H.id);if(!se||!Z||!te)return;const be=Z.top-te.top;be&&(se.style.transition="none",se.style.transform=`translateY(${be}px)`,requestAnimationFrame(()=>{se.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",se.style.transform="";const X=()=>{se.style.transition="",se.removeEventListener("transitionend",X)};se.addEventListener("transitionend",X)}))})})},Y=(F,N)=>{try{try{N.dataTransfer?.setData("text/plain",String(F))}catch{}try{N.dataTransfer&&(N.dataTransfer.effectAllowed="move")}catch{}try{const O=document.createElement("div");O.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(O),N.dataTransfer?.setDragImage(O,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(O)}catch{}})}catch{}}catch{}A(F);try{const O=C[F],H=document.createElement("div");H.className="order-list__dragging-object order-list__dragging-object--visible",H.textContent=O&&O.text?O.text:"",document.body.appendChild(H),y.current=H;const Z=L.current.get(O.id);let te=N.clientX||0,se=N.clientY||0;try{if(Z&&Z.getBoundingClientRect){const ie=Z.getBoundingClientRect();te=ie.left+ie.width/2,se=ie.top+ie.height/2}}catch{}const be=H.getBoundingClientRect(),X=be.width/2,re=be.height/2;j.current={dx:X,dy:re},H.style.transition="none",D.current={x:te,y:se},H.style.transform=`translate3d(${te-X}px, ${se-re}px, 0)`,requestAnimationFrame(()=>{try{H.style.transition=""}catch{}W()});const Ae=ie=>{const ue=ie;D.current={x:ue.clientX,y:ue.clientY},W()};k.current=Ae,document.addEventListener("mousemove",Ae);const K=ie=>{const ue=ie;D.current={x:ue.clientX,y:ue.clientY},W()};B.current=K,document.addEventListener("dragover",K);try{N.dataTransfer?.setData("text/plain",String(F));try{N.dataTransfer?.setData("application/json",JSON.stringify({idx:F}))}catch{}}catch{}}catch{}},P=(F,N)=>{N.preventDefault();try{N.dataTransfer&&(N.dataTransfer.dropEffect="move")}catch{}try{E.current!==null&&(clearTimeout(E.current),E.current=null);const O=N.currentTarget&&N.currentTarget.closest?N.currentTarget.closest(".order-list__item"):null;if(O&&S.current!==O){if(S.current)try{S.current.classList.remove("drag-over")}catch{}try{O.classList.add("drag-over")}catch{}S.current=O}}catch{}},V=(F,N)=>{N.preventDefault();const O=N.dataTransfer?.getData("text/plain")||"",H=O?parseInt(O,10):_,Z=F;if(typeof H!="number"||isNaN(H)||H===Z){A(null),T(),$();return}const te=Dl(C,H,Z);q(te),A(null),$();try{if(typeof i=="function"&&f==="active"){const se=te.filter((be,X)=>be.text===h(p[X])).length;i({shuffled:te,score:se,total:(p||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const se=document.querySelectorAll(".order-list .order-list__item")[Z];if(!se)return;const be=se.querySelector(".order-list__slot")||se;try{be.classList.add("pulse"),be.offsetHeight,be.classList.add("to-dark");const X=()=>{be.classList.remove("pulse","to-dark"),be.removeEventListener("transitionend",X)};be.addEventListener("transitionend",X)}catch{}})}catch{}T()},$=()=>{if(y.current){try{document.body.removeChild(y.current)}catch{}y.current=null}B.current&&(document.removeEventListener("dragover",B.current),B.current=null),k.current&&(document.removeEventListener("mousemove",k.current),k.current=null),I.current!==null&&(cancelAnimationFrame(I.current),I.current=null)},U=()=>{A(null),T(),$()};s.useEffect(()=>()=>$(),[]);const T=()=>{try{if(E.current!==null&&(clearTimeout(E.current),E.current=null),S.current){try{S.current.classList.remove("drag-over")}catch{}S.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(F=>F.classList.remove("drag-over"))}catch{}};return s.useEffect(()=>{try{const F=Math.max(1,(C||[]).length);C.forEach((N,O)=>{const H=M.current.get(N.id);if(!H)return;let Z=50;F>1&&(Z=Math.round(O/(F-1)*100));try{H.style.setProperty("--marker-pos",Z+"%")}catch{}})}catch{}},[C]),s.useEffect(()=>()=>{$(),E.current!==null&&(clearTimeout(E.current),E.current=null)},[]),r.jsx(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:d,children:r.jsx("div",{className:"order-list",children:C.map((F,N)=>{const O=Math.max(1,(C||[]).length),H=O>1?Math.round(N/(O-1)*100):50;return r.jsx("div",{className:"order-list__item",children:r.jsxs("div",{className:"order-list__slot","data-disabled":f==="disabled","aria-disabled":f==="disabled",children:[f!=="disabled"?r.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":H+"%"},ref:Z=>{const te=M.current;Z?te.set(F.id,Z):te.delete(F.id)},children:r.jsx("span",{className:"order-list__slot-number button-1",children:N+1})}):null,r.jsxs("div",{ref:Z=>{const te=L.current;Z?te.set(F.id,Z):te.delete(F.id)},className:`order-list__draggable ${_===N?"dragging":""}`,"data-disabled":f==="disabled","aria-disabled":f==="disabled",tabIndex:f==="disabled"?-1:0,draggable:g,onDragStart:g?Z=>Y(N,Z):void 0,onDragEnter:g?Z=>P(N,Z):void 0,onDragOver:g?Z=>P(N,Z):void 0,onDragLeave:g?()=>{try{E.current!==null&&clearTimeout(E.current),E.current=setTimeout(()=>{try{const Z=document.querySelectorAll(".order-list .order-list__item");Z&&Z[N]&&(Z[N].classList.remove("drag-over"),S.current===Z[N]&&(S.current=null))}catch{}},80)}catch{}}:void 0,onDrop:g?Z=>V(N,Z):void 0,onDragEnd:g?U:void 0,children:[r.jsx("span",{className:"order-list__item-text body-2",children:F.text}),g?r.jsxs("span",{className:"order-list__item-buttons",children:[r.jsx(Ce,{htmlType:"button",size:32,type:"dot",onClick:()=>w(N,-1),ariaLabel:u("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:N===0,useBorder:!1,useDisabledInvisible:!0}),r.jsx(Ce,{htmlType:"button",size:32,type:"dot",onClick:()=>w(N,1),ariaLabel:u("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:N===C.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},F.id)})})})}var SA="";ce(SA);const EA=8e3;function DA(e,t){return new Promise(a=>{let o=!1;const n=()=>{o||(o=!0,a())};e.then(n,n),setTimeout(n,t)})}function Yd({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,onDone:i,onChange:l,context:c=[],selectable:u=!1,hideLabel:d=!1,hideAudio:h=!1,maxCards:p,playAllGapMs:m=0}){const{t:C}=_e.useTranslation(),v=n??C("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),f=s.useMemo(()=>Array.isArray(c)?c:c&&c.items||[],[c]),g=p??3,x=(f||[]).slice(0,g);(f||[]).length>g&&console.warn(`TrainingStepCard: ${f.length} items passed but only ${g} shown`);const b=typeof e=="number"?e:-1,w=typeof t!="number"?"disabled":b<t?"done":b===t?"active":"disabled",[_,A]=s.useState(null),y=s.useRef([]),[B,k]=s.useState(!1),S=s.useRef(null),E=s.useRef(!0);s.useEffect(()=>(E.current=!0,()=>{E.current=!1}),[]);const D=s.useMemo(()=>f.map(z=>z?.id??z?.word??"").join("|"),[f]);s.useEffect(()=>{A(null)},[D]);const I=s.useRef(void 0);s.useEffect(()=>{const z=I.current;typeof z=="number"&&typeof t=="number"&&typeof e=="number"&&z>=e&&t<e&&A(null),I.current=t},[t,e]);const j=s.useCallback((z,q)=>{if(u)return;const Y={item:z,index:q,__ts:Date.now()};try{typeof l=="function"&&l(Y)}catch{}if(w==="active"&&typeof i=="function")try{i(Y)}catch{}},[u,l,w,i]),W=s.useRef(m);s.useEffect(()=>{W.current=Math.max(0,m||0)},[m]);const L=s.useCallback(async()=>{if(B||w==="disabled")return;k(!0);let z=!1;const q=new Promise(Y=>{S.current=()=>{z=!0,Y()}});try{for(let Y=0;Y<x.length&&!(!E.current||z);Y++){const P=y.current[Y];if(!P)continue;await Promise.race([DA(P.play(),EA),q]);const V=Math.max(0,W.current||0);V>0&&Y<x.length-1&&!z&&E.current&&await Promise.race([new Promise($=>{setTimeout($,V)}),q])}}finally{S.current=null,k(!1)}},[B,w,x.length]),M=s.useCallback((z,q)=>{if(!Ko(w))return;A(q);const Y={selectedValue:z.word||z.title||"",selectedIndex:q,item:z,__ts:Date.now()};try{typeof l=="function"&&l(Y)}catch{}if(typeof i=="function")try{i(Y)}catch{}},[l,w,i]);return r.jsx(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:v,onDone:i,titleProps:{usePlayAllBtn:!h&&x.length>0,onPlayAll:L,playAllActive:B},children:r.jsx("div",{className:"training-step__cards",onClickCapture:z=>{const q=S.current;if(!q)return;const Y=z.target;Y&&typeof Y.closest=="function"&&Y.closest(".training-word-card__bottom")&&q()},children:x.length===0?r.jsx("div",{className:"training-step__empty",children:C("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):x.map((z,q)=>r.jsx(Ui,{ref:Y=>{y.current[q]=Y},item:z,disabled:w==="disabled",onPlayDone:()=>j(z,q),selectable:u,selected:u&&_===q,onSelect:u?()=>M(z,q):void 0,flipDelay:q*120,hideLabel:d,hideAudio:h},z&&z.id||q))})})}const NA=160;var TA=".ihabdevteam-core-scope .panel{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);display:flex;flex-direction:column;overflow:visible;padding:0;text-align:left}.ihabdevteam-core-scope .panel--no-border{border:none}.ihabdevteam-core-scope .panel--no-bg{background:transparent;border-radius:0}.ihabdevteam-core-scope .panel--no-border .panel-row{padding-left:0;padding-right:0}.ihabdevteam-core-scope .panel--no-row-border .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel__header{align-items:center;border-bottom:1px solid var(--color-darkWhite);box-sizing:border-box;display:flex;gap:var(--spacing-xs);justify-content:space-between;margin:0;padding:0 20px}.ihabdevteam-core-scope .panel__header:last-child{border-bottom:none}.ihabdevteam-core-scope .panel--small .panel__header{min-height:48px}.ihabdevteam-core-scope .panel--medium .panel__header{min-height:56px}.ihabdevteam-core-scope .panel--large .panel__header{min-height:64px}.ihabdevteam-core-scope .panel__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;margin-right:var(--spacing-s);width:20px}.ihabdevteam-core-scope .panel__title-group{display:flex;flex-direction:column;gap:4px;margin-right:auto;min-width:0}.ihabdevteam-core-scope .panel__title{color:var(--color-darkGray);margin:0}.ihabdevteam-core-scope .panel__disc{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .panel__actions{display:flex;flex-shrink:0;gap:6px}.ihabdevteam-core-scope .panel-row{align-items:center;box-sizing:border-box;display:flex;gap:var(--spacing-m);justify-content:space-between;padding:4px 20px}.ihabdevteam-core-scope .panel--small .panel-row{min-height:48px}.ihabdevteam-core-scope .panel--medium .panel-row{min-height:56px}.ihabdevteam-core-scope .panel--large .panel-row{min-height:64px}.ihabdevteam-core-scope .panel--compact-rows .panel-row{min-height:46px;padding-bottom:3px;padding-top:3px}.ihabdevteam-core-scope .panel-row+.panel-row{border-top:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel--fill .panel-row{border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel--fill .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel--no-row-border .panel-row{border-bottom:none}.ihabdevteam-core-scope .panel>:not(.panel-row)+.panel-row{border-top:none}.ihabdevteam-core-scope .panel-grid{grid-gap:1px;grid-gap:var(--panel-grid-gap,1px);background:var(--color-darkWhite);display:grid;gap:1px;gap:var(--panel-grid-gap,1px);grid-template-columns:repeat(2,1fr);grid-template-columns:repeat(var(--panel-grid-cols,2),1fr);overflow:hidden;padding-bottom:1px}.ihabdevteam-core-scope .panel-grid:not(.panel-grid--columns) .panel-row{background:var(--color-white)}.ihabdevteam-core-scope .panel-grid:not(.panel-grid--columns) .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel-grid--columns{background:transparent;-moz-column-count:2;column-count:2;-moz-column-count:var(--panel-grid-cols,2);column-count:var(--panel-grid-cols,2);-moz-column-gap:1px;column-gap:1px;-moz-column-gap:var(--panel-grid-gap,1px);column-gap:var(--panel-grid-gap,1px);display:block;overflow:visible;padding-bottom:0}.ihabdevteam-core-scope .panel-grid--columns>*{-moz-column-break-inside:avoid;box-sizing:border-box;break-inside:avoid;display:inline-flex;flex-direction:column;margin-bottom:1px;margin-bottom:var(--panel-grid-gap,1px);page-break-inside:avoid;vertical-align:top;width:100%}.ihabdevteam-core-scope .panel-grid--columns>:last-child{margin-bottom:0}.ihabdevteam-core-scope .panel-row--empty{color:var(--color-lightGray);justify-content:center}.ihabdevteam-core-scope .panel-row--loading{justify-content:center}.ihabdevteam-core-scope .panel__body--scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .panel__body--gutter-stable{scrollbar-gutter:stable}.ihabdevteam-core-scope .panel-row--content{display:block;min-height:0;padding:16px}.ihabdevteam-core-scope .panel-row--content+.panel-row--content{border-top:none}.ihabdevteam-core-scope .panel-row__icon{align-items:center;display:flex;flex-shrink:0;margin-right:-4px}.ihabdevteam-core-scope .panel-row__left{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__label{color:var(--color-deepGray)}.ihabdevteam-core-scope .panel-row__sub{color:var(--color-gray);margin-top:2px}.ihabdevteam-core-scope .panel-row__right{align-items:center;display:flex;flex:0 0 auto;justify-content:flex-end}@media (max-width:767px){.ihabdevteam-core-scope .panel-row{flex-wrap:wrap}.ihabdevteam-core-scope .panel-row__right{flex:0 1 auto;min-width:0}}.ihabdevteam-core-scope .panel--form .panel-row{grid-gap:var(--spacing-m);align-items:center;display:grid;gap:var(--spacing-m);grid-template-columns:80px 1fr;grid-template-columns:var(--panel-label-width,80px) 1fr}.ihabdevteam-core-scope .panel--form .panel-row:has(.text-field--full-width){align-items:flex-start}.ihabdevteam-core-scope .panel--form .panel-row:has(.text-field--full-width) .panel-row__left{padding-top:9px}.ihabdevteam-core-scope .panel-row--label-fixed .panel-row__left{flex:0 0 120px;flex:0 0 var(--panel-label-width,120px)}.ihabdevteam-core-scope .panel-row--label-fixed .panel-row__right{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--fill .panel-row__right{align-items:center;display:flex}.ihabdevteam-core-scope .panel-row--fill .panel-row__right>*,.ihabdevteam-core-scope .panel-row--fill>.dropdown,.ihabdevteam-core-scope .panel-row--fill>.form-input,.ihabdevteam-core-scope .panel-row--fill>.text-field{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--clickable{cursor:pointer;transition:background .1s,box-shadow .1s}.ihabdevteam-core-scope .panel-row--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .panel-row__text{color:var(--color-darkGray);overflow-wrap:break-word;text-align:right;word-break:break-word}.ihabdevteam-core-scope .panel-row--text .panel-row__right{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--block{align-items:stretch;display:flex;flex-direction:column;justify-content:center}.ihabdevteam-core-scope .panel-row__description{color:var(--color-gray);line-height:1.6;margin:0;overflow-wrap:break-word;word-break:break-word}.ihabdevteam-core-scope .panel-row__dropdown-group{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .panel-row__dropdown-group--full,.ihabdevteam-core-scope .panel-row__dropdown-item--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap{display:flex;flex-direction:column}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__text--full{text-align:left;width:100%}.ihabdevteam-core-scope .panel-row__input-wrap{display:flex;flex-direction:column}.ihabdevteam-core-scope .panel-row__input-wrap--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--vertical{align-items:flex-start;flex-direction:column;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .panel-row--vertical .panel-row__left{flex:none;width:100%}.ihabdevteam-core-scope .panel-row--vertical .panel-row__right{align-items:flex-start;flex:none;justify-content:flex-start;width:100%}.ihabdevteam-core-scope .panel-row--vertical .panel-row__text{margin-left:0;text-align:left}.ihabdevteam-core-scope .panel-row--device{grid-gap:0;align-items:stretch;display:grid;gap:0;grid-template-columns:1fr 1fr;min-height:0;padding:0}.ihabdevteam-core-scope .panel-row__device-column{box-sizing:border-box;display:flex;flex-direction:column;gap:0;min-height:164px;padding:14px 16px}.ihabdevteam-core-scope .panel-row__device-column+.panel-row__device-column{border-left:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel-row__device-head{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px;min-height:32px}.ihabdevteam-core-scope .panel-row__device-side{color:var(--color-darkGray);margin:0;text-align:left}.ihabdevteam-core-scope .panel-row__device-info{margin:0;text-align:left}.ihabdevteam-core-scope .panel-row__device-info,.ihabdevteam-core-scope .panel-row__device-kind{align-items:flex-start;display:flex;flex-direction:column;gap:3px}.ihabdevteam-core-scope .panel-row__device-name{color:var(--color-darkGray)}.ihabdevteam-core-scope .panel-row__device-detail{color:var(--color-gray)}.ihabdevteam-core-scope .panel-row__device-date{color:var(--color-lightGray);margin-top:2px}.ihabdevteam-core-scope .panel-row__device-empty{align-items:center;color:var(--color-lightGray);display:flex;flex:1;justify-content:center;text-align:center}.ihabdevteam-core-scope .required-mark{color:var(--color-main);margin-left:2px}.ihabdevteam-core-scope .panel-row__error{color:var(--color-error);margin-top:4px}.ihabdevteam-core-scope .panel-row__helper{color:var(--color-lightGray);margin-top:4px}.ihabdevteam-core-scope .panel-row__button-group{display:flex;gap:6px}@media (max-width:767px){.ihabdevteam-core-scope .panel-row__dropdown-group{flex-wrap:wrap}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap--full,.ihabdevteam-core-scope .panel-row__dropdown-item--full{flex:1 1 104px}}";ce(TA);const jA={\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant"};function LA(e,t){const a=jA[e];return a?t(`device.type.${a}`,{defaultValue:e}):e}const d1=()=>{};function Ua(e){const t=s.useId();if(!("variant"in e)){const{label:b,sub:w,onClick:_,children:A,align:y="horizontal",icon:B,useFullWidth:k=!1}=e,S=E=>{_&&E.target===E.currentTarget&&(E.key==="Enter"||E.key===" ")&&(E.preventDefault(),_())};return r.jsxs("div",{className:Ne("panel-row",y==="vertical"?"panel-row--vertical":"",k?"panel-row--label-fixed panel-row--fill":"",_?"panel-row--clickable":""),onClick:_,onKeyDown:_?S:void 0,role:_?"button":void 0,tabIndex:_?0:void 0,children:[B!=null&&r.jsx("div",{className:"panel-row__icon",children:B}),b!=null&&r.jsxs("div",{className:"panel-row__left",children:[r.jsx("div",{className:"panel-row__label body-3",children:b}),w&&r.jsx("div",{className:"panel-row__sub caption-1",children:w})]}),r.jsx("div",{className:"panel-row__right",children:A})]})}if(e.variant==="description")return r.jsx("div",{className:"panel-row panel-row--block",children:r.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return r.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return r.jsx("div",{className:"panel-row panel-row--loading",children:r.jsx(yr,{size:28})});if(e.variant==="custom"&&!e.label)return r.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:o,sub:n,onClick:i,required:l,error:c,align:u="horizontal",useFullWidth:d=!1,icon:h}=e,p=a==="button"?void 0:i;let m=null;const C=a==="toggle"?`panel-toggle-${t}`:void 0,v=c?`panel-error-${t}`:void 0,f=`panel-helper-${t}`;if(a==="toggle"){const b=e;m=r.jsx(id,{checked:b.checked,onChange:b.onChange,id:C})}else if(a==="segmented"){const b=e;m=r.jsx(Ta,{options:b.options,value:b.value,onChange:b.onChange,size:b.size??40,ariaLabel:o})}else if(a==="dropdown"){const b=e,w=b.dropdowns?.length?r.jsx("div",{className:`panel-row__dropdown-group${d?" panel-row__dropdown-group--full":""}`,children:b.dropdowns.map((_,A)=>r.jsx("div",{className:d?"panel-row__dropdown-item--full":void 0,children:r.jsx(_a,{options:_.options,value:_.value,onChange:_.onChange,placeholder:_.placeholder,block:d,error:!!c,ariaDescribedBy:v,ariaLabel:_.ariaLabel??([o,_.placeholder].filter(Boolean).join(" ")||void 0)})},A))}):r.jsx(_a,{options:b.options??[],value:b.value??"",onChange:b.onChange??d1,block:d,error:!!c,ariaLabel:o,ariaDescribedBy:v});m=c?r.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[w,r.jsx("span",{id:v,className:"caption-1 panel-row__error",role:"alert",children:c})]}):w}else if(a==="button"){const b=e;b.buttons?.length?m=r.jsx("div",{className:"panel-row__button-group",children:b.buttons.map((w,_)=>r.jsx(Ce,{htmlType:"button",size:w.btnSize??40,variant:w.btnVariant??"default",disabled:w.disabled,onClick:w.onClick,children:w.label},_))}):m=r.jsx(Ce,{htmlType:"button",size:b.btnSize??40,variant:b.btnVariant??"default",disabled:b.disabled,onClick:b.onClick,children:b.buttonLabel})}else if(a==="text"){const b=e;m=r.jsx("span",{className:`panel-row__text body-2${d?" panel-row__text--full":""}`,style:b.valueColor?{color:b.valueColor}:void 0,children:b.value})}else if(a==="input"){const b=e;m=r.jsxs("div",{className:`panel-row__input-wrap${d?" panel-row__input-wrap--full":""}`,children:[r.jsx(yo,{value:b.value,onChange:b.onChange??d1,onKeyDown:b.onKeyDown,onEnter:b.onEnter,placeholder:b.placeholder,ghostText:b.ghostText,ghostHint:b.ghostHint,inputMode:b.inputMode,readOnly:b.readOnly,disabled:b.disabled,type:b.type,autoComplete:b.autoComplete,maxLength:b.maxLength,showCount:b.showCount,multiline:b.multiline,rows:b.rows,fullWidth:d,error:c,ariaLabel:o,required:l,ariaDescribedBy:b.helperText?f:void 0}),b.helperText&&r.jsx("div",{id:f,className:"panel-row__helper caption-1",children:b.helperText})]})}else a==="custom"&&(m=e.children);c&&a!=="input"&&a!=="dropdown"&&(m=r.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[m,r.jsx("span",{id:v,className:"caption-1 panel-row__error",role:"alert",children:c})]}));const g=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&d,x=b=>{p&&b.target===b.currentTarget&&(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),p())};return r.jsxs("div",{className:Ne("panel-row",u==="vertical"?"panel-row--vertical":"",g?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",p?"panel-row--clickable":""),onClick:p,onKeyDown:p?x:void 0,role:p?"button":void 0,tabIndex:p?0:void 0,children:[h!=null&&r.jsx("div",{className:"panel-row__icon",children:h}),r.jsxs("div",{className:"panel-row__left",children:[C?r.jsxs("label",{htmlFor:C,className:"panel-row__label body-3",children:[o,l&&r.jsx("span",{className:"required-mark",children:"*"})]}):r.jsxs("div",{className:"panel-row__label body-3",children:[o,l&&r.jsx("span",{className:"required-mark",children:"*"})]}),n&&r.jsx("div",{className:"panel-row__sub caption-1",children:n})]}),r.jsx("div",{className:"panel-row__right",children:m})]})}function p1(e){const t=e.productName||e.brand,a=[e.brand,e.fitType].filter(o=>!!o&&o!==t);return[...new Set(a)].join(" \xB7 ")}function h1({devices:e,onRelease:t,emptyLabel:a}){const{t:o,i18n:n}=_e.useTranslation();return r.jsx("div",{className:"panel-row panel-row--device",children:["left","right"].map(i=>{const l=e[i],c=i==="left"?o("device.direction.left","\uC88C"):o("device.direction.right","\uC6B0");return r.jsxs("div",{className:"panel-row__device-column",children:[r.jsxs("div",{className:"panel-row__device-head",children:[r.jsx("span",{className:"panel-row__device-side body-2b",children:c}),l&&t&&r.jsx(Ce,{htmlType:"button",size:32,type:"dot",icon:"x",ariaLabel:`${c} ${o("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C")}`,showTooltipInfo:o("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>t(i)})]}),l?r.jsxs("div",{className:"panel-row__device-info",children:[r.jsxs("span",{className:"panel-row__device-kind",children:[l.device&&r.jsx(St,{size:"small",variant:O0(l.device),fill:"soft",label:LA(l.device,o)}),p1(l)&&r.jsx("span",{className:"panel-row__device-detail body-3",children:p1(l)})]}),r.jsx("span",{className:"panel-row__device-name body-2b",children:l.productName||l.brand}),_d(l.wornYear,l.wornMonth,l.wornDay,n.language)&&r.jsx("span",{className:"panel-row__device-date caption-1",children:o("customers.device.wornSince",{date:_d(l.wornYear,l.wornMonth,l.wornDay,n.language)})})]}):r.jsx("span",{className:"panel-row__device-empty body-3",children:a??o("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},i)})})}function jn({title:e,titleLevel:t=2,icon:a,disc:o,actions:n,size:i="medium",minHeight:l,maxWidth:c,className:u,scrollable:d,scrollbarGutter:h="auto",compactRows:p=!1,useBorder:m=!0,useBg:C=!0,useRowBorder:v=!0,labelWidth:f,form:g=!1,loading:x,empty:b,children:w}){const _=Ne("panel",`panel--${i}`,g?"panel--form":"",l!==void 0?"panel--fill":"",m?"":"panel--no-border",C?"":"panel--no-bg",v?"":"panel--no-row-border",p?"panel--compact-rows":"",u),A={};l!==void 0&&(A.minHeight=l),c!==void 0&&(A.maxWidth=typeof c=="number"?`${c}px`:c),f!==void 0&&(A["--panel-label-width"]=typeof f=="number"?`${f}px`:f);const y=t?`h${t}`:"div";return r.jsxs("div",{className:_,style:Object.keys(A).length?A:void 0,children:[(!!e||o!=null)&&r.jsxs("div",{className:Ne("panel__header",o!=null?"panel__header--with-disc":""),children:[a&&r.jsx(ot,{icon:a,label:typeof e=="string"?e:void 0,className:"panel__icon"}),r.jsxs("div",{className:"panel__title-group",children:[!!e&&r.jsx(y,{className:`panel__title ${o!=null?"body-3b":"h5b"}`,children:e}),o!=null&&r.jsx("p",{className:"panel__disc caption-1",children:o})]}),n&&r.jsx("div",{className:"panel__actions",children:n})]}),x?r.jsx(Ua,{variant:"loading"}):b!=null&&s.Children.toArray(w).length===0?r.jsx(Ua,{variant:"empty",children:b}):d?r.jsx("div",{className:Ne("panel__body--scroll",h==="stable"&&"panel__body--gutter-stable"),children:w}):w]})}function m1({cols:e=2,layout:t="grid",gap:a=1,collapseAt:o,className:n,style:i,children:l}){const c=s.useRef(null),[u,d]=s.useState();s.useEffect(()=>{const p=c.current;if(o===void 0||!p||(d(p.clientWidth),typeof ResizeObserver>"u"))return;const m=new ResizeObserver(([C])=>d(C.contentRect.width));return m.observe(p),()=>m.disconnect()},[o]);const h=o!==void 0&&u!==void 0&&u<=o;return r.jsx("div",{ref:c,className:Ne("panel-grid",t==="columns"&&"panel-grid--columns",n),style:{"--panel-grid-cols":h?1:e,"--panel-grid-gap":typeof a=="number"?`${a}px`:a,...i},children:l})}function MA(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 b1(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"}]}MA(xt.t.bind(xt)),b1(xt.t.bind(xt));var $A='.ihabdevteam-core-scope .noise-settings{border-radius:var(--radius-m);box-sizing:border-box;max-width:calc(100vw - 40px);padding:0 20px 20px}.ihabdevteam-core-scope .tooltip-content:has(.noise-settings__header) .tooltip-content__header{border-bottom:1px solid var(--color-darkWhite);height:60px;padding:0 20px}.ihabdevteam-core-scope .noise-settings__header{align-items:center;display:flex;justify-content:space-between;width:100%}.ihabdevteam-core-scope .noise-settings__header span{color:var(--color-darkGray);font-weight:600}.ihabdevteam-core-scope .noise-settings__slider-input.slider--horizontal{flex:1 1 auto}.ihabdevteam-core-scope .noise-settings__value{font-feature-settings:"tnum";color:var(--color-main);flex:0 0 auto;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;width:44px}.ihabdevteam-core-scope .noise-settings__value--disabled{opacity:.4}.ihabdevteam-core-scope .noise-settings__width-ghost{height:0;overflow:hidden;pointer-events:none;visibility:hidden}.ihabdevteam-core-scope .noise-settings__width-ghost .panel-row{border:0;margin:0;min-height:0;padding-bottom:0;padding-top:0}';ce($A);const ls="none",RA=.5,PA=1.5,zA=.25;function Kd({title:e,valueLabel:t,value:a,min:o,max:n,step:i,tickStep:l,size:c,disabled:u,onChange:d}){return r.jsxs(Ua,{variant:"custom",label:e,useFullWidth:!0,children:[r.jsx(bd,{value:a,onChange:d,min:o,max:n,step:i,size:c,showBgTick:!0,tickStep:l,ariaLabel:e,disabled:u,className:"noise-settings__slider-input"}),r.jsx("div",{className:Ne("noise-settings__value","button-1",u?"noise-settings__value--disabled":""),children:t})]})}function Zd({anchorRect:e,onClose:t,hideNoiseRows:a=!1}){const{t:o}=_e.useTranslation(),n=sa("(max-width: 767px)")?40:24,i=En(),l=Sr(i?.settings??Dr),c=i?.settings.type??"defaultNoise",u=i?.settings.enabled??!0,d=i?.playbackRate??1,h=i?.mainVolume??1,p=Math.round(h*100),m=s.useCallback(x=>{try{i?.setMainVolume(Math.max(0,Math.min(1,x/100)))}catch{}},[i]),C=s.useCallback(x=>{try{i?.setPlaybackRate(x)}catch{}},[i]),v=s.useCallback(x=>{const b=Math.min(Ar,Math.max(0,Math.round(x*10)/10));try{i?.setSettings({noiseRatio:b})}catch{}},[i]),f=s.useCallback(x=>{try{x===ls?i?.setSettings({enabled:!1}):i?.setSettings({type:x,enabled:!0})}catch{}},[i]),g=[{key:ls,label:o("training.noise.type.none","\uC5C6\uC74C")},...b1(o).map(x=>({key:x.value,label:x.label}))];return r.jsx(xa,{anchorRect:e,offset:12,onClose:t,ariaLabel:o("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:r.jsxs("div",{className:"noise-settings__header",children:[r.jsx("span",{children:o("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),r.jsx(Ce,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:o("common.close","\uB2EB\uAE30"),onClick:t})]}),children:r.jsxs(jn,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[r.jsx(Kd,{title:o("training.playVolumeTitle","\uC804\uCCB4 \uC18C\uB9AC"),valueLabel:`${p}%`,value:p,min:0,max:100,step:10,size:n,onChange:m}),r.jsx(Kd,{title:o("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${d.toFixed(2)}x`,value:d,min:RA,max:PA,step:zA,size:n,onChange:C}),!a&&r.jsxs(r.Fragment,{children:[r.jsx(Ua,{variant:"custom",label:o("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:r.jsx(Ta,{ariaLabel:o("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:g,value:u?c:ls,onChange:f})}),r.jsx(Kd,{title:o("training.noiseRatioTitle","\uC18C\uC74C \uBE44\uC728"),valueLabel:o("training.noiseRatioValue","{{ratio}}\uBC30",{ratio:l.toFixed(1)}),value:l,min:0,max:Ar,step:Od,size:n,disabled:!u,onChange:v})]}),a&&r.jsx("div",{className:"noise-settings__width-ghost","aria-hidden":"true",inert:!0,children:r.jsx(Ua,{variant:"custom",label:"\xA0",useFullWidth:!0,children:r.jsx(Ta,{ariaLabel:"width-ghost",size:40,shape:"rounded",options:g,value:ls,onChange:()=>{}})})})]})})}var IA=".ihabdevteam-core-scope .training-page-bottom{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;flex:0 0 auto;gap:var(--spacing-s);justify-content:space-between;padding:12px 18px calc(12px + env(safe-area-inset-bottom));width:100%;z-index:5}.ihabdevteam-core-scope .pp-bottom__left{align-items:center;display:flex;gap:var(--spacing-m)}.ihabdevteam-core-scope .pp-bottom__right{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .pp-bottom__meters{border:1px solid var(--color-whiteLine);border-radius:14px;box-sizing:border-box;display:flex;flex-direction:column;gap:2px;height:56px;justify-content:center;padding:8px 12px}.ihabdevteam-core-scope .pp-bottom__meter{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-label{color:var(--color-gray);min-width:28px}.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:none}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:flex}@media (min-width:768px){.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:block}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:none}}@media (max-width:1024px){.ihabdevteam-core-scope .pp-bottom__meters{height:50px;padding:4px 12px}}@media (max-width:768px){.ihabdevteam-core-scope .pp-bottom__meters{height:46px;padding:2px 10px}}.ihabdevteam-core-scope .pp-bottom__tooltip-trigger{display:inline-block}.ihabdevteam-core-scope .pp-bottom__meters--floating{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-trigger{display:inline-flex;flex-shrink:0}";ce(IA);function Xd({useNoiseSettingBtn:e=!1,onSettings:t,onNext:a,onResult:o,stepIndex:n=0,stepCount:i=0,pageIndex:l=0,pageCount:c=1,resultOpen:u=!1,hideNoiseRows:d=!1}){const{t:h}=_e.useTranslation(),[p,m]=s.useState(!1),[C,v]=s.useState(null),[f,g]=s.useState(!1),x=s.useRef(null),b=s.useRef(null),w=En(),_=c>0,A=_&&l<c-1,y=!_||l>=c-1,B=n===Math.max(0,i);s.useEffect(()=>{e||(m(!1),v(null))},[e]);const k=s.useCallback(()=>{m(!1),v(null)},[]),S=s.useCallback(()=>{if(p){m(!1),v(null);return}const q=x?.current?.getBoundingClientRect();q&&v(q),t?.(),m(!0)},[p,t]),E=s.useCallback(()=>{if(p){m(!1),v(null);return}const q=b?.current?.getBoundingClientRect();q&&v(q),t?.(),m(!0)},[p,t]),D=sa("(max-width: 767px)"),I=s.useRef(null),[j,W]=s.useState(null),L=s.useCallback(()=>{g(q=>{const Y=!q;return W(Y?I.current?.getBoundingClientRect()??null:null),Y})},[]),M=s.useCallback(()=>{g(!1),W(null)},[]);s.useEffect(()=>{u&&(g(!1),W(null))},[u]);const z=r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"pp-bottom__meter",children:[r.jsx("span",{className:"pp-bottom__meter-label caption-1",children:h("training.meter.sentence","\uC7AC\uC0DD")}),r.jsx(Hi,{analyser:w?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:h("training.meter.sentence","\uC7AC\uC0DD")})]}),r.jsxs("div",{className:"pp-bottom__meter",children:[r.jsx("span",{className:"pp-bottom__meter-label caption-1",children:h("training.meter.noise","\uC18C\uC74C")}),r.jsx(Hi,{analyser:w?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:h("training.meter.noise","\uC18C\uC74C")})]})]});return u1(e&&p,()=>typeof document<"u"?document.querySelector(".noise-settings__header")?.closest(".tooltip-content")??null:null,()=>[x.current,b.current].map(q=>q?.querySelector("button")??null).find(q=>!!q&&q.getClientRects().length>0)??x.current?.querySelector("button")??null),r.jsxs("div",{className:"pp-bottom",children:[r.jsxs("div",{className:"pp-bottom__left",children:[e?r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"pp-bottom__settings--desktop",children:r.jsx("div",{ref:x,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:r.jsx(Ce,{htmlType:"button",size:56,type:"bar",icon:"settings",onClick:S,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:h("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:h("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),r.jsx("div",{className:"pp-bottom__settings--mobile",children:r.jsx("div",{ref:b,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:r.jsx(Ce,{htmlType:"button",size:56,type:"dot",shape:"pill",icon:"settings",onClick:E,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:h("training.settings","\uC124\uC815")})})})]}):null,e&&r.jsx("div",{ref:I,className:"pp-bottom__meter-trigger","data-tooltip-ignore":!0,children:r.jsx(Ce,{htmlType:"button",size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:L,selected:f,"aria-expanded":D?f:void 0,ariaLabel:h("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")})}),e&&f&&!D&&r.jsx("div",{className:"pp-bottom__meters",children:z})]}),e&&f&&D&&j&&r.jsx(xa,{anchorRect:j,onClose:M,ariaLabel:h("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"),children:r.jsx("div",{className:"pp-bottom__meters pp-bottom__meters--floating",children:z})}),r.jsxs("div",{className:"pp-bottom__right",children:[y&&r.jsx(Ce,{htmlType:"button",size:56,type:"bar",icon:"check",onClick:typeof o=="function"?o:a,ariaLabel:h("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),label:h("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),variant:"main",disabled:!B}),A&&r.jsx(Ce,{htmlType:"button",size:56,type:"bar",rightIcon:"chevron-right",align:"right",onClick:a,ariaLabel:h("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),label:h("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),variant:"main",disabled:!B})]}),e&&p&&r.jsx(Zd,{anchorRect:C,onClose:k,hideNoiseRows:d})]})}var OA=".ihabdevteam-core-scope .training-page-top{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-title.training-popup-title{align-items:center;background:var(--color-deepWhite);border-bottom:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;gap:var(--spacing-s);justify-content:space-between;padding:12px 16px;position:relative;width:100%;z-index:6}.ihabdevteam-core-scope .pp-title__left{align-items:center;display:flex;gap:var(--spacing-s);min-width:0}.ihabdevteam-core-scope .pp-title__text{display:flex;flex-direction:column;min-width:0}.ihabdevteam-core-scope .pp-title__depth{color:var(--color-gray)}.ihabdevteam-core-scope .pp-title__title{font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .pp-title__title--empty{color:var(--color-whiteLine)}.ihabdevteam-core-scope .pp-title__description{color:var(--color-gray);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:767px){.ihabdevteam-core-scope .pp-title.training-popup-title{gap:var(--spacing-xs);padding:10px 12px}.ihabdevteam-core-scope .pp-title__depth{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .pp-title__left{flex:1;min-width:0;overflow:hidden}}";ce(OA);function Jd({title:e,subtitle:t,desc:a,depth:o,icon:n,wrapperStyle:i,iconTooltip:l,pageIndex:c,pageCount:u,progressMax:d,progressIndex:h,onBack:p,onClose:m}){const{t:C}=_e.useTranslation(),v=sa("(max-width: 767px)"),f=Number.isInteger(h)?h:c||0,g=Number.isInteger(d)?d:u||0,x=p||m,b=Array.isArray(o)?v?o[o.length-1]:o.join(" / "):o,w=typeof e=="string"?e.trim():e,_=typeof t=="string"?t.trim():t,A=!!(w||_),y=A?w||_:C("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),B=b||(w?t:void 0),k=v&&typeof B=="string"&&(B.includes(" \xB7 ")||B.includes(" / "))?B.split(/\s[·/]\s/).pop():B,S=s.useMemo(()=>{const E=i&&typeof i=="object"?{...i}:{};return!("width"in E)&&!("height"in E)&&(E.width="40px",E.height="40px"),E},[i]);return r.jsxs("header",{className:"pp-title training-popup-title",children:[r.jsxs("div",{className:"pp-title__left",children:[x?r.jsx(Ce,{htmlType:"button",size:48,type:"dot",icon:"chevron-left",ariaLabel:C("common.back","\uB4A4\uB85C"),onClick:x,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,r.jsx("div",{children:n?r.jsx(n0,{icon:n,label:e,tooltip:l,wrapperStyle:S}):null}),r.jsxs("div",{className:"pp-title__text",children:[k?r.jsx("span",{className:"pp-title__depth caption-1",children:k}):null,r.jsx("span",{className:`pp-title__title h2${A?"":" pp-title__title--empty"}`,children:y}),a?r.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),r.jsx(Cd,{max:Math.max(0,g??0),index:Math.max(0,f??0)})]})}function g1(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function f1(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(t=>typeof t=="string"?t.split("|").map(a=>a.trim()).filter(Boolean):t||t===0?[String(t)]:[]):typeof e=="string"?e.split("|").map(t=>t.trim()).filter(Boolean):[String(e)]}const v1=(e,t)=>{if(!t)return t;const a=typeof xt?.t=="function"?xt.t(e,{defaultValue:t}):void 0;return typeof a=="string"&&a?a:t};function Qd(e,t,a){const o=e,n=o?.title||o?.name||(Array.isArray(t)?t[t.length-1]:void 0)||a||"\uD6C8\uB828",i=si().find(c=>c.key===(o?.category_0||o?.category_main_code)),l=i?.subs?.find(c=>c.key===(o?.category_1||o?.category_sub_code));return{title:n,label:o?.title||n,depth:t,icon:i?.icon,wrapperStyle:i?.color?{"--t-item-fg":i.color}:void 0,iconTooltip:[i?v1(`topic.${i.key}`,i.label):void 0,l?v1(`topic.sub.${l.key}`,l.label):void 0].filter(Boolean).join(" / ")||void 0}}function cs(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function ep(e,t,a){if(!e||typeof e!="object"||Array.isArray(e))return e;const o=e,n=typeof a=="number"&&a>0?a:Date.now();return{...o,...o.shownAt===void 0&&t?{shownAt:t}:{},...o.answeredAt===void 0?{answeredAt:new Date(n).toISOString()}:{}}}function C1(e){const t=e;return Array.isArray(t?.items)?t.items:Array.isArray(e)?e:e?[e]:[]}function x1({idPrefix:e,trainingData:t,depth:a,fallbackTitle:o="\uD6C8\uB828",pages:n=[],emptyMessage:i,buildResults:l,metaPatch:c}){const u=Qd(t,a,o),d=typeof c=="function"?c(u)||{}:c||{},h=t?.id||t?.title||n.length;return{id:`${e}:${h}`,meta:{...u,...d},pages:n,emptyMessage:i,buildResults:l}}function _1(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const t=e;return t.context||t.sentence||t.question||""||""}return""}function y1(e){if(e&&typeof e=="object"){const t=e;if(Array.isArray(t.selectedValues))return t.selectedValues;if(t.selectedValue!==void 0)return t.selectedValue;if(t.selectedIndex!==void 0)return t.selectedIndex;if(t.value!==void 0)return t.value}return e}function w1(e,t=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(t))return String(t[e]??"");if(typeof e=="string")return e}function tp(e,t){if(!(!e||typeof e!="object"))return e[`step-${t}`]}function k1(e,t,a,o){return tp(e,t*a+o)}function B1({payload:e,selected:t,choices:a=[],correctAnswers:o=[]}){if(e&&typeof e=="object"){const n=e;if(Array.isArray(n.selectedValues))return o.every(i=>n.selectedValues.includes(i))&&n.selectedValues.every(i=>o.includes(i));if(typeof n.correct=="boolean")return n.correct}if(o.length){if(typeof t=="number"&&Array.isArray(a)&&a.length)return o.some(n=>String(n)===String(a[t]));if(typeof t<"u")return o.some(n=>String(n)===String(t))}}function A1(e){return e?Array.isArray(e.items)?e.items.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const S1=s.createContext(null);function FA(){const e=s.useContext(S1);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function HA({index:e,stepIndex:t,isLast:a=!1,lockedHint:o,title:n,choices:i=[],onDone:l,onChange:c}){const{t:u}=_e.useTranslation(),d=typeof e=="number"?e:-1,h=typeof t!="number"?"disabled":d<t?"done":d===t?"active":"disabled",[p,m]=s.useState(()=>i.map(()=>null)),C=JSON.stringify(i),v=i.length;s.useEffect(()=>{m(Array.from({length:v},()=>null))},[C]);const f=s.useRef(void 0);s.useEffect(()=>{const w=f.current;typeof w=="number"&&typeof t=="number"&&typeof e=="number"&&w>=e&&t<e&&m(Array.from({length:v},()=>null)),f.current=t},[t,e,v]);const g=s.useMemo(()=>p.filter(w=>w!==null).length+1,[p]),x=s.useCallback(w=>{if(!Ko(h))return;const _=p;let A;if(_[w]!=null){const B=_[w];A=_.map(k=>k!==null&&k>=B?null:k)}else A=[..._],A[w]=g;m(A);const y={selectedOrder:A,words:i,__ts:Date.now()};try{typeof c=="function"&&c(y)}catch{}if(_[w]==null&&A.length>0&&A.every(B=>B!==null))try{typeof l=="function"&&l(y)}catch{}},[h,p,g,c,l,i]),b=n??u("training.selectInOrder","\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.");return r.jsx(wo,{index:e,stepIndex:t,isLast:a,lockedHint:o,title:b,onDone:l,children:r.jsx("div",{className:"training-step__cards",children:i.map((w,_)=>r.jsx(Ui,{item:{word:w},disabled:h==="disabled",selectable:!0,selected:p[_]!==null,orderRank:p[_],onSelect:()=>x(_),flipDelay:_*120,hideLabel:!1,hideAudio:!0},`${w}-${_}`))})})}function Ln(e){return null}Ln.__isTrainingPage=!0;function Tr(e,t){const a=FA();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof t=="number"?e===t-1:!1,onDone:o=>a.handleStepDone(o,e),onChange:o=>a.handleStepChange(o,e)}}function ap({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l}=Tr(e,t);return r.jsx(is,{...a,index:o,stepIndex:n,isLast:i,onDone:l})}function op({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(rs,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}function rp({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(ns,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}function np({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(ss,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}function ip({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(Yd,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}function VA({_stepIndex:e,_totalSteps:t,...a}){const{index:o,stepIndex:n,isLast:i,onDone:l,onChange:c}=Tr(e,t);return r.jsx(HA,{...a,index:o,stepIndex:n,isLast:i,onDone:l,onChange:c})}var WA=`.ihabdevteam-core-scope .trp-result{display:flex;flex:1;flex-direction:column;min-height:0;padding:0;position:relative}.ihabdevteam-core-scope .popup--training-result .popup-header{padding:var(--spacing-l) var(--spacing-l) 0;position:absolute;right:0;top:0;z-index:1}.ihabdevteam-core-scope .trp-result__head{padding:12px 72px 20px;position:relative;text-align:center}.ihabdevteam-core-scope .trp-result__eyebrow{align-items:center;color:var(--color-main);display:inline-flex;gap:var(--spacing-xs);letter-spacing:.22em;margin:0 0 14px;text-transform:uppercase}.ihabdevteam-core-scope .trp-result__eyebrow:after,.ihabdevteam-core-scope .trp-result__eyebrow:before{background:currentColor;content:"";height:1px;opacity:.35;width:24px}.ihabdevteam-core-scope .trp-result__title{color:var(--color-black);font-size:28px;margin:0}.ihabdevteam-core-scope .trp-result__subtitle{color:var(--color-gray);margin:10px 0 0}.ihabdevteam-core-scope .trp-score{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-m);margin:36px auto 8px}.ihabdevteam-core-scope .trp-score__figure{font-feature-settings:"tnum";align-items:baseline;display:flex;font-variant-numeric:tabular-nums;gap:var(--spacing-s)}.ihabdevteam-core-scope .trp-score__sep,.ihabdevteam-core-scope .trp-score__total{align-self:flex-end;color:var(--color-lightGray);font-size:44px;letter-spacing:-1px;padding-bottom:18px}.ihabdevteam-core-scope .trp-score__big{background:var(--color-main);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:112px;letter-spacing:-5px;line-height:.92}.ihabdevteam-core-scope .trp-result__body{padding:16px 0 0}.ihabdevteam-core-scope .result-table{width:100%}.ihabdevteam-core-scope .result-table__head{grid-gap:var(--spacing-m);border-bottom:1px solid var(--color-whiteLine);color:var(--color-lightGray);display:grid;gap:var(--spacing-m);grid-template-columns:1fr 100px;letter-spacing:.16em;padding:12px 4px 14px;text-transform:uppercase}.ihabdevteam-core-scope .result-table--answer .result-table__head,.ihabdevteam-core-scope .result-table--answer .result-table__row{grid-template-columns:1fr 200px 100px}.ihabdevteam-core-scope .result-table__head .col-right{text-align:center}.ihabdevteam-core-scope .result-table__row{grid-gap:var(--spacing-m);align-items:center;border-bottom:1px solid var(--color-whiteLine);display:grid;gap:var(--spacing-m);grid-template-columns:1fr 100px;padding:22px 4px;transition:background .18s ease}.ihabdevteam-core-scope .result-table__row:hover{background:var(--color-deepWhite)}.ihabdevteam-core-scope .result-table__row:last-child{border-bottom:0}.ihabdevteam-core-scope .trp-row__problem{align-items:baseline;display:flex;gap:10px}.ihabdevteam-core-scope .trp-row__no{font-feature-settings:"tnum";color:var(--color-lightGray);flex-shrink:0;font-variant-numeric:tabular-nums;width:32px}.ihabdevteam-core-scope .trp-row__q{color:var(--color-black);letter-spacing:-.1px}.ihabdevteam-core-scope .trp-row__judge{align-self:center;display:flex;justify-content:center}.ihabdevteam-core-scope .trp-row__answers{align-self:center;display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .trp-row__answer-line{align-items:baseline;display:flex;gap:10px}.ihabdevteam-core-scope .trp-row__answer-label{flex-shrink:0;width:32px}.ihabdevteam-core-scope .trp-row__answer-label.answer-correct{color:var(--color-lightGray)}.ihabdevteam-core-scope .trp-row__answer-label.answer-selected.is-correct{color:var(--color-main)}.ihabdevteam-core-scope .trp-row__answer-label.answer-selected.is-wrong{color:var(--color-error)}.ihabdevteam-core-scope .trp-row__answer-value{color:var(--color-black)}.ihabdevteam-core-scope .trp-row__answer-value.is-correct{color:var(--color-main)}.ihabdevteam-core-scope .trp-row__answer-value.is-wrong{color:var(--color-error)}.ihabdevteam-core-scope .popup-footer.trp-result__foot{align-items:center;background:var(--color-white);display:flex;flex-shrink:0;gap:var(--spacing-s);justify-content:center;padding:var(--spacing-l)}.ihabdevteam-core-scope .trp-actions{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .popup-footer.trp-result__foot{flex-wrap:wrap}.ihabdevteam-core-scope .trp-actions__reason{flex-basis:100%;margin:0;text-align:center}@keyframes result-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ihabdevteam-core-scope .trp-result.is-on{animation:result-rise .5s cubic-bezier(.22,.9,.3,1) both}.ihabdevteam-core-scope .trp-result.is-on .trp-score__big{animation:result-rise .7s cubic-bezier(.22,.9,.3,1) .1s both}.ihabdevteam-core-scope .trp-result.is-on .result-table__row{animation:result-rise .5s cubic-bezier(.22,.9,.3,1) both}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(2){animation-delay:.18s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(3){animation-delay:.24s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(4){animation-delay:.3s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(5){animation-delay:.36s}@media (max-width:767px){.ihabdevteam-core-scope .trp-result{padding:0}.ihabdevteam-core-scope .trp-result__head{padding:0 20px 20px}.ihabdevteam-core-scope .trp-result__body{padding:0}.ihabdevteam-core-scope .popup-footer.trp-result__foot{border-top:1px solid var(--color-whiteLine);gap:var(--spacing-xs);padding:var(--spacing-l)}.ihabdevteam-core-scope .trp-actions{display:flex;gap:var(--spacing-xs);width:100%}.ihabdevteam-core-scope .trp-actions>*{flex:1;min-width:0}.ihabdevteam-core-scope .trp-score{gap:10px;margin:20px auto 4px}.ihabdevteam-core-scope .trp-score__big{font-size:72px;letter-spacing:-3px}.ihabdevteam-core-scope .trp-score__sep,.ihabdevteam-core-scope .trp-score__total{font-size:28px;padding-bottom:10px}.ihabdevteam-core-scope .result-table__head{display:none}.ihabdevteam-core-scope .result-table__head,.ihabdevteam-core-scope .result-table__row{gap:var(--spacing-xs);grid-template-columns:1fr auto}.ihabdevteam-core-scope .result-table__row{padding:14px 4px}.ihabdevteam-core-scope .trp-row__judge{justify-content:flex-start}.ihabdevteam-core-scope .result-table--answer .result-table__row{align-items:start;gap:6px;grid-template-columns:1fr;grid-template-rows:auto auto auto;padding:14px 4px}.ihabdevteam-core-scope .result-table--answer .trp-row__judge{grid-row:1;justify-content:flex-start}.ihabdevteam-core-scope .result-table--answer .trp-row__problem{grid-row:2}.ihabdevteam-core-scope .result-table--answer .trp-row__answers{grid-row:3}
|
|
1066
1066
|
/* !important \uD544\uC694 \u2014 TrainingResultPopup.tsx\uAC00 Badge\uC5D0 minWidth={80}\uC744 \uC778\uB77C\uC778\uC73C\uB85C
|
|
1067
1067
|
\uC804\uB2EC\uD558\uBBC0\uB85C(\uCF54\uB4DC \uD655\uC778\uB428) \uBAA8\uBC14\uC77C\uC5D0\uC11C \uC790\uC5F0 \uD3ED\uC73C\uB85C \uB418\uB3CC\uB9AC\uB824\uBA74 \uD2B9\uC774\uB3C4\uB85C\uB294 \uBD80\uC871. */.ihabdevteam-core-scope .trp-row__judge .badge{min-width:0!important;min-width:auto!important}.ihabdevteam-core-scope .result-table--answer .trp-row__judge .badge{height:26px;padding:0 12px}}`;ce(WA);function sp(...e){for(const t of e)if(typeof t=="string"){const a=t.trim();if(a.length)return a}else{if(typeof t=="number"||typeof t=="boolean")return String(t);if(Array.isArray(t)&&t.length)return t.join(", ");if(t&&typeof t=="object"){const a=t,o=[a.text,a.label,a.value];for(const n of o){if(typeof n=="string"&&n.trim().length)return n.trim();if(typeof n=="number"||typeof n=="boolean")return String(n)}}}return null}function GA(e){return sp(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function E1(e){if(!e)return;if(typeof e.decision=="boolean")return e.decision;if(typeof e.correct=="boolean")return e.correct;if(typeof e.heard=="boolean")return e.heard;if(typeof e.judgement=="boolean")return e.judgement;const t=sp(e?.status,e?.result,e?.judge,e?.note);if(t){const a=t.toLowerCase();if(["ok","true","\uB9DE\uC74C","\uC815\uB2F5"].some(o=>a.includes(o)))return!0;if(["ng","false","\uD2C0\uB9BC","\uC624\uB2F5"].some(o=>a.includes(o)))return!1}}function lp(e){const{score:t,contextsLength:a,results:o=[],subtitle:n,onReplay:i,onClose:l,inline:c=!1,pending:u=!1}=e||{},{t:d}=_e.useTranslation(),h=s.useId(),p=s.useCallback(()=>!u,[u]);s.useEffect(()=>{const b=a??0;if(t!=null&&b>0&&t/b>.5){const w=window.setTimeout(()=>{window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},0);return()=>window.clearTimeout(w)}},[t,a]);const m=s.useCallback(b=>{const w=E1(b),_=sp(b?.wording,b?.label);return w===!0?{variant:"main",label:_??d("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:w===!1?{variant:"danger",label:_??d("training.result.notHeard","\uBABB \uB4E4\uC5C8\uC5B4\uC694")}:{variant:"disabled",label:_??d("training.result.notJudged","\uBBF8\uD310\uC815")}},[d]),C=a??0,v=t??0,f=s.useMemo(()=>Array.isArray(o)?o:[],[o]),g=s.useMemo(()=>f.map(b=>{const w=b??{},_=GA(w)||d("training.result.noContent","(\uB0B4\uC6A9\uC5C6\uC74C)"),{variant:A,label:y}=m(w),B=Array.isArray(w.corrects)?w.corrects:[],k=B.length?B.join(", "):w.answer!=null&&w.answer!==""?String(w.answer):null,S=typeof w.selectedText=="string"?w.selectedText:null,E=E1(w)===!0;return{problem:_,variant:A,label:y,answer:k,selectedText:S,isCorrect:E}}),[f,m,d]),x=s.useMemo(()=>g.some(b=>b.answer!==null||b.selectedText!==null),[g]);return r.jsx(ao,{onClose:l,closeOnBackdrop:!1,inline:c,ariaLabel:d("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4."),className:"popup--training-result",beforeClose:p,footerClassName:"trp-result__foot",footer:({animateThen:b,closeWithAnimation:w})=>r.jsxs(r.Fragment,{children:[u&&r.jsx("p",{id:h,className:"trp-actions__reason caption-1",role:"status",children:d("training.result.pendingDone","\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.")}),r.jsxs("div",{className:"trp-actions",children:[r.jsx(Ce,{htmlType:"button",size:56,type:"bar",label:d("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>b(i)}),r.jsx(Ce,{htmlType:"button",size:56,type:"bar",label:d("training.result.done","\uC644\uB8CC"),variant:"main",onClick:w,disabled:u,onDisabledClick:u?()=>{}:void 0,"aria-describedby":u?h:void 0})]})]}),children:()=>r.jsxs("div",{className:"trp-result is-on",children:[r.jsxs("header",{className:"trp-result__head",children:[r.jsx("p",{className:"trp-result__eyebrow caption-1",children:d("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),r.jsx("h1",{className:"trp-result__title h2",children:d("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),n&&r.jsx("p",{className:"trp-result__subtitle body-3",children:n}),r.jsx("div",{className:"trp-score",children:r.jsxs("div",{className:"trp-score__figure","aria-label":d("training.result.scoreAria",{correct:v,total:C}),children:[r.jsx("span",{className:"trp-score__big",children:v}),r.jsx("span",{className:"trp-score__sep",children:"/"}),r.jsx("span",{className:"trp-score__total",children:C})]})})]}),g.length>0&&r.jsx("section",{className:"trp-result__body",children:r.jsxs("div",{className:`result-table${x?" result-table--answer":""}`,role:"table","aria-label":d("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[r.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[r.jsx("span",{role:"columnheader",children:d("common.col.problem","\uBB38\uC81C")}),x&&r.jsx("span",{role:"columnheader",children:d("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),r.jsx("span",{className:"col-right",role:"columnheader",children:d("training.result.colJudge","\uD310\uC815")})]}),g.map((b,w)=>r.jsxs("div",{className:"result-table__row",role:"row",children:[r.jsxs("div",{className:"trp-row__problem",children:[r.jsx("span",{className:"trp-row__no caption-1",children:String(w+1).padStart(2,"0")}),r.jsx("div",{className:"trp-row__q body-2",children:b.problem})]}),x&&r.jsxs("div",{className:"trp-row__answers",children:[b.answer!==null&&r.jsxs("div",{className:"trp-row__answer-line",children:[r.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:d("training.result.colAnswer","\uC815\uB2F5")}),r.jsx("span",{className:"trp-row__answer-value body-2",children:b.answer})]}),r.jsxs("div",{className:"trp-row__answer-line",children:[r.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${b.isCorrect?"is-correct":"is-wrong"}`,children:d("training.result.colSelected","\uC120\uD0DD")}),r.jsx("span",{className:`trp-row__answer-value body-2 ${b.isCorrect?"is-correct":"is-wrong"}`,children:b.selectedText??"\u2014"})]})]}),r.jsx("div",{className:"trp-row__judge",children:r.jsx(St,{variant:b.variant,label:b.label,fill:"soft",minWidth:80})})]},w))]})})]})})}const cp=new Set;function UA(e){s.useEffect(()=>{if(!e||cp.has(e))return;cp.add(e);const t=()=>typeof document>"u"||document.visibilityState!=="hidden";let a=null,o=null,n=0,i=0;const l=()=>{const h=Date.now();a==null&&(a=h),o==null&&(o=h)},c=()=>{o!=null&&(n+=Date.now()-o,o=null)};t()&&l();const u=()=>{if(c(),a==null||n-i<1e3||i===0&&n<5e3)return;const h=a+i;i=n,Gl({trainingType:e,startedAt:new Date(h).toISOString(),endedAt:new Date(a+n).toISOString()})},d=()=>{t()?l():u()};return typeof document<"u"&&document.addEventListener("visibilitychange",d),typeof window<"u"&&window.addEventListener("pagehide",u),()=>{typeof document<"u"&&document.removeEventListener("visibilitychange",d),typeof window<"u"&&window.removeEventListener("pagehide",u),u(),cp.delete(e)}},[e])}function us(e,t){return e&&e.id||`page-${t??0}`}function ds(e,t){return e&&e.key||`step-${t??0}`}function ps(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function qA(e,t){return typeof e?.props=="function"?e.props(t)||{}:e?.props||{}}const YA=300,KA=()=>{try{return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}catch{return!1}},oo=Object.freeze({}),D1=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]);function up(e){const t=e,a=t?.results||t?.answers||[],o=Array.isArray(a)&&a.length>0?a.length:null,n=Array.isArray(a)?a.filter(i=>i?.correct===!0||i?.isCorrect===!0||i?.score===1||i?.heard===!0||i?.judgement===!0).length:null;return{results:a,correct:o!=null?n:null,total:o}}const ZA=e=>r.jsx(lp,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose,pending:e.pending});function XA(e){const{scenario:t,title:a,subTitle:o,depth:n,icon:i,wrapperStyle:l,iconTooltip:c,pageIndex:u,pageCount:d,stepIndex:h,stepCount:p,onBack:m,onComplete:C,onRoundFinished:v,onNext:f,onSettings:g,useNoiseSetting:x=!0,children:b,ariaLabel:w,label:_,buildResults:A,onResult:y,typeKey:B,entryPoint:k,dailyTotal:S,itemRef:E,renderResultPopup:D,noiseOverride:I,hideNoiseRows:j=!1}=e;UA(B&&!D1.has(B)?B:"");const W=s.useRef(0);s.useEffect(()=>{W.current=Date.now()},[]);const{t:L}=_e.useTranslation(),M=y,z=!!t,q=t?.id||null,Y=t?.meta||{},P=Array.isArray(t?.pages)?t.pages:[],V=Array.isArray(b)||s.isValidElement(b)&&typeof b!="function"?s.Children.toArray(b).filter(s.isValidElement):[],$=V.length>0,U=de=>de===Ln||de?.__isTrainingPage===!0,T=$&&V.some(de=>U(de.type)),F=T?V.filter(de=>U(de.type)).map((de,Be)=>{const Me=de.props||{};return{id:`children-page-${Be}`,steps:s.Children.toArray(Me.children).filter(s.isValidElement),pageTop:Me.pageTop||Me.top||null,pageBottom:Me.pageBottom||Me.bottom||null}}):[{id:"children-page-0",steps:V}],N=$&&!z&&typeof b!="function",O=N?Math.max(1,F.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 de=document.body;return de.dataset.ihabTrainingPopupCount=String(Number(de.dataset.ihabTrainingPopupCount||"0")+1),de.classList.add("ihab-training-popup-open"),()=>{const Be=Number(de.dataset.ihabTrainingPopupCount||"1")-1;Be>0?de.dataset.ihabTrainingPopupCount=String(Be):(delete de.dataset.ihabTrainingPopupCount,de.classList.remove("ihab-training-popup-open"))}},[]),s.useEffect(()=>{if(!(typeof document>"u"||!document.body))return F6()},[]);const[H,Z]=s.useState({...Dr,enabled:!1}),te=s.useRef(H);s.useEffect(()=>{te.current=H},[H]);const se=s.useRef(I),be=s.useRef(!1),X=s.useRef(null);s.useEffect(()=>{let de=!1;const Be=Me=>{if(de)return;be.current=!0;const Qe=Me?Er({...Dr,enabled:!1},Me):{...Dr},Fe=X.current;X.current=null;const Xe=Fe?Er(Qe,Fe):Qe;te.current=Xe,Z(Xe),Fe&&!se.current&&ei(Xe),dr(Xe);const Q=se.current;if(Q){const fe=typeof Q=="function"?Q(Xe):Q,ne=Er(Xe,fe);te.current=ne,Z(ne),dr(ne)}};return Kl().then(Be),()=>{de=!0}},[]);const[re,Ae]=s.useState(null),[K,ie]=s.useState(null),ue=s.useCallback((de,Be)=>{de==="main"?Ae(Be):ie(Be)},[]),je=s.useRef(null),ye=s.useRef(null),le=s.useCallback(()=>{ye.current!==null&&(clearTimeout(ye.current),ye.current=null);const de=je.current;je.current=null,de&&ei(de)},[]);s.useEffect(()=>{if(typeof window>"u")return;const de=()=>{document.visibilityState==="hidden"&&le()};return window.addEventListener("pagehide",le),document.addEventListener("visibilitychange",de),()=>{window.removeEventListener("pagehide",le),document.removeEventListener("visibilitychange",de),le()}},[le]);const he=s.useCallback(de=>{const Be=Er(te.current,de);if(te.current=Be,Z(Be),!be.current){X.current={...X.current??{},...de},dr(Be);return}se.current||(je.current=Be,ye.current!==null&&clearTimeout(ye.current),ye.current=setTimeout(le,YA)),dr(Be)},[le]),ve=H.mainSpeed,G=H.mainVolume,oe=s.useCallback(de=>he({mainSpeed:de}),[he]),me=s.useCallback(de=>he({mainVolume:de}),[he]),Te=s.useMemo(()=>({settings:H,setSettings:he,registerAnalyser:ue,mainAnalyser:re,noiseAnalyser:K,playbackRate:ve,setPlaybackRate:oe,mainVolume:G,setMainVolume:me}),[H,he,ue,re,K,ve,oe,G,me]),ke=s.useRef(null),[Pe,He]=s.useState(0),lt=s.useRef([]),[rt,at]=s.useState("center"),[ht,De]=s.useState(!1),Ue=s.useRef(!1),Se=s.useRef(null),Ye=s.useCallback(de=>{Ue.current||(Ue.current=!0,De(!0),Se.current=setTimeout(()=>{try{de()}catch{Ue.current=!1,De(!1)}},KA()?0:NA))},[]);s.useEffect(()=>()=>{Se.current&&clearTimeout(Se.current)},[]);const ee=s.useRef(m);s.useEffect(()=>{ee.current=m}),s.useEffect(()=>{const de=ke.current,Be=document.activeElement;if(Ac(de,Be),de){const Me=Array.from(de.querySelectorAll(Oa)).filter(Qe=>!Qe.closest('[aria-hidden="true"]'))[0];if(Me)try{Me.focus()}catch{}}return()=>{const Me=document.activeElement;if(!Me||Me===document.body||de&&de.contains(Me))try{Sc(Be)?.focus?.()}catch{}}},[]),s.useEffect(()=>Io(()=>Ye(()=>{const de=ee.current;typeof de=="function"&&de()})),[Ye]),kc(ke,!0);const[pe,Ee]=s.useState(!1),Re=s.useRef(!1),[Ve,We]=s.useState(null),ct=s.useRef(0),mt=s.useRef(0),gt=()=>{ct.current+=1,mt.current+=1,We(null)},[Et,ft]=s.useState(""),[et,Ie]=s.useState(()=>ps()),Oe=s.useRef(typeof u=="number"?u:null);s.useEffect(()=>{!z&&!N||(Ie(ps()),gt())},[z,q,N]),s.useEffect(()=>{N&&Ie(de=>{const Be=Math.max(0,Math.min(de.pageIndex,Math.max(0,O-1)));return Be!==de.pageIndex?{...de,pageIndex:Be,stepIndex:0}:de})},[N,O]);const bt=N?Math.max(0,Math.min(et.pageIndex,O-1)):0,it=N?F[bt]:null,wt=N&&it&&Array.isArray(it.steps)?it.steps:[],Ze=z?et.pageIndex:N?bt:typeof u=="number"?u:0,kt=z?P[Math.max(0,Math.min(et.pageIndex,Math.max(0,P.length-1)))]:null,Lt=z&&kt&&Array.isArray(kt.steps)?kt.steps:[],qe=z?Lt.length:N?wt.length:typeof p=="number"?p:0,tt=z||N?Math.max(0,Math.min(et.stepIndex,Math.max(0,qe))):typeof h=="number"?h:0,Dt=z?P.length:N?O:typeof d=="number"?d:0;s.useEffect(()=>{if(!z&&!N)return;const de=z?us(kt,Ze):it?.id||`children-page-${Ze??0}`,Be=new Date().toISOString();for(let Me=0;Me<=tt;Me+=1){const Qe=z?ds(Lt[Me],Me):`step-${Me}`,Fe=ta(de,Qe);Nt.current.has(Fe)||Nt.current.set(Fe,Be)}},[z,N,Ze,tt,it?.id]),s.useLayoutEffect(()=>{const de=Oe.current;if(typeof Ze=="number"&&de!==null&&Ze!==de&&Ze>de)try{ft(L("training.problemNotice",{n:Ze+1}))}catch{}Oe.current=typeof Ze=="number"?Ze:Oe.current},[Ze,u,L]),s.useLayoutEffect(()=>{const de=ke.current;if(!de)return;const Be=()=>de.querySelector(".page-popup__scroll");let Me=null,Qe=null,Fe=null;const Xe=$e=>{const Ge=Be();if(!Ge)return;const ut=Ge.scrollHeight<=Ge.clientHeight;if(at(ut?"center":"top"),$e&&!Re.current){Re.current=!0;try{Ee(!0)}catch{}try{ne.disconnect()}catch{}}},Q=()=>{Me!==null&&cancelAnimationFrame(Me),Me=requestAnimationFrame(()=>{Qe!==null&&clearTimeout(Qe),Qe=setTimeout(()=>Xe(!0),60)})},fe=()=>{Fe!==null&&cancelAnimationFrame(Fe),Fe=requestAnimationFrame(()=>Xe(!1))};Q(),window.addEventListener("resize",fe);const ne=new MutationObserver(Q);ne.observe(de,{childList:!0,subtree:!0,attributes:!0});const we=setTimeout(()=>{Re.current||Xe(!0)},400);return()=>{window.removeEventListener("resize",fe),Me!==null&&cancelAnimationFrame(Me),Qe!==null&&clearTimeout(Qe),Fe!==null&&cancelAnimationFrame(Fe),clearTimeout(we);try{ne.disconnect()}catch{}}},[ke]);const ca=s.useCallback(de=>{ke.current&&(ke.current._childOnNext=de)},[]),st=s.useCallback(de=>{ke.current&&(ke.current._childOnResult=de)},[]),Nt=s.useRef(new Map),ta=(de,Be)=>`${de}\0${Be}`,vt=s.useCallback((de,Be,Me)=>{Ie(Qe=>{const Fe=Qe.answersByPage[de]||{},Xe=Fe[Be],Q=cs(Me),fe=cs(Xe);if(Xe&&fe>Q)return Qe;const ne=ep(Me,Nt.current.get(ta(de,Be)),Q);return{...Qe,answersByPage:{...Qe.answersByPage,[de]:{...Fe,[Be]:ne}}}})},[Ie]),ya=s.useCallback((de,Be,Me)=>{const Qe=us(kt,Ze),Fe=ds(de,Be);vt(Qe,Fe,Me)},[kt,Ze,vt]),ba=s.useCallback((de,Be,Me)=>{const Qe=us(kt,Ze),Fe=ds(de,Be);vt(Qe,Fe,Me),!Me?.allowChange&&de?.autoAdvance!==!1&&Ie(Xe=>({...Xe,stepIndex:Math.max(Xe.stepIndex,Be+1)}))},[kt,Ze,vt,Ie]),ja=s.useCallback((de,Be)=>{const Me=it?.id||`children-page-${Ze??0}`,Qe=typeof Be=="number"?Be:tt??0,Fe=`step-${Qe}`;vt(Me,Fe,de),de?.allowChange||Ie(Xe=>({...Xe,stepIndex:Math.max(Xe.stepIndex,Qe+1)}))},[it,Ze,tt,vt,Ie]),La=s.useCallback((de,Be)=>{const Me=it?.id||`children-page-${Ze??0}`,Qe=`step-${typeof Be=="number"?Be:tt??0}`;vt(Me,Qe,de)},[it,Ze,tt,vt]),no=N?{currentPageIndex:Ze??0,currentStepIndex:tt??0,totalStepsInPage:wt.length,handleStepDone:ja,handleStepChange:La}:null,ko=async()=>{const de=typeof t?.buildResults=="function"?await Promise.resolve(t.buildResults({scenario:t,pages:P,flowState:et,answersByPage:et.answersByPage})):null;return typeof M=="function"&&await Promise.resolve(M(de))||de},Bo=async()=>{const de=it?.id||`children-page-${et.pageIndex}`,Be=et.answersByPage[de]||{},Me=T?(()=>{const Xe={};let Q=0;return F.forEach(fe=>{const ne=et.answersByPage[fe.id]||{},we=Array.isArray(fe.steps)?fe.steps.length:0;for(let $e=0;$e<we;$e+=1){const Ge=ne[`step-${$e}`];typeof Ge<"u"&&(Xe[`step-${Q+$e}`]=Ge)}Q+=we}),Xe})():Be;if(typeof A=="function"){const Xe=await Promise.resolve(A(Me,{pageAnswers:Be,answersByPage:et.answersByPage,pages:F,currentPageId:de}));return typeof M=="function"&&await Promise.resolve(M(Xe))||Xe}const Qe=Object.entries(Be).map(([Xe,Q],fe)=>({index:fe,key:Xe,payload:Q})),Fe={results:Qe,answers:Qe,score:0};return typeof M=="function"&&await Promise.resolve(M(Fe))||Fe},Wt=()=>{const de=++ct.current,Be=()=>de!==ct.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(z){const Fe=ko();We(oo);const Xe=Fe;Promise.resolve(Xe).then(Q=>{Be()||We(Q||{isEmpty:!0})}).catch(Q=>{!Be()&&We({isEmpty:!0})});return}if(N){const Fe=Bo();We(oo);const Xe=Fe;Promise.resolve(Xe).then(Q=>{Be()||We(Q||{isEmpty:!0})}).catch(Q=>{!Be()&&We({isEmpty:!0})});return}const Me=ke.current&&ke.current._childOnResult,Qe=Fe=>{try{return Fe?Fe():void 0}catch{return}};if(typeof Me=="function"){const Fe=Qe(Me);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:va&&va.tagName.toUpperCase()==="SCRIPT"&&va.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}Fe&&typeof Fe.then!="function"?We(Fe):We(Fe&&typeof Fe.then=="function"?oo:{});const Xe=()=>{Be()||We(Q=>Q===oo?{}:Q)};Promise.resolve(Fe).then(Q=>{Q&&!Be()?We(Q):Xe()}).catch(Q=>{Xe()});return}if(typeof M=="function"){const Fe=Qe(M);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:va&&va.tagName.toUpperCase()==="SCRIPT"&&va.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}Fe&&typeof Fe.then!="function"?We(Fe):We(Fe&&typeof Fe.then=="function"?oo:{});const Xe=()=>{Be()||We(Q=>Q===oo?{}:Q)};Promise.resolve(Fe).then(Q=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:va&&va.tagName.toUpperCase()==="SCRIPT"&&va.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}Q&&!Be()?We(Q):Xe()}).catch(Q=>{console.error("viewResults external handler failed",Q),Xe()});return}},qa=()=>{if(z){if(typeof Ze=="number"&&typeof Dt=="number"&&Ze<Dt-1){Ie(Be=>({...Be,pageIndex:Be.pageIndex+1,stepIndex:0}));return}return Wt()}if(N){const Be=wt.length;if(typeof tt=="number"&&tt<Be-1){Ie(Me=>({...Me,stepIndex:Me.stepIndex+1}));return}if(typeof Ze=="number"&&typeof Dt=="number"&&Ze<Dt-1){Ie(Me=>({...Me,pageIndex:Me.pageIndex+1,stepIndex:0}));return}return Wt()}if(typeof f=="function"){try{f()}catch{}return}const de=ke.current&&ke.current._childOnNext;if(typeof de=="function"){try{de()}catch{}return}},Gt=z?Y.title||Y.label||w||L("common.popup","\uD31D\uC5C5"):a||_||(Array.isArray(n)?n[n.length-1]:void 0)||w||L("common.popup","\uD31D\uC5C5"),Xt=w||Gt,io=z?Y.title??Y.label??Gt:a??_??Gt,ga=(de,Be)=>{const Me=us(kt,Ze),Qe=ds(de,Be),Fe=et.answersByPage[Me]?.[Qe],Xe=qA(de,{page:kt,pageIndex:Ze,step:de,stepIndex:Be,storedPayload:Fe,answersByPage:et.answersByPage,flowState:et}),Q={key:Qe,index:Be,stepIndex:tt,isLast:Be===Lt.length-1};switch(de?.type){case"listen":return r.jsx(is,{...Q,...Xe,onDone:fe=>ba(de,Be,fe)});case"confirm":return r.jsx(rs,{...Q,...Xe,onDone:fe=>ba(de,Be,fe),onChange:fe=>ya(de,Be,fe)});case"confirmWithText":return r.jsx(ns,{...Q,...Xe,onDone:fe=>ba(de,Be,fe),onChange:fe=>ya(de,Be,fe)});case"orderList":return r.jsx(ss,{...Q,...Xe,onDone:fe=>ba(de,Be,fe),onChange:fe=>ya(de,Be,fe)});default:return null}},Ya=s.useRef(void 0);s.useEffect(()=>{const de=Ya.current;if(Ya.current=Ze,de===void 0||de===Ze||!Wi())return;const Be=ke.current;if(!Be)return;const Me=document.activeElement;if(!(!Me||Me===document.body||!Be.contains(Me)||Me.disabled===!0))return;const Qe=Be.querySelector(`.training-steps ${Oa.split(", ").join(", .training-steps ")}`)??Array.from(Be.querySelectorAll(Oa)).find(Fe=>!Fe.closest('[aria-hidden="true"]'));try{Qe?.focus()}catch{}},[Ze]);const Ao=z?P.length>0?r.jsx("div",{className:"training-steps",children:Lt.map((de,Be)=>ga(de,Be))},`replay-${Pe}`):r.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:r.jsx("div",{className:"pp-empty",children:t?.emptyMessage||L("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,Ka=N?r.jsxs(S1.Provider,{value:no,children:[it?.pageTop?r.jsx("div",{className:"training-page-top",children:it.pageTop}):null,r.jsx("div",{className:"training-steps",children:wt.map((de,Be)=>{const Me=de;return s.cloneElement(Me,{...Me.props,_stepIndex:Be,_totalSteps:wt.length,_stepKey:`step-${Be}`,_pageIndex:Ze})})},`replay-${Pe}`),it?.pageBottom?r.jsx("div",{className:"training-page-bottom",children:it.pageBottom}):null]}):null,Jt=s.useRef(-1),Ot=s.useCallback(()=>{if(!B)return;const de=Ve,{results:Be,correct:Me,total:Qe}=up(Ve),Fe={correct:Me,total:Qe,attempt:lt.current.length+1,previousAttempts:[...lt.current]};if(Jt.current===mt.current)return Fe;Jt.current=mt.current,Ul({items:Yl(Be),category:D1.has(B)?"sentence":"word",trainingType:B,entryPoint:k??"sentence",itemRef:E??null,correct:Me,total:Qe,score:typeof de?.score=="number"?de.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-W.current)/1e3)),dailyTotal:S??null});try{v?.(Fe)}catch{}return Fe},[B,k,S,E,Ve,v]);s.useEffect(()=>{!Ve||Ve===oo||Ve?.isEmpty||(up(Ve).total??0)>0&&Ot()},[Ve,Ot]);const Qt=s.useCallback(()=>{const de=Ot();gt(),Ye(()=>{typeof C=="function"&&C(de),typeof m=="function"&&m()})},[C,m,Ot,We,Ye]),Ma=s.useCallback(()=>ft(""),[ft]),Ut=s.useCallback(()=>{Ye(()=>{typeof m=="function"&&m()})},[m,Ye]),fa=r.jsxs("div",{className:`page-popup${ht?" page-popup--closing":""}`,role:"dialog","aria-modal":"true","aria-label":Xt,children:[r.jsxs("div",{ref:ke,className:`page-popup__panel ${pe?"":"page-popup__panel--measuring"} ${rt==="center"?"page-popup__panel--center":rt==="top"?"page-popup__panel--top":""}`,children:[r.jsx(Jd,{title:io,subtitle:z?Y.subtitle||Y.label:Array.isArray(n)?n.join(" / "):void 0,desc:z?void 0:o,depth:z?Y.depth:n,icon:z?Y.icon:i,wrapperStyle:z?Y.wrapperStyle:l,iconTooltip:z?Y.iconTooltip:c,progressMax:Dt,progressIndex:Ze,pageIndex:Ze,pageCount:Dt,onBack:Ut,onClose:Ut}),r.jsx("div",{className:"page-popup__scroll",children:r.jsx("div",{className:`page-popup__content ${rt==="center"?"page-popup__content--center":"page-popup__content--top"}${e.contentFull?" page-popup__content--full":""}`,children:N?Ka:z?Ao:typeof b=="function"?b({registerOnNext:ca,registerOnResult:st,panelRef:ke,setResultOverlay:We}):b})}),r.jsx(Xd,{onSettings:g,onNext:qa,onResult:Wt,useNoiseSettingBtn:!!(z?Y.useNoiseSetting??!0:x),stepIndex:tt,stepCount:qe,pageIndex:Ze,pageCount:Dt,resultOpen:!!(Ve&&!Ve.isEmpty),hideNoiseRows:j})]}),Ve&&!Ve.isEmpty&&(D??ZA)({score:Ve.score,results:Ve.results||Ve.answers||[],contextsLength:Ve.results?Ve.results.length:Ve.answers?Ve.answers.length:0,onReplay:()=>{if(W.current=Date.now(),Ve!==oo){const{correct:de,total:Be}=up(Ve);lt.current.push({correct:de,total:Be})}if(gt(),He(de=>de+1),z){if(Ie(ps()),typeof t?.onReplay=="function")try{t.onReplay()}catch{}return}if(N){Ie(ps());return}try{const de=ke.current&&ke.current._childOnResult;typeof de=="function"&&de({replay:!0})}catch{}},onClose:Qt,pending:Ve===oo}),Ve?.isEmpty&&r.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-modal":"true","aria-label":L("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:r.jsxs("div",{className:"page-popup__panel page-popup__panel--center",children:[r.jsx("div",{className:"page-popup__scroll",children:r.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:r.jsx("div",{className:"page-popup__empty",children:L("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),r.jsx("div",{className:"page-popup__bottom",children:r.jsx(Ce,{htmlType:"button",variant:"main",size:48,onClick:Qt,label:L("training.result.done","\uC644\uB8CC")})})]})}),r.jsx(Wo,{message:Et,position:"top",onClose:Ma})]}),$t=r.jsx(ts.Provider,{value:Te,children:fa});return typeof document<"u"&&document.body?ua.createPortal($t,document.body):$t}const ro=XA;ro.Page=Ln,ro.ListenStep=ap,ro.ConfirmStep=op,ro.ConfirmWithTextStep=rp,ro.OrderListStep=np,ro.CardStep=ip,ro.CardOrderStep=VA;var JA=".ihabdevteam-core-scope .word-search-result-block__actions{display:flex;gap:var(--spacing-xs);justify-content:center}.ihabdevteam-core-scope .word-search-result-block__toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:flex-end}.ihabdevteam-core-scope .word-search-result-block__inner{background:var(--color-white);border:1px solid var(--color-darkWhite);border-radius:var(--radius-m);display:flex;flex-direction:column;gap:var(--spacing-m);padding:var(--spacing-l)}.ihabdevteam-core-scope .word-search-result-block__head{align-items:center;-moz-column-gap:var(--spacing-xs);column-gap:var(--spacing-xs);display:flex;flex-wrap:wrap;row-gap:0}.ihabdevteam-core-scope .word-search-result-block__head-main{align-items:center;display:flex;gap:var(--spacing-xs);min-width:0}.ihabdevteam-core-scope .word-search-result-block__head-icon{color:var(--color-gray);flex-shrink:0}.ihabdevteam-core-scope .word-search-result-block__title{min-width:0;text-align:left}.ihabdevteam-core-scope .word-search-result-block__head-actions{align-items:center;display:flex;gap:var(--spacing-xs);margin-left:auto}.ihabdevteam-core-scope .word-search-result-block__head-disc{color:var(--color-gray);flex:0 0 100%;margin:0;min-width:0}.ihabdevteam-core-scope .word-search-result-block__inner:has(+.word-search-result-block__actions:not(:empty)){margin-bottom:var(--spacing-content)}.ihabdevteam-core-scope .word-search-result-block__items{grid-gap:var(--spacing-xs);display:grid;gap:var(--spacing-xs);grid-template-columns:repeat(auto-fill,200px);justify-content:center}.ihabdevteam-core-scope .word-search-result-block__items .button__label-text,.ihabdevteam-core-scope .word-search-result-block__items .button__sub-label-text{white-space:nowrap;word-break:keep-all}.ihabdevteam-core-scope .word-search-result-block__items .button__label:has(.button__label-text:nth-child(4)){gap:4px 10px;grid-auto-columns:auto;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr))}.ihabdevteam-core-scope .word-search-result-block__items .button-word:has(.button__label-text:nth-child(4)){height:auto;min-height:72px;padding-bottom:8px;padding-top:8px}@media (max-width:767px){.ihabdevteam-core-scope .word-search-result-block__items{grid-template-columns:repeat(2,1fr);justify-content:normal}.ihabdevteam-core-scope .word-search-result-block__items .button{min-width:0!important;width:100%}}.ihabdevteam-core-scope .word-search-result-block__empty{color:var(--color-gray);margin:0;padding:24px 0;text-align:center}.ihabdevteam-core-scope .word-search-result-block__group{display:flex;flex-direction:column;gap:10px}.ihabdevteam-core-scope .word-search-result-block__group+.word-search-result-block__group{border-top:1px solid var(--color-darkWhite);margin-top:var(--spacing-l);padding-top:var(--spacing-l)}.ihabdevteam-core-scope .word-search-result-block__pagination-bottom{display:flex;justify-content:center;margin-top:16px}.ihabdevteam-core-scope .word-search-result-block__empty-wrap{align-items:center;display:flex;flex-direction:column;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .word-search-result-block__empty-hint{color:var(--color-sub);line-height:1.6;max-width:34em;text-align:center}";ce(JA);var QA='.ihabdevteam-core-scope .tooltip-word-image{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-dropdown);padding:var(--spacing-s);position:fixed;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-word-image__cells{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .tooltip-word-image__cell{background:#f5f5f5;background:var(--color-white,#f5f5f5);border-radius:var(--radius-card);flex-shrink:0;height:120px;overflow:hidden;position:relative;width:120px}.ihabdevteam-core-scope .tooltip-word-image__cell img{display:block;height:100%;-o-object-fit:cover;object-fit:cover;transition:opacity .2s;width:100%}.ihabdevteam-core-scope .tooltip-word-image__spinner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.ihabdevteam-core-scope .tooltip-word-image__spinner:after{animation:tooltip-spin .7s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top:3px solid var(--color-white,#e0e0e0);border:3px solid var(--color-white,#e0e0e0);border-top-color:var(--color-main,#4f6ef7);content:"";height:24px;width:24px}@keyframes tooltip-spin{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .tooltip-word-image__cell--text{align-items:center;color:var(--color-black);display:flex;font-weight:700;justify-content:center}';ce(QA);function eS({label:e,homonum:t}){const a=co()?.(e,t)??"",{imgRef:o,loading:n,hasImage:i,onLoad:l,onError:c}=wd(a);return i?r.jsxs("div",{className:"tooltip-word-image__cell",children:[n&&r.jsx("div",{className:"tooltip-word-image__spinner"}),r.jsx("img",{ref:o,src:a,alt:e,draggable:!1,style:{opacity:n?0:1},onLoad:l,onError:c})]}):r.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:r.jsx("span",{children:e})})}function dp({words:e,anchorRect:t}){const a=s.useRef(null),[o,n]=s.useState(null);return s.useLayoutEffect(()=>{if(!t||!a.current)return;const{offsetWidth:i,offsetHeight:l}=a.current,c=window.innerWidth;let u=t.left+t.width/2-i/2,d=t.top-l-8;d<8&&(d=t.bottom+8),u=Math.max(8,Math.min(u,c-i-8)),n({left:u,top:d})},[t]),!t||e.length===0?null:ua.createPortal(r.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:o?"visible":"hidden",left:o?.left??0,top:o?.top??-9999},children:r.jsx("div",{className:"tooltip-word-image__cells",children:e.map(i=>r.jsx(eS,{label:i.label,homonum:i.homonum},`${i.label}_${i.homonum??1}`))})}),document.body)}function N1({titleIcon:e,resultCount:t,resultUnit:a,searchQuery:o,items:n,groups:i,selected:l=[],onSelect:c,maxSelect:u,onClearSelection:d,onPrint:h,onPrintEmpty:p,className:m,emptyHint:C,sectionType:v="page",disc:f}){const{t:g,i18n:x}=_e.useTranslation(),b=x.language?.startsWith("ko")??!1,{anchorRect:w,openAt:_,close:A}=Ho(),[y,B]=s.useState(null),k=s.useCallback(()=>{A(),B(null)},[A]);Lu(k,!!y);const S=(o??"").trim(),E=/^[^,[\]\s]+$/.test(S)?S:"",D=E.length>0,I=o===void 0&&t===void 0,j=D?"match":I?"original":"ganada",[W,L]=s.useState(()=>j),[M,z]=s.useState("50"),[q,Y]=s.useState(1),[P,V]=s.useState(D);P!==D&&(V(D),L(j));const $=W==="match"&&!D||W==="original"&&!I?j:W,U=s.useMemo(()=>[...D?[{value:"match",label:g("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],...I?[{value:"original",label:g("wordSearch.sort.original",{defaultValue:"\uBC1B\uC740 \uC21C\uC11C"})}]:[],{value:"ganada",label:g("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:g("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:g("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:g("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:g("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:g("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[g,D,I]),T=s.useMemo(()=>["10","25","50","100"].map(le=>({value:le,label:g("wordSearch.pageSize",{count:Number(le),defaultValue:`${le}\uAC1C\uC529 \uBCF4\uAE30`})})),[g]),F=le=>le.words?.[0],N=s.useMemo(()=>{const le=[...E].length,he=Qs(E),ve=new Map;return G=>{let oe=ve.get(G);return oe===void 0&&(oe=he((G.words?.[0]?.label??"").slice(0,le))?0:1,ve.set(G,oe)),oe}},[E]),O=s.useCallback((le,he)=>{const ve=me=>F(me)?.label??"",G=me=>F(me)?.syllables??[...ve(me)].length,oe=me=>(me.words??[]).reduce((Te,ke)=>{const Pe=parseInt(ke.grade??"",10);return Number.isFinite(Pe)&&Pe<Te?Pe:Te},999);switch($){case"match":return N(le)-N(he)||ma(ve(le),ve(he));case"ganada":return ma(ve(le),ve(he));case"ganada_desc":return ma(ve(he),ve(le));case"syllable":return G(le)-G(he)||ma(ve(le),ve(he));case"syllable_desc":return G(he)-G(le)||ma(ve(le),ve(he));case"grade":return oe(le)-oe(he)||ma(ve(le),ve(he));case"grade_desc":return oe(he)-oe(le)||ma(ve(le),ve(he));default:return 0}},[$,N]),H=s.useMemo(()=>n.slice().sort(O),[n,O]),Z=Number(M)||10,te=s.useMemo(()=>(i??[]).flatMap(le=>le.items.slice().sort(O).map(he=>({item:he,label:le.label}))),[i,O]),se=i?te.length:H.length,be=Math.max(1,Math.ceil(se/Z)),X=Math.min(q,be),re=s.useMemo(()=>H.slice((X-1)*Z,X*Z),[H,X,Z]),Ae=s.useMemo(()=>{if(!i)return null;const le=te.slice((X-1)*Z,X*Z),he=new Map;for(const{item:ve,label:G}of le)he.has(G)||he.set(G,[]),he.get(G).push(ve);return[...he.entries()].map(([ve,G])=>({label:ve,items:G}))},[i,te,X,Z]);s.useEffect(()=>{Y(1)},[W,M,se,o]);const K=se>0?r.jsxs("div",{className:"word-search-result-block__toolbar",children:[r.jsx(_a,{size:40,options:U,value:$,onChange:L,ariaLabel:g("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),r.jsx(_a,{size:40,options:T,value:M,onChange:z,ariaLabel:g("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),r.jsx(kn,{page:X,totalPages:be,onChange:Y})]}):void 0,ie=le=>{c&&c(le)},ue=t!==void 0&&a?r.jsxs(r.Fragment,{children:[g("wordSearch.resultTitlePrefix","\uCD1D "),r.jsx("span",{style:{color:"var(--color-main)"},children:t}),g("wordSearch.resultTitleSuffix",{unit:b?wl(a):a})]}):void 0,je=t!==void 0&&t>0&&u!==void 0&&a?g("wordSearch.resultDisc",{unit:b?Bl(a):a,max:u,selected:l.length}):void 0,ye=f??je;return r.jsxs(Go,{type:v,className:Ne("word-search-result-block",m),children:[r.jsxs("div",{className:"word-search-result-block__inner",children:[(ue||K||ye)&&r.jsxs("div",{className:"word-search-result-block__head",children:[r.jsxs("div",{className:"word-search-result-block__head-main",children:[e&&r.jsx(ot,{icon:e,className:"word-search-result-block__head-icon"}),ue&&r.jsx("span",{className:"word-search-result-block__title h3",children:ue})]}),K&&r.jsx("div",{className:"word-search-result-block__head-actions",children:K}),ye&&r.jsx("div",{className:"word-search-result-block__head-disc body-3",children:ye})]}),(i?i.length===0:n.length===0)&&r.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[r.jsx("p",{className:"word-search-result-block__empty body-3",children:g("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),C&&r.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:C})]}),i?(Ae??[]).map(le=>r.jsx("div",{className:"word-search-result-block__group",children:r.jsx("div",{className:"word-search-result-block__items",children:le.items.map(he=>{const ve=l.includes(he.id);return r.jsx("div",{onMouseEnter:G=>{_(G.currentTarget),B(he.words??[])},onMouseLeave:k,children:r.jsx(Ce,{htmlType:"button",size:"word",align:"grid",label:(he.words??[]).map(G=>G.label),subLabel:(he.words??[]).some(G=>G.subLabel)?(he.words??[]).map(G=>G.subLabel):void 0,selected:ve,onClick:()=>ie(he.id),minWidth:200})},he.id)})})},le.label)):r.jsx("div",{className:"word-search-result-block__items",children:re.map(le=>{const he=l.includes(le.id);return r.jsx("div",{onMouseEnter:ve=>{_(ve.currentTarget),B(le.words??[])},onMouseLeave:k,children:r.jsx(Ce,{htmlType:"button",size:"word",align:"grid",label:(le.words??[]).map(ve=>ve.label),subLabel:(le.words??[]).some(ve=>ve.subLabel)?(le.words??[]).map(ve=>ve.subLabel):void 0,selected:he,onClick:()=>ie(le.id),minWidth:200})},le.id)})}),y&&w&&r.jsx(dp,{words:y,anchorRect:w})]}),be>1&&r.jsx("div",{className:"word-search-result-block__pagination-bottom",children:r.jsx(kn,{page:X,totalPages:be,onChange:Y})}),(d||h)&&r.jsxs("div",{className:"word-search-result-block__actions",children:[d&&r.jsx(Ce,{htmlType:"button",size:"56",type:"bar",label:g("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:l.length===0,onClick:l.length===0?void 0:d}),h&&r.jsx("div",{onClick:l.length===0?p:void 0,children:r.jsx(Ce,{htmlType:"button",size:"56",type:"bar",variant:"main",label:g("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:l.length===0,onClick:l.length===0?void 0:h})})]})]})}var tS='.ihabdevteam-core-scope .phoneme-select-block{align-items:flex-start;flex:1 1 auto;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell{align-items:center;display:flex;flex-direction:column;gap:12px}.ihabdevteam-core-scope .phoneme-select-block__controls{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs);justify-content:center;width:100%}@media (max-width:767px){.ihabdevteam-core-scope .phoneme-select-block__controls{align-items:center;flex-direction:column}}.ihabdevteam-core-scope .phoneme-select-block__count-control{align-self:center}.ihabdevteam-core-scope .phoneme-select-block__cell-group{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .phoneme-select-block__cell-vs{align-self:center;color:var(--color-lightGray);margin-bottom:22px;padding:0 16px}.ihabdevteam-core-scope .phoneme-select-block__pair-panels{display:flex;gap:var(--spacing-s);width:100%}.ihabdevteam-core-scope .phoneme-select-block__panel-group{display:flex;flex:1;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .phoneme-select-block__cells{align-items:flex-start;display:flex;gap:var(--spacing-xs);justify-content:center;padding:var(--spacing-m) 0;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-circle{align-items:center;background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);display:flex;height:80px;justify-content:center;position:relative;width:240px}.ihabdevteam-core-scope .phoneme-select-block__cell-index{color:var(--color-gray);line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo{align-items:stretch;display:flex;flex-direction:row;height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part{align-items:center;color:var(--color-black);display:flex;flex:1;flex-direction:column;gap:4px;justify-content:center;padding-top:3px;position:relative}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--no-label{padding-top:0}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-char.h1{line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-char--excluded{color:var(--color-whiteLine);transform:translateY(-2px)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty .phoneme-select-block__cell-jamo-char{transform:translateY(-2px)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-label{color:var(--color-lightGray);line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty .phoneme-select-block__cell-jamo-label{color:var(--color-darkWhite)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part+.phoneme-select-block__cell-jamo-part:before{background:var(--color-whiteLine);content:"";height:20px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:1px}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty{color:var(--color-darkWhite)}.ihabdevteam-core-scope .phoneme-select-block__panels{align-items:stretch;align-self:stretch;display:flex;flex-direction:column;gap:var(--spacing-m);width:100%}.ihabdevteam-core-scope .phoneme-select-block__detail{align-items:flex-start;display:flex;flex-direction:row;gap:var(--spacing-s);justify-content:center}.ihabdevteam-core-scope .phoneme-select-block__detail>.filter-panel{flex:1}.ihabdevteam-core-scope .phoneme-select-block>.filter-panel{align-self:stretch;width:100%}.ihabdevteam-core-scope .phoneme-select-block__controls .button38--bar{min-width:96px}.ihabdevteam-core-scope .phoneme-select-block__required{color:var(--color-main);line-height:1;margin-left:2px}.ihabdevteam-core-scope .phoneme-select-block__before-search{display:flex;justify-content:center;text-align:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__search-row{display:flex;gap:var(--spacing-xs);justify-content:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__checking{align-items:center;background:transparent;border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);color:var(--color-disabled);cursor:default;display:flex;gap:10px;height:60px;min-width:198px;padding:0 28px}.ihabdevteam-core-scope .phoneme-select-block__checking-label{white-space:nowrap}.ihabdevteam-core-scope .phoneme-select-block__spinner{animation:phonemeSpinner .7s linear infinite;border:2px solid var(--color-whiteLine);border-radius:50%;border-top-color:var(--color-disabled);flex-shrink:0;height:18px;width:18px}@keyframes phonemeSpinner{to{transform:rotate(1turn)}}@media (max-width:767px){.ihabdevteam-core-scope .phoneme-select-block__detail,.ihabdevteam-core-scope .phoneme-select-block__pair-panels{flex-direction:column}.ihabdevteam-core-scope .phoneme-select-block__detail>.filter-panel{width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-vs{align-self:center;margin-bottom:0;padding:4px 0}.ihabdevteam-core-scope .phoneme-select-block__cells{flex-wrap:wrap}.ihabdevteam-core-scope .phoneme-select-block__cell-group{flex-shrink:0;width:min(240px,100%)}.ihabdevteam-core-scope .phoneme-select-block__cell-group>.phoneme-select-block__cell{flex:1 1 auto;min-width:0;width:auto}.ihabdevteam-core-scope .phoneme-select-block__cell{flex-shrink:0;width:min(240px,100%)}.ihabdevteam-core-scope .phoneme-select-block__cell-circle{height:64px;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part{font-size:24px}}';ce(tS);function aS(e,t){return t.map(a=>{const o=typeof a=="string"?a:a.label,n=typeof a=="string"?void 0:a.displayLabel;return{label:o,value:e[o]??"",displayLabel:n}})}function T1({sections:e,selectedList:t,count:a,onCountChange:o,maxCount:n=4,minCount:i=1,combinationSections:l,combinationSectionsForSlot:c,onSelect:u,placeholder:d="-",className:h,title:p,titleIcon:m,disc:C,showInfoButton:v=!0,onClearPhoneme:f,onSearch:g,onSearchEmpty:x,searchDisabled:b=!1,searchLabel:w,searchChecking:_=!1,pairMode:A=!1,sectionType:y="page",beforeSearchContent:B,beforeContent:k,afterContent:S,hideCountControl:E=!1,ordinal:D=!1}){const{t:I}=_e.useTranslation(),j=s.useMemo(()=>I("wordPairs.infoNotes",{returnObjects:!0}),[I]),W=s.useMemo(()=>Array.from({length:n-i+1},(N,O)=>{const H=i+O;return{key:String(H),label:I("wordPairs.count",{n:H})}}),[I,n,i]),L=s.useMemo(()=>I("wordPairs.ordinals",{returnObjects:!0}),[I]),M=s.useCallback(N=>D?I("wordPairs.phonemeOrdinalLabel",{ordinal:L[N-1]??N}):a===1?I("wordPairs.phonemeSingleLabel","\uC74C\uC808"):I("wordPairs.phonemeN",{n:N}),[D,L,a,I]),z=s.useCallback(N=>D?I("wordPairs.phonemeContrastOrdinalLabel",{ordinal:L[N-1]??N}):a===1?I("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):I("wordPairs.phonemeContrast",{n:N}),[D,L,a,I]),q=s.useCallback((N,O)=>O?r.jsxs(r.Fragment,{children:[N,r.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):N,[]),{anchorRect:Y,toggleAt:P,close:V}=Ho(),$=s.useCallback(N=>o(Number(N)),[o]),U=sa("(max-width: 767px)"),T=s.useCallback(N=>aS(N,e).map(({label:O,value:H,displayLabel:Z})=>{const te=!!H&&H!=="\uC5C6\uC74C";return r.jsxs("span",{className:Ne("phoneme-select-block__cell-jamo-part",H?"":"phoneme-select-block__cell-jamo-part--empty",te?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[r.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${H==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:H==="\uC5C6\uC74C"?"x":H||d}),te&&r.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:Z??O})]},O)}),[e,d]),F=r.jsxs(r.Fragment,{children:[r.jsx("div",{"data-tooltip-ignore":!0,children:r.jsx(Ce,{htmlType:"button",size:40,type:U?"dot":void 0,icon:"info",label:U?void 0:I("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),ariaLabel:I("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),className:Y?"is-selected":void 0,"aria-expanded":!!Y,"aria-haspopup":"dialog",onClick:N=>P(N.currentTarget)})}),Y&&r.jsx(Co,{title:I("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:j,anchorRect:Y,onClose:V})]});return r.jsxs(Go,{type:y,title:p,icon:m,disc:C,action:v?F:void 0,className:Ne("phoneme-select-block",h),children:[k,!E&&r.jsx("div",{className:"phoneme-select-block__controls",children:r.jsx(Ta,{options:W,value:String(a),onChange:$,size:40,ariaLabel:I("wordPairs.countLabel","\uC74C\uC18C \uAC1C\uC218"),className:"phoneme-select-block__count-control"})}),r.jsx("div",{className:"phoneme-select-block__cells",children:A?r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((N,O)=>{const H=t[O*2]??{};return r.jsxs("div",{className:"phoneme-select-block__cell",children:[r.jsx("div",{className:"phoneme-select-block__cell-circle",children:r.jsx("div",{className:"phoneme-select-block__cell-jamo",children:T(H)})}),r.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:M(O+1)})]},O)})}),r.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:I("wordPairs.phonemeSelect.vs","\uB300")}),r.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((N,O)=>{const H=t[O*2+1]??{};return r.jsxs("div",{className:"phoneme-select-block__cell",children:[r.jsx("div",{className:"phoneme-select-block__cell-circle",children:r.jsx("div",{className:"phoneme-select-block__cell-jamo",children:T(H)})}),r.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:z(O+1)})]},O)})})]}):t.map((N,O)=>r.jsxs("div",{className:"phoneme-select-block__cell",children:[r.jsx("div",{className:"phoneme-select-block__cell-circle",children:r.jsx("div",{className:"phoneme-select-block__cell-jamo",children:T(N)})}),r.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:M(O+1)})]},O))}),(l||c)&&r.jsx("div",{className:"phoneme-select-block__panels",children:r.jsx("div",{className:"phoneme-select-block__detail",children:A?r.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[r.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((N,O)=>{const H=t[O*2]??{};return r.jsx(Ga,{title:q(M(O+1),O===0),sections:c?c(H,O*2):l,selected:H,onSelect:u?.(O*2),align:"newline"},O)})}),r.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((N,O)=>{const H=t[O*2+1]??{};return r.jsx(Ga,{title:z(O+1),sections:c?c(H,O*2+1):l,selected:H,onSelect:u?.(O*2+1),align:"newline"},O)})})]}):t.map((N,O)=>r.jsx(Ga,{title:q(M(O+1),O===0),sections:c?c(N,O):l,selected:N,onSelect:u?.(O),align:"newline"},O))})}),B&&r.jsx("div",{className:"phoneme-select-block__before-search",children:B}),(f||g||_)&&(()=>{const N=t.every(O=>Object.entries(O).every(([H,Z])=>!Z||H==="\uC885\uC131"&&Z==="\uC5C6\uC74C"));return r.jsxs("div",{className:"phoneme-select-block__search-row",onClick:N?x:void 0,children:[f&&r.jsx(Ce,{htmlType:"button",size:"56",type:"bar",label:I("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:N,onClick:N?void 0:f}),g?r.jsx(Ce,{htmlType:"button",size:"56",type:"bar",variant:"main",icon:_?r.jsx("span",{className:"phoneme-select-block__spinner","aria-hidden":"true"}):void 0,label:w??I("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:N||b||_,onDisabledClick:_?()=>{}:void 0,"aria-busy":_||void 0,onClick:g}):_?r.jsxs("div",{className:"phoneme-select-block__checking","aria-busy":"true",children:[r.jsx("div",{className:"phoneme-select-block__spinner"}),r.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:w??I("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):null]})})(),S]})}function j1({title:e,sections:t,selected:a,onSelect:o,collapsible:n,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:u,headerAction:d,className:h}){const{t:p}=_e.useTranslation();return r.jsx(Ga,{className:h,title:e??p("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:t,selected:a,onSelect:o,collapsible:n,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:u,headerAction:d,align:"inline"})}function L1({title:e,headerAction:t,sections:a,selected:o,onSelect:n,className:i}){const{t:l}=_e.useTranslation();return a.length===0?null:r.jsx(Ga,{className:i,title:e??l("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:t,sections:a,selected:o,onSelect:n,align:"newline"})}function M1({title:e,mode:t,onModeChange:a,matchMode:o,onMatchModeChange:n,positionCount:i,onPositionCountChange:l,inputMode:c,onInputModeChange:u,className:d}){const{t:h}=_e.useTranslation(),p={searchMode:h("wordPairs.filter.searchModeLabel","\uB300\uB9BD \uBC29\uC2DD"),phonemeOrder:h("wordPairs.filter.phonemeOrder","\uC785\uB825 \uC74C\uC808 \uC704\uCE58"),count:h("wordPairs.filter.countLabel","\uC785\uB825 \uC74C\uC808 \uAC2F\uC218"),inputMode:h("wordPairs.filter.inputModeLabel","\uC785\uB825 \uBC29\uC2DD"),orderAny:h("wordPairs.filter.orderAny","\uBB34\uAD00"),orderMatch:h("wordPairs.filter.orderMatch","\uC77C\uCE58"),include:h("wordPairs.mode.include","\uC74C\uC18C \uD3EC\uD568"),pick:h("wordPairs.mode.pick","\uC74C\uC18C \uB300\uB9BD"),explicit:h("wordPairs.mode.contrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815"),charInput:h("wordPairs.input.char","\uAE00\uC790 \uC120\uD0DD"),pronInput:h("wordPairs.input.pron","\uBC1C\uC74C \uC120\uD0DD")},m=g=>h("wordPairs.count",{n:g}),C=[{label:p.searchMode,items:[p.include,p.pick,p.explicit],display:"segmented",labelAction:r.jsx(_r,{title:h("wordPairs.mode.infoTitle","\uB300\uB9BD \uBC29\uC2DD"),items:[h("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."),h("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."),h("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:p.phonemeOrder,items:[p.orderAny,p.orderMatch],display:"segmented",labelAction:r.jsx(_r,{items:h("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:p.count,items:[m(1),m(2)],display:"segmented"},{label:p.inputMode,items:[p.charInput,p.pronInput],display:"segmented",labelAction:r.jsx(_r,{title:h("wordPairs.input.infoTitle","\uC785\uB825 \uBC29\uC2DD"),items:[h("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."),h("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.")]})}],v={[p.searchMode]:t==="explicit"?p.explicit:t==="pick"?p.pick:p.include,[p.phonemeOrder]:o==="ordered"?p.orderMatch:p.orderAny,[p.count]:m(i),[p.inputMode]:c==="phoneme"?p.pronInput:p.charInput},f=(g,x)=>{x===p.searchMode?a(g===p.explicit?"explicit":g===p.pick?"pick":"include"):x===p.phonemeOrder?n(g===p.orderMatch?"ordered":"unordered"):x===p.count?l(g===m(2)?2:1):x===p.inputMode&&u(g===p.pronInput?"phoneme":"word")};return r.jsx(Ga,{className:d,title:e??h("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:C,selected:v,onSelect:f,align:"inline"})}var oS=".ihabdevteam-core-scope .popup-list .popup-panel{max-height:calc(100% - 60px);max-width:880px;width:calc(100% - 40px)}.ihabdevteam-core-scope .popup-list .popup-content{display:flex;flex-direction:column;gap:var(--spacing-m);min-height:0;overflow:hidden}.ihabdevteam-core-scope .popup-list .table-wrap{flex:1;min-height:0;overflow-x:auto;overflow-y:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .popup-list .table-fields,.ihabdevteam-core-scope .popup-list .table-row{min-width:520px}.ihabdevteam-core-scope .popup-list__row--selected{background:var(--color-deepWhite);color:var(--color-main);font-weight:600}";ce(oS);function $1(e){const{title:t,items:a,columns:o,gridTemplateColumns:n,mobileGridTemplateColumns:i,searchPlaceholder:l,searchFn:c,defaultSortKey:u,defaultSortAsc:d=!0,selectedId:h,selectedIds:p,onSelect:m,onClose:C,pageSizeOptions:v=[10,25,50,100],initialPageSize:f,emptyText:g,noMatchText:x,countLabel:b,topContent:w,className:_=""}=e,{t:A}=_e.useTranslation(),y=l??A("common.search","\uAC80\uC0C9"),B=g??A("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),k=x??A("common.noMatches","\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"),[S,E]=s.useState(""),[D,I]=s.useState(u??o[0]?.key??""),[j,W]=s.useState(d),[L,M]=s.useState(String(f??v[0]??10)),[z,q]=s.useState(1);s.useEffect(()=>{q(1)},[S,L]);const Y=c!==null,P=s.useCallback((te,se)=>{if(!se)return!0;const be=se.toLowerCase();return o.some(X=>{const re=te[X.key];return re==null?!1:String(re).toLowerCase().includes(be)})},[o]),V=c??P,$=s.useMemo(()=>{const te=Y?a.filter(se=>V(se,S)):a;return D?[...te].sort((se,be)=>{const X=se[D],re=be[D];return X===re?0:pu(X,re,j)}):te},[a,S,D,j,Y,V]),U=Math.max(1,Math.ceil($.length/Number(L)));z>U&&q(U);const T=Math.min(z,U),F=$.slice((T-1)*Number(L),T*Number(L)),N=s.useCallback(te=>{D===te?W(se=>!se):(I(te),W(!0)),q(1)},[D]),O=s.useMemo(()=>{if(typeof b=="function"){const te=$.length,se=b(te);if(typeof se=="string"){const be=se.lastIndexOf(String(te));if(be>=0)return{prefix:se.slice(0,be),suffix:se.slice(be+String(te).length)}}return{label:se}}if(typeof b=="string"&&b.includes("{n}")){const[te,se]=b.split("{n}");return{prefix:te,suffix:se}}return{prefix:A("common.totalCountPrefix","\uCD1D "),suffix:A("common.totalCountSuffix","\uAC1C")}},[b,$.length,A]),H=s.useMemo(()=>o.map(te=>({label:te.label,onClick:te.sortable!==!1?()=>N(te.key):void 0,className:te.className,sortDir:te.sortable!==!1&&D===te.key?j?"asc":"desc":null})),[o,D,j,N]),Z=s.useMemo(()=>v.map(te=>({value:String(te),label:A("common.pageSizeLabel",{n:te})})),[v,A]);return r.jsxs(ao,{className:`popup-list ${_}`,title:t,onClose:C,children:[w,"label"in O&&r.jsx("p",{className:"toolbar__count body-1",children:O.label}),r.jsx(Pi,{count:"label"in O?void 0:{value:$.length,prefix:O.prefix,suffix:O.suffix},search:Y?{value:S,onChange:E,placeholder:y}:void 0,pageSize:{options:Z,value:L,onChange:M},pagination:{page:T,total:U,onChange:q}}),r.jsx(Vi,{size:"medium",gridTemplateColumns:n,mobileGridTemplateColumns:i,resizable:!0,fields:H,items:F,onRowClick:m,renderRow:te=>{const se=p!=null?te.id!=null&&p.has(te.id):h!=null&&te.id===h;return o.map(be=>({content:be.render?be.render(te):te[be.key]??"",className:Ne(be.className,se&&"popup-list__row--selected")}))},empty:Y&&S!==""&&a.length>0?k:B})]})}function pp(e){const{title:t,message:a,topContent:o,details:n,children:i,confirmLabel:l,cancelLabel:c,hideCancel:u=!1,extraAction:d,confirmVariant:h="main",confirmDisabled:p=!1,onConfirm:m,closeOnConfirm:C=!0,onClose:v,inline:f,size:g="small",className:x,initialFocus:b="close"}=e,{t:w}=_e.useTranslation(),_=s.useRef(null);s.useEffect(()=>{if(f||b==="close")return;const E=_.current?.closest(".popup-panel"),D=Array.from(E?.querySelectorAll(".popup-footer--buttons button")??[]),I=b==="confirm"?D[D.length-1]:u?void 0:D[d?1:0];I&&!I.disabled&&I.focus()},[]);const A=s.useRef(!1),[y,B]=s.useState(!1),k=E=>{let D=!1;return{close:()=>{D=!0,E()},\uB2EB\uC558\uB098:()=>D}},S=async E=>{if(A.current)return;A.current=!0;const D=typeof document<"u"?document.activeElement:null;B(!0);let I=!1;try{I=await E()}catch(j){typeof console<"u"&&console.error(j)}finally{I||(A.current=!1,B(!1),requestAnimationFrame(()=>{const j=document.activeElement;(!j||j===document.body)&&D?.isConnected&&D.focus()}))}};return r.jsxs(ao,{title:t,onClose:v,closeDisabled:y,inline:f,size:g,className:Ne("confirm-popup",o!=null&&"confirm-popup--has-top",x),buttons:[...d?[{label:d.label,variant:d.variant??"default",disabled:d.disabled||y,onClick:async({closeWithAnimation:E})=>{await S(async()=>{const D=k(E);await d.onClick(D.close);const I=d.closeOnClick??!0;return I&&E(),I||D.\uB2EB\uC558\uB098()})}}]:[],...u?[]:[{label:c??w("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:y,onClick:({closeWithAnimation:E})=>E()}],{label:l??w("common.confirm","\uD655\uC778"),variant:h,disabled:p||y,onClick:async({closeWithAnimation:E})=>{await S(async()=>{const D=k(E);return await m(D.close),C&&E(),C||D.\uB2EB\uC558\uB098()})}}],children:[o!=null&&r.jsx("div",{className:"confirm-popup__top",children:o}),n&&n.length>0&&r.jsx(jn,{children:n.map((E,D)=>r.jsx(Ua,{label:E.label,children:r.jsx("span",{className:"panel-row__text body-2",children:E.value})},D))}),r.jsx("p",{ref:_,className:"body-2 confirm-popup__message",children:a}),i]})}function R1(e,t,a={}){const{t:o}=_e.useTranslation(),[n,i]=s.useState(!1),l=s.useRef(!1),c=s.useCallback(()=>{l.current=!0},[]),u=s.useCallback(()=>l.current?(l.current=!1,!0):e?(i(!0),!1):!0,[e]),d=n?r.jsx(pp,{title:a.title??o("common.discardConfirm.title","\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?"),message:a.message??o("common.discardConfirm.body","\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4."),confirmLabel:a.confirmLabel??o("common.discardConfirm.confirm","\uC785\uB825 \uCDE8\uC18C"),confirmVariant:"danger",onConfirm:()=>{i(!1),t()},onClose:()=>i(!1)}):null;return{beforeClose:u,discardPopup:d,allowClose:c}}var rS=".ihabdevteam-core-scope .coupon-input-popup__input{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-darkGray);font-family:inherit;height:48px;letter-spacing:.06em;padding:0 14px;text-transform:uppercase;transition:border-color .15s;width:100%}.ihabdevteam-core-scope .coupon-input-popup__input:focus{border-color:var(--color-main);outline:none}.ihabdevteam-core-scope .coupon-input-popup__input::-moz-placeholder{color:var(--color-lightGray);letter-spacing:normal;text-transform:none}.ihabdevteam-core-scope .coupon-input-popup__input::placeholder{color:var(--color-lightGray);letter-spacing:normal;text-transform:none}.ihabdevteam-core-scope .coupon-input-popup__error{color:#e84040;color:var(--color-red,#e84040);margin:var(--spacing-xs) 0 0}";ce(rS);function P1({onApply:e,onCancel:t}){const{t:a}=_e.useTranslation(),[o,n]=s.useState(""),[i,l]=s.useState(!1),[c,u]=s.useState(null),d=s.useRef(null),h=s.useId();s.useEffect(()=>{d.current?.focus()},[]);const p=s.useCallback(async v=>{const f=o.trim();if(f){l(!0),u(null);try{await e(f),v()}catch(g){u(en(g)),l(!1),requestAnimationFrame(()=>d.current?.focus())}}},[o,e]),m=s.useCallback((v,f)=>{v.key==="Enter"&&!v.nativeEvent.isComposing&&p(f)},[p]),C=v=>{n(v.target.value),u(null)};return r.jsx(ao,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:t,closeDisabled:i,buttons:[{label:a("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:i,onClick:({closeWithAnimation:v})=>v()},{label:a("coupons.applyButton","\uC801\uC6A9"),variant:"main",disabled:!o.trim()||i,onClick:({closeWithAnimation:v})=>{p(v)}}],children:({closeWithAnimation:v})=>r.jsxs(r.Fragment,{children:[r.jsx("input",{ref:d,className:"coupon-input-popup__input body-2","aria-label":a("coupons.input.label","\uCFE0\uD3F0 \uCF54\uB4DC"),"aria-invalid":c?!0:void 0,"aria-errormessage":c?h:void 0,"aria-describedby":c?h:void 0,placeholder:a("coupons.input.placeholder","\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"),value:o,onChange:C,onKeyDown:f=>m(f,v),disabled:i,autoComplete:"off",spellCheck:!1}),c&&r.jsx("p",{id:h,className:"coupon-input-popup__error caption-1",role:"alert",children:c})]})})}var nS=".ihabdevteam-core-scope .party-container{inset:0;overflow:visible;pointer-events:none;position:fixed}.ihabdevteam-core-scope .confetti{display:none;left:0;opacity:0;position:fixed;top:0;transform:translateZ(0);will-change:transform,opacity}.ihabdevteam-core-scope .confetti--left{transform-origin:left bottom}.ihabdevteam-core-scope .confetti--right{transform-origin:right bottom}.ihabdevteam-core-scope .confetti.show{display:block;opacity:1;transition:opacity .2s linear}";ce(nS);const z1=["var(--color-main)","var(--color-sub)"],iS=2e3;function sS(e,t){if(!t.startsWith("var("))return t;try{const a=t.slice(4,-1).trim();return getComputedStyle(e).getPropertyValue(a).trim()||null}catch{return null}}function hs({active:e=!1,count:t=40,duration:a=2e3,strength:o=1,onComplete:n,trigger:i=0}){const l=s.useMemo(()=>{const f=Math.floor(t/2),g=t-f,x=(b,w)=>Array.from({length:b}).map((_,A)=>{const y=6+Math.random()*12,B=Math.round(Math.min(18,y*Math.min(1.5,1+o*.4))),k=z1[Math.floor(Math.random()*z1.length)],S=Math.random()*300,E=(360+Math.random()*260)*o*1.2,D=(w==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,I=Math.cos(D)*E,j=Math.sin(D)*E*1.35,W=Math.random()*720-360,L=(1200+Math.random()*3e3)*Math.min(1.6,1+o*.3),M=Math.random()>.7?"50%":"3px";return{id:`${w}-${A}`,side:w,size:B,color:k,delay:S,vx:I,vy:j,angularVel:W,life:L,borderRadius:M}});return[...x(f,"left"),...x(g,"right")]},[t,o]),c=s.useRef(null),u=s.useRef({}),d=s.useRef(null),h=s.useRef(n);s.useEffect(()=>{h.current=n},[n]);const p=s.useRef(null),m=s.useRef(null),C=()=>{if(typeof document>"u")return null;let f=document.querySelector("[data-ihab-effect-root]");return f||(f=document.createElement("div"),f.className="app-effect",f.dataset.ihabEffectRoot="",f.style.position="fixed",f.style.inset="0",f.style.pointerEvents="none",f.style.zIndex="99998",document.body.appendChild(f)),f};if(typeof document<"u"&&m.current==null&&(m.current=C()),s.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){const V=setTimeout(()=>h.current?.(),0);return()=>clearTimeout(V)}const f=1200,g=performance.now(),x=m.current&&m.current!==document.body?m.current.getBoundingClientRect():null,b=Math.max(60,(window.innerHeight||800)*.05),w=V=>Math.max(40,(V||window.innerWidth)*.02),_=x?.width||window.innerWidth||375,A=x?.height||window.innerHeight||812,y=V=>{const $=[...V].sort((U,T)=>U-T);return $[Math.floor($.length/2)]||1},B=y(l.map(V=>Math.abs(V.vy))),k=y(l.map(V=>Math.abs(V.vx))),S=Math.sqrt(2*f*(A*.72+b))/B,E=B*S/f,D=_*.5/(k*E),I=(V,$,U)=>Math.min(U,Math.max($,V)),j=I(S,.8,2.4),W=I(D,.7,2.2),L=a>0?a/iS:1,M=l.map(V=>({...V,life:V.life*L,vx:V.vx*W,vy:V.vy*j,startTime:g+V.delay,ended:!1})),z=x?{x:x.left-w(x.width),y:x.top+x.height+b}:{x:-w(window.innerWidth),y:window.innerHeight+b},q=x?{x:x.left+x.width+w(x.width),y:x.top+x.height+b}:{x:window.innerWidth+w(window.innerWidth),y:window.innerHeight+b},Y=V=>{let $=!1;for(const U of M){const T=u.current[U.id];if(!T||!T)continue;if(V<U.startTime){T.style.display="none",$=!0;continue}if(!U._inited){const re=U.side==="left"?z.x:q.x,Ae=U.side==="left"?z.y:q.y;T.style.left=`${re}px`,T.style.top=`${Ae}px`,T.style.transform="translate3d(0px, 0px, 0)",T.style.display="block",T.style.zIndex="100000",typeof U.color=="string"&&U.color.startsWith("var(")&&(T.style.background=sS(T,U.color)??"#FF0060"),U._inited=!0}const F=(V-U.startTime)/1e3;if(F<0)continue;const N=U.life/1e3;if(F>=N){T.style.opacity="0",T.style.display="none",U.ended=!0;continue}$=!0;const O=U.side==="left"?z.x:q.x,H=U.side==="left"?z.y:q.y,Z=O+U.vx*F,te=H+U.vy*F+.5*f*F*F,se=(U.angularVel||0)*F,be=Z-O,X=te-H;T.style.transform=`translate3d(${be}px, ${X}px, 0) rotate(${se}deg)`,T.style.opacity=`${Math.max(0,1-F/N)}`}$?d.current=requestAnimationFrame(Y):h.current?.()};d.current=requestAnimationFrame(Y);const P=setTimeout(()=>{try{if((m.current?m.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const V=document.createElement("div");V.className="party-container",V.style.position="fixed",V.style.inset="0",V.style.pointerEvents="none",V.style.overflow="visible",V.style.zIndex="2147483647";for(const $ of l){const U=document.createElement("span");U.className=`confetti confetti--${$.side}`,U.setAttribute("aria-hidden","true"),U.style.display="none",U.style.position="fixed",U.style.left="0px",U.style.top="0px",U.style.width=`${$.size}px`,U.style.height=`${Math.max(4,$.size*.6)}px`,U.style.background=$.color,U.style.borderRadius=$.borderRadius,U.style.transform="translate3d(0,0,0)",U.style.opacity="0",V.appendChild(U),u.current[$.id]=U}(document.body||m.current).appendChild(V),p.current=V}}catch{}},300);return()=>{if(d.current&&cancelAnimationFrame(d.current),clearTimeout(P),p.current){try{p.current.remove()}catch{}p.current=null}}},[e,a,i,l]),!e)return null;const v=r.jsx("div",{className:"party-container",ref:c,children:l.map(f=>r.jsx("span",{"aria-hidden":!0,ref:g=>{u.current[f.id]=g},className:`confetti confetti--${f.side}`,style:{width:`${f.size}px`,height:`${Math.max(4,f.size*.6)}px`,background:f.color,borderRadius:f.borderRadius}},`${f.id}-${i}`))});return typeof document<"u"?ua.createPortal(v,m.current||document.body):v}const hp=e=>typeof e=="number"&&Number.isFinite(e)&&e>0?e:void 0;function I1({trigger:e=0,active:t=!1}){const[a,o]=s.useState(null);s.useEffect(()=>{if(typeof window>"u")return;const i=l=>{const c=l.detail??{};o(u=>({n:(u?.n??0)+1,count:hp(c.count),strength:hp(c.strength),duration:hp(c.duration)}))};return window.addEventListener("party:trigger",i),()=>window.removeEventListener("party:trigger",i)},[]);const n=s.useCallback(()=>o(null),[]);return r.jsxs(r.Fragment,{children:[r.jsx(hs,{active:t,trigger:e}),a&&r.jsx(hs,{active:!0,trigger:a.n,count:a.count,strength:a.strength,duration:a.duration,onComplete:n})]})}var lS=".ihabdevteam-core-scope .page-title{align-items:center;display:flex;gap:12px;justify-content:space-between;padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .page-title__main{align-items:flex-start;display:flex;flex:1;flex-direction:column;min-width:0;text-align:left}.ihabdevteam-core-scope .page-title__title-row{align-items:center;display:flex;gap:12px}.ihabdevteam-core-scope .page-title__title{margin:0}.ihabdevteam-core-scope .page-title__title-action{align-items:center;display:flex;flex-shrink:0}.ihabdevteam-core-scope .page-title__badge{align-items:center;display:flex}.ihabdevteam-core-scope .page-title__sub{color:var(--color-gray);margin:6px 0 0}.ihabdevteam-core-scope .page-title__action{flex-shrink:0;margin-left:var(--spacing-s)}@media (max-width:767px){.ihabdevteam-core-scope .page-title{align-items:flex-start;flex-direction:column;gap:10px}.ihabdevteam-core-scope .page-title__action{align-self:center;margin-left:0}}.ihabdevteam-core-scope .page-title__back{flex-shrink:0;margin-left:-8px;margin-right:-4px}.ihabdevteam-core-scope .page-title--wrap{flex-wrap:wrap}.ihabdevteam-core-scope .page-title--wrap .page-title__main{min-width:min(320px,100%)}";ce(lS);function O1({title:e,sub:t,rightAction:a,titleAction:o,badge:n,badgeVariant:i="default",documentTitle:l,onBack:c,backLabel:u,wrap:d=!1}){const{t:h}=_e.useTranslation();cu(typeof e=="string"?e:l??null);const p=u??h("common.back","\uB4A4\uB85C");return r.jsxs("div",{className:d?"page-title page-title--wrap":"page-title",children:[r.jsxs("div",{className:"page-title__main",children:[r.jsxs("div",{className:"page-title__title-row",children:[c&&r.jsx(Ce,{htmlType:"button",className:"page-title__back",size:48,type:"dot",icon:"chevron-left",iconSize:"large",useBorder:!1,iconColor:"var(--color-text-primary)",ariaLabel:p,showTooltipInfo:p,onClick:c}),r.jsx("h1",{className:"page-title__title h1",children:e}),n&&r.jsx("div",{className:"page-title__badge",children:r.jsx(St,{label:n,size:"small",variant:i,fill:"outline"})}),o?r.jsx("div",{className:"page-title__title-action",children:o}):null]}),t&&r.jsx("p",{className:"page-title__sub body-2",children:t})]}),a?r.jsx("div",{className:"page-title__action",children:a}):null]})}function F1(e){return e??""}const H1=s.createContext({words:[],loading:!1});function V1(){return s.useContext(H1)}function W1({words:e,loading:t,error:a,statusMessage:o,localVersion:n,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:u,children:d}){const h=s.useMemo(()=>({words:e,loading:t,error:a,statusMessage:o,localVersion:n,remoteVersion:i,progress:l,clearAndRefetch:c,checkRemoteVersion:u}),[e,t,a,o,n,i,l,c,u]);return r.jsx(H1.Provider,{value:h,children:d})}var cS=".ihabdevteam-core-scope .summary-strip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--spacing-m) var(--spacing-l);width:100%}.ihabdevteam-core-scope .summary-strip--flat{box-shadow:none}.ihabdevteam-core-scope .summary-strip__row{align-items:center;display:flex;gap:var(--spacing-l)}.ihabdevteam-core-scope .summary-strip__items{grid-gap:var(--spacing-s) var(--spacing-l);display:grid;flex:1;gap:var(--spacing-s) var(--spacing-l);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}@media (min-width:640px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1280px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-columns:repeat(var(--summary-strip-cols,4),minmax(0,1fr))}}.ihabdevteam-core-scope .summary-strip__item{min-width:0}.ihabdevteam-core-scope .summary-strip__label{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .summary-strip__value{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .summary-strip__actions{align-items:center;display:flex;flex-shrink:0;gap:var(--spacing-xs)}";ce(cS);function G1({items:e,actions:t,columns:a,flat:o=!1,className:n,style:i}){const l=a??e.length;return r.jsx("section",{className:Ne("summary-strip",o&&"summary-strip--flat",n),style:{"--summary-strip-cols":String(l),...i},children:r.jsxs("div",{className:"summary-strip__row",children:[r.jsx("div",{className:"summary-strip__items",children:e.map((c,u)=>r.jsxs("div",{className:"summary-strip__item",children:[r.jsx("p",{className:"summary-strip__label caption-1",children:c.label}),r.jsx("p",{className:"summary-strip__value body-3b",title:typeof c.value=="string"||typeof c.value=="number"?String(c.value):void 0,children:c.value})]},u))}),t&&r.jsx("div",{className:"summary-strip__actions",children:t})]})})}var uS='.ihabdevteam-core-scope .report-doc{--report-page-w:210mm;--report-page-h:297mm;--report-margin:14mm;display:flex;justify-content:safe center;max-width:100%;min-width:0;overflow-x:auto;padding-block:var(--spacing-s);position:relative;width:100%}.ihabdevteam-core-scope .report-doc__pages{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-l)}.ihabdevteam-core-scope .report-doc__page{background:#fff;box-shadow:var(--shadow-card);color:#000;display:flex;flex-direction:column;flex-shrink:0;min-height:var(--report-page-h);padding:var(--report-margin);width:var(--report-page-w)}.ihabdevteam-core-scope .report-doc__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__title{margin:0}.ihabdevteam-core-scope .report-doc__footer{align-items:center;color:var(--color-gray);display:flex;justify-content:space-between;margin-top:auto;padding-top:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__footer-left{align-items:center;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__page-no{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ihabdevteam-core-scope .report-doc__logo{height:28px;width:auto}.ihabdevteam-core-scope .report-doc__measure{display:flex;flex-direction:column;opacity:0;pointer-events:none;position:absolute;width:calc(var(--report-page-w) - var(--report-margin)*2);z-index:-10}.ihabdevteam-core-scope .report-doc__measure-blocks{display:flex;flex-direction:column}.ihabdevteam-core-scope .report-doc__ruler{height:calc(var(--report-page-h) - var(--report-margin)*2)}@media print{.ihabdevteam-core-scope .report-doc{display:block;overflow:visible;padding-block:0}.ihabdevteam-core-scope .report-doc__pages{display:block}.ihabdevteam-core-scope .report-doc__page{-moz-column-break-after:page;box-shadow:none;break-after:page;page-break-after:always}.ihabdevteam-core-scope .report-doc__page:last-child{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}.ihabdevteam-core-scope .report-doc__measure{height:0;overflow:hidden}.ihabdevteam-core-scope .report-doc__measure>*{flex-shrink:0}}';ce(uS);const dS=(e,t)=>`${e} / ${t}`;function U1({blocks:e,sectionTitles:t,logo:a,footer:o,pageLabel:n=dS,pageWidth:i,pageHeight:l,margin:c,className:u,style:d}){const{t:h}=_e.useTranslation(),p=s.useRef(null),m=s.useRef(null),C=s.useRef(null),v=s.useRef(null),[f,g]=s.useState(null),[x,b]=s.useState(!1);s.useEffect(()=>{const L=p.current;if(!L)return;const M=()=>b(L.scrollWidth>L.clientWidth+1);if(M(),typeof ResizeObserver>"u")return;const z=new ResizeObserver(M);return z.observe(L),()=>z.disconnect()},[f]);const w=e.map(L=>`${L.id}\0${L.section??""}\0${L.group??""}`).join(""),_=f&&f.shape===w?f.pages:null,[A,y]=s.useState(0);s.useEffect(()=>{const L=v.current;if(!L||typeof ResizeObserver>"u")return;const M=new ResizeObserver(()=>y(L.offsetHeight));return M.observe(L),()=>M.disconnect()},[]);const[B,k]=s.useState(0);s.useEffect(()=>{const L=m.current;if(!L||typeof ResizeObserver>"u")return;let M=null;const z=typeof requestAnimationFrame=="function"?P=>requestAnimationFrame(P):P=>setTimeout(P,16),q=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:P=>clearTimeout(P),Y=new ResizeObserver(()=>{M==null&&(M=z(()=>{M=null,k(P=>P+1)}))});return Array.from(L.children).forEach(P=>Y.observe(P)),()=>{Y.disconnect(),M!=null&&q(M)}},[w]),s.useLayoutEffect(()=>{const L=m.current,M=v.current;if(!L||!M)return;const z=N=>N.getBoundingClientRect().height||N.offsetHeight,q=new Map;C.current?.querySelectorAll("[data-chrome-section]").forEach(N=>{q.set(N.dataset.chromeSection??"",z(N))});const Y=N=>z(M)-(q.get(N??"")??0),P=Array.from(L.children).map(N=>z(N)),V=[];e.forEach((N,O)=>{const H=V[V.length-1],Z=H?e[H[0]]:void 0;Z&&N.group!=null&&Z.group===N.group&&Z.section===N.section?H.push(O):V.push([O])});const $=[];let U=[],T=0;const F=()=>{U.length&&$.push(U),U=[],T=0};V.forEach(N=>{const O=N.reduce((Z,te)=>Z+P[te],0),H=Y(e[N[0]].section);U.length&&e[U[0]].section!==e[N[0]].section&&F(),O>H?N.forEach(Z=>{U.length&&T+P[Z]>H+.01&&F(),U.push(Z),T+=P[Z]}):(U.length&&T+O>H+.01&&F(),N.forEach(Z=>U.push(Z)),T+=O)}),F(),g(N=>N&&N.shape===w&&JSON.stringify(N.pages)===JSON.stringify($)?N:{shape:w,pages:$})},[w,A,i,l,c,B]);const S=Ku,E=S,D=o??r.jsxs(r.Fragment,{children:[r.jsx("img",{src:E,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),I=(L,M,z)=>({header:r.jsxs("div",{className:"report-doc__header",children:[r.jsx("h2",{className:"report-doc__title h3b",children:z!=null&&t?.[z]||null}),a]}),footer:r.jsxs("div",{className:"report-doc__footer caption-1",children:[r.jsx("span",{className:"report-doc__footer-left",children:D}),r.jsx("span",{className:"report-doc__page-no",children:n(L,M)})]})}),j=Array.from(new Set(e.map(L=>L.section??""))),W={...i?{"--report-page-w":i}:null,...l?{"--report-page-h":l}:null,...c?{"--report-margin":c}:null,...d};return r.jsxs("div",{ref:p,className:Ne("report-doc",u),style:W,tabIndex:x?0:void 0,role:x?"group":void 0,"aria-label":x?h("report.previewRegion","\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30"):void 0,children:[r.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[r.jsx("div",{ref:v,className:"report-doc__ruler"}),r.jsx("div",{ref:C,children:j.map(L=>{const M=I(1,1,L||void 0);return r.jsxs("div",{"data-chrome-section":L,children:[M.header,M.footer]},L)})}),r.jsx("div",{ref:m,className:"report-doc__measure-blocks",children:e.map(L=>r.jsx("div",{children:L.content},L.id))})]}),_&&r.jsx("div",{className:"report-doc__pages",children:_.map((L,M)=>{const{header:z,footer:q}=I(M+1,_.length,e[L[0]].section);return r.jsxs("section",{className:"report-doc__page",children:[z,L.map(Y=>r.jsx("div",{children:e[Y].content},e[Y].id)),q]},M)})})]})}var pS=".ihabdevteam-core-scope .report-info{border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:var(--spacing-l);padding:var(--spacing-s) var(--spacing-m)}.ihabdevteam-core-scope .report-info__title{color:var(--color-darkGray);margin:0 0 var(--spacing-s)}.ihabdevteam-core-scope .report-info__grid{grid-gap:var(--spacing-xs) var(--spacing-l);display:grid;gap:var(--spacing-xs) var(--spacing-l);grid-template-columns:repeat(4,minmax(0,1fr));grid-template-columns:repeat(var(--report-info-cols,4),minmax(0,1fr))}@media (max-width:640px){.ihabdevteam-core-scope .report-info__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.ihabdevteam-core-scope .report-info__field{align-items:baseline;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .report-info__label{color:var(--color-gray);flex-shrink:0;width:3.5rem}.ihabdevteam-core-scope .report-info__value{color:var(--color-darkGray);white-space:nowrap}";ce(pS);function q1({title:e,fields:t,columns:a=4,className:o,style:n}){return r.jsxs("div",{className:Ne("report-info",o),style:{"--report-info-cols":String(a),...n},children:[e&&r.jsx("p",{className:"report-info__title h5b",children:e}),r.jsx("div",{className:"report-info__grid",children:t.map((i,l)=>r.jsxs("div",{className:"report-info__field body-2",children:[r.jsx("span",{className:"report-info__label body-3",children:i.label}),r.jsx("span",{className:"report-info__value",children:i.value})]},l))})]})}const Zo=new Map;let ms=null;const hS=12;function mS(e){for(let t=e.parentElement;t&&t!==document.body;t=t.parentElement){const a=window.getComputedStyle(t);if(a.transform&&a.transform!=="none"||a.filter&&a.filter!=="none"||a.perspective&&a.perspective!=="none"||/paint|layout|strict|content/.test(a.contain||""))return t}return document}function bs(){const e=new Map;for(const t of Zo.keys()){if(!t.isConnected)continue;const a=mS(t),o=e.get(a)??[];o.push(t),e.set(a,o)}for(const t of e.values()){t.sort((o,n)=>o.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1);let a=0;for(const o of t){a>0?o.style.setProperty("--update-alert-stack-offset",`${a}px`):o.style.removeProperty("--update-alert-stack-offset");const n=o.getBoundingClientRect().height;n>0&&(a+=n+hS)}}}function bS(e){return typeof window>"u"?()=>{}:(Zo.set(e,(Zo.get(e)??0)+1),Zo.get(e)===1&&typeof ResizeObserver<"u"&&(ms??(ms=new ResizeObserver(()=>bs())),ms.observe(e)),bs(),()=>{const t=(Zo.get(e)??1)-1;if(t>0){Zo.set(e,t),bs();return}Zo.delete(e),ms?.unobserve(e),e.style.removeProperty("--update-alert-stack-offset"),bs()})}var gS=".ihabdevteam-core-scope .update-alert{animation:update-alert-slide-in .32s cubic-bezier(.34,1.56,.64,1) both;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:hsla(0,0%,97%,.92);border:1px solid var(--color-main);border-radius:var(--radius-m);box-shadow:0 4px 24px rgba(0,0,0,.14),0 1px 4px rgba(0,0,0,.08),inset 0 0 0 .5px rgba(0,0,0,.1);padding:var(--spacing-l);width:380px}.ihabdevteam-core-scope .update-alert,.ihabdevteam-core-scope .update-alert-stack{display:flex;flex-direction:column;gap:12px;max-width:calc(100vw - 32px);position:fixed;right:16px;top:16px;top:calc(16px + var(--update-alert-stack-offset, 0px));z-index:var(--z-alert)}.ihabdevteam-core-scope .update-alert-stack{align-items:flex-end}.ihabdevteam-core-scope .update-alert-stack .update-alert{position:relative;top:auto;z-index:auto}.ihabdevteam-core-scope .update-alert:has(.update-alert__close) .update-alert__title{padding-right:24px}.ihabdevteam-core-scope .update-alert__close{align-items:center;background:none;border:none;border-radius:6px;border-radius:var(--radius-s,6px);color:#888;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;line-height:1;position:absolute;right:8px;top:8px;width:24px}.ihabdevteam-core-scope .update-alert__close:hover{background:rgba(0,0,0,.06);color:#333}.ihabdevteam-core-scope .update-alert__top{align-items:center;display:flex;gap:10px}@keyframes update-alert-slide-in{0%{opacity:0;transform:translateX(calc(100% + 24px))}to{opacity:1;transform:translateX(0)}}.ihabdevteam-core-scope .update-alert__icon{align-items:center;color:var(--color-main);display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.ihabdevteam-core-scope .update-alert__body{flex:1;min-width:0}.ihabdevteam-core-scope .update-alert__title{color:#1a1a1a;text-align:left}.ihabdevteam-core-scope .update-alert__message{color:#555;margin-top:2px;text-align:left}.ihabdevteam-core-scope .update-alert__action{width:100%}";ce(gS);function Y1({title:e,message:t,actionLabel:a,onAction:o,icon:n,onClose:i,className:l=""}){const{t:c}=_e.useTranslation(),u=a??c("common.update","\uC5C5\uB370\uC774\uD2B8"),d=s.useRef(null),h=s.useRef(!1);return s.useLayoutEffect(()=>{const p=d.current,m=p?.parentElement?.closest(".update-alert-stack")??p,C=m?bS(m):null;return()=>{C?.(),h.current&&p&&p.contains(document.activeElement)&&vi(p)}},[]),r.jsxs("div",{ref:d,className:Ne("update-alert",l),role:"alert",children:[i&&r.jsx("button",{type:"button",className:"update-alert__close",onClick:()=>{h.current=!0,i()},"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"}),r.jsxs("div",{className:"update-alert__top",children:[r.jsx("div",{className:"update-alert__icon",children:n??r.jsx(Dp,{size:20,strokeWidth:2})}),r.jsxs("div",{className:"update-alert__body",children:[r.jsx("div",{className:"update-alert__title h4",children:e}),r.jsx("div",{className:"update-alert__message body-3",children:t})]})]}),o&&r.jsx(Ce,{htmlType:"button",size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:o,children:u})]})}var fS=".ihabdevteam-core-scope .training-card{background:var(--color-white);border:1px solid transparent;border-radius:var(--radius-card);display:flex;flex-direction:column;gap:10px;max-width:100%;padding:18px;position:relative;transition:border-color .15s,box-shadow .15s;width:360px}.ihabdevteam-core-scope .training-card:hover{border-color:var(--color-main);box-shadow:0 4px 16px var(--color-main-a10)}.ihabdevteam-core-scope .training-card--dragging{opacity:.5}.ihabdevteam-core-scope .training-card--clickable{cursor:pointer}.ihabdevteam-core-scope .training-card__header{grid-column-gap:8px;grid-row-gap:4px;align-items:start;-moz-column-gap:8px;column-gap:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;row-gap:4px}.ihabdevteam-core-scope .training-card__title-row{display:contents}.ihabdevteam-core-scope .training-card__title-row>:first-child{grid-area:1/1;min-width:0}.ihabdevteam-core-scope .training-card__header>:last-child{grid-area:2/1}.ihabdevteam-core-scope .training-card__title{color:var(--color-darkGray);margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card__top-actions{align-items:center;align-self:start;display:flex;flex-shrink:0;gap:2px;grid-column:2;grid-row:1/3;margin-right:-8px}.ihabdevteam-core-scope .training-card__publisher{background:none;border:none;color:var(--color-gray);cursor:pointer;font-size:11px;font-weight:400;margin-block:-6px;max-width:120px;min-height:24px;overflow:hidden;padding:0;padding-block:6px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .training-card__publisher:hover{color:var(--color-main);text-decoration:underline}.ihabdevteam-core-scope .training-card__description{color:var(--color-gray);margin:0;min-height:1.55em;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card__body{display:flex;flex:1;flex-direction:column;gap:8px;justify-content:flex-end}.ihabdevteam-core-scope .training-card__empty{color:var(--color-lightGray)}.ihabdevteam-core-scope .training-card__types{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.ihabdevteam-core-scope .training-card__types .button{min-width:0;padding-inline:12px}.ihabdevteam-core-scope .training-card__words{align-content:flex-start;display:flex;flex-wrap:wrap;gap:4px}.ihabdevteam-core-scope .training-card__footer{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:space-between;margin-top:auto;padding-top:8px}.ihabdevteam-core-scope .training-card__footer-left{align-items:center;display:flex;gap:6px;min-width:0}.ihabdevteam-core-scope .training-card__date{color:var(--color-gray);font-size:11px;white-space:nowrap}.ihabdevteam-core-scope .training-card__meta{align-items:center;display:flex;gap:4px}.ihabdevteam-core-scope .training-card__publisher--static{cursor:default}.ihabdevteam-core-scope .training-card__publisher--static:hover{color:var(--color-gray);text-decoration:none}";ce(fS);function K1({title:e,titleLevel:t=3,description:a,topActions:o,children:n,footerLeft:i,footerRight:l,ariaLabel:c,onClick:u,draggable:d,onDragStart:h,onDragEnd:p,className:m}){const C=t?`h${t}`:"div",v=i!=null||l!=null,f=n!=null&&n!==!1,g=s.useCallback(x=>{u&&x.target===x.currentTarget&&(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),u())},[u]);return r.jsxs("div",{className:Ne("training-card",u?"training-card--clickable":"",m),onClick:u,onKeyDown:u?g:void 0,role:u?"button":void 0,"aria-label":u?c??(typeof e=="string"?e:void 0):void 0,tabIndex:u?0:void 0,draggable:d,onDragStart:h,onDragEnd:p,children:[r.jsxs("div",{className:"training-card__header",children:[r.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?r.jsx(C,{className:"training-card__title h4",children:e}):e,o!=null&&r.jsx("div",{className:"training-card__top-actions",onClick:x=>x.stopPropagation(),children:o})]}),a!=null?typeof a=="string"?r.jsx("p",{className:"training-card__description body-3",children:a}):a:r.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),f&&r.jsx("div",{className:"training-card__body",children:n}),v&&r.jsxs("div",{className:"training-card__footer",children:[i!=null&&r.jsx("div",{className:"training-card__footer-left",children:i}),l!=null&&r.jsx("div",{className:"training-card__meta",children:l})]})]})}var vS=".ihabdevteam-core-scope .training-card-group{background:var(--color-darkWhite);border:1px solid var(--color-darkWhite);border-radius:var(--radius-card);overflow:hidden;transition:border-color .15s,box-shadow .15s}.ihabdevteam-core-scope .training-card-group--dragover{border-color:var(--color-main);box-shadow:0 0 0 2px var(--color-main-a10)}.ihabdevteam-core-scope .training-card-group__header{align-items:center;display:flex;gap:8px;height:60px;padding:0 12px}.ihabdevteam-core-scope .training-card-group--collapsible .training-card-group__header{-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .training-card-group__chevron{flex-shrink:0}.ihabdevteam-core-scope .training-card-group__title{color:var(--color-black);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card-group__count{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .training-card-group__actions{align-items:center;display:flex;flex-shrink:0;gap:8px;margin-left:auto}.ihabdevteam-core-scope .training-card-group__empty{color:var(--color-lightGray);padding:24px 16px;text-align:center}.ihabdevteam-core-scope .training-card-group__grid{align-items:stretch;display:flex;flex-wrap:wrap;gap:12px;padding:0 12px 12px}.ihabdevteam-core-scope .training-card-group__grid>*{min-width:0}";ce(vS);function Z1({title:e,titleLevel:t=3,count:a,collapsed:o=!1,onToggle:n,beforeSort:i,sort:l,actions:c,empty:u=!1,emptyContent:d,dragOver:h=!1,onDragOver:p,onDragLeave:m,onDrop:C,children:v,className:f}){const{t:g}=_e.useTranslation(),x=s.useId(),b=t?`h${t}`:"span",w=n!=null,_=Ne("training-card-group",h&&"training-card-group--dragover",o&&"training-card-group--collapsed",w&&"training-card-group--collapsible",f);return r.jsxs("div",{className:_,onDragOver:p,onDragLeave:m,onDrop:C,role:typeof e=="string"&&e?"group":void 0,"aria-labelledby":typeof e=="string"&&e?x:void 0,children:[r.jsxs("header",{className:"training-card-group__header",children:[w&&r.jsx(Ce,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:o?"chevron-right":"chevron-down",ariaLabel:typeof e=="string"&&e?o?g("common.expandFor",{name:e}):g("common.collapseFor",{name:e}):o?g("common.expand","\uD3BC\uCE58\uAE30"):g("common.collapse","\uC811\uAE30"),className:"training-card-group__chevron","aria-expanded":!o,onClick:n}),typeof e=="string"?r.jsx(b,{id:x,className:"training-card-group__title h5b",children:e}):e,a!==void 0&&r.jsx("span",{className:"training-card-group__count body-3b",children:a}),(i!=null||l||c!=null)&&r.jsxs("span",{className:"training-card-group__actions",onClick:A=>A.stopPropagation(),children:[i,l&&r.jsx(_a,{size:40,options:l.options,value:l.value,placeholder:l.placeholder,onChange:l.onChange,ariaLabel:typeof e=="string"&&e?g("common.sortFor",{name:e}):void 0}),c]})]}),!o&&(u?r.jsx("div",{className:"training-card-group__empty body-3",children:d}):r.jsx("div",{className:"training-card-group__grid",children:v}))]})}var CS=".ihabdevteam-core-scope .word-table-block__meta{background:transparent}.ihabdevteam-core-scope .word-table-block__table-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:center}.ihabdevteam-core-scope .word-table-block__actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:space-between}.ihabdevteam-core-scope .word-table-block__actions-right{margin-left:auto}.ihabdevteam-core-scope .word-table-block__actions-left,.ihabdevteam-core-scope .word-table-block__actions-right{display:flex;gap:var(--spacing-xs)}@media (max-width:767px){.ihabdevteam-core-scope .word-table-block__actions{align-items:stretch;flex-direction:column}.ihabdevteam-core-scope .word-table-block__actions-left,.ihabdevteam-core-scope .word-table-block__actions-right{display:grid;grid-template-columns:repeat(2,1fr)}.ihabdevteam-core-scope .word-table-block__actions-right{margin-left:0}.ihabdevteam-core-scope .word-table-block__actions .button{min-width:0;width:100%}.ihabdevteam-core-scope .word-table-block__table-actions{display:grid;grid-template-columns:repeat(2,1fr)}.ihabdevteam-core-scope .word-table-block__table-actions .button{min-width:0;width:100%}}.ihabdevteam-core-scope .my-word-table-preview-popup .popup-panel{max-width:none;width:min(1400px,94vw)}.ihabdevteam-core-scope .my-word-table-preview-popup .popup-body{overflow:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .word-table-block__pages{display:flex;flex-direction:column;gap:24px;gap:var(--spacing-content,24px)}@media print{.ihabdevteam-core-scope .word-table-block>.filter-panel,.ihabdevteam-core-scope .word-table-block>.section__header,.ihabdevteam-core-scope .word-table-block__actions{display:none}.ihabdevteam-core-scope .word-table-block__pages .word-table{-moz-column-break-after:page;break-after:page;page-break-after:always;position:static}.ihabdevteam-core-scope .word-table-block__pages .word-table:last-child{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}}";ce(CS);const xS="speechear:saved_word_tables";function _S(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&Array.isArray(t.items)}function yS(){try{const e=localStorage.getItem(xS);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(_S):[]}catch{return[]}}function X1(e){return{label:e.word,subLabel:e.pronunciation,colloquialLabel:e.colloquialPronunciation,homonum:e.homonum,grade:e.grade,syllables:[...e.word].length,pos:e.pos,wordType:e.wordType}}function mp(e){return e.map(t=>t.homonum!=null?`${t.word}#${t.homonum}`:t.word).join("|")}function wS(e){const t=new Set;return e.map(a=>{let o=a.id;for(let n=2;t.has(o);n++)o=`${a.id}~${n}`;return t.add(o),o===a.id?a:{...a,id:o}})}function J1({title:e,titleIcon:t,disc:a,filterTitle:o,filterCollapsible:n,filterDefaultCollapsed:i,filterCollapsed:l,onFilterCollapsedChange:c,filterHeaderSummary:u,brand:d,code:h,items:p,onSaveComplete:m,onLoad:C,onRemoveItem:v,onReset:f,resetLabel:g,saveButtonLabel:x,secondarySaveButtonLabel:b,onReorder:w,showCellCount:_,onAddItem:A,className:y,renderSavePopup:B,renderWordSearch:k,hideControls:S,saveOnly:E,tableName:D,nameValue:I,onNameChange:j,descriptionValue:W,onDescriptionChange:L,namePlaceholder:M,descriptionPlaceholder:z,existingNames:q,editingName:Y,onCancel:P,initialItemsPerPage:V,renderCellAction:$,actionsLeftExtra:U}){const{t:T}=_e.useTranslation(),F=g??T("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),N=p===void 0,O=!!j,[H,Z]=s.useState([]),te=(I??"").trim(),se=te||(M??"").trim(),be=(W??"").trim()||(z??"").trim(),X=(q??[]).map(ne=>ne.trim().toLowerCase()),re=[Y?.trim().toLowerCase(),...H].filter(ne=>!!ne),Ae=[...X];for(const ne of re){const we=Ae.indexOf(ne);we!==-1&&Ae.splice(we,1)}const K=te!==""&&Ae.includes(te.toLowerCase()),[ie,ue]=s.useState(Array(4).fill(null)),[je,ye]=s.useState(4),[le,he]=s.useState(null),ve=ie.slice(0,je),G=!!d?.show,[oe,me]=s.useState(!0),[Te,ke]=s.useState(!0),Pe=d&&{...d,top:oe,bottom:Te},[He,lt]=s.useState("landscape"),[rt,at]=s.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[ht,De]=s.useState("\uD45C\uC2DC"),[Ue,Se]=s.useState(!0),[Ye,ee]=s.useState(!0),pe=s.useRef(null),Ee=s.useRef([]),[Re,Ve]=s.useState(V==="all"?Number.POSITIVE_INFINITY:V??8),[We,ct]=s.useState("right"),[mt,gt]=s.useState(!1),[Et,ft]=s.useState(!1),{toastMessage:et,toastType:Ie,showWarning:Oe,clearToast:bt}=Di("warning"),it=s.useCallback(()=>he(null),[he]);A&&!N&&!_&&ra("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[wt,Ze]=s.useState(()=>Math.max(p?.length??1,1)),kt=N?je:_?Math.max(wt,p?.length??1,1):Math.max(p?.length??0,1),{width:Lt,height:qe}=Uo[He],tt=!N&&!_,Dt=p?.length??0,ca=Math.min(Re,Math.max(Dt,1)),st=tt?ca:kt,Nt=tt?J0(p??[],st):null,ta=!!Nt&&Nt.length>1,vt=N?ve.some(ne=>ne!==null&&ne.length>1):(p??[]).some(ne=>(ne.words??[]).length>1),ya=D?.trim()||`${ni(Ca())} ${vt?T("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):T("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,ba=s.useCallback(()=>ta?Ee.current.filter(ne=>ne!==null):pe.current?[pe.current]:[],[ta]),{print:ja,openNewWindow:La,downloadHtml:no}=Xi({getElements:ba,paperW:Lt,paperH:qe,fileName:ya,onPopupBlocked:()=>{Oe(T("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."))}}),ko=ne=>{ye(ne),ue(we=>we.length>=ne?we:[...we,...Array(ne-we.length).fill(null)]),he(null)},Bo=ne=>{ue(we=>{const $e=[...we];return $e[ne]=null,$e}),le===ne&&he(null)},Wt=ne=>{if(le===null)return;const we=le;ue(Ge=>{const ut=[...Ge];return ut[we]=ne.length>0?ne:null,ut});const $e=ve.findIndex((Ge,ut)=>ut>we&&Ge===null);he($e!==-1?$e:null)},qa=N?ve.some(ne=>ne?.some(we=>!!we.colloquialPronunciation)):(p??[]).some(ne=>(ne.words??[]).some(we=>!!we.colloquialLabel)),Gt=s.useMemo(()=>co()?N?ie.slice(0,je).flatMap(ne=>(ne??[]).map(we=>[we.word,we.homonum])):(p??[]).flatMap(ne=>(ne.words??[]).map(we=>[we.label,we.homonum])):[],[N,ie,je,p]),[Xt,io]=s.useState(!1);s.useEffect(()=>{if(Gt.length===0)return;let ne=!1;return Promise.all(Gt.map(([we,$e])=>Wr(we,$e))).then(we=>{ne||io(we.some(Boolean))},()=>{}),()=>{ne=!0}},[Gt]);const ga=Gt.length>0&&Xt,Ya=s.useMemo(()=>[...N||_?[{label:T("wordTable.filter.columns","\uCE78 \uC218"),items:BB.map(ne=>({value:`${ne}\uCE78`,displayLabel:T("wordTable.filter.column",{count:ne})})),display:"segmented"}]:[],...tt&&(p?.length??0)>0?[pf(T,{hasPairs:vt,itemCount:Dt})]:[],...ta?[AB(T)]:[]],[T,N,_,tt,p?.length,vt,Dt,ta]),Ao={...N||_?{[T("wordTable.filter.columns","\uCE78 \uC218")]:`${kt}\uCE78`}:{},...tt&&(p?.length??0)>0?{[T(vt?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${ca}\uAC1C`}:{},...ta?{[T("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:mf[We]}:{}},Ka=(ne,we)=>{we===T("wordTable.filter.columns","\uCE78 \uC218")?N?ko(parseInt(ne)):Ze(parseInt(ne)):we===T(vt?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")?Ve(hf(parseInt(ne),Dt)):we===T("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&ct(bf(ne))},Jt=N?wS(ve.filter(ne=>ne!==null&&ne.length>0).map(ne=>({id:mp(ne),words:ne.map(X1)}))):p??[],Ot=()=>{N&&ue(ne=>ne.length>je?ne.slice(0,je):ne)},Qt=(ne=!1)=>{if(ft(ne),O&&m){const we=se.trim().toLowerCase();we&&Z($e=>$e.includes(we)?$e:[...$e,we]),m(se,Jt,be||void 0,ne),Ot();return}if(E&&m){m("",Jt,void 0,ne),Ot();return}if(m){gt(!0);return}no()},[Ma,Ut]=s.useState(!1),[fa,$t]=s.useState(""),de=fa.trim(),Be=de!==""&&X.includes(de.toLowerCase()),Me=()=>{$t(se?T("wordTable.save.copyName",{name:se,defaultValue:"{{name}} (\uBCF5\uC0AC)"}):""),Ut(!0)},Qe=()=>{!de||Be||!m||(m(de,Jt,be||void 0,!0),Ot(),Ut(!1))},Fe=Jt.length===0,Xe=Fe||O&&(se===""||K),Q=()=>{if(Fe){Oe(T("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(O&&se===""){Oe(T("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}O&&K&&Oe(T("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},fe=r.jsx(qo,{items:Jt,orientation:He,contentTypes:rt,cutLine:ht,showOutline:Ue,showDivLine:Ye,count:kt});return r.jsxs(r.Fragment,{children:[r.jsxs(Go,{type:"page",icon:t,title:e,disc:a,className:Ne("word-table-block",y),children:[Ma&&r.jsx(ao,{size:"small",title:b??T("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>Ut(!1),footer:({closeWithAnimation:ne})=>r.jsxs(r.Fragment,{children:[r.jsx(Ce,{htmlType:"button",size:48,type:"bar",label:T("common.cancel","\uCDE8\uC18C"),onClick:ne}),r.jsx(Ce,{htmlType:"button",size:48,type:"bar",variant:"main",label:T("common.save","\uC800\uC7A5"),disabled:!de||Be,onClick:Qe})]}),children:r.jsx(yo,{label:T("wordTable.save.nameLabel","\uC774\uB984"),value:fa,onChange:$t,placeholder:T("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:Qe,error:Be?T("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),mt&&m&&B?.({defaultName:typeof e=="string"?e:T("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:fe,previewW:Lt,previewH:qe,items:Jt,existingNames:yS().map(ne=>ne.name),saveAsNew:Et,onSave:(ne,we)=>{m(ne,Jt,we,Et),Ot(),gt(!1)},onCancel:()=>gt(!1)}),(N||A)&&le!==null&&k?.({cellIndex:le,onConfirm:N?Wt:ne=>{if(A){const we=ne[0];if(we){const $e=new Set((p??[]).map(ut=>ut.id));let Ge=mp([we]);for(let ut=2;$e.has(Ge);ut++)Ge=`${mp([we])}~${ut}`;A({id:Ge,words:[X1(we)]})}}he(null)},onClose:it}),!S&&r.jsx(Ki,{title:o,collapsible:n,defaultCollapsed:i,collapsed:l,onCollapsedChange:c,headerSummary:u,hasImage:ga,hasColloquial:qa,contentTypes:rt,orientation:He,showOutline:Ue,cutLine:ht,showDivLine:Ye,setters:{setContentTypes:at,setOrientation:lt,setShowOutline:Se,setCutLine:De,setShowDivLine:ee,setShowTopInfo:me,setShowBottomInfo:ke},showCutLine:(tt?st:kt)>1,showDivLine2:vt,middleSections:Ya,extraSelected:Ao,onExtraSelect:Ka,showPaperBands:G,showTopInfo:oe,showBottomInfo:Te}),ta&&Nt?r.jsx("div",{className:"word-table-block__pages",children:Nt.map((ne,we)=>r.jsx(qo,{orientation:He,contentTypes:rt,cutLine:ht,showOutline:Ue,showDivLine:Ye,count:st,items:ne,onRemoveItem:v,onReorder:w&&(($e,Ge)=>w($e+we*st,Ge+we*st)),renderCellAction:$&&(($e,Ge)=>$($e+we*st,Ge)),brand:Pe,code:h,contentRef:$e=>{Ee.current[we]=$e},pageNumber:{current:we+1,total:Nt.length},pageNumberPosition:We},we))}):r.jsx(qo,{orientation:He,contentTypes:rt,cutLine:ht,showOutline:Ue,showDivLine:Ye,count:kt,items:N?void 0:p??[],editCells:N?ve:void 0,activeCell:le,onActivateCell:N||A?he:void 0,onRemoveCell:N?Bo:void 0,onRemoveItem:N?void 0:v,onReorder:N?void 0:w,renderCellAction:N?void 0:$,brand:Pe,code:h,showFillerAdd:!!A,contentRef:pe}),!S&&!E&&(f||U!=null)&&r.jsxs("div",{className:"word-table-block__table-actions",children:[f&&r.jsx(Ce,{htmlType:"button",size:48,type:"bar",label:F,onClick:f}),U]}),O&&!S&&r.jsxs(jn,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[r.jsx(Ua,{variant:"custom",label:T("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:r.jsx(yo,{required:!0,value:I??"",onChange:j,placeholder:M?M+T("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):T("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:T("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:K?T("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:ne=>{(ne.key==="Tab"&&!ne.shiftKey||ne.key===" ")&&!(I??"").trim()&&(M??"").trim()&&(ne.preventDefault(),j?.(M??""))}})}),r.jsx(Ua,{variant:"custom",label:T("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:r.jsx(yo,{value:W??"",onChange:L,placeholder:z?z+T("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):T("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:T("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:ne=>{(ne.key==="Tab"&&!ne.shiftKey||ne.key===" ")&&!(W??"").trim()&&(z??"").trim()&&(ne.preventDefault(),L?.(z??""))}})})]})]}),!S&&r.jsxs("div",{className:"word-table-block__actions",children:[r.jsxs("div",{className:"word-table-block__actions-left",children:[!E&&C&&r.jsx(Ce,{htmlType:"button",size:40,type:"bar",label:T("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:C}),!E&&r.jsx(Ce,{htmlType:"button",size:40,type:"bar",label:T("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:La})]}),r.jsxs("div",{className:"word-table-block__actions-right",children:[P&&r.jsx(Ce,{htmlType:"button",size:"56",type:"bar",label:T("common.cancel","\uCDE8\uC18C"),onClick:P}),!E&&r.jsx(Ce,{htmlType:"button",size:"56",type:"bar",label:T("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:ja}),b&&r.jsx(Ce,{htmlType:"button",size:"56",type:"bar",label:b,onClick:()=>O?Me():Qt(!0),disabled:Fe,onDisabledClick:()=>{Oe(T("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),r.jsx(Ce,{htmlType:"button",size:"56",type:"bar",variant:"main",label:x??T("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>Qt(!1),disabled:Xe,onDisabledClick:Q})]})]}),r.jsx(Wo,{message:et,type:Ie,onClose:bt})]})}var kS=".ihabdevteam-core-scope .word-table-thumb{grid-gap:1px;background:var(--color-darkWhite);border-bottom:1px solid var(--color-darkWhite);display:grid;gap:1px;grid-auto-rows:minmax(min-content,1fr);height:140px;overflow:hidden}.ihabdevteam-core-scope .word-table-thumb__cell{align-items:center;background:var(--color-white);display:flex;flex-direction:column;gap:1px;justify-content:center;min-height:0;overflow:hidden;padding:4px}.ihabdevteam-core-scope .word-table-thumb__word{color:var(--color-black)}.ihabdevteam-core-scope .word-table-thumb .word-table-thumb__word{line-height:1.2}.ihabdevteam-core-scope .word-table-thumb__divider{background:var(--color-darkWhite);display:block;height:1px;margin:1px 0;width:30%}";ce(kS);function bp({items:e,className:t}){const a=e.length,o=a<=3?1:2,n=Math.ceil(a/o)||1,i=o*n;return r.jsx("div",{className:Ne("word-table-thumb",t),style:{gridTemplateColumns:`repeat(${o}, 1fr)`},children:Array.from({length:i},(l,c)=>{const u=e[c];return u?r.jsx("div",{className:"word-table-thumb__cell",children:(u.words?.length?u.words:[{label:u.id}]).map((d,h)=>r.jsxs(s.Fragment,{children:[h>0&&r.jsx("span",{className:"word-table-thumb__divider"}),r.jsx("span",{className:"word-table-thumb__word body-3",children:d.label})]},h))},c):r.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},c)})})}var BS=".ihabdevteam-core-scope .word-table-button{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:8px;border-radius:var(--radius-s,8px);box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:border-color .15s,box-shadow .15s;width:240px}.ihabdevteam-core-scope .word-table-button:hover{border-color:var(--color-main);box-shadow:0 2px 10px rgba(0,0,0,.06)}.ihabdevteam-core-scope .word-table-button:focus-visible{outline:2px solid var(--color-main);outline-offset:1px}.ihabdevteam-core-scope .word-table-button--selected{border-color:var(--color-main);box-shadow:0 0 0 1px var(--color-main) inset}.ihabdevteam-core-scope .word-table-button__thumb{flex:0 0 auto;height:290px}.ihabdevteam-core-scope .word-table-button__info{align-items:flex-start;display:flex;flex-direction:row;gap:8px;min-width:0;padding:12px 14px 0;position:relative}.ihabdevteam-core-scope .word-table-button__more{position:absolute;right:10px;top:8px}.ihabdevteam-core-scope .word-table-button__title{padding-right:34px}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__info{flex:1 1 auto;min-height:0}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__info-text{align-self:stretch}.ihabdevteam-core-scope .word-table-button__info-text{align-items:flex-start;display:flex;flex:1 1 auto;flex-direction:column;gap:4px;min-width:0;text-align:left}.ihabdevteam-core-scope .word-table-button__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-black);display:-webkit-box;overflow:hidden;overflow-wrap:anywhere}.ihabdevteam-core-scope .word-table-button__desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-gray);display:-webkit-box;overflow:hidden}.ihabdevteam-core-scope .word-table-button__meta{color:var(--color-gray)}.ihabdevteam-core-scope .word-table-button__meta-left{align-items:center;display:flex;gap:6px;min-width:0}.ihabdevteam-core-scope .word-table-button__meta-right{align-items:center;display:flex;flex-shrink:0;gap:8px;min-width:0}.ihabdevteam-core-scope .word-table-button__code{color:var(--color-gray);flex-shrink:0;white-space:nowrap}.ihabdevteam-core-scope .word-table-button__meta-left .word-table-button__meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .word-table-button__meta-row{align-items:center;display:flex;gap:8px;justify-content:space-between;min-width:0;padding:12px 14px 14px}.ihabdevteam-core-scope .word-table-button__badges{align-items:center;display:flex;flex:0 0 auto;gap:4px}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__meta-row{margin-top:auto}.ihabdevteam-core-scope .word-table-button__footer{display:flex;flex-direction:column;gap:8px;margin-top:auto;min-width:0;padding:12px 14px 14px}.ihabdevteam-core-scope .word-table-button__store-by{align-items:center;display:inline-flex;gap:6px;min-width:0;overflow:hidden}.ihabdevteam-core-scope .word-table-button__store-by .training-card__date{white-space:nowrap}.ihabdevteam-core-scope .word-table-button__store-stats{align-items:center;align-self:flex-end;display:inline-flex;gap:4px}.ihabdevteam-core-scope .word-table-button__more{flex:0 0 auto}.ihabdevteam-core-scope .word-table-button__badge{pointer-events:none}.ihabdevteam-core-scope .word-table-button__new-dot{background:var(--color-main);border-radius:50%;box-shadow:0 0 0 2px var(--color-white);height:10px;pointer-events:none;position:absolute;right:8px;top:8px;width:10px;z-index:3}";ce(BS);function Q1({items:e,name:t,description:a,createdAt:o,code:n,published:i,publishedLabel:l,shared:c,sharedLabel:u,isNew:d,publisherName:h,publishedAt:p,likeCount:m,downloadCount:C,onPublisherClick:v,selected:f,onClick:g,onMore:x,titleNode:b,className:w}){const{t:_}=_e.useTranslation(),A=b!=null,y=h!=null||p!=null||m!=null||C!=null,B=k=>{k.target===k.currentTarget&&!A&&(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),g?.())};return r.jsxs("div",{className:Ne("word-table-button",f?"word-table-button--selected":"",y?"":"word-table-button--no-footer",w),role:"button",tabIndex:0,"aria-label":n?`${t} (${n})`:t,onClick:A?void 0:g,onKeyDown:B,children:[d&&r.jsx("span",{className:"word-table-button__new-dot","aria-label":_("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),r.jsx(bp,{items:e,className:"word-table-button__thumb"}),r.jsxs("div",{className:"word-table-button__info",children:[r.jsxs("div",{className:"word-table-button__info-text",children:[b??r.jsx("div",{className:"word-table-button__title h4",children:t}),a&&r.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),x&&!A&&r.jsx(Ce,{htmlType:"button",className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:_("common.moreFor",{name:t}),onClick:k=>{k.stopPropagation(),x(k)}})]}),(n||o||i||c)&&r.jsxs("div",{className:"word-table-button__meta-row",children:[r.jsx("span",{className:"word-table-button__meta-left",children:r.jsx("span",{className:"word-table-button__meta caption-1",children:o?ri(o,_):""})}),r.jsxs("span",{className:"word-table-button__meta-right",children:[(i||c)&&r.jsxs("span",{className:"word-table-button__badges",children:[i&&r.jsx(St,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:l??_("myWordTable.publishedBadge","\uBC1C\uD589\uB428")}),c&&r.jsx(St,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:u??_("myWordTable.sharedBadge","\uACF5\uC720 \uC911")})]}),n&&r.jsx("span",{className:"word-table-button__code caption-1",children:n})]})]}),y&&r.jsxs("div",{className:"word-table-button__footer",children:[r.jsxs("span",{className:"word-table-button__store-by",children:[h&&(v?r.jsx("button",{className:"training-card__publisher body-4",type:"button","aria-label":_("wordTable.publisherFilter",{name:h,defaultValue:"{{name}} \uAC8C\uC2DC\uD55C \uAC83\uB9CC \uBCF4\uAE30"}),onClick:k=>{k.stopPropagation(),v()},children:h}):r.jsx("span",{className:"training-card__publisher training-card__publisher--static body-4",children:h})),p&&r.jsx("span",{className:"training-card__date body-4",children:ri(p,_)})]}),r.jsxs("span",{className:"word-table-button__store-stats",children:[m!=null&&r.jsx(St,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(m),"aria-label":_("common.likeCount",{count:m,defaultValue:`\uC88B\uC544\uC694 ${m}`})}),C!=null&&r.jsx(St,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(C),"aria-label":_("common.downloadCount",{count:C,defaultValue:`\uAC00\uC838\uAC04 \uC218 ${C}`})})]})]})]})}/**
|
|
1068
1068
|
* @license lucide-react v1.38.0 - ISC
|
|
@@ -1078,4 +1078,4 @@ ${_.badge}`:_.badge:void 0;if(y&&u(_.code))return null;if(!_.badge&&!h)return p(
|
|
|
1078
1078
|
|
|
1079
1079
|
/* !important \uBD88\uD544\uC694 \u2014 WordDataUpdatePopup.tsx\uC758 \uC778\uB77C\uC778 width\uB294 pct/isDone/isError\uC77C \uB54C\uB9CC
|
|
1080
1080
|
\uC124\uC815\uB418\uACE0 \uC774 indeterminate \uD074\uB798\uC2A4\uAC00 \uBD99\uB294 \uC0C1\uD0DC(state==='active' && pct===undefined)\uC5D0\uC11C\uB294
|
|
1081
|
-
\uC778\uB77C\uC778 width\uAC00 \uC544\uC608 \uC124\uC815\uB418\uC9C0 \uC54A\uC544(undefined) \uACBD\uD569 \uC790\uCCB4\uAC00 \uC5C6\uC74C(\uCF54\uB4DC \uD655\uC778\uB428). */.ihabdevteam-core-scope .wdup-bar__fill--indeterminate{animation:wdup-indeterminate 1.4s ease-in-out infinite;width:40%}@keyframes wdup-indeterminate{0%{transform:translateX(-150%)}to{transform:translateX(400%)}}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .wdup-bar__fill--indeterminate{animation:none!important;transform:none;width:100%}}.ihabdevteam-core-scope .wdup-phase-card__sub{color:var(--color-lightGray)}`;ce(NS);function TS(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function gp({icon:e,label:t,state:a,pct:o,subText:n}){const{t:i}=_e.useTranslation(),l=a==="done",c=a==="pending",u=a==="error",d=l?100:o??0;return r.jsxs("div",{className:"wdup-phase-card",children:[r.jsx("div",{className:`wdup-phase-card__icon${l?" wdup-phase-card__icon--done":u?" wdup-phase-card__icon--error":""}`,children:l?r.jsx(Lp,{size:22,color:"white",strokeWidth:2.5}):u?r.jsx(DS,{size:22,color:"white",strokeWidth:2.5}):r.jsx("span",{className:`wdup-phase-card__icon-inner${c?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),r.jsxs("div",{className:"wdup-phase-card__body",children:[r.jsxs("div",{className:"wdup-phase-card__top",children:[r.jsx("span",{className:`wdup-phase-card__label body-2${c?" wdup-phase-card__label--pending":""}`,children:t}),l?r.jsx(St,{variant:"sub",fill:"soft",size:"small",label:i("common.done","\uC644\uB8CC")}):u?r.jsx(St,{variant:"danger",fill:"soft",size:"small",label:i("common.failed","\uC2E4\uD328")}):(n||o!==void 0)&&r.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[n,n&&o!==void 0?` \xB7 ${o}%`:o!==void 0?`${o}%`:""]})]}),!c&&r.jsx("div",{className:"wdup-bar",children:r.jsx("div",{className:`wdup-bar__fill${l?" wdup-bar__fill--done":u?" wdup-bar__fill--error":""}${a==="active"&&o===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:o!==void 0||l||u?`${u?100:d}%`:void 0}})})]})]})}function ev({title:e,progress:t,onDone:a,onRetry:o,onClose:n,inline:i}){const{t:l}=_e.useTranslation(),{phase:c,error:u,wordCount:d,imagePage:h,imageDone:p,imageTotal:m,pairPercent:C}=t,v=TS(c),f=c==="done",g=!!u;function x(B){return g&&v===B?"error":v>B?"done":v===B?"active":"pending"}const b=x(1),w=x(2),_=x(3),A=c==="image-match"&&m?Math.round((p??0)/m*100):void 0,y=s.useMemo(()=>{if(w!=="done"){if(c==="image-list")return l("wordData.checkingPage",{page:h??1});if(c==="image-match"&&m)return l("wordData.imageCount",{done:on(p),total:on(m)})}},[w,c,h,m,p,l]);return r.jsx(ao,{inline:i,className:"popup--word-data-update",title:e,footer:g&&o?r.jsx(Ce,{htmlType:"button",size:56,variant:"main",onClick:o,children:l("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):g?r.jsx(Ce,{htmlType:"button",size:56,variant:"main",onClick:n??a,children:l("common.close","\uB2EB\uAE30")}):r.jsx(Ce,{htmlType:"button",size:56,variant:"main",disabled:!f,onClick:a,children:l("common.done","\uC644\uB8CC")}),children:r.jsxs("div",{className:"wdup-cards",children:[r.jsx(gp,{icon:r.jsx(Ep,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:b,subText:b==="active"?l("wordData.downloadingCount",{n:on(d),count:d}):void 0}),r.jsx(gp,{icon:r.jsx(SS,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:w,pct:A,subText:y}),r.jsx(gp,{icon:r.jsx(Tp,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:_,pct:_==="active"?C??0:void 0,subText:void 0})]})})}var jS=".ihabdevteam-core-scope .debug-result-launcher{bottom:18px;display:flex;flex-direction:column;gap:var(--spacing-xs);position:fixed;right:18px;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .debug-buttons{background:rgba(11,43,47,.02);border-radius:var(--radius-s);box-shadow:var(--shadow-dropdown);display:flex;flex-direction:column;gap:6px;padding:var(--spacing-xs)}.ihabdevteam-core-scope .debug-button{background:var(--color-white);border:1px solid rgba(11,43,47,.06);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;min-height:24px;padding:8px 12px}.ihabdevteam-core-scope .debug-button:hover{transform:translateY(-1px)}";ce(jS);function tv({enabled:e=!1,renderResultPopup:t}={}){const{t:a}=_e.useTranslation(),[o,n]=s.useState(null),[i,l]=s.useState(null),c=C=>{let v=null;C==="noise"?v={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}]}:C==="short"?v={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}]}:C==="long"?v={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}]}:C==="order"&&(v={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(v),n(C)},u=s.useCallback(()=>{n(null),l(null)},[]),d=s.useCallback(()=>c("noise"),[]),h=s.useCallback(()=>c("short"),[]),p=s.useCallback(()=>c("long"),[]),m=s.useCallback(()=>c("order"),[]);return e?r.jsxs("div",{className:"debug-result-launcher",children:[r.jsxs("div",{className:"debug-buttons",children:[r.jsx("button",{type:"button",className:"debug-button",onClick:d,children:a("debug.showResult",{type:"Noise",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),r.jsx("button",{type:"button",className:"debug-button",onClick:h,children:a("debug.showResult",{type:"ShortStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),r.jsx("button",{type:"button",className:"debug-button",onClick:p,children:a("debug.showResult",{type:"LongStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),r.jsx("button",{type:"button",className:"debug-button",onClick:m,children:a("debug.showResult",{type:"Order",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})})]}),o&&i?t?.({score:i.score,contextsLength:i.contextsLength,results:i.results,onReplay:u,onClose:u}):null]}):null}var LS=Object.freeze({__proto__:null,Accordion:Ng,ActionCard:jb,Alert:Xg,AppHeader:Rg,AudioMeter:Hi,AudioPlayer:Tn,Avatar:e0,Badge:St,BarChart:S0,BarChartControls:dd,Board:d0,BottomNav:Iu,BrandIdentity:Hu,Breadcrumb:a0,BulkBar:_0,Button:Ce,CORE_VERSION:Mn,Calendar:W0,CardStep:ip,ChartLegend:Oi,ChartSection:Fi,ChartTotal:wr,Checkbox:sd,ChoiceChips:Uf,CircleBadge:Yg,CodeBox:x0,ColorPicker:r0,CompanyMeta:f0,ConfirmPopup:pp,ConfirmStep:op,ConfirmWithTextStep:rp,ContrastFilterPanel:M1,CoreScope:Lb,CountTile:i0,CouponInputPopup:P1,DEFAULT_NOISE_SETTINGS:Dr,DatePicker:w0,DebugResultLauncher:tv,DescriptionTooltip:Co,DeviceSideTable:H0,Dialog:u0,Divider:Kg,Dropdown:_a,EffectPartyPopper:hs,EffectPartyPopperHost:I1,EmptyState:Nb,ErrorState:Tb,FILTER_ALL_VALUE:jt,FileUpload:t0,FilterPanel:Ga,FilterSectionInfo:_r,Footer:qf,GameIntro:D0,Header:Vu,Icon:ot,IconGridMenu:Gf,IconRenderer:ot,InfoTooltip:Ea,ItemActions:y0,LEVEL_MAX:Yo,LINE_CHART_HOVER_DELAY_MS:hd,LandingBottomSticky:Kf,LandingHeader:Yf,LineChart:E0,ListPopup:$1,ListenStep:ap,Loader:yr,MARKS:Sn,MARK_ICON:Bd,MARK_VARIANT:Ad,MediaQueryOverrideContext:xi,MenuTooltip:xr,NOISE_RATIO_MAX:Ar,NOISE_RATIO_STEP:Od,NoisePlayerContext:ts,NoiseSettingsTooltip:Zd,NoticeBox:$b,OrderListStep:np,PASS_CARD_BG_VARS:xo,POS_LABEL:Ed,PROMO_BANNER_BG_COMPONENTS:iu,PROMO_BANNER_BG_OPTIONS:Ob,PROMO_BANNER_BG_VARS:vr,Page:Ln,PageTitle:O1,Pagination:kn,Panel:jn,PanelGrid:m1,PanelRow:Ua,PanelRowDevice:h1,PassCard:Yu,PassCardBg:Wg,PassCardBgIHAB:Gg,PassCardBgLeftColorGrid:Ug,PassCardBgTwoCircle:qu,PaymentPlan:Vg,PersonCard:p0,PhonemeFilterPanel:L1,PhonemeSelectBlock:T1,Popup:ao,ProgressBar:z0,ProgressIndicator:Cd,PromoBanner:Eg,PromoBannerBgDark:Gc,PromoBannerBgDeep:Ic,PromoBannerBgDiagonal:Kc,PromoBannerBgDots:Xc,PromoBannerBgInstagram:nu,PromoBannerBgMain:Lc,PromoBannerBgNaver:ou,PromoBannerBgOutline:Qc,PromoBannerBgRadial:qc,PromoBannerBgSoft:$c,PromoBannerBgSoftSub:Fc,PromoBannerBgSub:Pc,PromoBannerBgSuccess:tu,PromoBannerBgWarm:Vc,PublicationCard:m0,Radio:Qu,RadioGroup:Zg,Rating:o0,ReportDocument:U1,ReportInfoPanel:q1,RingChart:$0,SENTENCE_TRAINING_TYPES:Ji,SearchSummary:Jg,Section:Go,SectionHeadFloat:cd,SectionHeader:g0,SegmentedControl:Ta,ShortcutBadge:Ju,SideNav:Ou,Slider:bd,SoundCompass:qg,SplashLogo:b0,StatChart:R0,SummaryStrip:G1,TRAINING_TOOLTIP_HOVER_DELAY_MS:td,Table:Vi,TableFilterPanel:Ki,Tabs:Qg,TextBoxTooltip:Nr,TextField:yo,Timeline:h0,Toast:Wo,Toggle:id,Toolbar:Pi,Tooltip:xa,TooltipInfo:Ea,TooltipTextBox:Nr,TopBanner:Dg,TrainingBlock:q0,TrainingBlockButton:Ri,TrainingBlockGrid:Y0,TrainingCard:K1,TrainingCardGroup:Z1,TrainingPagePopup:ro,TrainingPagePopupBottom:Xd,TrainingPagePopupTitle:Jd,TrainingResultPopup:lp,TrainingStep:wo,TrainingStepAudioPlayer:Tn,TrainingStepBullet:Wd,TrainingStepCard:Yd,TrainingStepConfirm:rs,TrainingStepConfirmWithText:ns,TrainingStepListen:is,TrainingStepOrderList:ss,TrainingStepTextBox:qd,TrainingStepTitle:Gd,TrainingTooltip:ad,TrainingWordCard:Ui,UpdateAlert:Y1,WAVE_A_MAX:a1,WAVE_H1_PX:os,WAVE_HMAX_PX:t1,WORD_LABEL_I18N_KEYS:Q0,WORD_TABLE_PAPER:Uo,WORD_TYPE_LABEL:Dd,WordDataProvider:W1,WordDataUpdatePopup:ev,WordImageTooltip:dp,WordSearchFilterPanel:j1,WordSearchResultBlock:N1,WordTable:qo,WordTableBlock:J1,WordTableButton:Q1,WordTablePopup:Cf,WordTableThumbnail:bp,buildMonthChartData:k0,cellKey:Af,cellLabel:Bf,cellsForLabels:zf,clearPassCardBgTheme:Va,clearPromoBannerBgTheme:Zt,closeTrainingPopup:g1,companyTypeLabel:F1,createTrainingScenario:x1,cx:Ne,deriveNoiseContexts:A1,derivePassCard:Wu,draftValues:Wf,effectiveNoiseVolume:Qi,effectiveSpeechVolume:Fd,expandSlashLabel:Yi,formatDuration:If,getControlDateRange:j0,getPayloadTimestamp:cs,getPromoBannerBgTheme:_i,getSelectedFromPayload:y1,getSelectedText:w1,getStepPayload:tp,getSteppedPayload:k1,injectPassCardBgTheme:Ha,injectPromoBannerBgTheme:Kt,isSelectionCorrect:B1,labelOfCellKey:zd,labelsForSave:kf,levelToPct:Zf,markAfterClick:kd,marksForSave:qi,mergeNoiseSettings:Er,missesByType:Mf,nextFocus:Tf,nextMisses:Lf,noiseElementVolume:es,noiseRatioOf:Sr,pageStartIndexes:Sd,passCardBgIhabTheme:Zu,passCardBgLeftColorGridTheme:Xu,passCardBgTwoCircleTheme:Uu,pctToLevel:Xf,posLabels:jd,printWordTable:X0,promoBannerBgDarkTheme:Wc,promoBannerBgDeepTheme:zc,promoBannerBgDiagonalTheme:Yc,promoBannerBgDotsTheme:Zc,promoBannerBgInstagramTheme:ru,promoBannerBgMainTheme:jc,promoBannerBgNaverTheme:au,promoBannerBgOutlineTheme:Jc,promoBannerBgRadialTheme:Uc,promoBannerBgSoftSubTheme:Oc,promoBannerBgSoftTheme:Mc,promoBannerBgSubTheme:Rc,promoBannerBgSuccessTheme:eu,promoBannerBgWarmTheme:Hc,recommendTables:Rf,regenerateUnpinned:Vf,removeItem:Hf,resolveTrainingItems:C1,resolveTrainingPopupMeta:Qd,reviewCells:xf,reviewMeta:wf,reviewSetPlan:$f,reviewTableName:yf,scoreKey:An,scoreSheetHeader:Sf,shouldConfirmDiscard:Z0,splitTrainingVariants:f1,summarize:K0,summarizeMisses:jf,tableTrends:Nf,toDraft:Of,toTrainingText:_1,togglePin:Ff,uncoveredLabels:Pf,useAnchoredMenu:Vo,useBarChartControl:ud,useCalendarMonth:ld,useComboboxSuggestions:rd,useDiscardGuard:R1,useFitScale:Md,useNoisePlayer:En,useSoundCompassExam:Ru,useToastLifecycle:vd,useWordData:V1,useWordTableDisplaySettings:Pd,useWordTablePrint:Xi,waveBarPx:Dn,waveBarVal:Nn,weakItems:Df,withStepTimes:ep,wordTypeLabels:Ld}),MS=Object.freeze({__proto__:null});const $S={...LS,...lk,...Z3,...MS};exports.Accordion=Ng,exports.ActionCard=jb,exports.Alert=Xg,exports.AppHeader=Rg,exports.AudioMeter=Hi,exports.AudioPlayer=Tn,exports.Avatar=e0,exports.Badge=St,exports.BarChart=S0,exports.BarChartControls=dd,exports.Board=d0,exports.BottomNav=Iu,exports.BrandIdentity=Hu,exports.Breadcrumb=a0,exports.BulkBar=_0,exports.Button=Ce,exports.CACHE_GROUPS=uu,exports.CAPABILITY=sr,exports.CHOSEONG=pt,exports.CORE_VERSION=Mn,exports.Calendar=W0,exports.CardStep=ip,exports.ChartLegend=Oi,exports.ChartSection=Fi,exports.ChartTotal=wr,exports.Checkbox=sd,exports.ChoiceChips=Uf,exports.CircleBadge=Yg,exports.CodeBox=x0,exports.ColorPicker=r0,exports.CompanyMeta=f0,exports.ConfirmPopup=pp,exports.ConfirmStep=op,exports.ConfirmWithTextStep=rp,exports.ContrastFilterPanel=M1,exports.CoreScope=Lb,exports.CountTile=i0,exports.CouponInputPopup=P1,exports.DEFAULT_LOCALE=So,exports.DEFAULT_NOISE_SETTINGS=Dr,exports.DatePicker=w0,exports.DebugResultLauncher=tv,exports.DescriptionTooltip=Co,exports.DeviceSideTable=H0,exports.Dialog=u0,exports.Divider=Kg,exports.DocumentTitleSuppressContext=lu,exports.Dropdown=_a,exports.EMPTY_COMPOSITION=Bi,exports.EffectPartyPopper=hs,exports.EffectPartyPopperHost=I1,exports.EmptyState=Nb,exports.ErrorState=Tb,exports.FILTER_ALL_VALUE=jt,exports.FileUpload=t0,exports.FilterPanel=Ga,exports.FilterSectionInfo=_r,exports.Footer=qf,exports.GameIntro=D0,exports.Header=Vu,exports.I18nProvider=Ix,exports.Icon=ot,exports.IconGridMenu=Gf,exports.IconRenderer=ot,exports.InfoTooltip=Ea,exports.ItemActions=y0,exports.JONGSEONG=Pt,exports.JUNGSEONG=yt,exports.LEVEL_MAX=Yo,exports.LINE_CHART_HOVER_DELAY_MS=hd,exports.LOCALE_STORAGE_KEY=fs,exports.LONG_STORIES=bo,exports.LandingBottomSticky=Kf,exports.LandingHeader=Yf,exports.LineChart=E0,exports.ListPopup=$1,exports.ListenStep=ap,exports.Loader=yr,exports.MARKS=Sn,exports.MARK_ICON=Bd,exports.MARK_VARIANT=Ad,exports.MediaQueryOverrideContext=xi,exports.MenuTooltip=xr,exports.NETWORK_ERROR_MESSAGE=Xn,exports.NOISE_DATAS=ho,exports.NOISE_RATIO_MAX=Ar,exports.NOISE_RATIO_STEP=Od,exports.NO_CODA=Da,exports.NoisePlayerContext=ts,exports.NoiseSettingsTooltip=Zd,exports.NoticeBox=$b,exports.ORDER_SETS=go,exports.OrderListStep=np,exports.PASS_CARD_BG_VARS=xo,exports.PERSONAL_PHONE_REGEX=ec,exports.PHONE_REGEX=Ql,exports.PLAN_FEATURES=hb,exports.PLAN_LIMITS=gb,exports.POS_LABEL=Ed,exports.PROMO_BANNER_BG_COMPONENTS=iu,exports.PROMO_BANNER_BG_OPTIONS=Ob,exports.PROMO_BANNER_BG_VARS=vr,exports.Page=Ln,exports.PageTitle=O1,exports.Pagination=kn,exports.Panel=jn,exports.PanelGrid=m1,exports.PanelRow=Ua,exports.PanelRowDevice=h1,exports.PassCard=Yu,exports.PassCardBg=Wg,exports.PassCardBgIHAB=Gg,exports.PassCardBgLeftColorGrid=Ug,exports.PassCardBgTwoCircle=qu,exports.PaymentPlan=Vg,exports.PersonCard=p0,exports.PhonemeFilterPanel=L1,exports.PhonemeSelectBlock=T1,exports.Popup=ao,exports.ProgressBar=z0,exports.ProgressIndicator=Cd,exports.PromoBanner=Eg,exports.PromoBannerBgDark=Gc,exports.PromoBannerBgDeep=Ic,exports.PromoBannerBgDiagonal=Kc,exports.PromoBannerBgDots=Xc,exports.PromoBannerBgInstagram=nu,exports.PromoBannerBgMain=Lc,exports.PromoBannerBgNaver=ou,exports.PromoBannerBgOutline=Qc,exports.PromoBannerBgRadial=qc,exports.PromoBannerBgSoft=$c,exports.PromoBannerBgSoftSub=Fc,exports.PromoBannerBgSub=Pc,exports.PromoBannerBgSuccess=tu,exports.PromoBannerBgWarm=Vc,exports.PublicationCard=m0,exports.Radio=Qu,exports.RadioGroup=Zg,exports.Rating=o0,exports.ReportDocument=U1,exports.ReportInfoPanel=q1,exports.RingChart=$0,exports.SENTENCE_TRAINING_TYPES=Ji,exports.SHORT_STORIES=mo,exports.SUPPORTED_LOCALES=jr,exports.SYLLABLE_MIN=Na,exports.SearchSummary=Jg,exports.Section=Go,exports.SectionHeadFloat=cd,exports.SectionHeader=g0,exports.SegmentedControl=Ta,exports.ShortcutBadge=Ju,exports.SideNav=Ou,exports.Slider=bd,exports.SoundCompass=qg,exports.SplashLogo=b0,exports.StatChart=R0,exports.SummaryStrip=G1,exports.TIER_RANK=mb,exports.TOPIC_TYPES=Xm,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=td,exports.TRAINING_TYPES=pc,exports.TRAINING_TYPE_I18N_KEY=ci,exports.Table=Vi,exports.TableFilterPanel=Ki,exports.Tabs=Qg,exports.TextBoxTooltip=Nr,exports.TextField=yo,exports.Timeline=h0,exports.Toast=Wo,exports.Toggle=id,exports.Toolbar=Pi,exports.Tooltip=xa,exports.TooltipInfo=Ea,exports.TooltipTextBox=Nr,exports.TopBanner=Dg,exports.TrainingBlock=q0,exports.TrainingBlockButton=Ri,exports.TrainingBlockGrid=Y0,exports.TrainingCard=K1,exports.TrainingCardGroup=Z1,exports.TrainingPagePopup=ro,exports.TrainingPagePopupBottom=Xd,exports.TrainingPagePopupTitle=Jd,exports.TrainingResultPopup=lp,exports.TrainingStep=wo,exports.TrainingStepAudioPlayer=Tn,exports.TrainingStepBullet=Wd,exports.TrainingStepCard=Yd,exports.TrainingStepConfirm=rs,exports.TrainingStepConfirmWithText=ns,exports.TrainingStepListen=is,exports.TrainingStepOrderList=ss,exports.TrainingStepTextBox=qd,exports.TrainingStepTitle=Gd,exports.TrainingTooltip=ad,exports.TrainingWordCard=Ui,exports.UpdateAlert=Y1,exports.VAP_PAGE_SIZE_OPTIONS=bn,exports.WAVE_A_MAX=a1,exports.WAVE_H1_PX=os,exports.WAVE_HMAX_PX=t1,exports.WORD_LABEL_I18N_KEYS=Q0,exports.WORD_SUGGESTION_ACCOUNT_LIMIT=Cb,exports.WORD_SUGGESTION_EXISTING_ERROR=_b,exports.WORD_SUGGESTION_WEEKLY_QUOTA=vb,exports.WORD_TABLE_PAPER=Uo,exports.WORD_TYPE_LABEL=Dd,exports.WordDataProvider=W1,exports.WordDataUpdatePopup=ev,exports.WordImageTooltip=dp,exports.WordSearchFilterPanel=j1,exports.WordSearchResultBlock=N1,exports.WordTable=qo,exports.WordTableBlock=J1,exports.WordTableButton=Q1,exports.WordTablePopup=Cf,exports.WordTableThumbnail=bp,exports.applyFontScale=ic,exports.applyTheme=rc,exports.balancedColumns=hl,exports.buildChangeWholeSyllableProblem=Hl,exports.buildDropCompoundProblem=Pl,exports.buildDropContrast3Problem=Rl,exports.buildDropContrastProblem=$l,exports.buildDropFinalConsonantProblem=zl,exports.buildGradeSection=gu,exports.buildMonthChartData=k0,exports.buildMultiPartPosContrast=dl,exports.buildPairIndex=Fh,exports.buildPartOfSpeechSection=fu,exports.buildPositionSection=rg,exports.buildRemoveConsonantProblem=Ol,exports.buildSelectSection=og,exports.buildSyllableMaskIndex=Fl,exports.buildSyllableSection=ag,exports.buildWordTypeSection=vu,exports.bulkSetImageExistence=Sh,exports.cardQuestionTitle=rm,exports.cellKey=Af,exports.cellLabel=Bf,exports.cellsForLabels=zf,exports.charToPronValue=wu,exports.checkImageExists=Wr,exports.classifyPairDifficulty=Ks,exports.clearAudioExistsCache=hh,exports.clearImageExistenceCache=Us,exports.clearPairIndexCache=ll,exports.clearPassCardBgTheme=Va,exports.clearPromoBannerBgTheme=Zt,exports.closeTrainingPopup=g1,exports.columnsFitting=pl,exports.companyTypeLabel=F1,exports.composeSyllable=ka,exports.computeDailySelection=lc,exports.configureImageResolver=xh,exports.configureNoiseSettingsStore=Sm,exports.configurePronunciationResolver=bh,exports.configureStorage=Ls,exports.configureTTS=ph,exports.configureTrainingCategories=Hm,exports.convertComposition=Bu,exports.copyText=Zl,exports.createDecompCache=Ys,exports.createTTSUrlResolver=Nm,exports.createTrainingScenario=x1,exports.cx=Ne,exports.dateToDb=Fm,exports.default=$S,exports.deriveNoiseContexts=A1,exports.derivePassCard=Wu,exports.downloadCsvText=um,exports.downloadSound=Pn,exports.draftValues=Wf,exports.effectiveNoiseVolume=Qi,exports.effectiveSpeechVolume=Fd,exports.ensureTrainingDataLoaded=dc,exports.escapeCsvField=cm,exports.expandSlashLabel=Yi,exports.fileExists=Ms,exports.filterContrastCandidates=ul,exports.finalToPhoneme=To,exports.firstChoseongOf=Zs,exports.fmtBytes=Gb,exports.formatCount=on,exports.formatDateKo=Tm,exports.formatDateLocale=ai,exports.formatDateLongKo=jm,exports.formatDateLongLocale=Lm,exports.formatDatetimeKo=Mm,exports.formatDuration=If,exports.formatPhone=Rm,exports.formatRelativeTime=ri,exports.formatTimeHM=ii,exports.formatYmd=ni,exports.getAssetBaseUrl=Ts,exports.getControlDateRange=j0,exports.getDailySelection=Km,exports.getElementAnalyser=Vs,exports.getElementVolume=ar,exports.getErrorMessage=en,exports.getImageExistenceStats=On,exports.getImageExistsCached=kh,exports.getImageResolver=co,exports.getNoiseBaseUrl=$s,exports.getNoiseFileGain=Rs,exports.getPairIndex=Lo,exports.getPayloadTimestamp=cs,exports.getPlanTier=fb,exports.getPromoBannerBgTheme=_i,exports.getPronunciationResolver=Is,exports.getSavedFontScale=nc,exports.getSavedTheme=oc,exports.getSelectedFromPayload=y1,exports.getSelectedText=w1,exports.getSignedOrPublicUrl=zr,exports.getStepPayload=tp,exports.getSteppedPayload=k1,exports.getTTSFallbackUrlResolver=zs,exports.getTTSUrlResolver=Ir,exports.getTodayKst=Ca,exports.getTodayKstDate=po,exports.getTopicTypes=si,exports.getTrainingPools=cc,exports.getTrainingTypes=ac,exports.getWordPool=Po,exports.hasQuestionWordConstraint=Qh,exports.hasSel=zt,exports.hasStructureContrast=Ur,exports.initFontScale=qm,exports.initTheme=Gm,exports.injectPassCardBgTheme=Ha,exports.injectPromoBannerBgTheme=Kt,exports.installSkewRecovery=kb,exports.isAllChoseong=Js,exports.isManagerTier=bb,exports.isManualOnlyType=tm,exports.isNetworkErrorMessage=Vl,exports.isPersonalPhone=Im,exports.isSelectionCorrect=B1,exports.isSessionForThisTab=Bb,exports.isSyllablePattern=ol,exports.isThisWeekPick=xb,exports.isTrainingDataLoaded=Zm,exports.isValidPhone=zm,exports.isValidQuestionWord=em,exports.itemCorrectness=ql,exports.jamoToNamesForSpeech=nm,exports.kstStartOfDay=oi,exports.labelOfCellKey=zd,exports.labelsForSave=kf,exports.lazyPage=Ab,exports.levelToPct=Zf,exports.loadGameLeaderboard=Am,exports.loadMyGameRanks=Bm,exports.loadNoiseSettings=Kl,exports.loadTrainingData=uc,exports.logCrossword=gm,exports.logTrainingCompletion=Ul,exports.logTrainingTime=Gl,exports.lsBytes=du,exports.markAfterClick=kd,exports.marksForSave=qi,exports.matchSyllables=$o,exports.matchesChoseongSearch=Eh,exports.matchesSyllablePattern=rl,exports.matchesWordQuery=Dh,exports.meaningKey=Si,exports.mergeNoiseSettings=Er,exports.mergeQuestionText=Ll,exports.minimalPairDistractors=Hn,exports.missesByType=Mf,exports.nextFocus=Tf,exports.nextMisses=Lf,exports.noiseElementVolume=es,exports.noiseRatioOf=Sr,exports.normalizeDate=Om,exports.normalizeWordAttributeFilter=Qm,exports.officialSoundPath=Dm,exports.pageStartIndexes=Sd,exports.parseLocalYmd=Jl,exports.parseSortValue=lm,exports.parseSyllable=Ke,exports.passCardBgIhabTheme=Zu,exports.passCardBgLeftColorGridTheme=Xu,exports.passCardBgTwoCircleTheme=Uu,exports.patternToComposition=Ph,exports.pctToLevel=Xf,exports.phonemePartsOf=om,exports.pickEuRo=El,exports.pickEulReul=kl,exports.pickEunNeun=Al,exports.pickIga=yl,exports.pickWaGwa=Sl,exports.posLabels=jd,exports.prefetchChunk=Sb,exports.prewarmImageCache=Bh,exports.primarySelPart=cr,exports.printWordTable=X0,exports.promoBannerBgDarkTheme=Wc,exports.promoBannerBgDeepTheme=zc,exports.promoBannerBgDiagonalTheme=Yc,exports.promoBannerBgDotsTheme=Zc,exports.promoBannerBgInstagramTheme=ru,exports.promoBannerBgMainTheme=jc,exports.promoBannerBgNaverTheme=au,exports.promoBannerBgOutlineTheme=Jc,exports.promoBannerBgRadialTheme=Uc,exports.promoBannerBgSoftSubTheme=Oc,exports.promoBannerBgSoftTheme=Mc,exports.promoBannerBgSubTheme=Rc,exports.promoBannerBgSuccessTheme=eu,exports.promoBannerBgWarmTheme=Hc,exports.pronToCharValue=ku,exports.readLevel=Ws,exports.recommendTables=Rf,exports.recoverFromSkew=fi,exports.regenerateUnpinned=Vf,exports.removeItem=Hf,exports.reorderArray=Dl,exports.reportAppliedNoiseSettings=dr,exports.resolveAssetUrl=Pr,exports.resolveSoundPath=Rn,exports.resolveTrainingItems=C1,exports.resolveTrainingPopupMeta=Qd,exports.resumeAudioMeter=Fr,exports.reviewCells=xf,exports.reviewMeta=wf,exports.reviewSetPlan=$f,exports.reviewTableName=yf,exports.routeElementAudio=tr,exports.sample=Aa,exports.saveLocale=Rx,exports.saveNoiseSettings=ei,exports.scoreKey=An,exports.scoreSheetHeader=Sf,exports.searchAndRankWords=Ih,exports.setAssetBaseUrl=uh,exports.setCrosswordLogger=bm,exports.setElementVolume=$a,exports.setGameLeaderboardLoader=wm,exports.setGameRanksLoader=ym,exports.setGameScoreSubmitter=_m,exports.setTrainingCompletionLogger=mm,exports.setTrainingTimeLogger=hm,exports.setWordPool=pm,exports.shouldConfirmDiscard=Z0,exports.shuffle=nt,exports.skewReloadPending=wc,exports.sortToValue=sm,exports.soundOf=Zn,exports.speak=sh,exports.splitTrainingVariants=f1,exports.stopSpeaking=lh,exports.submitGameScore=km,exports.summarize=K0,exports.summarizeMisses=jf,exports.syllMatchesComp=Ja,exports.syllableContrasts=Ro,exports.syllableLength=jo,exports.syllablePron=Qr,exports.syllableToFilter=ki,exports.tableTrends=Nf,exports.toBase64UrlSafe=Em,exports.toChoseong=Xs,exports.toDraft=Of,exports.toItemResults=Yl,exports.toKstHm=$m,exports.toKstYmd=Ia,exports.toStandardPronunciation=Kh,exports.toStorageName=tn,exports.toTrainingText=_1,exports.toUserErrorMessage=im,exports.toWordAttributeFilterCodes=ui,exports.toWordEntry=Eb,exports.today=Cr,exports.toggleAttributeFilter=ng,exports.togglePin=Ff,exports.uncoveredLabels=Pf,exports.useAnchoredMenu=Vo,exports.useBarChartControl=ud,exports.useCacheManagement=Ub,exports.useCalendarMonth=ld,exports.useComboboxSuggestions=rd,exports.useDailyTrainingSelection=_g,exports.useDelayedHoverAnchor=Mu,exports.useDeviceManagement=tg,exports.useDiscardGuard=R1,exports.useDocumentTitle=cu,exports.useEscToClose=Lu,exports.useFitScale=Md,exports.useFontScale=yi,exports.useHoverAnchor=Ho,exports.useI18n=Px,exports.useListControls=Ag,exports.useMediaQuery=sa,exports.useNoisePlayer=En,exports.usePageResetOnChange=$u,exports.usePagedList=Bg,exports.usePasswordChange=Wb,exports.useRelativeDay=Vb,exports.useSoundCompassExam=Ru,exports.useTablePaging=hu,exports.useTableSort=mu,exports.useToastLifecycle=vd,exports.useToastState=Di,exports.useTrainingTypeLabels=Sg,exports.useVisitAllPanel=Jb,exports.useVisitHistory=Kb,exports.useVisitSchedule=Xb,exports.useWindowEvent=hn,exports.useWordAttributeFilterKeys=bu,exports.useWordData=V1,exports.useWordDataStats=qb,exports.useWordMeanings=kg,exports.useWordTableDisplaySettings=Pd,exports.useWordTablePrint=Xi,exports.useWordTrainingDataGeneration=Cg,exports.useWordTrainingFilter=vg,exports.validateSyllableSearchInput=zh,exports.valueToJamos=Fa,exports.waveBarPx=Dn,exports.waveBarVal=Nn,exports.weakItems=Df,exports.withEuRo=Jh,exports.withEulReul=Bl,exports.withEunNeun=Zh,exports.withIga=wl,exports.withStepTimes=ep,exports.withWaGwa=Xh,exports.wordAttributeFilterFromCodes=di,exports.wordContainsChoseong=Th,exports.wordContainsJongseong=Mh,exports.wordContainsJungseong=jh,exports.wordHasConsonantAt=$h,exports.wordHasNoCoda=el,exports.wordHasSyllableMatching=al,exports.wordTypeLabels=Ld,exports.wrongItems=fm,exports.\uB4F1\uAE09\uC124\uBA85=Du;
|
|
1081
|
+
\uC778\uB77C\uC778 width\uAC00 \uC544\uC608 \uC124\uC815\uB418\uC9C0 \uC54A\uC544(undefined) \uACBD\uD569 \uC790\uCCB4\uAC00 \uC5C6\uC74C(\uCF54\uB4DC \uD655\uC778\uB428). */.ihabdevteam-core-scope .wdup-bar__fill--indeterminate{animation:wdup-indeterminate 1.4s ease-in-out infinite;width:40%}@keyframes wdup-indeterminate{0%{transform:translateX(-150%)}to{transform:translateX(400%)}}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .wdup-bar__fill--indeterminate{animation:none!important;transform:none;width:100%}}.ihabdevteam-core-scope .wdup-phase-card__sub{color:var(--color-lightGray)}`;ce(NS);function TS(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function gp({icon:e,label:t,state:a,pct:o,subText:n}){const{t:i}=_e.useTranslation(),l=a==="done",c=a==="pending",u=a==="error",d=l?100:o??0;return r.jsxs("div",{className:"wdup-phase-card",children:[r.jsx("div",{className:`wdup-phase-card__icon${l?" wdup-phase-card__icon--done":u?" wdup-phase-card__icon--error":""}`,children:l?r.jsx(Lp,{size:22,color:"white",strokeWidth:2.5}):u?r.jsx(DS,{size:22,color:"white",strokeWidth:2.5}):r.jsx("span",{className:`wdup-phase-card__icon-inner${c?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),r.jsxs("div",{className:"wdup-phase-card__body",children:[r.jsxs("div",{className:"wdup-phase-card__top",children:[r.jsx("span",{className:`wdup-phase-card__label body-2${c?" wdup-phase-card__label--pending":""}`,children:t}),l?r.jsx(St,{variant:"sub",fill:"soft",size:"small",label:i("common.done","\uC644\uB8CC")}):u?r.jsx(St,{variant:"danger",fill:"soft",size:"small",label:i("common.failed","\uC2E4\uD328")}):(n||o!==void 0)&&r.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[n,n&&o!==void 0?` \xB7 ${o}%`:o!==void 0?`${o}%`:""]})]}),!c&&r.jsx("div",{className:"wdup-bar",children:r.jsx("div",{className:`wdup-bar__fill${l?" wdup-bar__fill--done":u?" wdup-bar__fill--error":""}${a==="active"&&o===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:o!==void 0||l||u?`${u?100:d}%`:void 0}})})]})]})}function ev({title:e,progress:t,onDone:a,onRetry:o,onClose:n,inline:i}){const{t:l}=_e.useTranslation(),{phase:c,error:u,wordCount:d,imagePage:h,imageDone:p,imageTotal:m,pairPercent:C}=t,v=TS(c),f=c==="done",g=!!u;function x(B){return g&&v===B?"error":v>B?"done":v===B?"active":"pending"}const b=x(1),w=x(2),_=x(3),A=c==="image-match"&&m?Math.round((p??0)/m*100):void 0,y=s.useMemo(()=>{if(w!=="done"){if(c==="image-list")return l("wordData.checkingPage",{page:h??1});if(c==="image-match"&&m)return l("wordData.imageCount",{done:on(p),total:on(m)})}},[w,c,h,m,p,l]);return r.jsx(ao,{inline:i,className:"popup--word-data-update",title:e,footer:g&&o?r.jsx(Ce,{htmlType:"button",size:56,variant:"main",onClick:o,children:l("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):g?r.jsx(Ce,{htmlType:"button",size:56,variant:"main",onClick:n??a,children:l("common.close","\uB2EB\uAE30")}):r.jsx(Ce,{htmlType:"button",size:56,variant:"main",disabled:!f,onClick:a,children:l("common.done","\uC644\uB8CC")}),children:r.jsxs("div",{className:"wdup-cards",children:[r.jsx(gp,{icon:r.jsx(Ep,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:b,subText:b==="active"?l("wordData.downloadingCount",{n:on(d),count:d}):void 0}),r.jsx(gp,{icon:r.jsx(SS,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:w,pct:A,subText:y}),r.jsx(gp,{icon:r.jsx(Tp,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:_,pct:_==="active"?C??0:void 0,subText:void 0})]})})}var jS=".ihabdevteam-core-scope .debug-result-launcher{bottom:18px;display:flex;flex-direction:column;gap:var(--spacing-xs);position:fixed;right:18px;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .debug-buttons{background:rgba(11,43,47,.02);border-radius:var(--radius-s);box-shadow:var(--shadow-dropdown);display:flex;flex-direction:column;gap:6px;padding:var(--spacing-xs)}.ihabdevteam-core-scope .debug-button{background:var(--color-white);border:1px solid rgba(11,43,47,.06);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;min-height:24px;padding:8px 12px}.ihabdevteam-core-scope .debug-button:hover{transform:translateY(-1px)}";ce(jS);function tv({enabled:e=!1,renderResultPopup:t}={}){const{t:a}=_e.useTranslation(),[o,n]=s.useState(null),[i,l]=s.useState(null),c=C=>{let v=null;C==="noise"?v={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}]}:C==="short"?v={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}]}:C==="long"?v={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}]}:C==="order"&&(v={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(v),n(C)},u=s.useCallback(()=>{n(null),l(null)},[]),d=s.useCallback(()=>c("noise"),[]),h=s.useCallback(()=>c("short"),[]),p=s.useCallback(()=>c("long"),[]),m=s.useCallback(()=>c("order"),[]);return e?r.jsxs("div",{className:"debug-result-launcher",children:[r.jsxs("div",{className:"debug-buttons",children:[r.jsx("button",{type:"button",className:"debug-button",onClick:d,children:a("debug.showResult",{type:"Noise",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),r.jsx("button",{type:"button",className:"debug-button",onClick:h,children:a("debug.showResult",{type:"ShortStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),r.jsx("button",{type:"button",className:"debug-button",onClick:p,children:a("debug.showResult",{type:"LongStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),r.jsx("button",{type:"button",className:"debug-button",onClick:m,children:a("debug.showResult",{type:"Order",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})})]}),o&&i?t?.({score:i.score,contextsLength:i.contextsLength,results:i.results,onReplay:u,onClose:u}):null]}):null}var LS=Object.freeze({__proto__:null,Accordion:Ng,ActionCard:jb,Alert:Xg,AppHeader:Rg,AudioMeter:Hi,AudioPlayer:Tn,Avatar:e0,Badge:St,BarChart:S0,BarChartControls:dd,Board:d0,BottomNav:Iu,BrandIdentity:Hu,Breadcrumb:a0,BulkBar:_0,Button:Ce,CORE_VERSION:Mn,Calendar:W0,CardStep:ip,ChartLegend:Oi,ChartSection:Fi,ChartTotal:wr,Checkbox:sd,ChoiceChips:Uf,CircleBadge:Yg,CodeBox:x0,ColorPicker:r0,CompanyMeta:f0,ConfirmPopup:pp,ConfirmStep:op,ConfirmWithTextStep:rp,ContrastFilterPanel:M1,CoreScope:Lb,CountTile:i0,CouponInputPopup:P1,DEFAULT_NOISE_SETTINGS:Dr,DatePicker:w0,DebugResultLauncher:tv,DescriptionTooltip:Co,DeviceSideTable:H0,Dialog:u0,Divider:Kg,Dropdown:_a,EffectPartyPopper:hs,EffectPartyPopperHost:I1,EmptyState:Nb,ErrorState:Tb,FILTER_ALL_VALUE:jt,FileUpload:t0,FilterPanel:Ga,FilterSectionInfo:_r,Footer:qf,GameIntro:D0,Header:Vu,Icon:ot,IconGridMenu:Gf,IconRenderer:ot,InfoTooltip:Ea,ItemActions:y0,LEVEL_MAX:Yo,LINE_CHART_HOVER_DELAY_MS:hd,LandingBottomSticky:Kf,LandingHeader:Yf,LineChart:E0,ListPopup:$1,ListenStep:ap,Loader:yr,MARKS:Sn,MARK_ICON:Bd,MARK_VARIANT:Ad,MediaQueryOverrideContext:xi,MenuTooltip:xr,NOISE_RATIO_MAX:Ar,NOISE_RATIO_STEP:Od,NoisePlayerContext:ts,NoiseSettingsTooltip:Zd,NoticeBox:$b,OrderListStep:np,PASS_CARD_BG_VARS:xo,POS_LABEL:Ed,PROMO_BANNER_BG_COMPONENTS:iu,PROMO_BANNER_BG_OPTIONS:Ob,PROMO_BANNER_BG_VARS:vr,Page:Ln,PageTitle:O1,Pagination:kn,Panel:jn,PanelGrid:m1,PanelRow:Ua,PanelRowDevice:h1,PassCard:Yu,PassCardBg:Wg,PassCardBgIHAB:Gg,PassCardBgLeftColorGrid:Ug,PassCardBgTwoCircle:qu,PaymentPlan:Vg,PersonCard:p0,PhonemeFilterPanel:L1,PhonemeSelectBlock:T1,Popup:ao,ProgressBar:z0,ProgressIndicator:Cd,PromoBanner:Eg,PromoBannerBgDark:Gc,PromoBannerBgDeep:Ic,PromoBannerBgDiagonal:Kc,PromoBannerBgDots:Xc,PromoBannerBgInstagram:nu,PromoBannerBgMain:Lc,PromoBannerBgNaver:ou,PromoBannerBgOutline:Qc,PromoBannerBgRadial:qc,PromoBannerBgSoft:$c,PromoBannerBgSoftSub:Fc,PromoBannerBgSub:Pc,PromoBannerBgSuccess:tu,PromoBannerBgWarm:Vc,PublicationCard:m0,Radio:Qu,RadioGroup:Zg,Rating:o0,ReportDocument:U1,ReportInfoPanel:q1,RingChart:$0,SENTENCE_TRAINING_TYPES:Ji,SearchSummary:Jg,Section:Go,SectionHeadFloat:cd,SectionHeader:g0,SegmentedControl:Ta,ShortcutBadge:Ju,SideNav:Ou,Slider:bd,SoundCompass:qg,SplashLogo:b0,StatChart:R0,SummaryStrip:G1,TRAINING_TOOLTIP_HOVER_DELAY_MS:td,Table:Vi,TableFilterPanel:Ki,Tabs:Qg,TextBoxTooltip:Nr,TextField:yo,Timeline:h0,Toast:Wo,Toggle:id,Toolbar:Pi,Tooltip:xa,TooltipInfo:Ea,TooltipTextBox:Nr,TopBanner:Dg,TrainingBlock:q0,TrainingBlockButton:Ri,TrainingBlockGrid:Y0,TrainingCard:K1,TrainingCardGroup:Z1,TrainingPagePopup:ro,TrainingPagePopupBottom:Xd,TrainingPagePopupTitle:Jd,TrainingResultPopup:lp,TrainingStep:wo,TrainingStepAudioPlayer:Tn,TrainingStepBullet:Wd,TrainingStepCard:Yd,TrainingStepConfirm:rs,TrainingStepConfirmWithText:ns,TrainingStepListen:is,TrainingStepOrderList:ss,TrainingStepTextBox:qd,TrainingStepTitle:Gd,TrainingTooltip:ad,TrainingWordCard:Ui,UpdateAlert:Y1,WAVE_A_MAX:a1,WAVE_H1_PX:os,WAVE_HMAX_PX:t1,WORD_LABEL_I18N_KEYS:Q0,WORD_TABLE_PAPER:Uo,WORD_TYPE_LABEL:Dd,WordDataProvider:W1,WordDataUpdatePopup:ev,WordImageTooltip:dp,WordSearchFilterPanel:j1,WordSearchResultBlock:N1,WordTable:qo,WordTableBlock:J1,WordTableButton:Q1,WordTablePopup:Cf,WordTableThumbnail:bp,buildMonthChartData:k0,cellKey:Af,cellLabel:Bf,cellsForLabels:zf,clearPassCardBgTheme:Va,clearPromoBannerBgTheme:Zt,closeTrainingPopup:g1,companyTypeLabel:F1,createTrainingScenario:x1,cx:Ne,deriveNoiseContexts:A1,derivePassCard:Wu,draftValues:Wf,effectiveNoiseVolume:Qi,effectiveSpeechVolume:Fd,expandSlashLabel:Yi,formatDuration:If,getControlDateRange:j0,getPayloadTimestamp:cs,getPromoBannerBgTheme:_i,getSelectedFromPayload:y1,getSelectedText:w1,getStepPayload:tp,getSteppedPayload:k1,injectPassCardBgTheme:Ha,injectPromoBannerBgTheme:Kt,isSelectionCorrect:B1,labelOfCellKey:zd,labelsForSave:kf,levelToPct:Zf,markAfterClick:kd,marksForSave:qi,mergeNoiseSettings:Er,missesByType:Mf,nextFocus:Tf,nextMisses:Lf,noiseElementVolume:es,noiseRatioOf:Sr,pageStartIndexes:Sd,passCardBgIhabTheme:Zu,passCardBgLeftColorGridTheme:Xu,passCardBgTwoCircleTheme:Uu,pctToLevel:Xf,posLabels:jd,printWordTable:X0,promoBannerBgDarkTheme:Wc,promoBannerBgDeepTheme:zc,promoBannerBgDiagonalTheme:Yc,promoBannerBgDotsTheme:Zc,promoBannerBgInstagramTheme:ru,promoBannerBgMainTheme:jc,promoBannerBgNaverTheme:au,promoBannerBgOutlineTheme:Jc,promoBannerBgRadialTheme:Uc,promoBannerBgSoftSubTheme:Oc,promoBannerBgSoftTheme:Mc,promoBannerBgSubTheme:Rc,promoBannerBgSuccessTheme:eu,promoBannerBgWarmTheme:Hc,recommendTables:Rf,regenerateUnpinned:Vf,removeItem:Hf,resolveTrainingItems:C1,resolveTrainingPopupMeta:Qd,reviewCells:xf,reviewMeta:wf,reviewSetPlan:$f,reviewTableName:yf,scoreKey:An,scoreSheetHeader:Sf,shouldConfirmDiscard:Z0,splitTrainingVariants:f1,summarize:K0,summarizeMisses:jf,tableTrends:Nf,toDraft:Of,toTrainingText:_1,togglePin:Ff,uncoveredLabels:Pf,useAnchoredMenu:Vo,useBarChartControl:ud,useCalendarMonth:ld,useComboboxSuggestions:rd,useDiscardGuard:R1,useFitScale:Md,useNoisePlayer:En,useSoundCompassExam:Ru,useToastLifecycle:vd,useWordData:V1,useWordTableDisplaySettings:Pd,useWordTablePrint:Xi,waveBarPx:Dn,waveBarVal:Nn,weakItems:Df,withStepTimes:ep,wordTypeLabels:Ld}),MS=Object.freeze({__proto__:null});const $S={...LS,...lk,...Z3,...MS};exports.Accordion=Ng,exports.ActionCard=jb,exports.Alert=Xg,exports.AppHeader=Rg,exports.AudioMeter=Hi,exports.AudioPlayer=Tn,exports.Avatar=e0,exports.Badge=St,exports.BarChart=S0,exports.BarChartControls=dd,exports.Board=d0,exports.BottomNav=Iu,exports.BrandIdentity=Hu,exports.Breadcrumb=a0,exports.BulkBar=_0,exports.Button=Ce,exports.CACHE_GROUPS=uu,exports.CAPABILITY=sr,exports.CHOSEONG=pt,exports.CORE_VERSION=Mn,exports.Calendar=W0,exports.CardStep=ip,exports.ChartLegend=Oi,exports.ChartSection=Fi,exports.ChartTotal=wr,exports.Checkbox=sd,exports.ChoiceChips=Uf,exports.CircleBadge=Yg,exports.CodeBox=x0,exports.ColorPicker=r0,exports.CompanyMeta=f0,exports.ConfirmPopup=pp,exports.ConfirmStep=op,exports.ConfirmWithTextStep=rp,exports.ContrastFilterPanel=M1,exports.CoreScope=Lb,exports.CountTile=i0,exports.CouponInputPopup=P1,exports.DEFAULT_LOCALE=So,exports.DEFAULT_NOISE_SETTINGS=Dr,exports.DatePicker=w0,exports.DebugResultLauncher=tv,exports.DescriptionTooltip=Co,exports.DeviceSideTable=H0,exports.Dialog=u0,exports.Divider=Kg,exports.DocumentTitleSuppressContext=lu,exports.Dropdown=_a,exports.EMPTY_COMPOSITION=Bi,exports.EffectPartyPopper=hs,exports.EffectPartyPopperHost=I1,exports.EmptyState=Nb,exports.ErrorState=Tb,exports.FILTER_ALL_VALUE=jt,exports.FileUpload=t0,exports.FilterPanel=Ga,exports.FilterSectionInfo=_r,exports.Footer=qf,exports.GameIntro=D0,exports.Header=Vu,exports.I18nProvider=Ix,exports.Icon=ot,exports.IconGridMenu=Gf,exports.IconRenderer=ot,exports.InfoTooltip=Ea,exports.ItemActions=y0,exports.JONGSEONG=Pt,exports.JUNGSEONG=yt,exports.LEVEL_MAX=Yo,exports.LINE_CHART_HOVER_DELAY_MS=hd,exports.LOCALE_STORAGE_KEY=fs,exports.LONG_STORIES=bo,exports.LandingBottomSticky=Kf,exports.LandingHeader=Yf,exports.LineChart=E0,exports.ListPopup=$1,exports.ListenStep=ap,exports.Loader=yr,exports.MARKS=Sn,exports.MARK_ICON=Bd,exports.MARK_VARIANT=Ad,exports.MediaQueryOverrideContext=xi,exports.MenuTooltip=xr,exports.NETWORK_ERROR_MESSAGE=Xn,exports.NOISE_DATAS=ho,exports.NOISE_RATIO_MAX=Ar,exports.NOISE_RATIO_STEP=Od,exports.NO_CODA=Da,exports.NoisePlayerContext=ts,exports.NoiseSettingsTooltip=Zd,exports.NoticeBox=$b,exports.ORDER_SETS=go,exports.OrderListStep=np,exports.PASS_CARD_BG_VARS=xo,exports.PERSONAL_PHONE_REGEX=ec,exports.PHONE_REGEX=Ql,exports.PLAN_FEATURES=hb,exports.PLAN_LIMITS=gb,exports.POS_LABEL=Ed,exports.PROMO_BANNER_BG_COMPONENTS=iu,exports.PROMO_BANNER_BG_OPTIONS=Ob,exports.PROMO_BANNER_BG_VARS=vr,exports.Page=Ln,exports.PageTitle=O1,exports.Pagination=kn,exports.Panel=jn,exports.PanelGrid=m1,exports.PanelRow=Ua,exports.PanelRowDevice=h1,exports.PassCard=Yu,exports.PassCardBg=Wg,exports.PassCardBgIHAB=Gg,exports.PassCardBgLeftColorGrid=Ug,exports.PassCardBgTwoCircle=qu,exports.PaymentPlan=Vg,exports.PersonCard=p0,exports.PhonemeFilterPanel=L1,exports.PhonemeSelectBlock=T1,exports.Popup=ao,exports.ProgressBar=z0,exports.ProgressIndicator=Cd,exports.PromoBanner=Eg,exports.PromoBannerBgDark=Gc,exports.PromoBannerBgDeep=Ic,exports.PromoBannerBgDiagonal=Kc,exports.PromoBannerBgDots=Xc,exports.PromoBannerBgInstagram=nu,exports.PromoBannerBgMain=Lc,exports.PromoBannerBgNaver=ou,exports.PromoBannerBgOutline=Qc,exports.PromoBannerBgRadial=qc,exports.PromoBannerBgSoft=$c,exports.PromoBannerBgSoftSub=Fc,exports.PromoBannerBgSub=Pc,exports.PromoBannerBgSuccess=tu,exports.PromoBannerBgWarm=Vc,exports.PublicationCard=m0,exports.Radio=Qu,exports.RadioGroup=Zg,exports.Rating=o0,exports.ReportDocument=U1,exports.ReportInfoPanel=q1,exports.RingChart=$0,exports.SENTENCE_TRAINING_TYPES=Ji,exports.SHORT_STORIES=mo,exports.SUPPORTED_LOCALES=jr,exports.SYLLABLE_MIN=Na,exports.SearchSummary=Jg,exports.Section=Go,exports.SectionHeadFloat=cd,exports.SectionHeader=g0,exports.SegmentedControl=Ta,exports.ShortcutBadge=Ju,exports.SideNav=Ou,exports.Slider=bd,exports.SoundCompass=qg,exports.SplashLogo=b0,exports.StatChart=R0,exports.SummaryStrip=G1,exports.TIER_RANK=mb,exports.TOPIC_TYPES=Xm,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=td,exports.TRAINING_TYPES=pc,exports.TRAINING_TYPE_I18N_KEY=ci,exports.Table=Vi,exports.TableFilterPanel=Ki,exports.Tabs=Qg,exports.TextBoxTooltip=Nr,exports.TextField=yo,exports.Timeline=h0,exports.Toast=Wo,exports.Toggle=id,exports.Toolbar=Pi,exports.Tooltip=xa,exports.TooltipInfo=Ea,exports.TooltipTextBox=Nr,exports.TopBanner=Dg,exports.TrainingBlock=q0,exports.TrainingBlockButton=Ri,exports.TrainingBlockGrid=Y0,exports.TrainingCard=K1,exports.TrainingCardGroup=Z1,exports.TrainingPagePopup=ro,exports.TrainingPagePopupBottom=Xd,exports.TrainingPagePopupTitle=Jd,exports.TrainingResultPopup=lp,exports.TrainingStep=wo,exports.TrainingStepAudioPlayer=Tn,exports.TrainingStepBullet=Wd,exports.TrainingStepCard=Yd,exports.TrainingStepConfirm=rs,exports.TrainingStepConfirmWithText=ns,exports.TrainingStepListen=is,exports.TrainingStepOrderList=ss,exports.TrainingStepTextBox=qd,exports.TrainingStepTitle=Gd,exports.TrainingTooltip=ad,exports.TrainingWordCard=Ui,exports.UpdateAlert=Y1,exports.VAP_PAGE_SIZE_OPTIONS=bn,exports.WAVE_A_MAX=a1,exports.WAVE_H1_PX=os,exports.WAVE_HMAX_PX=t1,exports.WORD_LABEL_I18N_KEYS=Q0,exports.WORD_SUGGESTION_ACCOUNT_LIMIT=Cb,exports.WORD_SUGGESTION_EXISTING_ERROR=_b,exports.WORD_SUGGESTION_WEEKLY_QUOTA=vb,exports.WORD_TABLE_PAPER=Uo,exports.WORD_TYPE_LABEL=Dd,exports.WordDataProvider=W1,exports.WordDataUpdatePopup=ev,exports.WordImageTooltip=dp,exports.WordSearchFilterPanel=j1,exports.WordSearchResultBlock=N1,exports.WordTable=qo,exports.WordTableBlock=J1,exports.WordTableButton=Q1,exports.WordTablePopup=Cf,exports.WordTableThumbnail=bp,exports.applyFontScale=ic,exports.applyTheme=rc,exports.balancedColumns=hl,exports.buildChangeWholeSyllableProblem=Hl,exports.buildDropCompoundProblem=Pl,exports.buildDropContrast3Problem=Rl,exports.buildDropContrastProblem=$l,exports.buildDropFinalConsonantProblem=zl,exports.buildGradeSection=gu,exports.buildMonthChartData=k0,exports.buildMultiPartPosContrast=dl,exports.buildPairIndex=Fh,exports.buildPartOfSpeechSection=fu,exports.buildPositionSection=rg,exports.buildRemoveConsonantProblem=Ol,exports.buildSelectSection=og,exports.buildSyllableMaskIndex=Fl,exports.buildSyllableSection=ag,exports.buildWordTypeSection=vu,exports.bulkSetImageExistence=Sh,exports.cardQuestionTitle=rm,exports.cellKey=Af,exports.cellLabel=Bf,exports.cellsForLabels=zf,exports.charToPronValue=wu,exports.checkImageExists=Wr,exports.classifyPairDifficulty=Ks,exports.clearAudioExistsCache=hh,exports.clearImageExistenceCache=Us,exports.clearPairIndexCache=ll,exports.clearPassCardBgTheme=Va,exports.clearPromoBannerBgTheme=Zt,exports.closeTrainingPopup=g1,exports.columnsFitting=pl,exports.companyTypeLabel=F1,exports.composeSyllable=ka,exports.computeDailySelection=lc,exports.configureImageResolver=xh,exports.configureNoiseSettingsStore=Sm,exports.configurePronunciationResolver=bh,exports.configureStorage=Ls,exports.configureTTS=ph,exports.configureTrainingCategories=Hm,exports.convertComposition=Bu,exports.copyText=Zl,exports.createDecompCache=Ys,exports.createTTSUrlResolver=Nm,exports.createTrainingScenario=x1,exports.cx=Ne,exports.dateToDb=Fm,exports.default=$S,exports.deriveNoiseContexts=A1,exports.derivePassCard=Wu,exports.downloadCsvText=um,exports.downloadSound=Pn,exports.draftValues=Wf,exports.effectiveNoiseVolume=Qi,exports.effectiveSpeechVolume=Fd,exports.ensureTrainingDataLoaded=dc,exports.escapeCsvField=cm,exports.expandSlashLabel=Yi,exports.fileExists=Ms,exports.filterContrastCandidates=ul,exports.finalToPhoneme=To,exports.firstChoseongOf=Zs,exports.fmtBytes=Gb,exports.formatCount=on,exports.formatDateKo=Tm,exports.formatDateLocale=ai,exports.formatDateLongKo=jm,exports.formatDateLongLocale=Lm,exports.formatDatetimeKo=Mm,exports.formatDuration=If,exports.formatPhone=Rm,exports.formatRelativeTime=ri,exports.formatTimeHM=ii,exports.formatYmd=ni,exports.getAssetBaseUrl=Ts,exports.getControlDateRange=j0,exports.getDailySelection=Km,exports.getElementAnalyser=Vs,exports.getElementVolume=ar,exports.getErrorMessage=en,exports.getImageExistenceStats=On,exports.getImageExistsCached=kh,exports.getImageResolver=co,exports.getNoiseBaseUrl=$s,exports.getNoiseFileGain=Rs,exports.getPairIndex=Lo,exports.getPayloadTimestamp=cs,exports.getPlanTier=fb,exports.getPromoBannerBgTheme=_i,exports.getPronunciationResolver=Is,exports.getSavedFontScale=nc,exports.getSavedTheme=oc,exports.getSelectedFromPayload=y1,exports.getSelectedText=w1,exports.getSignedOrPublicUrl=zr,exports.getStepPayload=tp,exports.getSteppedPayload=k1,exports.getTTSFallbackUrlResolver=zs,exports.getTTSUrlResolver=Ir,exports.getTodayKst=Ca,exports.getTodayKstDate=po,exports.getTopicTypes=si,exports.getTrainingPools=cc,exports.getTrainingTypes=ac,exports.getWordPool=Po,exports.gradeDescriptions=Du,exports.hasQuestionWordConstraint=Qh,exports.hasSel=zt,exports.hasStructureContrast=Ur,exports.initFontScale=qm,exports.initTheme=Gm,exports.injectPassCardBgTheme=Ha,exports.injectPromoBannerBgTheme=Kt,exports.installSkewRecovery=kb,exports.isAllChoseong=Js,exports.isManagerTier=bb,exports.isManualOnlyType=tm,exports.isNetworkErrorMessage=Vl,exports.isPersonalPhone=Im,exports.isSelectionCorrect=B1,exports.isSessionForThisTab=Bb,exports.isSyllablePattern=ol,exports.isThisWeekPick=xb,exports.isTrainingDataLoaded=Zm,exports.isValidPhone=zm,exports.isValidQuestionWord=em,exports.itemCorrectness=ql,exports.jamoToNamesForSpeech=nm,exports.kstStartOfDay=oi,exports.labelOfCellKey=zd,exports.labelsForSave=kf,exports.lazyPage=Ab,exports.levelToPct=Zf,exports.loadGameLeaderboard=Am,exports.loadMyGameRanks=Bm,exports.loadNoiseSettings=Kl,exports.loadTrainingData=uc,exports.logCrossword=gm,exports.logTrainingCompletion=Ul,exports.logTrainingTime=Gl,exports.lsBytes=du,exports.markAfterClick=kd,exports.marksForSave=qi,exports.matchSyllables=$o,exports.matchesChoseongSearch=Eh,exports.matchesSyllablePattern=rl,exports.matchesWordQuery=Dh,exports.meaningKey=Si,exports.mergeNoiseSettings=Er,exports.mergeQuestionText=Ll,exports.minimalPairDistractors=Hn,exports.missesByType=Mf,exports.nextFocus=Tf,exports.nextMisses=Lf,exports.noiseElementVolume=es,exports.noiseRatioOf=Sr,exports.normalizeDate=Om,exports.normalizeWordAttributeFilter=Qm,exports.officialSoundPath=Dm,exports.pageStartIndexes=Sd,exports.parseLocalYmd=Jl,exports.parseSortValue=lm,exports.parseSyllable=Ke,exports.passCardBgIhabTheme=Zu,exports.passCardBgLeftColorGridTheme=Xu,exports.passCardBgTwoCircleTheme=Uu,exports.patternToComposition=Ph,exports.pctToLevel=Xf,exports.phonemePartsOf=om,exports.pickEuRo=El,exports.pickEulReul=kl,exports.pickEunNeun=Al,exports.pickIga=yl,exports.pickWaGwa=Sl,exports.posLabels=jd,exports.prefetchChunk=Sb,exports.prewarmImageCache=Bh,exports.primarySelPart=cr,exports.printWordTable=X0,exports.promoBannerBgDarkTheme=Wc,exports.promoBannerBgDeepTheme=zc,exports.promoBannerBgDiagonalTheme=Yc,exports.promoBannerBgDotsTheme=Zc,exports.promoBannerBgInstagramTheme=ru,exports.promoBannerBgMainTheme=jc,exports.promoBannerBgNaverTheme=au,exports.promoBannerBgOutlineTheme=Jc,exports.promoBannerBgRadialTheme=Uc,exports.promoBannerBgSoftSubTheme=Oc,exports.promoBannerBgSoftTheme=Mc,exports.promoBannerBgSubTheme=Rc,exports.promoBannerBgSuccessTheme=eu,exports.promoBannerBgWarmTheme=Hc,exports.pronToCharValue=ku,exports.readLevel=Ws,exports.recommendTables=Rf,exports.recoverFromSkew=fi,exports.regenerateUnpinned=Vf,exports.removeItem=Hf,exports.reorderArray=Dl,exports.reportAppliedNoiseSettings=dr,exports.resolveAssetUrl=Pr,exports.resolveSoundPath=Rn,exports.resolveTrainingItems=C1,exports.resolveTrainingPopupMeta=Qd,exports.resumeAudioMeter=Fr,exports.reviewCells=xf,exports.reviewMeta=wf,exports.reviewSetPlan=$f,exports.reviewTableName=yf,exports.routeElementAudio=tr,exports.sample=Aa,exports.saveLocale=Rx,exports.saveNoiseSettings=ei,exports.scoreKey=An,exports.scoreSheetHeader=Sf,exports.searchAndRankWords=Ih,exports.setAssetBaseUrl=uh,exports.setCrosswordLogger=bm,exports.setElementVolume=$a,exports.setGameLeaderboardLoader=wm,exports.setGameRanksLoader=ym,exports.setGameScoreSubmitter=_m,exports.setTrainingCompletionLogger=mm,exports.setTrainingTimeLogger=hm,exports.setWordPool=pm,exports.shouldConfirmDiscard=Z0,exports.shuffle=nt,exports.skewReloadPending=wc,exports.sortToValue=sm,exports.soundOf=Zn,exports.speak=sh,exports.splitTrainingVariants=f1,exports.stopSpeaking=lh,exports.submitGameScore=km,exports.summarize=K0,exports.summarizeMisses=jf,exports.syllMatchesComp=Ja,exports.syllableContrasts=Ro,exports.syllableLength=jo,exports.syllablePron=Qr,exports.syllableToFilter=ki,exports.tableTrends=Nf,exports.toBase64UrlSafe=Em,exports.toChoseong=Xs,exports.toDraft=Of,exports.toItemResults=Yl,exports.toKstHm=$m,exports.toKstYmd=Ia,exports.toStandardPronunciation=Kh,exports.toStorageName=tn,exports.toTrainingText=_1,exports.toUserErrorMessage=im,exports.toWordAttributeFilterCodes=ui,exports.toWordEntry=Eb,exports.today=Cr,exports.toggleAttributeFilter=ng,exports.togglePin=Ff,exports.uncoveredLabels=Pf,exports.useAnchoredMenu=Vo,exports.useBarChartControl=ud,exports.useCacheManagement=Ub,exports.useCalendarMonth=ld,exports.useComboboxSuggestions=rd,exports.useDailyTrainingSelection=_g,exports.useDelayedHoverAnchor=Mu,exports.useDeviceManagement=tg,exports.useDiscardGuard=R1,exports.useDocumentTitle=cu,exports.useEscToClose=Lu,exports.useFitScale=Md,exports.useFontScale=yi,exports.useHoverAnchor=Ho,exports.useI18n=Px,exports.useListControls=Ag,exports.useMediaQuery=sa,exports.useNoisePlayer=En,exports.usePageResetOnChange=$u,exports.usePagedList=Bg,exports.usePasswordChange=Wb,exports.useRelativeDay=Vb,exports.useSoundCompassExam=Ru,exports.useTablePaging=hu,exports.useTableSort=mu,exports.useToastLifecycle=vd,exports.useToastState=Di,exports.useTrainingTypeLabels=Sg,exports.useVisitAllPanel=Jb,exports.useVisitHistory=Kb,exports.useVisitSchedule=Xb,exports.useWindowEvent=hn,exports.useWordAttributeFilterKeys=bu,exports.useWordData=V1,exports.useWordDataStats=qb,exports.useWordMeanings=kg,exports.useWordTableDisplaySettings=Pd,exports.useWordTablePrint=Xi,exports.useWordTrainingDataGeneration=Cg,exports.useWordTrainingFilter=vg,exports.validateSyllableSearchInput=zh,exports.valueToJamos=Fa,exports.waveBarPx=Dn,exports.waveBarVal=Nn,exports.weakItems=Df,exports.withEuRo=Jh,exports.withEulReul=Bl,exports.withEunNeun=Zh,exports.withIga=wl,exports.withStepTimes=ep,exports.withWaGwa=Xh,exports.wordAttributeFilterFromCodes=di,exports.wordContainsChoseong=Th,exports.wordContainsJongseong=Mh,exports.wordContainsJungseong=jh,exports.wordHasConsonantAt=$h,exports.wordHasNoCoda=el,exports.wordHasSyllableMatching=al,exports.wordTypeLabels=Ld,exports.wrongItems=fm;
|