@ihabdevteam/core 0.342.0 → 0.343.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 +39 -2
- package/dist/components.cjs.js +1 -1
- package/dist/hooks.cjs.js +1 -1
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +1 -1
- package/dist/ihabdevteam-core.d.ts +1 -1
- package/dist/packages/core/src/version.d.ts +1 -1
- package/dist/packages/core/src/version.js +1 -1
- package/dist/utils.cjs.js +1 -1
- package/package.json +1 -1
package/dist/components.cjs.js
CHANGED
|
@@ -848,7 +848,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
848
848
|
\uC2E0\uB8B0\uB97C \uC313\uACE0
|
|
849
849
|
\uD68C\uBCF5\uC744 \uB3D5\uC2B5\uB2C8\uB2E4.`,site:{title:"\uC0AC\uC774\uD2B8",malgwi:"\uB9D0\uADC0",soundDirection:"\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C",vrSoundDirection:"VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C",hearingTest:"\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C"},sns:{title:"SNS",naverBlog:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8",kakao:"KAKAO Talk \uC624\uD508\uCC44\uD305"},policy:{title:"\uC815\uCC45",terms:"\uC774\uC6A9\uC57D\uAD00",privacy:"\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68"},ceo:"\uB300\uD45C",address:"\uC8FC\uC18C",support:"\uACE0\uAC1D\uC13C\uD130",ceoName:"\uD55C\uC9C0\uD61C",addressValue:"\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638"},_g={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"}}},wg={timeHM:"{{h}}\uC2DC {{m}}\uBD84",timeH:"{{h}}\uC2DC"},Bg={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"}},kg={answer:"\uC815\uB2F5",distractor:"\uC624\uB2F5"},Ag={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"},Ng={clearAriaLabel:"\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"},Eg={ariaLabel:"\uC120\uD0DD \uD0ED"},Dg={ariaLabel:"\uD0ED"},Sg={dragPrompt:"\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC",browseButton:"\uD30C\uC77C \uC120\uD0DD",removeAriaLabel:"{{name}} \uC81C\uAC70"},Tg={ariaLabel:"\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0"},jg={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"}},Mg={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"}},Lg={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"}},$g={manage:{unit:"\uAC74"}},Rg={cancelLabel:"\uCDE8\uC18C"},Pg={steps:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"},Ig={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"},Fg={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"},Og={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"},zg={ariaLabel:"\uBC30\uB108",dotAriaLabel:"{{count}}\uAC1C \uC911 {{index}}\uBC88\uC9F8 \uBC30\uB108"},Wg={selectYearMonth:"\uC5F0\uC6D4 \uC120\uD0DD",chooseDate:"\uB0A0\uC9DC \uC120\uD0DD"},Hg={previewRegion:"\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30 \u2014 \uC88C\uC6B0\uB85C \uAD74\uB824 \uBCFC \uC218 \uC788\uC2B5\uB2C8\uB2E4"},Vg={description:"\uC124\uBA85",textbox:"\uBCF8\uBB38",training:"\uD6C8\uB828 \uC548\uB0B4",menu:"\uBA54\uB274"},qg={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"}},Ug={clearSelection:"\uC120\uD0DD \uD574\uC81C"},Gg={showResult:"{{type}} \uACB0\uACFC\uBCF4\uAE30"},Kg={selected:"\uC120\uD0DD\uB428",remove:"\uC81C\uAC70",exclude:"\uC81C\uC678",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"},Yg={loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},Zg={state:{active:"\uC18C\uB9AC \uB098\uB294 \uC911",played:"\uB4E4\uC74C",correct:"\uC815\uB2F5",wrong:"\uC624\uB2F5"}},Xg={ariaLabel:"\uC774\uB3D9 \uACBD\uB85C"},Jg={empty:"\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."},Qg={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"},eb={common:FC,calendar:OC,passCard:zC,searchField:WC,rating:HC,colorPicker:VC,dropdown:qC,accordion:UC,header:GC,nav:KC,settings:YC,usage:ZC,account:XC,help:JC,training:QC,trainingSettings:eg,customers:tg,payment:ng,coupons:ag,visits:rg,company:og,trainingType:sg,myWordTraining:ig,myWordTable:lg,keyWords:ug,wordTable:cg,wordSearch:dg,wordPrint:pg,topic:mg,accessLinkManager:hg,login:fg,trainingPlanRun:Cg,device:gg,manager:bg,wordPairs:yg,game:vg,footer:xg,landing:_g,date:wg,trainingSetPage:Bg,wordTrainingPreview:kg,wordData:Ag,textField:Ng,segmentedControl:Eg,tabs:Dg,fileUpload:Sg,avatar:Tg,myHomework:jg,trainingStatus:Mg,store:Lg,homework:$g,inquiry:Rg,progress:Pg,trainingMiss:Ig,table:Fg,wordScore:Og,topBanner:zg,datePicker:Wg,report:Hg,tooltip:Vg,phonemeProfile:qg,bulkBar:Ug,debug:Gg,badge:Kg,loader:Yg,soundCompass:Zg,breadcrumb:Xg,board:Jg,promoBannerBg:Qg},tb={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."},nb={rangeSelect:"Select period",dow:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],weekLabel:"Week {{ord}}",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}}",weekOrdinal:["1","2","3","4","5","6","7"]},ab={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"}},rb={clearAriaLabel:"Clear search"},ob={starLabel:"Select star {{n}}",valueLabel:"{{value}} out of {{max}}",groupLabel:"Rating"},sb={selected:"selected"},ib={placeholder:"Select"},lb={collapse:"Collapse",expand:"Expand"},ub={biArea:"BI area",biSymbol:"BI symbol",logoMalgwi:"Malgwi logo",logoManager:"Malgwi Manager logo",menuOpen:"Open menu",utilMenu:"Utility menu",menuClose:"Close menu"},cb={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"},db={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."}}},pb={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"}},mb={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"}}},hb={guide:{faq:{title:"FAQ",desc:"View all frequently asked questions"}}},fb={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",replaySound:"Replay item {{no}}",replaySoundStop:"Stop item {{no}}",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"}},Cb={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"},gb={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"}},bb={plan:{recommendedFor:"Recommended for",features:"Key Features",freePrice:"Free",contact:"Contact Us",tierFallback:"Plan",openPromo:"Launch offer"},products:{mgrEnterprise:{tier:{price:"Contact us"}}}},yb={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"}},vb={unitVisit:"",periodAll:"All",showN:"Show {{n}}"},xb={subtitle:"Manage company and business information",editButton:"Edit Info",basicInfo:{title:"Basic Info"},contactInfo:{title:"Contact Info"}},_b={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."}},wb={comingSoon:"Word training is coming soon."},Bb={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"},kb={title:"Key Words",empty:"No key words available."},Ab={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"}},Nb={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",field:"Semantic Category",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}}"}},Eb={clearAllSelection:"Clear All Selections",divLine:"Contrast Line",removePair:"Remove pair",removeWord:"Remove word"},Db={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"}},Sb={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"}},Tb={passwordPlaceholder:"Enter password"},jb={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",other:"Other"}},Mb={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"}},Lb={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."]},$b={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"}},Rb={lead:`IHAB builds trust
|
|
850
850
|
through sound
|
|
851
|
-
and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Direction System",vrSoundDirection:"VR Sound Direction System",hearingTest:"Hearing Test Pro"},sns:{title:"SNS",naverBlog:"Naver Blog",kakao:"KAKAO Talk Open Chat"},policy:{title:"Policy",terms:"Terms of Service",privacy:"Privacy Policy"},ceo:"CEO",address:"Address",support:"Support",ceoName:"Ji-hye Han",addressValue:"302, 3F, Haechan Bldg, 32 Sicheong-gil, Chuncheon, Gangwon, Korea"},Pb={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"}}},Ib={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},Fb={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},Ob={answer:"Answer",distractor:"Distractor"},zb={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"},Wb={clearAriaLabel:"Clear input"},Hb={ariaLabel:"Select tab"},Vb={ariaLabel:"Tabs"},qb={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},Ub={ariaLabel:"User avatar"},Gb={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"}},Kb={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"}},Yb={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)"}},Zb={manage:{unit:"item(s)"}},Xb={cancelLabel:"Cancel"},Jb={subtitle:"Select a topic to start listening practice."},Qb={steps:"Step {{current}} of {{total}}"},ey={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"},ty={resetColumns:"Reset column widths",scrollRegion:"Horizontally scrollable table",rowActionHint:"Press a row to open its details"},ny={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}}"},ay={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},ry={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},oy={previewRegion:"Report preview \u2014 scrollable sideways"},sy={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},iy={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},ly={clearSelection:"Clear selection"},uy={showResult:"Show {{type}} result"},cy={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},dy={loading:"Loading"},py={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},my={ariaLabel:"Breadcrumb"},hy={empty:"No items yet."},fy={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"},Cy={common:tb,calendar:nb,passCard:ab,searchField:rb,rating:ob,colorPicker:sb,dropdown:ib,accordion:lb,header:ub,nav:cb,settings:db,usage:pb,account:mb,help:hb,training:fb,trainingSettings:Cb,customers:gb,payment:bb,coupons:yb,visits:vb,company:xb,trainingType:_b,myWordTraining:wb,myWordTable:Bb,keyWords:kb,wordTable:Ab,wordSearch:Nb,wordPrint:Eb,topic:Db,accessLinkManager:Sb,login:Tb,device:jb,manager:Mb,wordPairs:Lb,game:$b,footer:Rb,landing:Pb,date:Ib,trainingSetPage:Fb,wordTrainingPreview:Ob,wordData:zb,textField:Wb,segmentedControl:Hb,tabs:Vb,fileUpload:qb,avatar:Ub,myHomework:Gb,trainingStatus:Kb,store:Yb,homework:Zb,inquiry:Xb,trainingPlanRun:Jb,progress:Qb,trainingMiss:ey,table:ty,wordScore:ny,topBanner:ay,datePicker:ry,report:oy,tooltip:sy,phonemeProfile:iy,bulkBar:ly,debug:uy,badge:cy,loader:dy,soundCompass:py,breadcrumb:my,board:hy,promoBannerBg:fy};const gy="0.342.0",by=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],io="ko",yy="ihab_display_language";function Oi(){if(typeof window>"u")return io;try{const e=localStorage.getItem(yy);if(e&&by.some(t=>t.code===e))return e}catch{}return io}function zi(e){try{document.documentElement.lang=e}catch{}}Rt.on("languageChanged",zi),zi(Oi()),Rt.use(xe.initReactI18next).init({resources:{ko:{translation:eb},en:{translation:Cy}},lng:Oi(),fallbackLng:io,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const vy=new Map;try{Rt.store?.on?.("added",()=>vy.clear())}catch{}let nr=null,Wi=null,Hi=null;function xy(){const e=Di();if(e&&e.entries.length>0){const t=sC();if(nr&&Wi===e&&Hi===t)return nr;const a=new Set,r=[];for(const i of e.entries)!i.word||a.has(i.word)||(a.add(i.word),r.push({w:i.word,s:i.syllables,p:t?.[i.word]?[...t[i.word].cho??[],...t[i.word].jung??[],...t[i.word].jong??[]]:[],pron:i.pronunciation||i.word,grade:i.grade}));return nr=r,Wi=e,Hi=t,nr}return[]}new Proxy([],{get(e,t){const a=xy(),r=a[t];return typeof r=="function"?r.bind(a):r}});function _y(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 wy(e){if(typeof window>"u")return"";const t=(a,r)=>{typeof r.attrValue=="string"&&_y(r.attrValue)&&(r.keepAttr=!1)};Vr.addHook("uponSanitizeAttribute",t);try{return Vr.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{Vr.removeHook("uponSanitizeAttribute",t)}}function By(e){const[t,a]=o.useState(null),[r,i]=o.useState(null),[s,l]=o.useState(null),[u,c]=o.useState(null);return o.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),i(null),l(null);return}const d=e.split("/").pop();let m=e;d&&(e.startsWith("/")?m=Kr(e):/^(Logo|Symbol)/i.test(d)?m=Kr(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),m=e)),i(null),l(null),a(m)},[e]),o.useEffect(()=>{if(!t)return;let d=!1;async function m(){try{let p=await fetch(t);p.ok||(p=await fetch(t));const f=p.headers.get("content-type")||"";if(d)return;if(f.includes("svg")){i("mask");return}if(f.startsWith("image/")){i("img");return}const y=await fetch(t);if(!y.ok)throw new Error("not ok");const x=await y.text();if(d)return;if(/^\s*<svg[\s>]/i.test(x)){const C=wy(x);if(!C){i("none");return}l(C),i("inline");return}i("none")}catch{d||i("none")}}return m(),()=>{d=!0}},[t]),o.useEffect(()=>{let d=!1,m=null;return r==="mask"&&t&&fetch(t).then(p=>{if(!p.ok)throw new Error("fetch failed");return p.blob()}).then(p=>{d||(m=URL.createObjectURL(p),c(m))}).catch(()=>{d||i("img")}),()=>{d=!0,m&&URL.revokeObjectURL(m),c(null)}},[r,t]),{iconToUse:t,mode:r,svgText:s,blobUrl:u}}function at(e){const{icon:t,label:a,className:r,imgClassName:i,maskClassName:s,svgClassName:l,wrapperStyle:u,size:c}=e||{},d=r??"iconRenderer-icon",m=i??"iconRenderer-icon-image",p=s??"iconRenderer-icon-mask",f=l??"iconRenderer-icon-svg",y=typeof t=="string"?t:null,x=U1(y),{iconToUse:C,mode:h,svgText:_,blobUrl:g}=By(y),A=(B,E={})=>n.jsx("span",{className:d,style:u,...E,children:B}),b=typeof c=="number"?{width:c,height:c,objectFit:"contain"}:null,k=(B,E={})=>n.jsx("img",{src:B,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:m,...E,style:b?{...E.style,...b}:E.style});if(!t)return null;if(typeof t!="string")return A(t);if(t==="none")return A(n.jsx("span",{className:f,dangerouslySetInnerHTML:{__html:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true"></svg>'}}),{"aria-hidden":"true"});if(x)try{return A(o.createElement(x,{className:f,size:typeof c=="number"?c:20}),{"aria-hidden":"true"})}catch{}if(C&&C.endsWith(".svg")){if(h==="mask"){const B={"--icon-url":g?`url(${g})`:`url(${C})`,...typeof c=="number"?{"--icon-size":`${c}px`}:null};return A(n.jsx("span",{className:p,style:B}),{"aria-hidden":"true"})}return h==="img"?A(k(C,{onError:B=>{B.currentTarget.onerror=null,B.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):h==="inline"?A(n.jsx("span",{className:f,dangerouslySetInnerHTML:_?{__html:_}:void 0}),{"aria-hidden":"true"}):A(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return k(Kr(t),{style:u,onError:B=>{B.currentTarget.onerror=null,B.currentTarget.style.display="none"}});const v=typeof c=="number"?c:20,w=`<svg width="${v}" height="${v}" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="18" height="18" rx="2" ry="2" style="fill:none;stroke:currentColor;stroke-width:2"/></svg>`;return A(n.jsx("span",{className:f,dangerouslySetInnerHTML:{__html:w}}),{"aria-hidden":"true"})}function Vi(e){const[t,a]=o.useState(!1),r=o.useRef(!1),i=o.useRef(!0);o.useEffect(()=>(i.current=!0,()=>{i.current=!1}),[]);const s=o.useCallback(()=>{if(!e||r.current)return;const l=e();if(l&&typeof l.then=="function"){r.current=!0,a(!0);const u=()=>{r.current=!1,i.current&&a(!1)};l.then(u,u)}},[e]);return{pending:t,press:s}}function ky({icon:e,title:t,message:a,action:r,className:i}){const{pending:s,press:l}=Vi(r?.onClick);return n.jsxs("div",{className:_e("empty-state",i),children:[e&&n.jsx(at,{icon:e,size:48,className:"empty-state__icon"}),t&&n.jsx("p",{className:"empty-state__title h4",children:t}),a&&n.jsx("p",{className:"empty-state__message body-3",children:a}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:l,disabled:s,"aria-busy":s||void 0,children:[r.icon&&n.jsx(at,{icon:r.icon,className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:r.label})]})]})}function Ay({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:i,className:s}){const{t:l}=xe.useTranslation(),{pending:u,press:c}=Vi(r);return n.jsxs("div",{className:_e("empty-state","error-state",s),role:"alert",children:[n.jsx(at,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),n.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&n.jsx("p",{className:"error-state__hint caption-1",children:t}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:c,disabled:u,"aria-busy":u||void 0,children:[n.jsx(at,{icon:"rotate-cw",className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:i??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function Ny({icon:e,title:t,description:a,cta:r,tone:i="main",disabled:s=!1,onClick:l,className:u=""}){const c=o.useId(),d=`${c}-title`,m=`${c}-desc`,p=`${c}-cta`,f=()=>{s||l?.()};return n.jsx("section",{role:"button",tabIndex:s?-1:0,"aria-disabled":s||void 0,"aria-labelledby":d,"aria-describedby":`${m} ${p}`,onClick:f,onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),f())},className:_e("action-card",`action-card--${i}`,s&&"action-card--disabled",u),children:n.jsxs("div",{className:"action-card__body",children:[n.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:n.jsx(at,{icon:e,size:34})}),n.jsxs("div",{className:"action-card__text",children:[n.jsx("h2",{id:d,className:"action-card__title",children:t}),n.jsx("p",{id:m,className:"action-card__desc",children:a})]}),n.jsxs("div",{className:"action-card__cta",children:[n.jsx("span",{id:p,children:r}),n.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:n.jsx(at,{icon:"arrow-right",size:18})})]})]})})}function Ey({as:e="div",className:t="",children:a,storage:r,...i}){r&&Lf({resolveUrl:r.resolveUrl,download:r.download??(()=>Promise.reject(new Error("[ihabdevteam-core] CoreScope: download resolver\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."))),exists:r.exists,resolvePath:r.resolvePath,noiseBaseUrl:r.noiseBaseUrl,noiseFileGain:r.noiseFileGain});const s=_e("ihabdevteam-core-scope",t);return n.jsx(e,{className:s,...i,children:a})}function lo(e,t=!0){o.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=i=>{if(i.key!=="Tab")return;const s=Array.from(a.querySelectorAll(Cn)).filter(m=>!m.closest('[aria-hidden="true"]'));if(!s.length){i.preventDefault();return}const l=s[0],u=s[s.length-1],c=document.activeElement,d=c===a;i.shiftKey&&(c===l||d)?(i.preventDefault(),u.focus()):!i.shiftKey&&c===u&&(i.preventDefault(),l.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const Cn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',uo=new WeakMap;function co(e,t){e&&uo.set(e,t)}function po(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let r=t;for(;r&&!uo.has(r);)r=r.parentElement;if(!r)return t;t=uo.get(r)??null}return t}function qi(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 ar(e,t,a){const r=e?.isConnected?e:a?.isConnected?a:null;if(qi(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!r)return null;const i=Array.from(document.querySelectorAll(Cn)).filter(c=>!(e&&e.contains(c))&&qi(c));let s=null,l=null;for(const c of i)r.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_PRECEDING?s=c:l||(l=c);const u=s??l;return u?.focus(),u}function Dy({title:e="",lines:t=[],notices:a=null,children:r,variant:i="default",dismissible:s=!1,className:l=""}){const{t:u}=xe.useTranslation(),[c,d]=o.useState(!1),m=o.useRef(null),p=o.useCallback(()=>{const C=m.current;C&&C.contains(document.activeElement)&&ar(C),d(!0)},[]);if(c)return null;const f=`notice-box notice-box--${i} body-2 ${l}`.trim(),y=s&&n.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:p,"aria-label":u("common.close","\uB2EB\uAE30"),children:"\xD7"});if(a&&Array.isArray(a)&&a.length)return n.jsxs("div",{className:f,role:"note",children:[a.map((C,h)=>n.jsxs("div",{className:"notice-box__inner",children:[C.title?n.jsx("span",{className:"notice-box__title body-3",children:C.title}):null,n.jsx("div",{className:"notice-box__body",children:C.lines&&C.lines.length?n.jsx("div",{children:C.lines.map((_,g)=>n.jsx("span",{className:"notice-box__line body-3",children:_},g))}):C.children??null})]},h)),y]});const x=e||t.length?n.jsxs("div",{className:"notice-box__inner",children:[e?n.jsx("span",{className:"notice-box__title body-1",children:e}):null,n.jsx("div",{className:"notice-box__body",children:t.length?n.jsx("ul",{children:t.map((C,h)=>n.jsx("li",{className:"notice-box__line",children:C},h))}):r})]}):n.jsx("div",{className:"notice-box__inner",children:r});return n.jsxs("div",{ref:m,className:f,role:"note",children:[x,y]})}const sa=[];let rr=!1;function Ui(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=sa[sa.length-1];t&&(e.stopPropagation(),t())}function Gn(e){return sa.push(e),!rr&&typeof document<"u"&&(document.addEventListener("keydown",Ui),rr=!0),()=>{const t=sa.lastIndexOf(e);t>=0&&sa.splice(t,1),sa.length===0&&rr&&typeof document<"u"&&(document.removeEventListener("keydown",Ui),rr=!1)}}const Gi=o.createContext(null);function Sy(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const Ki=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function Ty(e){const t=o.useCallback(a=>{if(typeof window>"u"||!window.matchMedia)return()=>{};const r=window.matchMedia(e);return r.addEventListener?r.addEventListener("change",a):r.addListener&&r.addListener(a),()=>{r.removeEventListener?r.removeEventListener("change",a):r.removeListener&&r.removeListener(a)}},[e]);return As.useSyncExternalStore(t,()=>Ki(e),()=>!1)}function jy(e){const[t,a]=o.useState(Ki(e));return o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),i=l=>a(l.matches),s=r;return s.addEventListener?s.addEventListener("change",i):s.addListener&&s.addListener(i),a(r.matches),()=>{s.removeEventListener?s.removeEventListener("change",i):s.removeListener&&s.removeListener(i)}},[e]),t}const My=typeof As.useSyncExternalStore=="function"?Ty:jy;function ln(e){const t=o.useContext(Gi),a=My(e);return t&&typeof t.mobile=="boolean"&&Sy(e)?t.mobile:a}const Ly="(prefers-reduced-motion: reduce)";function mo(){return ln(Ly)}function cn(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:i=20,onClose:s,closeOnOutsideClick:l=!0,className:u="",role:c="dialog",ariaLabel:d="",children:m,backdrop:p=!1,isMobilePopup:f=!1,useBorder:y=!0,header:x,focusOnOpen:C}=e||{},h=o.useRef(null),[_,g]=o.useState({position:"fixed",left:0,top:-9999}),[A,b]=o.useState(!1),[k,v]=o.useState("bottom"),[w,B]=o.useState(!1),[E,D]=o.useState(!1),N=!t&&!a,O=o.useCallback((V=!1)=>{if(E&&f)return;const R=a?a.getBoundingClientRect():t;if(!R||!h.current)return;const H=h.current,{offsetWidth:W,offsetHeight:I}=H,S=window.innerWidth,j=window.innerHeight,F=S-R.right,U=R.left,re=R.top,ne=j-R.bottom;let le=0,K=0,oe="top";if(re>=I+r)oe="top",K=R.top-r-I,le=R.left+R.width/2-W/2;else if(ne>=I+r)oe="bottom",K=R.bottom+r,le=R.left+R.width/2-W/2;else if(F>=W+r)oe="right",le=R.right+r,K=R.top+R.height/2-I/2;else if(U>=W+r)oe="left",le=R.left-r-W,K=R.top+R.height/2-I/2;else{const me=Math.max(re,ne,F,U);me===re?(oe="top",K=R.top-r-I,le=R.left+R.width/2-W/2):me===ne?(oe="bottom",K=R.bottom+r,le=R.left+R.width/2-W/2):me===F?(oe="right",le=R.right+r,K=R.top+R.height/2-I/2):(oe="left",le=R.left-r-W,K=R.top+R.height/2-I/2)}const Ae=Number.isFinite(Number(i))?Number(i):8;le=Math.min(Math.max(le,Ae),S-W-Ae),K=Math.min(Math.max(K,Ae),j-I-Ae);const Y=Math.round(le),Q=Math.round(K);V&&h.current?(h.current.style.left=`${Y}px`,h.current.style.top=`${Q}px`,h.current.dataset.placement=oe):(v(oe||k),g({position:"fixed",left:Y,top:Q}),B(!0))},[E,f,a,t,r,i,k]);o.useLayoutEffect(()=>{if(N)return;if(E&&f){g({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),B(!0);return}O();const V=requestAnimationFrame(()=>O());return()=>cancelAnimationFrame(V)},[t,a,r,m,i,N,E,f,O]),o.useEffect(()=>{if(N||E&&f||!h.current||typeof ResizeObserver>"u")return;const V=new ResizeObserver(()=>{t&&O()});return V.observe(h.current),()=>V.disconnect()},[t,m,i,N,E,f,O]),o.useEffect(()=>{if(N||E&&f)return;let V=null;const R=()=>{if(typeof requestAnimationFrame>"u"){O(!0);return}V===null&&(V=requestAnimationFrame(()=>{V=null,O(!0)}))},H=W=>{if(!a&&s){const I=W.target;if(I&&h.current&&h.current.contains(I))return;try{if(I&&I.closest&&I.closest("[data-tooltip-ignore]"))return}catch{}$.current(!0);return}R()};return window.addEventListener("resize",R),document.addEventListener("scroll",H,{passive:!0,capture:!0}),()=>{V!==null&&cancelAnimationFrame(V),window.removeEventListener("resize",R),document.removeEventListener("scroll",H,{capture:!0})}},[t,a,s,r,m,i,N,E,f,O]),o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const V=window.matchMedia("(max-width: 768px)"),R=()=>D(!!V.matches);R();try{V.addEventListener?V.addEventListener("change",R):V.addListener(R)}catch{try{V.addListener(R)}catch{}}return()=>{try{V.removeEventListener?V.removeEventListener("change",R):V.removeListener(R)}catch{}}},[]);const P=o.useRef(!1),G=o.useRef(null),L=mo(),M=o.useCallback((V=!1)=>{if(s&&!(A||P.current)){if(P.current=!0,V){b(!0);try{s&&s()}catch{P.current=!1,b(!1)}return}b(!0),G.current=setTimeout(()=>{G.current=null;try{s&&s()}catch{P.current=!1,b(!1)}},L?0:200)}},[A,s,b,L]);o.useEffect(()=>()=>{G.current&&clearTimeout(G.current)},[]),o.useEffect(()=>{if(N)return;const V=W=>{const I=h.current;if(!I)return;const S=W.target;if(S&&!I.contains(S)){try{if(S.closest&&S.closest("[data-tooltip-ignore]"))return}catch{}l&&M(!0)}},R=W=>{const I=h.current;if(!I)return;const S=W.target;if(S&&!I.contains(S)){try{if(S.closest&&S.closest("[data-tooltip-ignore]"))return}catch{}l&&M(!0)}},H=W=>{if(W.key==="Tab"){const I=h.current;if(!I)return;const S=I.querySelectorAll(Cn);if(!S||S.length===0)return;const j=S[0],F=S[S.length-1],U=document.activeElement;W.shiftKey?U===j&&(W.preventDefault(),F.focus()):U===F&&(W.preventDefault(),j.focus())}};return document.addEventListener("pointerdown",V,!0),document.addEventListener("click",R,!0),document.addEventListener("keydown",H),()=>{document.removeEventListener("pointerdown",V,!0),document.removeEventListener("click",R,!0),document.removeEventListener("keydown",H)}},[s,l,M,N]);const $=o.useRef(M);o.useEffect(()=>{$.current=M});const Z=!!s;o.useEffect(()=>{if(!(N||!Z))return Gn(()=>$.current())},[N,Z]),o.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 q=o.useRef(null);o.useEffect(()=>{if(N||C===!1||!w)return;const V=h.current;if(!V)return;const R=V.querySelector(Cn);if(R)return q.current=document.activeElement,R.focus(),()=>{const H=q.current;q.current=null,H&&document.contains(H)&&H.focus()}},[N,C,w]),o.useEffect(()=>{c==="dialog"&&!d&&St("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.')},[c,d]);const z=n.jsxs("div",{ref:h,className:`tooltip-content ${N?"tooltip-content--inline":""} ${y?"tooltip-content--bordered":""} ${A?"is-closing":""} ${u} ${E&&f?"is-mobile":""}`,role:c,"aria-label":d||void 0,style:N?{}:{..._,visibility:w?"visible":"hidden"},tabIndex:-1,"data-placement":k,"data-left":N?"":_.left,"data-top":N?"":_.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:[x!=null&&n.jsx("div",{className:"tooltip-content__header h5",children:x}),m]});if(N||typeof document>"u")return z;if(p||E&&f){const V=n.jsxs("div",{className:"tooltip-portal",children:[n.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&M(!0)}}),z]});return en.createPortal(V,document.body)}return en.createPortal(z,document.body)}function Bn(e){const{anchorRect:t,text:a,offset:r=8,onClose:i,className:s="",ariaLabel:l}=e||{};return a?n.jsx(cn,{anchorRect:t,offset:r,onClose:i,closeOnOutsideClick:!1,className:`tooltip-info ${s}`,ariaLabel:l||a,children:n.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}function Kn(e){const{t}=xe.useTranslation(),{anchorRect:a,title:r,items:i,activeIndex:s=-1,showIndex:l=!0,onClose:u,offset:c=12,closeOnOutsideClick:d=!0}=e||{},m=(Array.isArray(i)?i:i?[i]:[]).map(p=>typeof p=="string"?{text:p}:p);return!m.length&&!r?null:n.jsx(cn,{anchorRect:a,offset:c,onClose:u,closeOnOutsideClick:d,useBorder:!1,className:"tooltip-description",ariaLabel:r||t("tooltip.description","\uC124\uBA85"),children:n.jsxs("div",{className:"tooltip-description__box",children:[r&&n.jsx("span",{className:"tooltip-description__title body-2",children:r}),n.jsx("ol",{className:"tooltip-description__items",children:m.map((p,f)=>n.jsxs("li",{className:`tooltip-description__item body-3${f===s?" tooltip-description__item--active":""}`,children:[l&&m.length>1&&n.jsxs("span",{className:"tooltip-description__index button-1",children:[f+1,"."]}),p.color&&n.jsx("span",{className:"tooltip-description__dot",style:{background:p.color},"aria-hidden":"true"}),n.jsx("span",{children:p.text})]},f))})]})})}function Da(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),t}let ho=0,Yi=!1;function Zi(){Yi||typeof document>"u"||(Yi=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(ho=Date.now())},!0),document.addEventListener("touchstart",()=>{ho=Date.now()},{capture:!0,passive:!0}))}Zi();function ia(e){return!!e&&e.pointerType==="touch"}function la(e=1e3){return Zi(),Date.now()-ho<e}function fo(e,t,a,{enabled:r=!0,fallbackOnParent:i=!1}={}){const s=Da(e),l=Da(t),u=o.useRef(null),c=o.useRef(0);o.useEffect(()=>{if(!r||typeof document>"u")return;const m=p=>{const f=p,y=p.target,x=a.current,C=!!(y&&x&&x.contains(y));if(f.pointerType!=="touch"){C&&(u.current=null);return}if(C){u.current=s.current;return}u.current=null,s.current&&!(y&&y.closest?.(".tooltip-content"))&&l.current(!1,x)};return document.addEventListener("pointerdown",m,!0),()=>document.removeEventListener("pointerdown",m,!0)},[r,a,s,l]);const d=o.useCallback(m=>{const p=u.current;return p===null?!1:(u.current=null,c.current=Date.now(),l.current(!p,m??a.current),!0)},[a,l]);return o.useEffect(()=>{if(!r||!i)return;const m=a.current,p=m?.parentElement;if(!m||!p)return;let f=null;const y=h=>{const _=h.changedTouches?.[0];if(!_)return!1;const g=m.getBoundingClientRect();return _.clientX>=g.left&&_.clientX<=g.right&&_.clientY>=g.top&&_.clientY<=g.bottom},x=h=>{f=y(h)?s.current:null},C=h=>{const _=f;f=null,!(_===null||Date.now()-c.current<700||!y(h))&&(u.current=null,c.current=Date.now(),l.current(!_,m))};return p.addEventListener("touchstart",x,{passive:!0}),p.addEventListener("touchend",C),()=>{p.removeEventListener("touchstart",x),p.removeEventListener("touchend",C)}},[r,i,a,s,l]),{touchPress:d}}function $y(e,t){const{size:a=48,type:r,htmlType:i,href:s,target:l,rel:u,icon:c,rightIcon:d,label:m,count:p,subLabel:f,children:y,ariaLabel:x,variant:C="default",align:h="center",nowrap:_=!1,selected:g,toggleable:A=!1,ariaExpanded:b,ariaControls:k,disabled:v=!1,useLabel:w=!0,useBorder:B=!0,useBG:E=!0,useDisabledCovered:D=!1,useDisabledInvisible:N=!1,width:O,minWidth:P,onClick:G,onDisabledClick:L,showTooltipInfo:M=!1,tooltipInfoText:$=null,tooltipDescription:Z=null,tooltipOnly:q=!1,iconSize:z="medium",iconColor:V,shape:R="rounded",color:H,className:W,...I}=e,S=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),j=S.match(/^\d+$/)?`button${S}`:`button-${S}`,F=Number(a),U=!isNaN(F)&&F<40?"button-2":"button-1",re=m??y,ne=v||!!I.disabled,le=ne?D?"disabled-covered":N?"disabled-invisibled":"disabled":C,K=le?`button--variant-${le}`:"",oe=h?`button--align-${h}`:"",Ae=_?"button--nowrap":"",Y=R?`button--shape-${R}`:"",Q=typeof V=="string"&&V.startsWith("--")?`var(${V})`:V,me={...O?{width:typeof O=="number"?`${O}px`:O}:{},...P?{minWidth:typeof P=="number"?`${P}px`:P}:{},...B?{}:{"--button-border":ne?"0":"1px solid transparent"},...Q?{"--button-icon-color":Q}:{},...H?{"--color-main":H}:{}},De=w===!1?"":re,be=Array.isArray(De)?De.length>0:!!De,te=!!d,ue=r??(be||c||te?"bar":"dot"),fe=`${j}--${ue}`,ge=o.useRef(null);o.useEffect(()=>{!Ln||i!==void 0||ge.current?.closest("form")&&St(`button-in-form:${typeof re=="string"?re:""}`,'[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 re=="string"&&re?` \uB2E8\uCD94: ${re}`:""))},[i,re]);const Ce=o.useRef(t);Ce.current=t;const $e=o.useCallback(Re=>{ge.current=Re;const tt=Ce.current;typeof tt=="function"?tt(Re):tt&&(tt.current=Re)},[]),He=o.useRef(ne),[Te,Ie]=o.useState(!!g),[qe,mt]=o.useState(!1),[ct,rt]=o.useState(null),ft=o.useCallback(()=>mt(!1),[]),[ke,Ve]=o.useState(!1),we=o.useId();o.useEffect(()=>{typeof g=="boolean"&&Ie(g)},[g]),o.useEffect(()=>{if(He.current&&!ne&&ge.current){const Re=ge.current;let tt=!1;try{tt=Re.matches(":focus:not(:focus-visible)")}catch{tt=!1}tt&&Re.blur(),Re.style.pointerEvents="none";const xt=requestAnimationFrame(()=>{requestAnimationFrame(()=>{ge.current&&(ge.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(xt)}He.current=ne},[ne]);const Ue=typeof g=="boolean"?!!g:Te,Be=typeof b=="boolean"?void 0:A||typeof g=="boolean"?Ue?"true":"false":I["aria-pressed"],je=_e("button",j,fe,K,oe,Ae,Y,Ue?"is-selected":null,E?null:"button--no-bg",q?"button--tooltip-only":null,W),Se=`button__icon button__icon--${z}`,Xe=Array.isArray(f)?f:f!==void 0?[f]:[],Qe=()=>{if(Array.isArray(De))return De.map((tt,xt)=>{const Lt=Xe[xt];return n.jsxs("span",{className:`button__label-text${Lt!==void 0?" button__label-text--has-sub":""}`,children:[tt,Lt!==void 0&&n.jsx("span",{className:"button__sub-label-text caption-1",children:Lt})]},xt)});const Re=f!==void 0;return n.jsxs("span",{className:`button__label-text${Re?" button__label-text--has-sub":""}`,children:[De,p!=null&&n.jsx("span",{className:"button__count",children:p}),Re&&n.jsx("span",{className:"button__sub-label-text caption-1",children:f})]})},dt=Re=>{typeof g!="boolean"&&!A&&Ie(!1),Re.currentTarget.blur()},ht=Re=>{ne||(typeof I.onMouseLeave=="function"&&I.onMouseLeave(Re),dt(Re))},wt=Re=>{if(q&>&&it.touchPress(Re.currentTarget),ne){gt&&it.touchPress(Re.currentTarget),Re.preventDefault(),L?.(Re);return}typeof g!="boolean"&&A&&Ie(tt=>!tt),G?.(Re)},Ct=o.useCallback(()=>{(M||Z)&&(mt(!0),rt(ge.current?.getBoundingClientRect()??null))},[M,Z]),Nt=o.useCallback(()=>{(M||Z)&&(mt(!1),rt(null))},[M,Z]),gt=!!(M||Z),it=fo(qe,Re=>{Re?Ct():Nt()},ge,{enabled:gt&&(ne||q),fallbackOnParent:gt&&ne}),Ke={...I};delete Ke.disabled,delete Ke.className,delete Ke.faded,delete Ke.useFaded,delete Ke.loading,delete Ke.onMouseLeave,delete Ke.onPointerEnter,delete Ke.onPointerLeave,delete Ke.onPointerUp,delete Ke.onFocus,delete Ke.onBlur,ne&&(Object.keys(Ke).forEach(Re=>{/^on[A-Z]/.test(Re)&&typeof Ke[Re]=="function"&&delete Ke[Re]}),Ke["aria-disabled"]="true");const se=(typeof M=="string"?M:null)??(typeof $=="string"?$:null)??(typeof x=="string"?x:null)??(typeof re=="string"?re:null)??void 0,Ne=typeof x=="string"?x:typeof re=="string"?re:se,We=Z?[Z.title,...Z.items??[]].filter(Boolean).join(". "):M&&se&&se!==Ne?se:"",nt=[typeof I["aria-describedby"]=="string"?I["aria-describedby"]:void 0,We?we:null].filter(Boolean).join(" ")||void 0,Fe=(Re,tt)=>n.jsx(at,{icon:Re,label:tt??Ne,className:Se,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),Ge=()=>ue==="dot"?n.jsxs(n.Fragment,{children:[Fe(c),be&&n.jsx("span",{className:`button__label ${U}`,children:Qe()})]}):h==="center"&&c?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"button__center-group",children:[n.jsx("span",{className:"button__left",children:Fe(c)}),be&&n.jsx("span",{className:`button__label ${U}`,children:Qe()})]}),te&&n.jsx("span",{className:"button__right",children:Fe(d)})]}):n.jsxs(n.Fragment,{children:[c&&n.jsx("span",{className:"button__left",children:Fe(c,x??re)}),be&&n.jsx("span",{className:`button__label ${U}`,children:Qe()}),te&&n.jsx("span",{className:"button__right",children:Fe(d)})]}),bt=!!s&&!ne;return n.jsxs(n.Fragment,{children:[n.jsxs(bt?"a":"button",{...Ke,ref:$e,...bt?{href:s,target:l,rel:u??(l==="_blank"?"noreferrer":void 0)}:{type:i??"button",disabled:ne&&!L&&!ke},className:je,"aria-pressed":Be,"aria-expanded":typeof b=="boolean"?b:I["aria-expanded"],"aria-controls":k??I["aria-controls"],"aria-label":Ne,"aria-disabled":ne&&(bt||L||ke)?!0:void 0,"aria-describedby":nt,style:me,onClick:wt,onMouseLeave:ht,onPointerEnter:Re=>{ia(Re)||Ct(),!ne&&typeof I.onPointerEnter=="function"&&I.onPointerEnter(Re)},onPointerLeave:Re=>{ia(Re)||Nt(),!ne&&typeof I.onPointerLeave=="function"&&I.onPointerLeave(Re)},onPointerUp:Re=>{ne&>&&it.touchPress(Re.currentTarget),!ne&&typeof I.onPointerUp=="function"&&I.onPointerUp(Re)},onFocus:Re=>{Ve(!0),la()||Ct(),!ne&&typeof I.onFocus=="function"&&I.onFocus(Re)},onBlur:Re=>{Ve(!1),ne||dt(Re),Nt(),!ne&&typeof I.onBlur=="function"&&I.onBlur(Re)},children:[Ge(),We?n.jsx("span",{id:we,hidden:!0,"aria-label":We}):null]}),qe&&Z?n.jsx(Kn,{anchorRect:ct,title:Z.title,items:Z.items,onClose:ft}):qe&&se?n.jsx(Bn,{anchorRect:ct,text:se,onClose:ft}):null]})}const pe=o.forwardRef($y);pe.displayName="Button";function kt(e,t,a){const r=o.useRef(null);return o.useLayoutEffect(()=>{const i=r.current?.parentElement??null;return t(i,e),()=>a(i)},[e,t,a]),r}const Sa={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},Co=new WeakMap;function go(e){if(e)return Co.get(e)}function Gt(e,t){e&&(e.style.setProperty(Sa.title,t.title),e.style.setProperty(Sa.description,t.description),Co.set(e,t))}function Kt(e){e&&(e.style.removeProperty(Sa.title),e.style.removeProperty(Sa.description),Co.delete(e))}const Xi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Ji(){const e=kt(Xi,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const Qi={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function el(){const e=kt(Qi,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const tl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function nl(){const e=kt(tl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const al={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function rl(){const e=kt(al,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const ol={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function sl(){const e=kt(ol,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const il={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function ll(){const e=kt(il,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const ul={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function cl(){const e=kt(ul,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const dl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function pl(){const e=kt(dl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const ml={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function hl(){const e=kt(ml,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const fl={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Cl(){const e=kt(fl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const gl={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function bl(){const e=kt(gl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:n.jsx("span",{className:"promo-banner-bg-outline__dot"})})}const yl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function vl(){const e=kt(yl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const xl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function _l(){const e=kt(xl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const wl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Bl(){const e=kt(wl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const Qt=(e,t,a)=>({key:e,get label(){return Rt.t(`promoBannerBg.${e}`,t)},textTone:a}),Ry=[Qt("main","\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("soft","\uC18C\uD504\uD2B8","dark"),Qt("sub","\uC11C\uBE0C \uCEEC\uB7EC","light"),Qt("deep","\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("softSub","\uC18C\uD504\uD2B8 \uC11C\uBE0C","dark"),Qt("warm","\uC6DC(\uAC15\uC870)","dark"),Qt("dark","\uB2E4\uD06C","light"),Qt("radial","\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("diagonal","\uB300\uAC01\uC120 \uD328\uD134","dark"),Qt("dots","\uB3C4\uD2B8 \uD328\uD134","dark"),Qt("outline","\uC544\uC6C3\uB77C\uC778","dark"),Qt("success","\uC131\uACF5/\uC644\uB8CC","light"),Qt("naver","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4","light"),Qt("instagram","\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4","light")],kl={main:Ji,soft:el,sub:nl,deep:rl,softSub:sl,warm:ll,dark:cl,radial:pl,diagonal:hl,dots:Cl,outline:bl,success:vl,naver:_l,instagram:Bl};function Al({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:i=.1,lineHeightRatio:s=1.4}={}){const l=A=>Math.max(a,Math.min(r,Number(A))),u=A=>{try{const b=localStorage.getItem(A),k=b?Number(b):1;return Number.isFinite(k)?l(k):l(1)}catch{return l(1)}},[c,d]=o.useState(()=>u(e)),[m,p]=o.useState(e);m!==e&&(p(e),d(u(e))),o.useEffect(()=>{try{localStorage.setItem(e,String(c))}catch{}},[e,c]);const f=A=>{d(typeof A=="function"?b=>l(A(b)):l(A))},y=()=>f(A=>+(A+i).toFixed(6)),x=()=>f(A=>+(A-i).toFixed(6)),C=c<r-Number.EPSILON,h=c>a+Number.EPSILON,_=Math.round(t*c),g=Math.round(_*s);return{scale:c,setScale:f,increase:y,decrease:x,canIncrease:C,canDecrease:h,fontSize:_,lineHeight:g}}function Nl(e,t){const a=Da(t);o.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const bo=" \xB7 ",El=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(bo)?e.split(bo).pop()??e:e})(),Py=o.createContext(!1),Yn=[];let Dl=null;function Iy(e){const t=o.useContext(Py);o.useEffect(()=>{if(t||typeof e!="string"||!e)return;Yn.length===0&&(Dl=document.title);const a={text:El?`${e}${bo}${El}`:e};return Yn.push(a),document.title=a.text,()=>{const r=Yn.lastIndexOf(a);r>=0&&Yn.splice(r,1),document.title=Yn.length?Yn[Yn.length-1].text:Dl??document.title}},[e,t])}const Sl=[{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"}],Fy=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function an(e,t){return Fy().compare(e,t)}const or=new Map;function Oy(e){const t=or.get(e);if(t)return t;const a=[],r=/-?\d+(?:\.\d+)?/g;let i=0;for(let s=r.exec(e);s;s=r.exec(e)){let l=s.index,u=s[0];u[0]==="-"&&l>0&&!/\s/.test(e[l-1])&&(l+=1,u=u.slice(1)),l>i&&a.push(e.slice(i,l)),a.push(Number(u)),i=s.index+s[0].length}return i<e.length&&a.push(e.slice(i)),or.size>5e3&&or.clear(),or.set(e,a),a}function zy(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 Wy(e,t){const a=d=>d==null||typeof d=="number"&&Number.isNaN(d)?"":String(d).trim(),r=a(e),i=a(t);if(r===i)return 0;const s=(d,m)=>{if(typeof d=="number"&&!Number.isNaN(d))return[d];const p=zy(m);return p!==null?[p]:Oy(m)},l=s(e,r),u=s(t,i),c=Math.min(l.length,u.length);for(let d=0;d<c;d++){const m=l[d],p=u[d];if(typeof m=="number"&&typeof p=="number"){if(m!==p)return m-p;continue}if(typeof m=="number")return-1;if(typeof p=="number")return 1;const f=an(m,p);if(f!==0)return f}return l.length!==u.length?l.length-u.length:an(r,i)}const Tl=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function yo(e,t,a){const r=Tl(e),i=Tl(t);if(r||i)return r===i?0:r?1:-1;const s=Wy(e,t);return a?s:-s}function Hy(e,t,a){const{t:r}=xe.useTranslation(),[i,s]=o.useState(()=>{const x=a?.initialPageSize;return x&&Sl.some(C=>C.value===x)?x:"25"}),[l,u]=o.useState(1),[c,d]=o.useState(t);Object.is(c,t)||(d(t),l!==1&&u(1));const m=o.useMemo(()=>Sl.map(x=>({...x,label:r("visits.showN",{n:x.value})})),[r]),p=o.useCallback(x=>{s(x),u(1)},[]),f=Math.max(1,Math.ceil(e.length/Number(i)));(l>f||l<1||!Number.isFinite(l))&&u(Math.min(Math.max(1,Number.isFinite(l)?l:1),f));const y=Math.min(Math.max(1,Number.isFinite(l)?l:1),f);return{pageRows:o.useMemo(()=>e.slice((y-1)*Number(i),y*Number(i)),[e,y,i]),pageSizeProps:{options:m,value:i,onChange:p},paginationProps:{page:y,total:f,onChange:u},setPage:u}}function Vy(e){const[t,a]=o.useState(null),r=o.useRef(t),i=o.useRef(e?.onSortChange);i.current=e?.onSortChange;const s=o.useCallback(c=>{const d=r.current,m=d?.key===c?{key:c,asc:!d.asc}:{key:c,asc:!0};r.current=m,a(m),i.current?.(m)},[]),l=o.useCallback((c,d)=>({label:c,sortDir:t?.key===d?t.asc?"asc":"desc":null,onClick:()=>s(d)}),[t,s]),u=o.useCallback((c,d)=>{if(!t)return c;const{key:m,asc:p}=t;return[...c].sort((f,y)=>yo(d(f,m),d(y,m),p))},[t]);return{sort:t,field:l,sortRows:u}}const dn="\uC804\uCCB4";Object.fromEntries(Object.entries(Jf).map(([e,{nucleus:t}])=>[e,t]));const qy={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"})},Uy={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"})},Gy={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 Ky(e,t){if("place"in t)return qy[t.place](e);const a=Uy[t.vowel](e);return t.glide?`${a} \xB7 ${Gy[t.glide](e)}`:a}const Yy=(e,{defaultValue:t})=>t,jl=(e,t)=>({jamos:e,phonetic:t,tooltip:Ky(Yy,t)}),kn=(e,t)=>t.map(a=>jl([a],{place:e})),Pt=(e,t,a)=>jl([...e],a?{vowel:t,glide:a}:{vowel:t}),vo={cho:[kn("labial",["\u3142","\u3143","\u314D","\u3141"]),kn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),kn("alveolar",["\u3145","\u3146"]),kn("palatal",["\u3148","\u3149","\u314A"]),kn("velar",["\u3131","\u3132","\u314B"]),kn("glottal",["\u314E"])],jung:[[Pt("\u3163","frontHigh"),Pt("\u315F","frontHigh","w"),Pt("\u3162","frontHigh","velar")],[Pt("\u3161","backHighUnrounded")],[Pt("\u315C","backHighRounded"),Pt("\u3160","backHighRounded","j")],[Pt("\u3154\u3150","frontMid"),Pt("\u3156\u3152","frontMid","j"),Pt("\u3159\u315A\u315E","frontMid","w")],[Pt("\u3153","backMidUnrounded"),Pt("\u3155","backMidUnrounded","j"),Pt("\u315D","backMidUnrounded","w")],[Pt("\u3157","backMidRounded"),Pt("\u315B","backMidRounded","j")],[Pt("\u314F","low"),Pt("\u3151","low","j"),Pt("\u3158","low","w")]],jong:[kn("labial",["\u3142","\u3141"]),kn("alveolar",["\u3137","\u3134","\u3139"]),kn("velar",["\u3131","\u3147"])]},Zy=e=>e===Xy?[]:Array.from(e),Xy="__NO_CODA__",xo=e=>e.map(t=>t.map(({jamos:a,phonetic:r,tooltip:i})=>({v:a.join(""),phonetic:r,tooltip:i}))),Ml={cho:xo(vo.cho),jung:xo(vo.jung),jong:xo(vo.jong)};Ml.jung.flat().forEach(({v:e})=>{for(const t of Zy(e));}),new Set(Ml.cho.flat().map(e=>e.v));function Jy(e,t=!0){const a=Da(e);o.useEffect(()=>{if(t)return Gn(()=>{a.current?.()})},[t,a])}function Ta(){const[e,t]=o.useState(null),a=o.useCallback(s=>t(s.getBoundingClientRect()),[]),r=o.useCallback(()=>t(null),[]),i=o.useCallback(s=>{const l=s.getBoundingClientRect();t(u=>u?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:i}}function Qy(e){const[t,a]=o.useState(null),[r,i]=o.useState(null),s=o.useRef(null);o.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]);const l=o.useCallback((c,d)=>{s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{a(c),i(d)},e)},[e]),u=o.useCallback(()=>{s.current&&clearTimeout(s.current),a(null),i(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:l,close:u}}function Ll(e="warning"){const[t,a]=o.useState(""),[r,i]=o.useState(e),[s,l]=o.useState(0),u=o.useCallback((p,f)=>{i(f),a(p),l(y=>y+1)},[]),c=o.useCallback(p=>u(p,"warning"),[u]),d=o.useCallback(p=>u(p,"normal"),[u]),m=o.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:s,showToast:u,showWarning:c,showNormal:d,clearToast:m}}function ja(e){let t=0;if(e&&typeof window<"u"&&typeof window.getComputedStyle=="function")for(let a=e;a&&a!==document.body&&a!==document.documentElement;a=a.parentElement){const r=parseInt(window.getComputedStyle(a).zIndex,10);!Number.isNaN(r)&&r>t&&(t=r)}return t>0?`max(var(--z-menu, 1500), ${t+1})`:"var(--z-menu, 1500)"}function Ma({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[i,s]=o.useState(!1),[l,u]=o.useState({position:"fixed"}),c=o.useRef(null),d=o.useRef(null),m=o.useCallback(()=>{c.current&&u(e(c.current.getBoundingClientRect(),c.current))},[e]);o.useLayoutEffect(()=>{i&&m()},[i,m]),o.useEffect(()=>{if(!i)return;let y=d.current?.offsetHeight??0;y>0&&m();let x=0,C=null;typeof ResizeObserver<"u"&&d.current&&(C=new ResizeObserver(()=>{const w=d.current?.offsetHeight??0;if(w!==y){if(y=w,++x>4){C?.disconnect(),C=null;return}m()}}),C.observe(d.current));const h=w=>{const B=w.target;r&&B.closest?.(r)||c.current?.contains(B)||d.current?.contains(B)||s(!1)};document.addEventListener("mousedown",h),document.addEventListener("pointerdown",h);let _=null;const g=()=>{if(typeof requestAnimationFrame>"u"){m();return}_===null&&(_=requestAnimationFrame(()=>{_=null,m()}))},A=w=>{d.current?.contains(w.target)||(t==="reposition"?g():t==="close"&&s(!1))};t!=="ignore"&&window.addEventListener("scroll",A,!0);const b=()=>{a==="reposition"?g():a==="close"&&s(!1)};let k=null;const v=()=>{b(),k&&clearTimeout(k),k=setTimeout(()=>{k=null,a==="reposition"&&m()},250)};return a!=="ignore"&&(window.addEventListener("resize",b),window.addEventListener("orientationchange",v)),()=>{_!==null&&cancelAnimationFrame(_),C?.disconnect(),document.removeEventListener("mousedown",h),document.removeEventListener("pointerdown",h),t!=="ignore"&&window.removeEventListener("scroll",A,!0),a!=="ignore"&&(window.removeEventListener("resize",b),window.removeEventListener("orientationchange",v)),k&&clearTimeout(k)}},[i,m,t,a,r]),o.useEffect(()=>{if(i)return Gn(()=>s(!1))},[i]);const p=o.useCallback(()=>s(y=>!y),[]),f=o.useCallback(()=>s(!1),[]);return{open:i,setOpen:s,toggle:p,close:f,style:l,triggerRef:c,menuRef:d}}function e2(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:i,playMs:s=1100,feedbackMs:l=1500}={}){const[u,c]=o.useState([]),[d,m]=o.useState(0),[p,f]=o.useState("idle"),[y,x]=o.useState(null),[C,h]=o.useState([]),[_,g]=o.useState(null),[A,b]=o.useState(0),k=o.useRef(0),v=o.useCallback(R=>{k.current=typeof R=="function"?R(k.current):R,b(k.current)},[]),w=o.useRef(r),B=o.useRef(i);o.useEffect(()=>{w.current=r,B.current=i},[r,i]);const E=o.useRef([]),D=()=>{E.current.forEach(clearTimeout),E.current=[]},N=(R,H)=>{E.current.push(setTimeout(H,R))};o.useEffect(()=>()=>D(),[]);const O=u[d]?.id??null,P=o.useRef(null),G=o.useCallback(()=>{D(),f("playing"),h([]),g(null),v(0);let R=0;e.forEach((H,W)=>{N(R,()=>{m(W),x(H.id),w.current?.(H)}),N(R+1e3,()=>{x(null),h(I=>[...I,H.id])}),R+=1300}),N(R,()=>{f("done"),B.current?.({score:0,total:e.length})})},[e,v]),L=o.useCallback((R,H)=>{if(H>=R.length){f("done"),B.current?.({score:k.current,total:R.length});return}P.current=null,m(H),g(null),f("playing"),x(R[H].id),w.current?.(R[H]),N(s,()=>{x(null),f("waiting")})},[s]),M=o.useCallback(()=>{D();const R=Na(e);c(R),v(0),h([]),L(R,0)},[e,L,v]),$=o.useCallback(()=>{t==="playback"?(c(e),G()):M()},[t,e,G,M]),Z=o.useCallback(()=>{D(),f("idle"),x(null),h([]),g(null),m(0),v(0),c([])},[v]),q=e.map(R=>R.id).join("|");o.useEffect(()=>(a?$():Z(),()=>D()),[t,q,a]);const z=o.useCallback(R=>{p!=="waiting"||t==="playback"||P.current===d||(P.current=d,g(R),R===u[d]?.id&&v(H=>H+1),t==="exam"?(f("playing"),N(400,()=>L(u,d+1))):(f("feedback"),N(l,()=>L(u,d+1))))},[p,t,u,d,L,l,v]),V=t==="playback"?e.length:u.length;return{bind:{activeSpeakerId:y,playedIds:C,selectedId:_,answerId:O,showFeedback:p==="feedback",clickable:p==="waiting",onSelectSpeaker:z},index:d,total:V,score:A,phase:p,done:p==="done",start:$,reset:Z}}const _o=new Map,wo=new Map;function $l(e){const t=/^data:image\/svg\+xml(;base64)?,([\s\S]*)$/.exec(e);if(!t)return null;try{return t[1]?atob(t[2]):decodeURIComponent(t[2])}catch{return null}}function t2(e){return e.replace(/<script[\s\S]*?<\/script\s*>/gi,"").replace(/<script[^>]*\/>/gi,"").replace(/\son[a-z]+\s*=\s*("[^"]*"|'[^']*'|[^\s>]+)/gi,"").replace(/\s(xlink:)?href\s*=\s*("\s*javascript:[^"]*"|'\s*javascript:[^']*')/gi,"")}function n2(e,t){const a=new Set;for(const l of e.matchAll(/url\(#([^)\s"']+)\)/g))a.add(l[1]);for(const l of e.matchAll(/(?:xlink:)?href="#([^"]+)"/g))a.add(l[1]);const r=new Set([...e.matchAll(/id="([^"]*)"/g)].map(l=>l[1])),i=[...a].filter(l=>r.has(l));if(i.length===0)return e;let s=e;for(const l of i){const u=l.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),c=`${t}-${l}`;s=s.replace(new RegExp(`id="${u}"`,"g"),`id="${c}"`).replace(new RegExp(`url\\(#${u}\\)`,"g"),`url(#${c})`).replace(new RegExp(`((?:xlink:)?href)="#${u}"`,"g"),`$1="#${c}"`)}return s}function a2(e){const t=wo.get(e);if(t)return t;const a=fetch(e).then(r=>r.ok?r.text():null).then(r=>(r!=null&&_o.set(e,r),r)).catch(()=>null).finally(()=>{wo.delete(e)});return wo.set(e,a),a}function r2(e,t=!0){const a=t&&e?$l(e)??_o.get(e)??null:null,[r,i]=o.useState(a);return o.useEffect(()=>{if(!t||!e){i(null);return}const s=$l(e)??_o.get(e)??null;if(s!==null){i(s);return}let l=!0;return a2(e).then(u=>{l&&i(u)}),()=>{l=!1}},[e,t]),r}function o2({title:e,description:t,actionLabel:a,onAction:r,bg:i,color:s,size:l="medium",actionVariant:u,titleColor:c,descriptionColor:d,className:m=""}){const p=i??s??"main",f=o.useRef(null),[y,x]=o.useState("main"),C=ln("(max-width: 767px)"),h=o.useRef({title:!1,description:!1});o.useLayoutEffect(()=>{const A=f.current;if(!A)return;const b=go(A),k=(v,w,B)=>{if(B!==void 0)A.style.setProperty(w,B),h.current[v]=!0;else if(h.current[v]){const E=b?.[v];E?A.style.setProperty(w,E):A.style.removeProperty(w),h.current[v]=!1}};k("title","--promo-banner-bg-title",c),k("description","--promo-banner-bg-description",d)},[c,d,p]),o.useLayoutEffect(()=>{const A=f.current;if(!A)return;const b=go(A);x(b?.actionVariant??"main")},[p]);const _=_e("promo-banner",`promo-banner--${l}`,m),g=kl[p];return n.jsxs("div",{ref:f,className:_,role:"note",children:[n.jsx(g,{}),n.jsxs("div",{className:"promo-banner__text",children:[n.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),t&&n.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&n.jsx(pe,{htmlType:"button",size:40,variant:u??y,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...C?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function s2({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":i}){const{t:s}=xe.useTranslation(),l=i??s("topBanner.ariaLabel","\uBC30\uB108"),u=o.Children.toArray(e),c=u.length,[d,m]=o.useState(0),[p,f]=o.useState(!1),[y,x]=o.useState(!1),[C,h]=o.useState(!1),_=o.useRef(null),g=o.useRef(null),A=o.useRef(null),b=mo(),k=p||y||C,v=c>0?Math.min(d,c-1):0;o.useEffect(()=>{if(c<2||t<=0||k||b)return;const B=window.setInterval(()=>m(E=>(Math.min(E,c-1)+1)%c),t);return()=>window.clearInterval(B)},[c,t,k,b]);const w=B=>{g.current!=null&&window.clearTimeout(g.current),g.current=window.setTimeout(()=>{g.current=null,h(!1)},B)};return o.useEffect(()=>()=>{g.current!=null&&window.clearTimeout(g.current)},[]),o.useEffect(()=>{if(!C)return;const B=E=>{E.pointerType==="touch"&&(A.current&&A.current.contains(E.target)||(g.current!=null&&(window.clearTimeout(g.current),g.current=null),h(!1)))};return document.addEventListener("pointerdown",B,!0),()=>document.removeEventListener("pointerdown",B,!0)},[C]),c===0?null:n.jsxs("section",{ref:A,className:_e("top-banner",r),"aria-label":l,"aria-roledescription":"carousel",onPointerEnter:B=>{_.current=B.pointerType},onPointerDown:B=>{_.current=B.pointerType,B.pointerType==="touch"&&(g.current!=null&&(window.clearTimeout(g.current),g.current=null),h(!0))},onPointerUp:B=>{B.pointerType==="touch"&&w(5e3)},onPointerCancel:B=>{B.pointerType==="touch"&&w(5e3)},onMouseEnter:()=>{_.current!=="touch"&&f(!0)},onMouseLeave:()=>f(!1),onFocus:B=>{let E=!0;try{E=B.target.matches(":focus-visible")}catch{E=!0}x(E)},onBlur:B=>{B.currentTarget.contains(B.relatedTarget)||x(!1)},children:[n.jsx("div",{className:"top-banner__viewport",children:n.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${v*100}%)`},children:u.map((B,E)=>n.jsx("div",{className:"top-banner__slide","aria-hidden":E!==v,...E!==v?{inert:!0}:{},children:B},E))})}),c>1&&n.jsx("div",{className:`top-banner__dots${(a?.[v]??"light")==="dark"?" top-banner__dots--dark":""}`,children:u.map((B,E)=>n.jsx("button",{type:"button",className:`top-banner__dot${E===v?" top-banner__dot--active":""}`,"aria-label":s("topBanner.dotAriaLabel",{count:c,index:E+1,defaultValue:`${c}\uAC1C \uC911 ${E+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":E===v,onClick:()=>m(E)},E))})]})}function i2({title:e,body:t,open:a=!1,onToggle:r,avatar:i,titleClassName:s="body-2",bodyClassName:l="body-2",className:u=""}){const{t:c}=xe.useTranslation();return n.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${u}`.trim(),role:"listitem",children:[n.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),r?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const m=d.currentTarget.closest('[role="list"]');if(!m)return;const p=Array.from(m.querySelectorAll("[data-accordion-header]")),f=p.indexOf(d.currentTarget);(d.key==="ArrowDown"?p[f+1]:p[f-1])?.focus()}},children:[i&&n.jsx("div",{className:"accordion-item__avatar",children:i}),n.jsx("div",{className:`accordion-item__title ${s}`,children:e}),n.jsx("div",{className:"accordion-item__chevron",children:n.jsx(at,{icon:a?"chevron-up":"chevron-down",label:a?c("accordion.collapse","\uC811\uAE30"):c("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&n.jsx("div",{className:`accordion-item__body ${l}`,children:typeof t=="string"?n.jsx("p",{children:t}):t})]})}function l2({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:i}){const[s,l]=o.useState({index:t}),u=(c,d)=>s.id!=null&&c.id!=null?c.id===s.id:s.id==null&&d===s.index;return n.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((c,d)=>n.jsx(i2,{title:c.title,body:c.body,avatar:c.avatar,open:u(c,d),onToggle:()=>l(u(c,d)?{index:-1}:{index:d,id:c.id}),bodyClassName:i},c.id??d))})}function u2(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:n.jsx("polyline",{points:"2,6 5,9 10,3"})})}function c2(){return n.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[n.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),n.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function d2(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:n.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function At(e){const{t}=xe.useTranslation(),{type:a="bar",size:r,className:i="","aria-label":s,"aria-hidden":l}=e;if(a==="dot"){const{icon:k,number:v,position:w="top-right",onClick:B,animate:E=!1}=e,D=k??"check",N=v!==void 0?"number":D,O=typeof r=="number"?r:32,P=_e("circle-badge",`circle-badge--${N}`,`circle-badge--${w}`,`circle-badge--${O}`,E?"circle-badge--animate":"",B?"circle-badge--clickable":"",i),G=v!==void 0?t("badge.nthSelected",{n:v,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:t("badge.selected","\uC120\uD0DD\uB428"),remove:t("badge.remove","\uC81C\uAC70"),minus:t("badge.exclude","\uC81C\uC678")}[D];return n.jsxs("span",{className:P,onClick:B,onKeyDown:B?L=>{L.key!=="Enter"&&L.key!==" "||(L.preventDefault(),L.currentTarget.click())}:void 0,"aria-label":l?void 0:s??G,"aria-hidden":l||void 0,role:B?"button":l?void 0:"img",tabIndex:B?0:void 0,children:[v!==void 0&&v,v===void 0&&D==="check"&&n.jsx(u2,{}),v===void 0&&D==="remove"&&n.jsx(c2,{}),v===void 0&&D==="minus"&&n.jsx(d2,{})]})}const{label:u,children:c,variant:d="default",fill:m="filled",minWidth:p,iconLeft:f,iconRight:y,color:x}=e,C=typeof r=="number"?"medium":r??"medium",h={small:"caption-2b",medium:"body-3b",large:"body-2b"}[C]??"body-2b",_={small:12,medium:14,large:16}[C]??14,g=_e("badge",`badge--${d}`,`badge--${C}`,m!=="filled"?`badge--${m}`:"",h,i),A=x?.startsWith("--")?`var(${x})`:x,b=p!==void 0||A?{...p!==void 0?{minWidth:typeof p=="number"?`${p}px`:p}:{},...A?{"--badge-color":A}:{}}:void 0;return n.jsxs("span",{className:g,style:b,"aria-label":l?void 0:s,role:s&&!l?"img":void 0,"aria-hidden":l||void 0,children:[f&&n.jsx(at,{icon:f,size:_,className:"badge__icon"}),u??c,y&&n.jsx(at,{icon:y,size:_,className:"badge__icon"})]})}function La({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:i}=xe.useTranslation(),s=r==="small"?40:48,[l,u]=o.useState([]),c=o.useMemo(()=>{const h=[{title:null,columns:e}];let _=e;for(const g of l){const A=_?.[g.ci]?.items?.[g.ii];if(!A||!Array.isArray(A.children)||!A.children.length)break;_=[{title:null,items:A.children}],h.push({title:A.label||null,columns:_})}return h},[e,l]),d=c[c.length-1],m=c.length-1,p=o.useCallback(()=>u(h=>h.slice(0,Math.max(0,Math.min(h.length,m)-1))),[m]),f=o.useRef(null),y=o.useRef(null),x=c.length;o.useEffect(()=>{y.current||(y.current=document.activeElement);let h=0,_=0;const g=()=>{const A=f.current?.querySelector("button:not([disabled])");if(A&&A.offsetParent){A.focus({preventScroll:!0});return}_++<20&&(h=requestAnimationFrame(g))};return h=requestAnimationFrame(g),()=>cancelAnimationFrame(h)},[x]),o.useEffect(()=>()=>{y.current?.focus?.({preventScroll:!0})},[]);const C=o.useCallback((h,_,g)=>{if(h){if(Array.isArray(h.children)&&h.children.length){u(A=>[...A.slice(0,m),{ci:_,ii:g}]);return}try{typeof h.onClick=="function"&&h.onClick()}catch{}try{h&&h.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,m]);return n.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(c.length>1||d.title)&&n.jsxs("div",{className:"tooltip-menu__header",children:[c.length>1?n.jsx(pe,{htmlType:"button",size:s,type:"dot",icon:"chevron-left",ariaLabel:i("common.back","\uB4A4\uB85C"),onClick:p,variant:"transparent-gray",useBorder:!1}):null,n.jsx("div",{className:"tooltip-menu__title button-1",children:d.title})]}),n.jsx("div",{className:"tooltip-menu__columns",ref:f,children:d.columns&&d.columns.map((h,_)=>n.jsxs("div",{className:"tooltip-menu__column",children:[h.title?n.jsx("div",{className:"tooltip-menu__column-title body-3",children:h.title}):null,n.jsx("div",{className:"tooltip-menu__items",children:(h.items||[]).map((g,A)=>n.jsxs(o.Fragment,{children:[g.separatorBefore&&A>0&&n.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),n.jsx(pe,{htmlType:"button",className:"tooltip-menu__item",size:s,type:g.label?"bar":"dot",icon:g.selected?"check":g.icon||"none",rightIcon:Array.isArray(g.children)&&g.children.length?"chevron-right":g.badgeCount?n.jsx(At,{type:"dot",position:"inline",number:Math.min(g.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:g.label,ariaLabel:g.label&&g.badgeCount&&g.badgeCount>0?i("nav.badgeLabel",{label:g.label,count:g.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):g.label,onClick:()=>C(g,_,A),selected:g.selected,disabled:g.disabled,showTooltipInfo:g.tooltip||!1,useBorder:!1,align:"left"})]},A))})]},_))})]})}const Rl=".content-area";function Bo(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(Rl);if(a){a.scrollTop=0;return}const r=document.scrollingElement??document.documentElement;r&&r.scrollHeight<=r.clientHeight&&St("nav-scroll-container",`[${t}] \uBCF8\uBB38\uC744 \uB9E8 \uC704\uB85C \uB418\uB3CC\uB9B4 \uD1B5\uC744 \uBABB \uCC3E\uC558\uB2E4(\uAE30\uBCF8 ${Rl}) \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 ko=52,sr=10,Pl=e=>e&&e>0?e:0;function Il({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:i,moreItems:s=[],scrollContainer:l}){const{t:u}=xe.useTranslation(),c=r==="manager"?"malgwi":"manager",d=r==="manager"?"arrow-left":"arrow-right",m=r==="manager"?u("nav.modeLabelMalgwi","\uB9D0\uADC0"):u("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=o.useRef(null),[f,y]=o.useState(0),x=e.length;o.useEffect(()=>{const R=p.current;if(!R)return;const H=()=>{const S=typeof getComputedStyle=="function"?getComputedStyle(R):null,j=R.clientWidth-(parseFloat(S?.paddingLeft??"")||0)-(parseFloat(S?.paddingRight??"")||0),F=R.querySelector(".bottom-nav__left"),U=F?.nextElementSibling,re=(F?.offsetWidth??0)+(F&&U?.classList.contains("bottom-nav__divider")?U.offsetWidth:0);y(Math.max(0,j-re))};if(H(),typeof ResizeObserver>"u")return;const W=new ResizeObserver(H);W.observe(R);const I=R.querySelector(".bottom-nav__left");return I&&W.observe(I),()=>W.disconnect()},[i]);const C=ko+1,h=R=>Math.max(0,Math.floor((R+sr)/(ko+sr))),_=x*(ko+sr)-sr<=f,g=f<=0||s.length===0&&_?x:Math.min(x,h(f-C)),A=f>0&&g<x,b=A?g:x,k=e.slice(0,b),v=e.slice(b),w=A||s.length>0,B=o.useCallback((R,H)=>({position:"fixed",bottom:window.innerHeight-R.top+8,right:window.innerWidth-R.right,zIndex:ja(H)}),[]),E=o.useId(),{open:D,toggle:N,close:O,style:P,triggerRef:G,menuRef:L}=Ma({computeStyle:B,onScroll:"ignore",onResize:"reposition"}),M=o.useCallback((R,H)=>H>0?u("nav.badgeLabel",{label:R,count:H,defaultValue:"{{label}}, {{count}}\uAC1C"}):R,[u]),$=o.useCallback((R,H)=>H>0?u("nav.badgeInsideLabel",{label:R,count:H,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):R,[u]),Z=o.useCallback(()=>i?.(c),[i,c]),q=o.useMemo(()=>v.find(R=>!!R.key&&R.key===t)??s.find(R=>R.selected||R.key&&R.key===t),[v,t,s]),z=o.useMemo(()=>[{items:[...v.map(R=>({label:R.label,icon:R.icon,badgeCount:R.badgeCount,selected:!!R.key&&R.key===t,closeOnSelect:!0,disabled:R.state==="disabled",onClick:()=>{R.state!=="disabled"&&(R.key&&a&&(a(R.key),Bo(l,"BottomNav")),O())}})),...s.map(R=>({label:R.label,icon:R.icon,badgeCount:R.badgeCount,selected:R.selected??(!!R.key&&R.key===t),closeOnSelect:!0,onClick:()=>{R.onClick?.(),O()}}))]}],[v,s,t,a,O]),V=[...v,...s].reduce((R,H)=>R+Pl(H.badgeCount),0);return n.jsxs("nav",{className:"bottom-nav",ref:p,"aria-label":u("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[i&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__left",children:n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:d,ariaLabel:m,className:"bottom-nav-item",onClick:Z})}),n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),n.jsx("div",{className:"bottom-nav__items",children:k.map((R,H)=>{const W=Pl(R.badgeCount);return n.jsxs("span",{className:"bottom-nav__slot",children:[n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:R.icon,ariaLabel:M(R.label,W),selected:!!R.key&&R.key===t,disabled:R.state==="disabled",className:"bottom-nav-item",onClick:()=>{R.key&&(a?.(R.key),Bo(l,"BottomNav"))}}),W>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(At,{type:"dot",position:"top-right",number:Math.min(W,99),size:24})})]},R.key??`__slot-${H}`)})}),w&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),n.jsx("div",{className:"bottom-nav__right",children:n.jsxs("div",{ref:G,className:"bottom-nav__slot",children:[n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:q?.icon??"ellipsis",ariaLabel:$(q?.label??u("nav.more","\uB354\uBCF4\uAE30"),V),selected:!!q,className:"bottom-nav-item",onClick:N,"aria-expanded":D,"aria-controls":D?E:void 0}),V>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(At,{type:"dot",position:"top-right",number:Math.min(V,99),size:24})}),D&&en.createPortal(n.jsx("div",{id:E,role:"group","aria-label":u("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:P,ref:L,children:n.jsx(La,{columns:z,onClose:O})}),document.body)]})})]})]})}function Fl(e){if(typeof e!="string")return!1;let t="";for(const r of e){const i=r.charCodeAt(0);i<=32||i>=127&&i<=159||(t+=r)}if(!t)return!1;const a=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);return a?["http","https","mailto","tel"].includes(a[1].toLowerCase()):!0}function Ol(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function p2(e){const{t}=xe.useTranslation(),{activeKey:a,unreadCount:r,onDebug:i,onNotification:s,onSetting:l,onHelp:u,onFeedback:c,onAccount:d}=e||{},m="default";return i||s||l||u||c||d?n.jsxs("div",{className:"side-nav__footer",children:[i&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:i,selected:a==="debug"}),s&&n.jsxs("span",{className:"side-nav__notification-wrap",children:[n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"bell",ariaLabel:Ol(t,t("nav.notifications","\uC54C\uB9BC"),r),onClick:s,selected:a==="notifications"}),!!r&&r>0&&n.jsx(At,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),l&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),u&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:u,selected:a==="help"}),c&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:c,selected:a==="feedback"}),d&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:d,selected:a==="account"})]}):null}function zl(e){const{t}=xe.useTranslation(),{item:a,itemKey:r,label:i,icon:s,active:l,onClick:u,style:c,state:d,labelStyle:m}=e||{},p=a?.key??r??"",f=a?.label??i??"",y=a?.icon??s??"",x=a?.badge??0,C=n.jsx("span",{className:"side-nav__icon-wrap",children:n.jsx(at,{icon:y,label:typeof f=="string"?f:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),h=d==="disabled",_=`side-nav__item ${l?"active":""} ${d||""} ${h?"disabled":""} ${a?.child?"side-nav__item--child":""}`,g=o.useCallback(A=>{if(h)return;const b=A.detail>0;if(b)try{A.currentTarget.blur()}catch{}u?.(p,A.currentTarget,b)},[h,p,u]);return n.jsxs("button",{type:"button",className:_,onClick:g,"aria-label":typeof f=="string"?Ol(t,f,x):void 0,"aria-current":l?"page":void 0,style:c,"aria-disabled":h,children:[C,n.jsx("span",{className:"side-nav__label button-1 f",style:m,children:f}),x>0&&n.jsx(At,{type:"dot",position:"inline",number:Math.min(x,99),size:24,"aria-hidden":!0}),d==="loading"&&n.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":t("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function Wl(e){const{t}=xe.useTranslation(),{items:a=[],activeKey:r,onChange:i,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:f,onAppModeChange:y,scrollContainer:x}=e||{},C=f==="manager",h=o.useCallback(()=>y?.(C?"malgwi":"manager"),[y,C]),_=o.useRef(null),[g,A]=o.useState(null);o.useEffect(()=>{const B=_.current;if(!B)return;let E=null;const D=()=>{const{scrollHeight:P,clientHeight:G,scrollTop:L}=B;if(P<=G+1){A(z=>z===null?z:null);return}const M=Math.max(24,G/P*G),$=G-M,Z=P-G,q={top:Math.round(L/Z*$),height:Math.round(M)};A(z=>z&&z.top===q.top&&z.height===q.height?z:q)},N=()=>{if(typeof requestAnimationFrame>"u"){D();return}E===null&&(E=requestAnimationFrame(()=>{E=null,D()}))};D(),B.addEventListener("scroll",N,{passive:!0});const O=typeof ResizeObserver<"u"?new ResizeObserver(N):null;O?.observe(B);for(const P of Array.from(B.children))O?.observe(P);return()=>{E!==null&&cancelAnimationFrame(E),B.removeEventListener("scroll",N),O?.disconnect()}},[a]);const b=o.useRef(null),k=o.useCallback(B=>{const E=_.current;E&&(B.preventDefault(),b.current={y:B.clientY,top:E.scrollTop},B.currentTarget.setPointerCapture(B.pointerId))},[]),v=o.useCallback(B=>{const E=_.current,D=b.current;!E||!D||(E.scrollTop=D.top+(B.clientY-D.y)*(E.scrollHeight/E.clientHeight))},[]),w=o.useCallback(B=>{b.current=null,B.currentTarget.hasPointerCapture(B.pointerId)&&B.currentTarget.releasePointerCapture(B.pointerId)},[]);return n.jsxs("nav",{ref:_,"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[g&&n.jsx("div",{className:"side-nav__scroll","aria-hidden":"true",children:n.jsx("div",{className:"side-nav__scroll-thumb",style:{top:g.top,height:g.height},onPointerDown:k,onPointerMove:v,onPointerUp:w,onPointerCancel:w})}),n.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(B=>!B.section&&(B.key||B.label)).map((B,E)=>n.jsxs(o.Fragment,{children:[B.divider&&n.jsx("div",{className:"side-nav__separator"}),n.jsx(zl,{item:B,active:!!B.key&&B.key===r,state:B.disabled?"disabled":void 0,onClick:(D,N,O)=>{if(B.disabled)return;if(B.href){if(Fl(B.href)&&window.open(B.href,"_blank","noopener,noreferrer"),O)try{N?.blur()}catch{}return}if(i?.(B.key),Bo(x,"SideNav"),!O)return;try{N?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const P=document.querySelector(".header");if(P){const G=typeof P.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&G&&P.matches(":hover"))){P.classList.add("header--force-collapsed");const L=()=>{P.classList.remove("header--force-collapsed"),P.removeEventListener("mouseenter",L)};P.addEventListener("mouseenter",L)}}}})]},B.key??`side-nav__item-${E}`)),y&&n.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),y&&n.jsx(zl,{item:{key:"__mode-switch__",label:C?t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:C?"arrow-left":"arrow-right"},onClick:h})]}),n.jsx(p2,{activeKey:r,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p})]})}var ir='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_SpeechEar_ko" xmlns="http://www.w3.org/2000/svg" width="583.33" height="240" viewBox="0 0 583.33 240"><g id="text"><path d="M278.07,115.18V47.71h85.73v67.47h-85.73ZM408.4,173.42v20.18h-125.33v-44.02h96.5v-5.96h-96.88v-20.18h124.18v44.02h-96.11v5.96h97.65ZM305.56,70.97v20.76h30.95v-20.76h-30.95ZM423.39,92.88h-16.53v25.37h-27.68V45.98h27.68v20.18h16.53v26.72Z"/><path d="M527.58,113.83v26.33c-7.82,3.59-20.06,5.38-36.71,5.38h-1.73v48.06h-27.68v-48.06h-34.21v-26.33h64.01c16.4,0,28.51-1.79,36.33-5.38ZM435.31,75.77v-26.33h80.35v62.09h-27.68v-35.75h-52.67ZM563.33,193.61h-27.68V45.98h27.68v147.63Z"/></g><g id="symbol"><path d="M183.92,56.08c-8.48-15.54-24.97-26.08-43.92-26.08h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%234dcdc0"/><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23499cdf"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>',Ao='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_SpeechEarManager_ko" xmlns="http://www.w3.org/2000/svg" width="1035.43" height="240" viewBox="0 0 1035.43 240"><g id="text"><path d="M278.07,115.18V47.71h85.73v67.47h-85.73ZM408.4,173.42v20.18h-125.33v-44.02h96.5v-5.96h-96.88v-20.18h124.18v44.02h-96.11v5.96h97.65ZM305.56,70.97v20.76h30.95v-20.76h-30.95ZM423.39,92.88h-16.53v25.37h-27.68V45.98h27.68v20.18h16.53v26.72Z"/><path d="M527.58,113.83v26.33c-7.82,3.59-20.06,5.38-36.71,5.38h-1.73v48.06h-27.68v-48.06h-34.21v-26.33h64.01c16.4,0,28.51-1.79,36.33-5.38ZM435.31,75.77v-26.33h80.35v62.09h-27.68v-35.75h-52.67ZM563.33,193.61h-27.68V45.98h27.68v147.63Z"/><path d="M644.64,52.32v131.48h-58.24V52.32h58.24ZM634.45,173.81V62.32h-38.25v111.49h38.25ZM713.65,193.61h-10.19v-75.16h-28.64v72.66h-10V46.94h10v61.32h28.64v-62.28h10.19v147.63Z"/><path d="M819.46,171.6c6.6-1.35,12.08-3.11,16.44-5.29v10.19c-4.23,2.31-9.64,4.1-16.24,5.38-6.6,1.28-13.3,1.92-20.09,1.92h-57.28V51.36h10.57v122.25h46.71c6.66,0,13.29-.67,19.89-2.02ZM851.47,193.8V45.98h10.57v147.63l-10.57.19Z"/><path d="M935.66,113.64l48.44,62.28-8.27,6.34-43.06-56.13c-4.36,16.66-10.38,29.92-18.07,39.79-7.69,9.87-16.72,15.83-27.1,17.88v-10.76c8.71-2.05,16.21-8.07,22.49-18.07,6.28-10,11.05-22.97,14.32-38.92,3.27-15.95,5.03-33.86,5.29-53.73h-39.21v-10h88.61v10h-39.02c-.13,18.84-1.6,35.95-4.42,51.32ZM1015.43,193.61h-10.38v-79.39h-37.87v-10.19h37.87v-58.05h10.38v147.63Z"/></g><g id="symbol"><path d="M183.92,56.08c-8.48-15.54-24.97-26.08-43.92-26.08h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%234dcdc0"/><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23499cdf"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>',m2='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Symbol_SpeechEar" xmlns="http://www.w3.org/2000/svg" width="240" height="240" viewBox="0 0 240 240"><g id="symbol"><path d="M183.92,56.08c-8.48-15.54-24.97-26.08-43.92-26.08h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%234dcdc0"/><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23499cdf"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>';function Hl({appMode:e}){const{t}=xe.useTranslation(),a=e==="manager",r=a?Ao:ir,i=m2;return n.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[n.jsx("img",{src:i,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image brand-identity__image--symbol"}),n.jsx("img",{src:r,alt:a?t("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):t("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image brand-identity__image--logo"})]})}function Vl({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:i,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:f,onAppModeChange:y,scrollContainer:x}){const{t:C}=xe.useTranslation(),h=ln("(max-width: 767px)"),_=o.useMemo(()=>(a??[]).filter(P=>!P.section&&(P.key||P.label)).map(P=>({key:P.key,label:typeof P.label=="string"?P.label:void 0,icon:P.icon,state:P.disabled?"disabled":void 0,badgeCount:P.badge})),[a]),g=o.useCallback(P=>{const G=a?.find(L=>L.key===P);if(!G?.disabled){if(G?.href){Fl(G.href)&&window.open(G.href,"_blank","noopener,noreferrer");return}t?.(P)}},[a,t]),A=o.useMemo(()=>{const P=[];return l&&P.push({key:"debug",icon:"terminal",label:C("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),u&&P.push({key:"notifications",icon:"bell",label:C("nav.notifications","\uC54C\uB9BC"),badgeCount:s,onClick:u}),d&&P.push({key:"settings",icon:"settings",label:C("nav.settings","\uC124\uC815"),onClick:d}),m&&P.push({key:"help",icon:"message-circle-question-mark",label:C("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:m}),p&&P.push({key:"feedback",icon:"bug",label:C("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:p}),c&&P.push({key:"account",icon:"user-round",label:C("nav.account","\uACC4\uC815"),onClick:c}),P},[C,l,u,d,m,p,c,s]),b=o.useCallback((P,G)=>({position:"fixed",top:P.bottom+8,right:Math.max(8,window.innerWidth-P.right),zIndex:ja(G)}),[]),k=o.useId(),{open:v,toggle:w,close:B,style:E,triggerRef:D,menuRef:N}=Ma({computeStyle:b,onScroll:"ignore",onResize:"reposition"}),O=o.useMemo(()=>[{items:A.map(P=>({label:P.label,icon:P.icon,badgeCount:P.badgeCount,selected:P.selected??(!!P.key&&P.key===e),closeOnSelect:!0,onClick:()=>{P.onClick?.(),B()}}))}],[A,e,B]);return n.jsxs("aside",{className:`header${f==="manager"?" header--manager":""}`,children:[n.jsxs("div",{className:"header__bi",children:[n.jsx(Hl,{appMode:f}),n.jsxs("div",{className:"header__menu-button",ref:D,children:[n.jsx(pe,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",useBorder:!1,icon:"menu",ariaLabel:u&&s&&s>0?C("nav.badgeInsideLabel",{label:C("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:s,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):C("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:w,"aria-expanded":v,"aria-controls":v?k:void 0}),!!u&&!!s&&s>0&&n.jsx(At,{type:"dot",number:Math.min(s,99),size:24,"aria-hidden":!0}),v&&en.createPortal(n.jsx("div",{id:k,role:"group","aria-label":C("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:E,ref:N,children:n.jsx(La,{columns:O,onClose:B})}),document.body)]})]}),n.jsx(Wl,{scrollContainer:x,items:a,activeKey:e??void 0,onChange:t,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:f,onAppModeChange:y}),h&&n.jsx(Il,{items:_,activeKey:e??void 0,onChange:g,scrollContainer:x,appMode:f,onAppModeChange:y})]})}const h2=Vl,f2=()=>Rt.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function ql(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 oa(`${t.toLocaleString("ko-KR")}\uC6D0`)}return oa(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function C2(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function g2(e){if(e.durationDays&&e.durationDays>0){const s=e.durationDays;return s%365===0?`${s/365}\uB144`:`${s}\uC77C`}const t=(e.code??"").match(/(\d+)(d|y)\b/i);if(t)return t[2].toLowerCase()==="y"?`${t[1]}\uB144`:`${t[1]}\uC77C`;const a=e.name??"",r=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(r)return r[1].replace(/\s+/g,"");const i=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return i?i[2].toLowerCase()==="year"?`${i[1]}\uB144`:`${i[1]}\uC77C`:a||f2()}function b2(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 Ul(e){return{type:e.type??C2(e),plan:g2(e),label:e.label,price:ql(e.price),originalPrice:ql(e.originalPrice),discountLabel:e.discountLabel}}var y2='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_SpeechEar_ko_mono" xmlns="http://www.w3.org/2000/svg" width="583.33" height="240" viewBox="0 0 583.33 240"><g id="text"><path d="M278.07,115.18V47.71h85.73v67.47h-85.73ZM408.4,173.42v20.18h-125.33v-44.02h96.5v-5.96h-96.88v-20.18h124.18v44.02h-96.11v5.96h97.65ZM305.56,70.97v20.76h30.95v-20.76h-30.95ZM423.39,92.88h-16.53v25.37h-27.68V45.98h27.68v20.18h16.53v26.72Z" fill="%23fff"/><path d="M527.58,113.83v26.33c-7.82,3.59-20.06,5.38-36.71,5.38h-1.73v48.06h-27.68v-48.06h-34.21v-26.33h64.01c16.4,0,28.51-1.79,36.33-5.38ZM435.31,75.77v-26.33h80.35v62.09h-27.68v-35.75h-52.67ZM563.33,193.61h-27.68V45.98h27.68v147.63Z" fill="%23fff"/></g><g id="symbol"><g opacity=".5"><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23fff"/></g><path d="M140,30h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84-3.88-7.1-6.08-15.25-6.08-23.92v-80c0-16.57,13.43-30,30-30h80c8.66,0,16.81,2.21,23.92,6.08-8.48-15.54-24.97-26.08-43.92-26.08Z" fill="%23fff"/><path d="M183.92,56.08c3.88,7.1,6.08,15.25,6.08,23.92v80c0,16.57-13.43,30-30,30h-80c-8.66,0-16.81-2.21-23.92-6.08,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%23fff"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>',v2='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_SpeechEarManager_ko_mono" xmlns="http://www.w3.org/2000/svg" width="1035.43" height="240" viewBox="0 0 1035.43 240"><g id="text"><path d="M278.07,115.18V47.71h85.73v67.47h-85.73ZM408.4,173.42v20.18h-125.33v-44.02h96.5v-5.96h-96.88v-20.18h124.18v44.02h-96.11v5.96h97.65ZM305.56,70.97v20.76h30.95v-20.76h-30.95ZM423.39,92.88h-16.53v25.37h-27.68V45.98h27.68v20.18h16.53v26.72Z" fill="%23fff"/><path d="M527.58,113.83v26.33c-7.82,3.59-20.06,5.38-36.71,5.38h-1.73v48.06h-27.68v-48.06h-34.21v-26.33h64.01c16.4,0,28.51-1.79,36.33-5.38ZM435.31,75.77v-26.33h80.35v62.09h-27.68v-35.75h-52.67ZM563.33,193.61h-27.68V45.98h27.68v147.63Z" fill="%23fff"/><path d="M644.64,52.32v131.48h-58.24V52.32h58.24ZM634.45,173.81V62.32h-38.25v111.49h38.25ZM713.65,193.61h-10.19v-75.16h-28.64v72.66h-10V46.94h10v61.32h28.64v-62.28h10.19v147.63Z" fill="%23fff"/><path d="M819.46,171.6c6.6-1.35,12.08-3.11,16.44-5.29v10.19c-4.23,2.31-9.64,4.1-16.24,5.38-6.6,1.28-13.3,1.92-20.09,1.92h-57.28V51.36h10.57v122.25h46.71c6.66,0,13.29-.67,19.89-2.02ZM851.47,193.8V45.98h10.57v147.63l-10.57.19Z" fill="%23fff"/><path d="M935.66,113.64l48.44,62.28-8.27,6.34-43.06-56.13c-4.36,16.66-10.38,29.92-18.07,39.79-7.69,9.87-16.72,15.83-27.1,17.88v-10.76c8.71-2.05,16.21-8.07,22.49-18.07,6.28-10,11.05-22.97,14.32-38.92,3.27-15.95,5.03-33.86,5.29-53.73h-39.21v-10h88.61v10h-39.02c-.13,18.84-1.6,35.95-4.42,51.32ZM1015.43,193.61h-10.38v-79.39h-37.87v-10.19h37.87v-58.05h10.38v147.63Z" fill="%23fff"/></g><g id="symbol"><g opacity=".5"><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23fff"/></g><path d="M140,30h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84-3.88-7.1-6.08-15.25-6.08-23.92v-80c0-16.57,13.43-30,30-30h80c8.66,0,16.81,2.21,23.92,6.08-8.48-15.54-24.97-26.08-43.92-26.08Z" fill="%23fff"/><path d="M183.92,56.08c3.88,7.1,6.08,15.25,6.08,23.92v80c0,16.57-13.43,30-30,30h-80c-8.66,0-16.81-2.21-23.92-6.08,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%23fff"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>',Gl='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Symbol_IHAB_mono" xmlns="http://www.w3.org/2000/svg" width="240" height="240" viewBox="0 0 240 240"><path id="symbol" d="M190.71,49.29c-18.1-18.1-43.1-29.29-70.71-29.29s-34.94,28.87-53.03,46.97h0c-18.1,18.1-46.97,25.56-46.97,53.03s11.19,52.61,29.29,70.71c18.1,18.1,43.1,29.29,70.71,29.29s52.61-11.19,70.71-29.29c18.1-18.1,29.29-43.1,29.29-70.71s-11.19-52.61-29.29-70.71ZM155.36,155.36c-9.05,9.05-21.55,14.64-35.36,14.64s-26.31-5.6-35.36-14.64c-9.05-9.05-14.64-21.55-14.64-35.36s5.6-26.31,14.64-35.36c9.05-9.05,21.55-14.64,35.36-14.64s26.31,5.6,35.36,14.64c9.05,9.05,14.64,21.55,14.64,35.36s-5.6,26.31-14.64,35.36Z" fill="%23fff"/></svg>';const Zn={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},No=new WeakMap;function x2(e){if(e)return No.get(e)}function An(e,t){e&&(e.style.setProperty(Zn.text,t.text),e.style.setProperty(Zn.sub,t.sub),t.copyrightColor&&e.style.setProperty(Zn.copyright,t.copyrightColor),No.set(e,t))}function Nn(e){e&&(e.style.removeProperty(Zn.text),e.style.removeProperty(Zn.sub),e.style.removeProperty(Zn.copyright),No.delete(e))}const Kl={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#1a1a1a"};function Yl(e={}){const t=kt(Kl,An,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-two-circle__c1"}),n.jsx("div",{className:"pass-card-bg-two-circle__c3"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${Gl}")`}})]})}const Zl="M190.71,49.29c-18.1-18.1-43.1-29.29-70.71-29.29s-34.94,28.87-53.03,46.97h0c-18.1,18.1-46.97,25.56-46.97,53.03s11.19,52.61,29.29,70.71c18.1,18.1,43.1,29.29,70.71,29.29s52.61-11.19,70.71-29.29c18.1-18.1,29.29-43.1,29.29-70.71s-11.19-52.61-29.29-70.71Z",ua=240;var $a='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Symbol_IHAB" xmlns="http://www.w3.org/2000/svg" width="240" height="240" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 240 240"><defs><linearGradient id="linear-gradient" x1="62.99" y1="62.99" x2="190.71" y2="190.71" gradientUnits="userSpaceOnUse"><stop offset=".2" stop-color="%23499cdf"/><stop offset=".8" stop-color="%234dcdc0"/></linearGradient></defs><path id="symbol" d="M190.71,49.29c-18.1-18.1-43.1-29.29-70.71-29.29s-34.94,28.87-53.03,46.97h0c-18.1,18.1-46.97,25.56-46.97,53.03s11.19,52.61,29.29,70.71c18.1,18.1,43.1,29.29,70.71,29.29s52.61-11.19,70.71-29.29c18.1-18.1,29.29-43.1,29.29-70.71s-11.19-52.61-29.29-70.71ZM155.36,155.36c-9.05,9.05-21.55,14.64-35.36,14.64s-26.31-5.6-35.36-14.64c-9.05-9.05-14.64-21.55-14.64-35.36s5.6-26.31,14.64-35.36c9.05-9.05,21.55-14.64,35.36-14.64s26.31,5.6,35.36,14.64c9.05,9.05,14.64,21.55,14.64,35.36s-5.6,26.31-14.64,35.36Z" fill="url(%23linear-gradient)"/></svg>';const _2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"},w2=100,B2=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Xl(e={}){const t=kt(_2,An,Nn),a="var(--color-main)",r=270,i=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:B2.map(({scale:s,opacity:l},u)=>n.jsx("g",{transform:`translate(${r} ${i}) scale(${s*w2/ua}) translate(${-ua/2} ${-ua/2})`,opacity:l,children:n.jsx("path",{d:Zl,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},u))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}const k2={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",logoColor:"_mono",copyrightColor:"#ffffff"},A2=100,N2=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function E2(e={}){const t=kt(k2,An,Nn),a="#ffffff",r=270,i=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move-v1__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:N2.map(({scale:s,opacity:l},u)=>n.jsx("g",{transform:`translate(${r} ${i}) scale(${s*A2/ua}) translate(${-ua/2} ${-ua/2})`,opacity:l,children:n.jsx("path",{d:Zl,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},u))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${Gl}")`}})]})}const D2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"};function S2(e={}){const t=kt(D2,An,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}const T2={Logo_SpeechEar_ko:{"":ir,_mono:y2},Logo_SpeechEarManager_ko:{"":Ao,_mono:v2}};function j2(e,t){if(e)return T2[e]?.[t??""]??void 0}const M2={speechear:ir,manager:Ao},L2={speechear:"Logo_SpeechEar_ko",manager:"Logo_SpeechEarManager_ko"},Jl=10;function $2(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 Ql(e,t){if(e<=0)return t("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return t("passCard.remainingDay",{n:a});const r=Math.floor(e/3600);if(r>0)return t("passCard.remainingHour",{n:r});const i=Math.floor(e/60);return i>0?t("passCard.remainingMinute",{n:i}):t("passCard.remainingSecond",{n:Math.floor(e)})}function R2(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),i=a==="\uC624\uD508\uD2B9\uAC00"||a===Rt.t("passCard.specialLabel");return r?n.jsx(S2,{}):i?n.jsx(E2,{}):n.jsx(Xl,{})}return n.jsx(Yl,{})}function eu({ariaLabel:e,product:t,showPrice:a=!1,plan:r,type:i,endDate:s,remainingSeconds:l,endInclusive:u=!1,state:c="active",bg:d,bgOnly:m=!1,textColor:p,subColor:f,copyrightColor:y,logoSrc:x,label:C,price:h,originalPrice:_,discountLabel:g,onUse:A,onRefund:b,onDelete:k}){const{t:v}=xe.useTranslation(),w=t?Ul(t):void 0,B=i??w?.type??"speechear",E=r??w?.plan??v("passCard.planSuffix","\uC774\uC6A9\uAD8C"),D=C??w?.label,N=h??(a?w?.price:void 0),O=_??(a?w?.originalPrice:void 0),P=g??w?.discountLabel,G=o.useMemo(()=>{if(N)return null;const Y=t?.durationDays??b2(t?.code);if(!Y||Y<=0)return l!=null?{percent:null,remainingLabel:Ql(l,v)}:null;const Q=Y*86400;let me;if(l!=null)me=l;else if((c==="active"||c==="expired")&&s){const te=new Date(s).getTime();if(Number.isNaN(te))return null;const ue=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(s)),fe=/^(\d{4})-(\d{2})-(\d{2})/.exec(Ea()),ge=Math.round(ue&&fe?(Date.UTC(+ue[1],+ue[2]-1,+ue[3])-Date.UTC(+fe[1],+fe[2]-1,+fe[3]))/864e5:(te-Date.now())/864e5);me=Math.max(0,u?ge+1:ge)*86400}else c==="expired"?me=0:me=Q;const De=$2(me),be=Math.max(0,Math.min(100,Math.floor(Math.min(De,Q)/Q*100)));return c==="pending"&&be>=100?null:{percent:be,remainingLabel:c==="expired"?v("passCard.expired","\uB9CC\uB8CC\uB428"):Ql(me,v)}},[N,c,s,l,u,t?.durationDays,t?.code,v]),L=o.useRef(null),[M,$]=o.useState({}),[Z,q]=o.useState(null),z=!!(A||b||k),V=o.useRef(!1),R=o.useRef(void 0),[H,W]=o.useState(x);o.useLayoutEffect(()=>{W(x)},[x]),o.useLayoutEffect(()=>{const Y=L.current;Y&&(p!==void 0&&Y.style.setProperty("--pass-card-text",p),f!==void 0&&Y.style.setProperty("--pass-card-sub",f),y!==void 0&&Y.style.setProperty("--pass-card-copyright",y))},[p,f,y]),o.useLayoutEffect(()=>{const Y=L.current;if(!Y)return;const Q=x2(Y);if(!x){const me=L2[B],De=c==="expired"?"_mono":Q?.logoColor??"",be=j2(me,De);W(be)}},[d,x,B,c]);const I=Y=>{const Q=L.current;if(!Q)return null;const{left:me,top:De,width:be,height:te}=Q.getBoundingClientRect(),ue=(Y.clientX-me)/be-.5;return{rotateX:-((Y.clientY-De)/te-.5)*Jl,rotateY:ue*Jl}},S=(Y,Q)=>{const me=Q*-.7,De=Y*.7+10,be=20+(Math.abs(Y)+Math.abs(Q))*.4;return`${me}px ${De}px ${be}px rgba(0, 0, 0, 0.18)`},j=o.useCallback(Y=>{if(la())return;V.current=!0,clearTimeout(R.current),R.current=setTimeout(()=>{V.current=!1},200);const Q=I(Y);Q&&$({transform:`perspective(800px) rotateX(${Q.rotateX}deg) rotateY(${Q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:S(Q.rotateX,Q.rotateY),transition:"transform 0.25s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.25s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),F=o.useCallback(Y=>{if(la())return;const Q=I(Y);if(!Q)return;const me=V.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";$({transform:`perspective(800px) rotateX(${Q.rotateX}deg) rotateY(${Q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:S(Q.rotateX,Q.rotateY),transition:me})},[]),U=o.useCallback(()=>{clearTimeout(R.current),V.current=!1,$({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)"})},[]),re=o.useCallback(()=>q(null),[]),ne=o.useMemo(()=>{const Y=v("passCard.planSuffix","\uC774\uC6A9\uAD8C"),Q=E.replace("\uC774\uC6A9\uAD8C","").replace(Y==="\uC774\uC6A9\uAD8C"?"":Y,"").trim(),me=Q.match(/^(.*?)(일|년)$/);return me?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"h0 pass-card__plan-number",children:me[1]}),n.jsx("span",{className:"h5b pass-card__plan-unit",children:me[2]==="\uB144"?v("passCard.unitYear","\uB144"):v("passCard.unitDay","\uC77C")})]}):n.jsx("span",{className:"h0",children:Q})},[E,v]),le=o.useMemo(()=>{const Y=oa(N);if(!Y)return null;const Q=Y.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!Q)return n.jsx("span",{className:"h1",children:Y});const[,me,De,be]=Q;return n.jsxs(n.Fragment,{children:[me&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:me}),n.jsx("span",{className:"h1 pass-card__price-amount",children:De}),be.trim()&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:be.trim()})]})},[N]),K=o.useCallback(()=>{z&&q(Y=>{if(Y)return null;const Q=L.current?.getBoundingClientRect();if(!Q)return null;const me=50;return{left:Q.left,right:Q.right,width:Q.width,height:Q.height,x:Q.x,y:Q.y+me,top:Q.top+me,bottom:Q.bottom+me}})},[z]),oe=o.useCallback(Y=>{z&&(Y.key==="Enter"||Y.key===" ")&&(Y.preventDefault(),K())},[z,K]),Ae=[{items:[...A?[{label:v("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{A(),q(null)},closeOnSelect:!0}]:[],...b?[{label:v("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{b(),q(null)},closeOnSelect:!0}]:[],...k?[{label:v("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{k(),q(null)},closeOnSelect:!0}]:[]]}];return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card-frame",children:n.jsxs("div",{ref:L,className:`pass-card pass-card--${c}${z?" pass-card--clickable":""}`,style:M,onMouseEnter:j,onMouseMove:F,onMouseLeave:U,onPointerUp:Y=>{Y.pointerType==="touch"&&U()},onPointerCancel:Y=>{Y.pointerType==="touch"&&U()},onClick:K,onKeyDown:z?oe:void 0,role:z?"button":void 0,tabIndex:z?0:void 0,"aria-label":e,"aria-haspopup":z?"menu":void 0,"aria-expanded":z?!!Z:void 0,children:[d??R2(B,E,D),!m&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card__top",children:n.jsxs("div",{className:"pass-card__top-left",children:[n.jsx("img",{src:H??M2[B],className:"pass-card__logo",alt:B==="manager"?v("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):v("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),n.jsxs("div",{className:"pass-card__plan",children:[n.jsx("div",{children:ne}),n.jsx("span",{className:"h5b pass-card__plan-suffix",children:D?v("passCard.labeledPlan",{label:D}):v("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),N?n.jsxs("div",{className:"pass-card__price-area",children:[P&&n.jsx("span",{className:"pass-card__discount body-3",children:P}),n.jsxs("div",{className:"pass-card__price",children:[O&&n.jsx("span",{className:"pass-card__price-original body-3",children:oa(O)}),le]})]}):G?n.jsxs("div",{className:"pass-card__usage",children:[n.jsx("span",{className:"h5b pass-card__usage-remaining",children:G.remainingLabel}),G.percent!=null&&n.jsxs("span",{className:"pass-card__usage-percent",children:[n.jsx("span",{className:"h1 pass-card__usage-value",children:G.percent}),n.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):n.jsx("div",{className:"pass-card__copyright caption-2","aria-hidden":"true",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),Z&&n.jsx(cn,{anchorRect:Z,onClose:re,ariaLabel:v("tooltip.menu","\uBA54\uB274"),children:n.jsx(La,{columns:Ae,onClose:re,size:"small"})})]})}const P2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#1a1a1a"};function I2(e={}){const t=`passcard-sound-line-grad-${o.useId()}`,a=kt(P2,An,Nn);return n.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[n.jsxs("svg",{className:"pass-card-bg-sound-line__svg",viewBox:"0 0 500 300",preserveAspectRatio:"xMidYMid slice",xmlns:"http://www.w3.org/2000/svg",children:[n.jsx("defs",{children:n.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[n.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),n.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),n.jsx("g",{transform:"translate(25, 45)",children:n.jsx("path",{d:"M -30 150 C 40 80, 100 220, 160 150 S 280 80, 340 150 S 460 220, 510 150",fill:"none",stroke:`url(#${t})`,strokeWidth:"50",strokeLinecap:"round"})})]}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}const F2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"};function O2(e={}){const t=kt(F2,An,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}function z2(e,t){if(e){if(t==="manager_pro")return n.jsx(O2,{});if(t==="manager_standard")return n.jsx(I2,{});if(t==="manager_lite")return n.jsx(Xl,{})}}function W2(e){const t=oa(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,i,s]=a;return n.jsxs(n.Fragment,{children:[r&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),i,s.trim()&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:s.trim()})]})}function H2(e){const{t}=xe.useTranslation(),a=t("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),r=t("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:i,onSelect:s,period:l="monthly",ownedCodes:u}=e||{},c=b=>!!b&&!!u?.includes(b),d=b=>b.onceOnly??/오픈\s*특가/.test(b.label??""),m=(i.tiers||[]).some(b=>d(b)&&c(b.code)),p=b=>{const k=b.prices?b.prices[l]:b.price;return k?(i.tiers||[]).some(v=>!!v.badge&&v.originals?.[l]===k):!1},f=i.colorToken?`var(--color-${i.colorToken})`:"var(--color-gray)",y=t("payment.plan.freePrice","\uBB34\uB8CC"),x=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),C=b=>b.prices?b.prices[l]:b.price,h=(i.tiers||[]).length>0&&(i.tiers||[]).every(b=>{const k=C(b);return k==="\uBB34\uB8CC"||k===y||k==="0\uC6D0"||typeof k=="string"&&/\d/.test(k)&&!/[1-9]/.test(k)}),_=(i.tiers||[]).length>0&&(i.tiers||[]).every(b=>{const k=C(b);return k==="\uBB38\uC758"||k===x}),g=i.group==="org",A=g?"manager":"speechear";return n.jsxs("div",{className:"payment-plan__card",style:{borderColor:f,"--plan-color":f},children:[i.cardBadge&&n.jsx("div",{className:"payment-plan__card-badge",children:n.jsx(At,{label:i.cardBadge,variant:"main",size:"medium",fill:"soft"})}),n.jsxs("div",{className:"payment-plan__title",children:[n.jsx("p",{className:"payment-plan__quote body-3b",style:{color:f},children:i.quote||"\xA0"}),n.jsx("h3",{className:"payment-plan__title-heading h1",children:i.tier??i.title}),n.jsx("p",{className:"payment-plan__subtitle body-3",children:i.subtitle})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(i.recommendedFor||[]).map((b,k)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(at,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),b]},k))})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(i.features||[]).map((b,k)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(at,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),b]},k))})]}),n.jsx("div",{className:"payment-plan__card-pricing",children:h?null:_?n.jsx(pe,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>i.tiers?.[0]&&s?.({...i.tiers[0],productId:i.id,productTitle:i.title})}):n.jsx(n.Fragment,{children:n.jsx("div",{className:"payment-plan__pricing-list",children:(i.tiers||[]).map(b=>{const k=b.label||a,v=d(b),w=v||b.openPromo===!0,B=k.replace(/^오픈\s*특가\s*/,"")||a,E=b.prices?b.prices[l]:b.price,D=b.badge?w?`${r}
|
|
851
|
+
and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Direction System",vrSoundDirection:"VR Sound Direction System",hearingTest:"Hearing Test Pro"},sns:{title:"SNS",naverBlog:"Naver Blog",kakao:"KAKAO Talk Open Chat"},policy:{title:"Policy",terms:"Terms of Service",privacy:"Privacy Policy"},ceo:"CEO",address:"Address",support:"Support",ceoName:"Ji-hye Han",addressValue:"302, 3F, Haechan Bldg, 32 Sicheong-gil, Chuncheon, Gangwon, Korea"},Pb={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"}}},Ib={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},Fb={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},Ob={answer:"Answer",distractor:"Distractor"},zb={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"},Wb={clearAriaLabel:"Clear input"},Hb={ariaLabel:"Select tab"},Vb={ariaLabel:"Tabs"},qb={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},Ub={ariaLabel:"User avatar"},Gb={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"}},Kb={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"}},Yb={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)"}},Zb={manage:{unit:"item(s)"}},Xb={cancelLabel:"Cancel"},Jb={subtitle:"Select a topic to start listening practice."},Qb={steps:"Step {{current}} of {{total}}"},ey={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"},ty={resetColumns:"Reset column widths",scrollRegion:"Horizontally scrollable table",rowActionHint:"Press a row to open its details"},ny={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}}"},ay={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},ry={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},oy={previewRegion:"Report preview \u2014 scrollable sideways"},sy={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},iy={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},ly={clearSelection:"Clear selection"},uy={showResult:"Show {{type}} result"},cy={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},dy={loading:"Loading"},py={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},my={ariaLabel:"Breadcrumb"},hy={empty:"No items yet."},fy={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"},Cy={common:tb,calendar:nb,passCard:ab,searchField:rb,rating:ob,colorPicker:sb,dropdown:ib,accordion:lb,header:ub,nav:cb,settings:db,usage:pb,account:mb,help:hb,training:fb,trainingSettings:Cb,customers:gb,payment:bb,coupons:yb,visits:vb,company:xb,trainingType:_b,myWordTraining:wb,myWordTable:Bb,keyWords:kb,wordTable:Ab,wordSearch:Nb,wordPrint:Eb,topic:Db,accessLinkManager:Sb,login:Tb,device:jb,manager:Mb,wordPairs:Lb,game:$b,footer:Rb,landing:Pb,date:Ib,trainingSetPage:Fb,wordTrainingPreview:Ob,wordData:zb,textField:Wb,segmentedControl:Hb,tabs:Vb,fileUpload:qb,avatar:Ub,myHomework:Gb,trainingStatus:Kb,store:Yb,homework:Zb,inquiry:Xb,trainingPlanRun:Jb,progress:Qb,trainingMiss:ey,table:ty,wordScore:ny,topBanner:ay,datePicker:ry,report:oy,tooltip:sy,phonemeProfile:iy,bulkBar:ly,debug:uy,badge:cy,loader:dy,soundCompass:py,breadcrumb:my,board:hy,promoBannerBg:fy};const gy="0.343.0",by=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],io="ko",yy="ihab_display_language";function Oi(){if(typeof window>"u")return io;try{const e=localStorage.getItem(yy);if(e&&by.some(t=>t.code===e))return e}catch{}return io}function zi(e){try{document.documentElement.lang=e}catch{}}Rt.on("languageChanged",zi),zi(Oi()),Rt.use(xe.initReactI18next).init({resources:{ko:{translation:eb},en:{translation:Cy}},lng:Oi(),fallbackLng:io,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const vy=new Map;try{Rt.store?.on?.("added",()=>vy.clear())}catch{}let nr=null,Wi=null,Hi=null;function xy(){const e=Di();if(e&&e.entries.length>0){const t=sC();if(nr&&Wi===e&&Hi===t)return nr;const a=new Set,r=[];for(const i of e.entries)!i.word||a.has(i.word)||(a.add(i.word),r.push({w:i.word,s:i.syllables,p:t?.[i.word]?[...t[i.word].cho??[],...t[i.word].jung??[],...t[i.word].jong??[]]:[],pron:i.pronunciation||i.word,grade:i.grade}));return nr=r,Wi=e,Hi=t,nr}return[]}new Proxy([],{get(e,t){const a=xy(),r=a[t];return typeof r=="function"?r.bind(a):r}});function _y(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 wy(e){if(typeof window>"u")return"";const t=(a,r)=>{typeof r.attrValue=="string"&&_y(r.attrValue)&&(r.keepAttr=!1)};Vr.addHook("uponSanitizeAttribute",t);try{return Vr.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{Vr.removeHook("uponSanitizeAttribute",t)}}function By(e){const[t,a]=o.useState(null),[r,i]=o.useState(null),[s,l]=o.useState(null),[u,c]=o.useState(null);return o.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),i(null),l(null);return}const d=e.split("/").pop();let m=e;d&&(e.startsWith("/")?m=Kr(e):/^(Logo|Symbol)/i.test(d)?m=Kr(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),m=e)),i(null),l(null),a(m)},[e]),o.useEffect(()=>{if(!t)return;let d=!1;async function m(){try{let p=await fetch(t);p.ok||(p=await fetch(t));const f=p.headers.get("content-type")||"";if(d)return;if(f.includes("svg")){i("mask");return}if(f.startsWith("image/")){i("img");return}const y=await fetch(t);if(!y.ok)throw new Error("not ok");const x=await y.text();if(d)return;if(/^\s*<svg[\s>]/i.test(x)){const C=wy(x);if(!C){i("none");return}l(C),i("inline");return}i("none")}catch{d||i("none")}}return m(),()=>{d=!0}},[t]),o.useEffect(()=>{let d=!1,m=null;return r==="mask"&&t&&fetch(t).then(p=>{if(!p.ok)throw new Error("fetch failed");return p.blob()}).then(p=>{d||(m=URL.createObjectURL(p),c(m))}).catch(()=>{d||i("img")}),()=>{d=!0,m&&URL.revokeObjectURL(m),c(null)}},[r,t]),{iconToUse:t,mode:r,svgText:s,blobUrl:u}}function at(e){const{icon:t,label:a,className:r,imgClassName:i,maskClassName:s,svgClassName:l,wrapperStyle:u,size:c}=e||{},d=r??"iconRenderer-icon",m=i??"iconRenderer-icon-image",p=s??"iconRenderer-icon-mask",f=l??"iconRenderer-icon-svg",y=typeof t=="string"?t:null,x=U1(y),{iconToUse:C,mode:h,svgText:_,blobUrl:g}=By(y),A=(B,E={})=>n.jsx("span",{className:d,style:u,...E,children:B}),b=typeof c=="number"?{width:c,height:c,objectFit:"contain"}:null,k=(B,E={})=>n.jsx("img",{src:B,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:m,...E,style:b?{...E.style,...b}:E.style});if(!t)return null;if(typeof t!="string")return A(t);if(t==="none")return A(n.jsx("span",{className:f,dangerouslySetInnerHTML:{__html:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true"></svg>'}}),{"aria-hidden":"true"});if(x)try{return A(o.createElement(x,{className:f,size:typeof c=="number"?c:20}),{"aria-hidden":"true"})}catch{}if(C&&C.endsWith(".svg")){if(h==="mask"){const B={"--icon-url":g?`url(${g})`:`url(${C})`,...typeof c=="number"?{"--icon-size":`${c}px`}:null};return A(n.jsx("span",{className:p,style:B}),{"aria-hidden":"true"})}return h==="img"?A(k(C,{onError:B=>{B.currentTarget.onerror=null,B.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):h==="inline"?A(n.jsx("span",{className:f,dangerouslySetInnerHTML:_?{__html:_}:void 0}),{"aria-hidden":"true"}):A(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return k(Kr(t),{style:u,onError:B=>{B.currentTarget.onerror=null,B.currentTarget.style.display="none"}});const v=typeof c=="number"?c:20,w=`<svg width="${v}" height="${v}" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="18" height="18" rx="2" ry="2" style="fill:none;stroke:currentColor;stroke-width:2"/></svg>`;return A(n.jsx("span",{className:f,dangerouslySetInnerHTML:{__html:w}}),{"aria-hidden":"true"})}function Vi(e){const[t,a]=o.useState(!1),r=o.useRef(!1),i=o.useRef(!0);o.useEffect(()=>(i.current=!0,()=>{i.current=!1}),[]);const s=o.useCallback(()=>{if(!e||r.current)return;const l=e();if(l&&typeof l.then=="function"){r.current=!0,a(!0);const u=()=>{r.current=!1,i.current&&a(!1)};l.then(u,u)}},[e]);return{pending:t,press:s}}function ky({icon:e,title:t,message:a,action:r,className:i}){const{pending:s,press:l}=Vi(r?.onClick);return n.jsxs("div",{className:_e("empty-state",i),children:[e&&n.jsx(at,{icon:e,size:48,className:"empty-state__icon"}),t&&n.jsx("p",{className:"empty-state__title h4",children:t}),a&&n.jsx("p",{className:"empty-state__message body-3",children:a}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:l,disabled:s,"aria-busy":s||void 0,children:[r.icon&&n.jsx(at,{icon:r.icon,className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:r.label})]})]})}function Ay({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:i,className:s}){const{t:l}=xe.useTranslation(),{pending:u,press:c}=Vi(r);return n.jsxs("div",{className:_e("empty-state","error-state",s),role:"alert",children:[n.jsx(at,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),n.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&n.jsx("p",{className:"error-state__hint caption-1",children:t}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:c,disabled:u,"aria-busy":u||void 0,children:[n.jsx(at,{icon:"rotate-cw",className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:i??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function Ny({icon:e,title:t,description:a,cta:r,tone:i="main",disabled:s=!1,onClick:l,className:u=""}){const c=o.useId(),d=`${c}-title`,m=`${c}-desc`,p=`${c}-cta`,f=()=>{s||l?.()};return n.jsx("section",{role:"button",tabIndex:s?-1:0,"aria-disabled":s||void 0,"aria-labelledby":d,"aria-describedby":`${m} ${p}`,onClick:f,onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),f())},className:_e("action-card",`action-card--${i}`,s&&"action-card--disabled",u),children:n.jsxs("div",{className:"action-card__body",children:[n.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:n.jsx(at,{icon:e,size:34})}),n.jsxs("div",{className:"action-card__text",children:[n.jsx("h2",{id:d,className:"action-card__title",children:t}),n.jsx("p",{id:m,className:"action-card__desc",children:a})]}),n.jsxs("div",{className:"action-card__cta",children:[n.jsx("span",{id:p,children:r}),n.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:n.jsx(at,{icon:"arrow-right",size:18})})]})]})})}function Ey({as:e="div",className:t="",children:a,storage:r,...i}){r&&Lf({resolveUrl:r.resolveUrl,download:r.download??(()=>Promise.reject(new Error("[ihabdevteam-core] CoreScope: download resolver\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."))),exists:r.exists,resolvePath:r.resolvePath,noiseBaseUrl:r.noiseBaseUrl,noiseFileGain:r.noiseFileGain});const s=_e("ihabdevteam-core-scope",t);return n.jsx(e,{className:s,...i,children:a})}function lo(e,t=!0){o.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=i=>{if(i.key!=="Tab")return;const s=Array.from(a.querySelectorAll(Cn)).filter(m=>!m.closest('[aria-hidden="true"]'));if(!s.length){i.preventDefault();return}const l=s[0],u=s[s.length-1],c=document.activeElement,d=c===a;i.shiftKey&&(c===l||d)?(i.preventDefault(),u.focus()):!i.shiftKey&&c===u&&(i.preventDefault(),l.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const Cn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',uo=new WeakMap;function co(e,t){e&&uo.set(e,t)}function po(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let r=t;for(;r&&!uo.has(r);)r=r.parentElement;if(!r)return t;t=uo.get(r)??null}return t}function qi(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 ar(e,t,a){const r=e?.isConnected?e:a?.isConnected?a:null;if(qi(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!r)return null;const i=Array.from(document.querySelectorAll(Cn)).filter(c=>!(e&&e.contains(c))&&qi(c));let s=null,l=null;for(const c of i)r.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_PRECEDING?s=c:l||(l=c);const u=s??l;return u?.focus(),u}function Dy({title:e="",lines:t=[],notices:a=null,children:r,variant:i="default",dismissible:s=!1,className:l=""}){const{t:u}=xe.useTranslation(),[c,d]=o.useState(!1),m=o.useRef(null),p=o.useCallback(()=>{const C=m.current;C&&C.contains(document.activeElement)&&ar(C),d(!0)},[]);if(c)return null;const f=`notice-box notice-box--${i} body-2 ${l}`.trim(),y=s&&n.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:p,"aria-label":u("common.close","\uB2EB\uAE30"),children:"\xD7"});if(a&&Array.isArray(a)&&a.length)return n.jsxs("div",{className:f,role:"note",children:[a.map((C,h)=>n.jsxs("div",{className:"notice-box__inner",children:[C.title?n.jsx("span",{className:"notice-box__title body-3",children:C.title}):null,n.jsx("div",{className:"notice-box__body",children:C.lines&&C.lines.length?n.jsx("div",{children:C.lines.map((_,g)=>n.jsx("span",{className:"notice-box__line body-3",children:_},g))}):C.children??null})]},h)),y]});const x=e||t.length?n.jsxs("div",{className:"notice-box__inner",children:[e?n.jsx("span",{className:"notice-box__title body-1",children:e}):null,n.jsx("div",{className:"notice-box__body",children:t.length?n.jsx("ul",{children:t.map((C,h)=>n.jsx("li",{className:"notice-box__line",children:C},h))}):r})]}):n.jsx("div",{className:"notice-box__inner",children:r});return n.jsxs("div",{ref:m,className:f,role:"note",children:[x,y]})}const sa=[];let rr=!1;function Ui(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=sa[sa.length-1];t&&(e.stopPropagation(),t())}function Gn(e){return sa.push(e),!rr&&typeof document<"u"&&(document.addEventListener("keydown",Ui),rr=!0),()=>{const t=sa.lastIndexOf(e);t>=0&&sa.splice(t,1),sa.length===0&&rr&&typeof document<"u"&&(document.removeEventListener("keydown",Ui),rr=!1)}}const Gi=o.createContext(null);function Sy(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const Ki=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function Ty(e){const t=o.useCallback(a=>{if(typeof window>"u"||!window.matchMedia)return()=>{};const r=window.matchMedia(e);return r.addEventListener?r.addEventListener("change",a):r.addListener&&r.addListener(a),()=>{r.removeEventListener?r.removeEventListener("change",a):r.removeListener&&r.removeListener(a)}},[e]);return As.useSyncExternalStore(t,()=>Ki(e),()=>!1)}function jy(e){const[t,a]=o.useState(Ki(e));return o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),i=l=>a(l.matches),s=r;return s.addEventListener?s.addEventListener("change",i):s.addListener&&s.addListener(i),a(r.matches),()=>{s.removeEventListener?s.removeEventListener("change",i):s.removeListener&&s.removeListener(i)}},[e]),t}const My=typeof As.useSyncExternalStore=="function"?Ty:jy;function ln(e){const t=o.useContext(Gi),a=My(e);return t&&typeof t.mobile=="boolean"&&Sy(e)?t.mobile:a}const Ly="(prefers-reduced-motion: reduce)";function mo(){return ln(Ly)}function cn(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:i=20,onClose:s,closeOnOutsideClick:l=!0,className:u="",role:c="dialog",ariaLabel:d="",children:m,backdrop:p=!1,isMobilePopup:f=!1,useBorder:y=!0,header:x,focusOnOpen:C}=e||{},h=o.useRef(null),[_,g]=o.useState({position:"fixed",left:0,top:-9999}),[A,b]=o.useState(!1),[k,v]=o.useState("bottom"),[w,B]=o.useState(!1),[E,D]=o.useState(!1),N=!t&&!a,O=o.useCallback((V=!1)=>{if(E&&f)return;const R=a?a.getBoundingClientRect():t;if(!R||!h.current)return;const H=h.current,{offsetWidth:W,offsetHeight:I}=H,S=window.innerWidth,j=window.innerHeight,F=S-R.right,U=R.left,re=R.top,ne=j-R.bottom;let le=0,K=0,oe="top";if(re>=I+r)oe="top",K=R.top-r-I,le=R.left+R.width/2-W/2;else if(ne>=I+r)oe="bottom",K=R.bottom+r,le=R.left+R.width/2-W/2;else if(F>=W+r)oe="right",le=R.right+r,K=R.top+R.height/2-I/2;else if(U>=W+r)oe="left",le=R.left-r-W,K=R.top+R.height/2-I/2;else{const me=Math.max(re,ne,F,U);me===re?(oe="top",K=R.top-r-I,le=R.left+R.width/2-W/2):me===ne?(oe="bottom",K=R.bottom+r,le=R.left+R.width/2-W/2):me===F?(oe="right",le=R.right+r,K=R.top+R.height/2-I/2):(oe="left",le=R.left-r-W,K=R.top+R.height/2-I/2)}const Ae=Number.isFinite(Number(i))?Number(i):8;le=Math.min(Math.max(le,Ae),S-W-Ae),K=Math.min(Math.max(K,Ae),j-I-Ae);const Y=Math.round(le),Q=Math.round(K);V&&h.current?(h.current.style.left=`${Y}px`,h.current.style.top=`${Q}px`,h.current.dataset.placement=oe):(v(oe||k),g({position:"fixed",left:Y,top:Q}),B(!0))},[E,f,a,t,r,i,k]);o.useLayoutEffect(()=>{if(N)return;if(E&&f){g({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),B(!0);return}O();const V=requestAnimationFrame(()=>O());return()=>cancelAnimationFrame(V)},[t,a,r,m,i,N,E,f,O]),o.useEffect(()=>{if(N||E&&f||!h.current||typeof ResizeObserver>"u")return;const V=new ResizeObserver(()=>{t&&O()});return V.observe(h.current),()=>V.disconnect()},[t,m,i,N,E,f,O]),o.useEffect(()=>{if(N||E&&f)return;let V=null;const R=()=>{if(typeof requestAnimationFrame>"u"){O(!0);return}V===null&&(V=requestAnimationFrame(()=>{V=null,O(!0)}))},H=W=>{if(!a&&s){const I=W.target;if(I&&h.current&&h.current.contains(I))return;try{if(I&&I.closest&&I.closest("[data-tooltip-ignore]"))return}catch{}$.current(!0);return}R()};return window.addEventListener("resize",R),document.addEventListener("scroll",H,{passive:!0,capture:!0}),()=>{V!==null&&cancelAnimationFrame(V),window.removeEventListener("resize",R),document.removeEventListener("scroll",H,{capture:!0})}},[t,a,s,r,m,i,N,E,f,O]),o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const V=window.matchMedia("(max-width: 768px)"),R=()=>D(!!V.matches);R();try{V.addEventListener?V.addEventListener("change",R):V.addListener(R)}catch{try{V.addListener(R)}catch{}}return()=>{try{V.removeEventListener?V.removeEventListener("change",R):V.removeListener(R)}catch{}}},[]);const P=o.useRef(!1),G=o.useRef(null),L=mo(),M=o.useCallback((V=!1)=>{if(s&&!(A||P.current)){if(P.current=!0,V){b(!0);try{s&&s()}catch{P.current=!1,b(!1)}return}b(!0),G.current=setTimeout(()=>{G.current=null;try{s&&s()}catch{P.current=!1,b(!1)}},L?0:200)}},[A,s,b,L]);o.useEffect(()=>()=>{G.current&&clearTimeout(G.current)},[]),o.useEffect(()=>{if(N)return;const V=W=>{const I=h.current;if(!I)return;const S=W.target;if(S&&!I.contains(S)){try{if(S.closest&&S.closest("[data-tooltip-ignore]"))return}catch{}l&&M(!0)}},R=W=>{const I=h.current;if(!I)return;const S=W.target;if(S&&!I.contains(S)){try{if(S.closest&&S.closest("[data-tooltip-ignore]"))return}catch{}l&&M(!0)}},H=W=>{if(W.key==="Tab"){const I=h.current;if(!I)return;const S=I.querySelectorAll(Cn);if(!S||S.length===0)return;const j=S[0],F=S[S.length-1],U=document.activeElement;W.shiftKey?U===j&&(W.preventDefault(),F.focus()):U===F&&(W.preventDefault(),j.focus())}};return document.addEventListener("pointerdown",V,!0),document.addEventListener("click",R,!0),document.addEventListener("keydown",H),()=>{document.removeEventListener("pointerdown",V,!0),document.removeEventListener("click",R,!0),document.removeEventListener("keydown",H)}},[s,l,M,N]);const $=o.useRef(M);o.useEffect(()=>{$.current=M});const Z=!!s;o.useEffect(()=>{if(!(N||!Z))return Gn(()=>$.current())},[N,Z]),o.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 q=o.useRef(null);o.useEffect(()=>{if(N||C===!1||!w)return;const V=h.current;if(!V)return;const R=V.querySelector(Cn);if(R)return q.current=document.activeElement,R.focus(),()=>{const H=q.current;q.current=null,H&&document.contains(H)&&H.focus()}},[N,C,w]),o.useEffect(()=>{c==="dialog"&&!d&&St("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.')},[c,d]);const z=n.jsxs("div",{ref:h,className:`tooltip-content ${N?"tooltip-content--inline":""} ${y?"tooltip-content--bordered":""} ${A?"is-closing":""} ${u} ${E&&f?"is-mobile":""}`,role:c,"aria-label":d||void 0,style:N?{}:{..._,visibility:w?"visible":"hidden"},tabIndex:-1,"data-placement":k,"data-left":N?"":_.left,"data-top":N?"":_.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:[x!=null&&n.jsx("div",{className:"tooltip-content__header h5",children:x}),m]});if(N||typeof document>"u")return z;if(p||E&&f){const V=n.jsxs("div",{className:"tooltip-portal",children:[n.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&M(!0)}}),z]});return en.createPortal(V,document.body)}return en.createPortal(z,document.body)}function Bn(e){const{anchorRect:t,text:a,offset:r=8,onClose:i,className:s="",ariaLabel:l}=e||{};return a?n.jsx(cn,{anchorRect:t,offset:r,onClose:i,closeOnOutsideClick:!1,className:`tooltip-info ${s}`,ariaLabel:l||a,children:n.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}function Kn(e){const{t}=xe.useTranslation(),{anchorRect:a,title:r,items:i,activeIndex:s=-1,showIndex:l=!0,onClose:u,offset:c=12,closeOnOutsideClick:d=!0}=e||{},m=(Array.isArray(i)?i:i?[i]:[]).map(p=>typeof p=="string"?{text:p}:p);return!m.length&&!r?null:n.jsx(cn,{anchorRect:a,offset:c,onClose:u,closeOnOutsideClick:d,useBorder:!1,className:"tooltip-description",ariaLabel:r||t("tooltip.description","\uC124\uBA85"),children:n.jsxs("div",{className:"tooltip-description__box",children:[r&&n.jsx("span",{className:"tooltip-description__title body-2",children:r}),n.jsx("ol",{className:"tooltip-description__items",children:m.map((p,f)=>n.jsxs("li",{className:`tooltip-description__item body-3${f===s?" tooltip-description__item--active":""}`,children:[l&&m.length>1&&n.jsxs("span",{className:"tooltip-description__index button-1",children:[f+1,"."]}),p.color&&n.jsx("span",{className:"tooltip-description__dot",style:{background:p.color},"aria-hidden":"true"}),n.jsx("span",{children:p.text})]},f))})]})})}function Da(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),t}let ho=0,Yi=!1;function Zi(){Yi||typeof document>"u"||(Yi=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(ho=Date.now())},!0),document.addEventListener("touchstart",()=>{ho=Date.now()},{capture:!0,passive:!0}))}Zi();function ia(e){return!!e&&e.pointerType==="touch"}function la(e=1e3){return Zi(),Date.now()-ho<e}function fo(e,t,a,{enabled:r=!0,fallbackOnParent:i=!1}={}){const s=Da(e),l=Da(t),u=o.useRef(null),c=o.useRef(0);o.useEffect(()=>{if(!r||typeof document>"u")return;const m=p=>{const f=p,y=p.target,x=a.current,C=!!(y&&x&&x.contains(y));if(f.pointerType!=="touch"){C&&(u.current=null);return}if(C){u.current=s.current;return}u.current=null,s.current&&!(y&&y.closest?.(".tooltip-content"))&&l.current(!1,x)};return document.addEventListener("pointerdown",m,!0),()=>document.removeEventListener("pointerdown",m,!0)},[r,a,s,l]);const d=o.useCallback(m=>{const p=u.current;return p===null?!1:(u.current=null,c.current=Date.now(),l.current(!p,m??a.current),!0)},[a,l]);return o.useEffect(()=>{if(!r||!i)return;const m=a.current,p=m?.parentElement;if(!m||!p)return;let f=null;const y=h=>{const _=h.changedTouches?.[0];if(!_)return!1;const g=m.getBoundingClientRect();return _.clientX>=g.left&&_.clientX<=g.right&&_.clientY>=g.top&&_.clientY<=g.bottom},x=h=>{f=y(h)?s.current:null},C=h=>{const _=f;f=null,!(_===null||Date.now()-c.current<700||!y(h))&&(u.current=null,c.current=Date.now(),l.current(!_,m))};return p.addEventListener("touchstart",x,{passive:!0}),p.addEventListener("touchend",C),()=>{p.removeEventListener("touchstart",x),p.removeEventListener("touchend",C)}},[r,i,a,s,l]),{touchPress:d}}function $y(e,t){const{size:a=48,type:r,htmlType:i,href:s,target:l,rel:u,icon:c,rightIcon:d,label:m,count:p,subLabel:f,children:y,ariaLabel:x,variant:C="default",align:h="center",nowrap:_=!1,selected:g,toggleable:A=!1,ariaExpanded:b,ariaControls:k,disabled:v=!1,useLabel:w=!0,useBorder:B=!0,useBG:E=!0,useDisabledCovered:D=!1,useDisabledInvisible:N=!1,width:O,minWidth:P,onClick:G,onDisabledClick:L,showTooltipInfo:M=!1,tooltipInfoText:$=null,tooltipDescription:Z=null,tooltipOnly:q=!1,iconSize:z="medium",iconColor:V,shape:R="rounded",color:H,className:W,...I}=e,S=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),j=S.match(/^\d+$/)?`button${S}`:`button-${S}`,F=Number(a),U=!isNaN(F)&&F<40?"button-2":"button-1",re=m??y,ne=v||!!I.disabled,le=ne?D?"disabled-covered":N?"disabled-invisibled":"disabled":C,K=le?`button--variant-${le}`:"",oe=h?`button--align-${h}`:"",Ae=_?"button--nowrap":"",Y=R?`button--shape-${R}`:"",Q=typeof V=="string"&&V.startsWith("--")?`var(${V})`:V,me={...O?{width:typeof O=="number"?`${O}px`:O}:{},...P?{minWidth:typeof P=="number"?`${P}px`:P}:{},...B?{}:{"--button-border":ne?"0":"1px solid transparent"},...Q?{"--button-icon-color":Q}:{},...H?{"--color-main":H}:{}},De=w===!1?"":re,be=Array.isArray(De)?De.length>0:!!De,te=!!d,ue=r??(be||c||te?"bar":"dot"),fe=`${j}--${ue}`,ge=o.useRef(null);o.useEffect(()=>{!Ln||i!==void 0||ge.current?.closest("form")&&St(`button-in-form:${typeof re=="string"?re:""}`,'[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 re=="string"&&re?` \uB2E8\uCD94: ${re}`:""))},[i,re]);const Ce=o.useRef(t);Ce.current=t;const $e=o.useCallback(Re=>{ge.current=Re;const tt=Ce.current;typeof tt=="function"?tt(Re):tt&&(tt.current=Re)},[]),He=o.useRef(ne),[Te,Ie]=o.useState(!!g),[qe,mt]=o.useState(!1),[ct,rt]=o.useState(null),ft=o.useCallback(()=>mt(!1),[]),[ke,Ve]=o.useState(!1),we=o.useId();o.useEffect(()=>{typeof g=="boolean"&&Ie(g)},[g]),o.useEffect(()=>{if(He.current&&!ne&&ge.current){const Re=ge.current;let tt=!1;try{tt=Re.matches(":focus:not(:focus-visible)")}catch{tt=!1}tt&&Re.blur(),Re.style.pointerEvents="none";const xt=requestAnimationFrame(()=>{requestAnimationFrame(()=>{ge.current&&(ge.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(xt)}He.current=ne},[ne]);const Ue=typeof g=="boolean"?!!g:Te,Be=typeof b=="boolean"?void 0:A||typeof g=="boolean"?Ue?"true":"false":I["aria-pressed"],je=_e("button",j,fe,K,oe,Ae,Y,Ue?"is-selected":null,E?null:"button--no-bg",q?"button--tooltip-only":null,W),Se=`button__icon button__icon--${z}`,Xe=Array.isArray(f)?f:f!==void 0?[f]:[],Qe=()=>{if(Array.isArray(De))return De.map((tt,xt)=>{const Lt=Xe[xt];return n.jsxs("span",{className:`button__label-text${Lt!==void 0?" button__label-text--has-sub":""}`,children:[tt,Lt!==void 0&&n.jsx("span",{className:"button__sub-label-text caption-1",children:Lt})]},xt)});const Re=f!==void 0;return n.jsxs("span",{className:`button__label-text${Re?" button__label-text--has-sub":""}`,children:[De,p!=null&&n.jsx("span",{className:"button__count",children:p}),Re&&n.jsx("span",{className:"button__sub-label-text caption-1",children:f})]})},dt=Re=>{typeof g!="boolean"&&!A&&Ie(!1),Re.currentTarget.blur()},ht=Re=>{ne||(typeof I.onMouseLeave=="function"&&I.onMouseLeave(Re),dt(Re))},wt=Re=>{if(q&>&&it.touchPress(Re.currentTarget),ne){gt&&it.touchPress(Re.currentTarget),Re.preventDefault(),L?.(Re);return}typeof g!="boolean"&&A&&Ie(tt=>!tt),G?.(Re)},Ct=o.useCallback(()=>{(M||Z)&&(mt(!0),rt(ge.current?.getBoundingClientRect()??null))},[M,Z]),Nt=o.useCallback(()=>{(M||Z)&&(mt(!1),rt(null))},[M,Z]),gt=!!(M||Z),it=fo(qe,Re=>{Re?Ct():Nt()},ge,{enabled:gt&&(ne||q),fallbackOnParent:gt&&ne}),Ke={...I};delete Ke.disabled,delete Ke.className,delete Ke.faded,delete Ke.useFaded,delete Ke.loading,delete Ke.onMouseLeave,delete Ke.onPointerEnter,delete Ke.onPointerLeave,delete Ke.onPointerUp,delete Ke.onFocus,delete Ke.onBlur,ne&&(Object.keys(Ke).forEach(Re=>{/^on[A-Z]/.test(Re)&&typeof Ke[Re]=="function"&&delete Ke[Re]}),Ke["aria-disabled"]="true");const se=(typeof M=="string"?M:null)??(typeof $=="string"?$:null)??(typeof x=="string"?x:null)??(typeof re=="string"?re:null)??void 0,Ne=typeof x=="string"?x:typeof re=="string"?re:se,We=Z?[Z.title,...Z.items??[]].filter(Boolean).join(". "):M&&se&&se!==Ne?se:"",nt=[typeof I["aria-describedby"]=="string"?I["aria-describedby"]:void 0,We?we:null].filter(Boolean).join(" ")||void 0,Fe=(Re,tt)=>n.jsx(at,{icon:Re,label:tt??Ne,className:Se,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),Ge=()=>ue==="dot"?n.jsxs(n.Fragment,{children:[Fe(c),be&&n.jsx("span",{className:`button__label ${U}`,children:Qe()})]}):h==="center"&&c?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"button__center-group",children:[n.jsx("span",{className:"button__left",children:Fe(c)}),be&&n.jsx("span",{className:`button__label ${U}`,children:Qe()})]}),te&&n.jsx("span",{className:"button__right",children:Fe(d)})]}):n.jsxs(n.Fragment,{children:[c&&n.jsx("span",{className:"button__left",children:Fe(c,x??re)}),be&&n.jsx("span",{className:`button__label ${U}`,children:Qe()}),te&&n.jsx("span",{className:"button__right",children:Fe(d)})]}),bt=!!s&&!ne;return n.jsxs(n.Fragment,{children:[n.jsxs(bt?"a":"button",{...Ke,ref:$e,...bt?{href:s,target:l,rel:u??(l==="_blank"?"noreferrer":void 0)}:{type:i??"button",disabled:ne&&!L&&!ke},className:je,"aria-pressed":Be,"aria-expanded":typeof b=="boolean"?b:I["aria-expanded"],"aria-controls":k??I["aria-controls"],"aria-label":Ne,"aria-disabled":ne&&(bt||L||ke)?!0:void 0,"aria-describedby":nt,style:me,onClick:wt,onMouseLeave:ht,onPointerEnter:Re=>{ia(Re)||Ct(),!ne&&typeof I.onPointerEnter=="function"&&I.onPointerEnter(Re)},onPointerLeave:Re=>{ia(Re)||Nt(),!ne&&typeof I.onPointerLeave=="function"&&I.onPointerLeave(Re)},onPointerUp:Re=>{ne&>&&it.touchPress(Re.currentTarget),!ne&&typeof I.onPointerUp=="function"&&I.onPointerUp(Re)},onFocus:Re=>{Ve(!0),la()||Ct(),!ne&&typeof I.onFocus=="function"&&I.onFocus(Re)},onBlur:Re=>{Ve(!1),ne||dt(Re),Nt(),!ne&&typeof I.onBlur=="function"&&I.onBlur(Re)},children:[Ge(),We?n.jsx("span",{id:we,hidden:!0,"aria-label":We}):null]}),qe&&Z?n.jsx(Kn,{anchorRect:ct,title:Z.title,items:Z.items,onClose:ft}):qe&&se?n.jsx(Bn,{anchorRect:ct,text:se,onClose:ft}):null]})}const pe=o.forwardRef($y);pe.displayName="Button";function kt(e,t,a){const r=o.useRef(null);return o.useLayoutEffect(()=>{const i=r.current?.parentElement??null;return t(i,e),()=>a(i)},[e,t,a]),r}const Sa={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},Co=new WeakMap;function go(e){if(e)return Co.get(e)}function Gt(e,t){e&&(e.style.setProperty(Sa.title,t.title),e.style.setProperty(Sa.description,t.description),Co.set(e,t))}function Kt(e){e&&(e.style.removeProperty(Sa.title),e.style.removeProperty(Sa.description),Co.delete(e))}const Xi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Ji(){const e=kt(Xi,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const Qi={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function el(){const e=kt(Qi,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const tl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function nl(){const e=kt(tl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const al={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function rl(){const e=kt(al,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const ol={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function sl(){const e=kt(ol,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const il={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function ll(){const e=kt(il,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const ul={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function cl(){const e=kt(ul,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const dl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function pl(){const e=kt(dl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const ml={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function hl(){const e=kt(ml,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const fl={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Cl(){const e=kt(fl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const gl={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function bl(){const e=kt(gl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:n.jsx("span",{className:"promo-banner-bg-outline__dot"})})}const yl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function vl(){const e=kt(yl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const xl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function _l(){const e=kt(xl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const wl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Bl(){const e=kt(wl,Gt,Kt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const Qt=(e,t,a)=>({key:e,get label(){return Rt.t(`promoBannerBg.${e}`,t)},textTone:a}),Ry=[Qt("main","\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("soft","\uC18C\uD504\uD2B8","dark"),Qt("sub","\uC11C\uBE0C \uCEEC\uB7EC","light"),Qt("deep","\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("softSub","\uC18C\uD504\uD2B8 \uC11C\uBE0C","dark"),Qt("warm","\uC6DC(\uAC15\uC870)","dark"),Qt("dark","\uB2E4\uD06C","light"),Qt("radial","\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("diagonal","\uB300\uAC01\uC120 \uD328\uD134","dark"),Qt("dots","\uB3C4\uD2B8 \uD328\uD134","dark"),Qt("outline","\uC544\uC6C3\uB77C\uC778","dark"),Qt("success","\uC131\uACF5/\uC644\uB8CC","light"),Qt("naver","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4","light"),Qt("instagram","\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4","light")],kl={main:Ji,soft:el,sub:nl,deep:rl,softSub:sl,warm:ll,dark:cl,radial:pl,diagonal:hl,dots:Cl,outline:bl,success:vl,naver:_l,instagram:Bl};function Al({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:i=.1,lineHeightRatio:s=1.4}={}){const l=A=>Math.max(a,Math.min(r,Number(A))),u=A=>{try{const b=localStorage.getItem(A),k=b?Number(b):1;return Number.isFinite(k)?l(k):l(1)}catch{return l(1)}},[c,d]=o.useState(()=>u(e)),[m,p]=o.useState(e);m!==e&&(p(e),d(u(e))),o.useEffect(()=>{try{localStorage.setItem(e,String(c))}catch{}},[e,c]);const f=A=>{d(typeof A=="function"?b=>l(A(b)):l(A))},y=()=>f(A=>+(A+i).toFixed(6)),x=()=>f(A=>+(A-i).toFixed(6)),C=c<r-Number.EPSILON,h=c>a+Number.EPSILON,_=Math.round(t*c),g=Math.round(_*s);return{scale:c,setScale:f,increase:y,decrease:x,canIncrease:C,canDecrease:h,fontSize:_,lineHeight:g}}function Nl(e,t){const a=Da(t);o.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const bo=" \xB7 ",El=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(bo)?e.split(bo).pop()??e:e})(),Py=o.createContext(!1),Yn=[];let Dl=null;function Iy(e){const t=o.useContext(Py);o.useEffect(()=>{if(t||typeof e!="string"||!e)return;Yn.length===0&&(Dl=document.title);const a={text:El?`${e}${bo}${El}`:e};return Yn.push(a),document.title=a.text,()=>{const r=Yn.lastIndexOf(a);r>=0&&Yn.splice(r,1),document.title=Yn.length?Yn[Yn.length-1].text:Dl??document.title}},[e,t])}const Sl=[{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"}],Fy=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function an(e,t){return Fy().compare(e,t)}const or=new Map;function Oy(e){const t=or.get(e);if(t)return t;const a=[],r=/-?\d+(?:\.\d+)?/g;let i=0;for(let s=r.exec(e);s;s=r.exec(e)){let l=s.index,u=s[0];u[0]==="-"&&l>0&&!/\s/.test(e[l-1])&&(l+=1,u=u.slice(1)),l>i&&a.push(e.slice(i,l)),a.push(Number(u)),i=s.index+s[0].length}return i<e.length&&a.push(e.slice(i)),or.size>5e3&&or.clear(),or.set(e,a),a}function zy(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 Wy(e,t){const a=d=>d==null||typeof d=="number"&&Number.isNaN(d)?"":String(d).trim(),r=a(e),i=a(t);if(r===i)return 0;const s=(d,m)=>{if(typeof d=="number"&&!Number.isNaN(d))return[d];const p=zy(m);return p!==null?[p]:Oy(m)},l=s(e,r),u=s(t,i),c=Math.min(l.length,u.length);for(let d=0;d<c;d++){const m=l[d],p=u[d];if(typeof m=="number"&&typeof p=="number"){if(m!==p)return m-p;continue}if(typeof m=="number")return-1;if(typeof p=="number")return 1;const f=an(m,p);if(f!==0)return f}return l.length!==u.length?l.length-u.length:an(r,i)}const Tl=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function yo(e,t,a){const r=Tl(e),i=Tl(t);if(r||i)return r===i?0:r?1:-1;const s=Wy(e,t);return a?s:-s}function Hy(e,t,a){const{t:r}=xe.useTranslation(),[i,s]=o.useState(()=>{const x=a?.initialPageSize;return x&&Sl.some(C=>C.value===x)?x:"25"}),[l,u]=o.useState(1),[c,d]=o.useState(t);Object.is(c,t)||(d(t),l!==1&&u(1));const m=o.useMemo(()=>Sl.map(x=>({...x,label:r("visits.showN",{n:x.value})})),[r]),p=o.useCallback(x=>{s(x),u(1)},[]),f=Math.max(1,Math.ceil(e.length/Number(i)));(l>f||l<1||!Number.isFinite(l))&&u(Math.min(Math.max(1,Number.isFinite(l)?l:1),f));const y=Math.min(Math.max(1,Number.isFinite(l)?l:1),f);return{pageRows:o.useMemo(()=>e.slice((y-1)*Number(i),y*Number(i)),[e,y,i]),pageSizeProps:{options:m,value:i,onChange:p},paginationProps:{page:y,total:f,onChange:u},setPage:u}}function Vy(e){const[t,a]=o.useState(null),r=o.useRef(t),i=o.useRef(e?.onSortChange);i.current=e?.onSortChange;const s=o.useCallback(c=>{const d=r.current,m=d?.key===c?{key:c,asc:!d.asc}:{key:c,asc:!0};r.current=m,a(m),i.current?.(m)},[]),l=o.useCallback((c,d)=>({label:c,sortDir:t?.key===d?t.asc?"asc":"desc":null,onClick:()=>s(d)}),[t,s]),u=o.useCallback((c,d)=>{if(!t)return c;const{key:m,asc:p}=t;return[...c].sort((f,y)=>yo(d(f,m),d(y,m),p))},[t]);return{sort:t,field:l,sortRows:u}}const dn="\uC804\uCCB4";Object.fromEntries(Object.entries(Jf).map(([e,{nucleus:t}])=>[e,t]));const qy={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"})},Uy={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"})},Gy={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 Ky(e,t){if("place"in t)return qy[t.place](e);const a=Uy[t.vowel](e);return t.glide?`${a} \xB7 ${Gy[t.glide](e)}`:a}const Yy=(e,{defaultValue:t})=>t,jl=(e,t)=>({jamos:e,phonetic:t,tooltip:Ky(Yy,t)}),kn=(e,t)=>t.map(a=>jl([a],{place:e})),Pt=(e,t,a)=>jl([...e],a?{vowel:t,glide:a}:{vowel:t}),vo={cho:[kn("labial",["\u3142","\u3143","\u314D","\u3141"]),kn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),kn("alveolar",["\u3145","\u3146"]),kn("palatal",["\u3148","\u3149","\u314A"]),kn("velar",["\u3131","\u3132","\u314B"]),kn("glottal",["\u314E"])],jung:[[Pt("\u3163","frontHigh"),Pt("\u315F","frontHigh","w"),Pt("\u3162","frontHigh","velar")],[Pt("\u3161","backHighUnrounded")],[Pt("\u315C","backHighRounded"),Pt("\u3160","backHighRounded","j")],[Pt("\u3154\u3150","frontMid"),Pt("\u3156\u3152","frontMid","j"),Pt("\u3159\u315A\u315E","frontMid","w")],[Pt("\u3153","backMidUnrounded"),Pt("\u3155","backMidUnrounded","j"),Pt("\u315D","backMidUnrounded","w")],[Pt("\u3157","backMidRounded"),Pt("\u315B","backMidRounded","j")],[Pt("\u314F","low"),Pt("\u3151","low","j"),Pt("\u3158","low","w")]],jong:[kn("labial",["\u3142","\u3141"]),kn("alveolar",["\u3137","\u3134","\u3139"]),kn("velar",["\u3131","\u3147"])]},Zy=e=>e===Xy?[]:Array.from(e),Xy="__NO_CODA__",xo=e=>e.map(t=>t.map(({jamos:a,phonetic:r,tooltip:i})=>({v:a.join(""),phonetic:r,tooltip:i}))),Ml={cho:xo(vo.cho),jung:xo(vo.jung),jong:xo(vo.jong)};Ml.jung.flat().forEach(({v:e})=>{for(const t of Zy(e));}),new Set(Ml.cho.flat().map(e=>e.v));function Jy(e,t=!0){const a=Da(e);o.useEffect(()=>{if(t)return Gn(()=>{a.current?.()})},[t,a])}function Ta(){const[e,t]=o.useState(null),a=o.useCallback(s=>t(s.getBoundingClientRect()),[]),r=o.useCallback(()=>t(null),[]),i=o.useCallback(s=>{const l=s.getBoundingClientRect();t(u=>u?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:i}}function Qy(e){const[t,a]=o.useState(null),[r,i]=o.useState(null),s=o.useRef(null);o.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]);const l=o.useCallback((c,d)=>{s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{a(c),i(d)},e)},[e]),u=o.useCallback(()=>{s.current&&clearTimeout(s.current),a(null),i(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:l,close:u}}function Ll(e="warning"){const[t,a]=o.useState(""),[r,i]=o.useState(e),[s,l]=o.useState(0),u=o.useCallback((p,f)=>{i(f),a(p),l(y=>y+1)},[]),c=o.useCallback(p=>u(p,"warning"),[u]),d=o.useCallback(p=>u(p,"normal"),[u]),m=o.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:s,showToast:u,showWarning:c,showNormal:d,clearToast:m}}function ja(e){let t=0;if(e&&typeof window<"u"&&typeof window.getComputedStyle=="function")for(let a=e;a&&a!==document.body&&a!==document.documentElement;a=a.parentElement){const r=parseInt(window.getComputedStyle(a).zIndex,10);!Number.isNaN(r)&&r>t&&(t=r)}return t>0?`max(var(--z-menu, 1500), ${t+1})`:"var(--z-menu, 1500)"}function Ma({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[i,s]=o.useState(!1),[l,u]=o.useState({position:"fixed"}),c=o.useRef(null),d=o.useRef(null),m=o.useCallback(()=>{c.current&&u(e(c.current.getBoundingClientRect(),c.current))},[e]);o.useLayoutEffect(()=>{i&&m()},[i,m]),o.useEffect(()=>{if(!i)return;let y=d.current?.offsetHeight??0;y>0&&m();let x=0,C=null;typeof ResizeObserver<"u"&&d.current&&(C=new ResizeObserver(()=>{const w=d.current?.offsetHeight??0;if(w!==y){if(y=w,++x>4){C?.disconnect(),C=null;return}m()}}),C.observe(d.current));const h=w=>{const B=w.target;r&&B.closest?.(r)||c.current?.contains(B)||d.current?.contains(B)||s(!1)};document.addEventListener("mousedown",h),document.addEventListener("pointerdown",h);let _=null;const g=()=>{if(typeof requestAnimationFrame>"u"){m();return}_===null&&(_=requestAnimationFrame(()=>{_=null,m()}))},A=w=>{d.current?.contains(w.target)||(t==="reposition"?g():t==="close"&&s(!1))};t!=="ignore"&&window.addEventListener("scroll",A,!0);const b=()=>{a==="reposition"?g():a==="close"&&s(!1)};let k=null;const v=()=>{b(),k&&clearTimeout(k),k=setTimeout(()=>{k=null,a==="reposition"&&m()},250)};return a!=="ignore"&&(window.addEventListener("resize",b),window.addEventListener("orientationchange",v)),()=>{_!==null&&cancelAnimationFrame(_),C?.disconnect(),document.removeEventListener("mousedown",h),document.removeEventListener("pointerdown",h),t!=="ignore"&&window.removeEventListener("scroll",A,!0),a!=="ignore"&&(window.removeEventListener("resize",b),window.removeEventListener("orientationchange",v)),k&&clearTimeout(k)}},[i,m,t,a,r]),o.useEffect(()=>{if(i)return Gn(()=>s(!1))},[i]);const p=o.useCallback(()=>s(y=>!y),[]),f=o.useCallback(()=>s(!1),[]);return{open:i,setOpen:s,toggle:p,close:f,style:l,triggerRef:c,menuRef:d}}function e2(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:i,playMs:s=1100,feedbackMs:l=1500}={}){const[u,c]=o.useState([]),[d,m]=o.useState(0),[p,f]=o.useState("idle"),[y,x]=o.useState(null),[C,h]=o.useState([]),[_,g]=o.useState(null),[A,b]=o.useState(0),k=o.useRef(0),v=o.useCallback(R=>{k.current=typeof R=="function"?R(k.current):R,b(k.current)},[]),w=o.useRef(r),B=o.useRef(i);o.useEffect(()=>{w.current=r,B.current=i},[r,i]);const E=o.useRef([]),D=()=>{E.current.forEach(clearTimeout),E.current=[]},N=(R,H)=>{E.current.push(setTimeout(H,R))};o.useEffect(()=>()=>D(),[]);const O=u[d]?.id??null,P=o.useRef(null),G=o.useCallback(()=>{D(),f("playing"),h([]),g(null),v(0);let R=0;e.forEach((H,W)=>{N(R,()=>{m(W),x(H.id),w.current?.(H)}),N(R+1e3,()=>{x(null),h(I=>[...I,H.id])}),R+=1300}),N(R,()=>{f("done"),B.current?.({score:0,total:e.length})})},[e,v]),L=o.useCallback((R,H)=>{if(H>=R.length){f("done"),B.current?.({score:k.current,total:R.length});return}P.current=null,m(H),g(null),f("playing"),x(R[H].id),w.current?.(R[H]),N(s,()=>{x(null),f("waiting")})},[s]),M=o.useCallback(()=>{D();const R=Na(e);c(R),v(0),h([]),L(R,0)},[e,L,v]),$=o.useCallback(()=>{t==="playback"?(c(e),G()):M()},[t,e,G,M]),Z=o.useCallback(()=>{D(),f("idle"),x(null),h([]),g(null),m(0),v(0),c([])},[v]),q=e.map(R=>R.id).join("|");o.useEffect(()=>(a?$():Z(),()=>D()),[t,q,a]);const z=o.useCallback(R=>{p!=="waiting"||t==="playback"||P.current===d||(P.current=d,g(R),R===u[d]?.id&&v(H=>H+1),t==="exam"?(f("playing"),N(400,()=>L(u,d+1))):(f("feedback"),N(l,()=>L(u,d+1))))},[p,t,u,d,L,l,v]),V=t==="playback"?e.length:u.length;return{bind:{activeSpeakerId:y,playedIds:C,selectedId:_,answerId:O,showFeedback:p==="feedback",clickable:p==="waiting",onSelectSpeaker:z},index:d,total:V,score:A,phase:p,done:p==="done",start:$,reset:Z}}const _o=new Map,wo=new Map;function $l(e){const t=/^data:image\/svg\+xml(;base64)?,([\s\S]*)$/.exec(e);if(!t)return null;try{return t[1]?atob(t[2]):decodeURIComponent(t[2])}catch{return null}}function t2(e){return e.replace(/<script[\s\S]*?<\/script\s*>/gi,"").replace(/<script[^>]*\/>/gi,"").replace(/\son[a-z]+\s*=\s*("[^"]*"|'[^']*'|[^\s>]+)/gi,"").replace(/\s(xlink:)?href\s*=\s*("\s*javascript:[^"]*"|'\s*javascript:[^']*')/gi,"")}function n2(e,t){const a=new Set;for(const l of e.matchAll(/url\(#([^)\s"']+)\)/g))a.add(l[1]);for(const l of e.matchAll(/(?:xlink:)?href="#([^"]+)"/g))a.add(l[1]);const r=new Set([...e.matchAll(/id="([^"]*)"/g)].map(l=>l[1])),i=[...a].filter(l=>r.has(l));if(i.length===0)return e;let s=e;for(const l of i){const u=l.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),c=`${t}-${l}`;s=s.replace(new RegExp(`id="${u}"`,"g"),`id="${c}"`).replace(new RegExp(`url\\(#${u}\\)`,"g"),`url(#${c})`).replace(new RegExp(`((?:xlink:)?href)="#${u}"`,"g"),`$1="#${c}"`)}return s}function a2(e){const t=wo.get(e);if(t)return t;const a=fetch(e).then(r=>r.ok?r.text():null).then(r=>(r!=null&&_o.set(e,r),r)).catch(()=>null).finally(()=>{wo.delete(e)});return wo.set(e,a),a}function r2(e,t=!0){const a=t&&e?$l(e)??_o.get(e)??null:null,[r,i]=o.useState(a);return o.useEffect(()=>{if(!t||!e){i(null);return}const s=$l(e)??_o.get(e)??null;if(s!==null){i(s);return}let l=!0;return a2(e).then(u=>{l&&i(u)}),()=>{l=!1}},[e,t]),r}function o2({title:e,description:t,actionLabel:a,onAction:r,bg:i,color:s,size:l="medium",actionVariant:u,titleColor:c,descriptionColor:d,className:m=""}){const p=i??s??"main",f=o.useRef(null),[y,x]=o.useState("main"),C=ln("(max-width: 767px)"),h=o.useRef({title:!1,description:!1});o.useLayoutEffect(()=>{const A=f.current;if(!A)return;const b=go(A),k=(v,w,B)=>{if(B!==void 0)A.style.setProperty(w,B),h.current[v]=!0;else if(h.current[v]){const E=b?.[v];E?A.style.setProperty(w,E):A.style.removeProperty(w),h.current[v]=!1}};k("title","--promo-banner-bg-title",c),k("description","--promo-banner-bg-description",d)},[c,d,p]),o.useLayoutEffect(()=>{const A=f.current;if(!A)return;const b=go(A);x(b?.actionVariant??"main")},[p]);const _=_e("promo-banner",`promo-banner--${l}`,m),g=kl[p];return n.jsxs("div",{ref:f,className:_,role:"note",children:[n.jsx(g,{}),n.jsxs("div",{className:"promo-banner__text",children:[n.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),t&&n.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&n.jsx(pe,{htmlType:"button",size:40,variant:u??y,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...C?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function s2({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":i}){const{t:s}=xe.useTranslation(),l=i??s("topBanner.ariaLabel","\uBC30\uB108"),u=o.Children.toArray(e),c=u.length,[d,m]=o.useState(0),[p,f]=o.useState(!1),[y,x]=o.useState(!1),[C,h]=o.useState(!1),_=o.useRef(null),g=o.useRef(null),A=o.useRef(null),b=mo(),k=p||y||C,v=c>0?Math.min(d,c-1):0;o.useEffect(()=>{if(c<2||t<=0||k||b)return;const B=window.setInterval(()=>m(E=>(Math.min(E,c-1)+1)%c),t);return()=>window.clearInterval(B)},[c,t,k,b]);const w=B=>{g.current!=null&&window.clearTimeout(g.current),g.current=window.setTimeout(()=>{g.current=null,h(!1)},B)};return o.useEffect(()=>()=>{g.current!=null&&window.clearTimeout(g.current)},[]),o.useEffect(()=>{if(!C)return;const B=E=>{E.pointerType==="touch"&&(A.current&&A.current.contains(E.target)||(g.current!=null&&(window.clearTimeout(g.current),g.current=null),h(!1)))};return document.addEventListener("pointerdown",B,!0),()=>document.removeEventListener("pointerdown",B,!0)},[C]),c===0?null:n.jsxs("section",{ref:A,className:_e("top-banner",r),"aria-label":l,"aria-roledescription":"carousel",onPointerEnter:B=>{_.current=B.pointerType},onPointerDown:B=>{_.current=B.pointerType,B.pointerType==="touch"&&(g.current!=null&&(window.clearTimeout(g.current),g.current=null),h(!0))},onPointerUp:B=>{B.pointerType==="touch"&&w(5e3)},onPointerCancel:B=>{B.pointerType==="touch"&&w(5e3)},onMouseEnter:()=>{_.current!=="touch"&&f(!0)},onMouseLeave:()=>f(!1),onFocus:B=>{let E=!0;try{E=B.target.matches(":focus-visible")}catch{E=!0}x(E)},onBlur:B=>{B.currentTarget.contains(B.relatedTarget)||x(!1)},children:[n.jsx("div",{className:"top-banner__viewport",children:n.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${v*100}%)`},children:u.map((B,E)=>n.jsx("div",{className:"top-banner__slide","aria-hidden":E!==v,...E!==v?{inert:!0}:{},children:B},E))})}),c>1&&n.jsx("div",{className:`top-banner__dots${(a?.[v]??"light")==="dark"?" top-banner__dots--dark":""}`,children:u.map((B,E)=>n.jsx("button",{type:"button",className:`top-banner__dot${E===v?" top-banner__dot--active":""}`,"aria-label":s("topBanner.dotAriaLabel",{count:c,index:E+1,defaultValue:`${c}\uAC1C \uC911 ${E+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":E===v,onClick:()=>m(E)},E))})]})}function i2({title:e,body:t,open:a=!1,onToggle:r,avatar:i,titleClassName:s="body-2",bodyClassName:l="body-2",className:u=""}){const{t:c}=xe.useTranslation();return n.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${u}`.trim(),role:"listitem",children:[n.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),r?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const m=d.currentTarget.closest('[role="list"]');if(!m)return;const p=Array.from(m.querySelectorAll("[data-accordion-header]")),f=p.indexOf(d.currentTarget);(d.key==="ArrowDown"?p[f+1]:p[f-1])?.focus()}},children:[i&&n.jsx("div",{className:"accordion-item__avatar",children:i}),n.jsx("div",{className:`accordion-item__title ${s}`,children:e}),n.jsx("div",{className:"accordion-item__chevron",children:n.jsx(at,{icon:a?"chevron-up":"chevron-down",label:a?c("accordion.collapse","\uC811\uAE30"):c("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&n.jsx("div",{className:`accordion-item__body ${l}`,children:typeof t=="string"?n.jsx("p",{children:t}):t})]})}function l2({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:i}){const[s,l]=o.useState({index:t}),u=(c,d)=>s.id!=null&&c.id!=null?c.id===s.id:s.id==null&&d===s.index;return n.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((c,d)=>n.jsx(i2,{title:c.title,body:c.body,avatar:c.avatar,open:u(c,d),onToggle:()=>l(u(c,d)?{index:-1}:{index:d,id:c.id}),bodyClassName:i},c.id??d))})}function u2(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:n.jsx("polyline",{points:"2,6 5,9 10,3"})})}function c2(){return n.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[n.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),n.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function d2(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:n.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function At(e){const{t}=xe.useTranslation(),{type:a="bar",size:r,className:i="","aria-label":s,"aria-hidden":l}=e;if(a==="dot"){const{icon:k,number:v,position:w="top-right",onClick:B,animate:E=!1}=e,D=k??"check",N=v!==void 0?"number":D,O=typeof r=="number"?r:32,P=_e("circle-badge",`circle-badge--${N}`,`circle-badge--${w}`,`circle-badge--${O}`,E?"circle-badge--animate":"",B?"circle-badge--clickable":"",i),G=v!==void 0?t("badge.nthSelected",{n:v,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:t("badge.selected","\uC120\uD0DD\uB428"),remove:t("badge.remove","\uC81C\uAC70"),minus:t("badge.exclude","\uC81C\uC678")}[D];return n.jsxs("span",{className:P,onClick:B,onKeyDown:B?L=>{L.key!=="Enter"&&L.key!==" "||(L.preventDefault(),L.currentTarget.click())}:void 0,"aria-label":l?void 0:s??G,"aria-hidden":l||void 0,role:B?"button":l?void 0:"img",tabIndex:B?0:void 0,children:[v!==void 0&&v,v===void 0&&D==="check"&&n.jsx(u2,{}),v===void 0&&D==="remove"&&n.jsx(c2,{}),v===void 0&&D==="minus"&&n.jsx(d2,{})]})}const{label:u,children:c,variant:d="default",fill:m="filled",minWidth:p,iconLeft:f,iconRight:y,color:x}=e,C=typeof r=="number"?"medium":r??"medium",h={small:"caption-2b",medium:"body-3b",large:"body-2b"}[C]??"body-2b",_={small:12,medium:14,large:16}[C]??14,g=_e("badge",`badge--${d}`,`badge--${C}`,m!=="filled"?`badge--${m}`:"",h,i),A=x?.startsWith("--")?`var(${x})`:x,b=p!==void 0||A?{...p!==void 0?{minWidth:typeof p=="number"?`${p}px`:p}:{},...A?{"--badge-color":A}:{}}:void 0;return n.jsxs("span",{className:g,style:b,"aria-label":l?void 0:s,role:s&&!l?"img":void 0,"aria-hidden":l||void 0,children:[f&&n.jsx(at,{icon:f,size:_,className:"badge__icon"}),u??c,y&&n.jsx(at,{icon:y,size:_,className:"badge__icon"})]})}function La({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:i}=xe.useTranslation(),s=r==="small"?40:48,[l,u]=o.useState([]),c=o.useMemo(()=>{const h=[{title:null,columns:e}];let _=e;for(const g of l){const A=_?.[g.ci]?.items?.[g.ii];if(!A||!Array.isArray(A.children)||!A.children.length)break;_=[{title:null,items:A.children}],h.push({title:A.label||null,columns:_})}return h},[e,l]),d=c[c.length-1],m=c.length-1,p=o.useCallback(()=>u(h=>h.slice(0,Math.max(0,Math.min(h.length,m)-1))),[m]),f=o.useRef(null),y=o.useRef(null),x=c.length;o.useEffect(()=>{y.current||(y.current=document.activeElement);let h=0,_=0;const g=()=>{const A=f.current?.querySelector("button:not([disabled])");if(A&&A.offsetParent){A.focus({preventScroll:!0});return}_++<20&&(h=requestAnimationFrame(g))};return h=requestAnimationFrame(g),()=>cancelAnimationFrame(h)},[x]),o.useEffect(()=>()=>{y.current?.focus?.({preventScroll:!0})},[]);const C=o.useCallback((h,_,g)=>{if(h){if(Array.isArray(h.children)&&h.children.length){u(A=>[...A.slice(0,m),{ci:_,ii:g}]);return}try{typeof h.onClick=="function"&&h.onClick()}catch{}try{h&&h.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,m]);return n.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(c.length>1||d.title)&&n.jsxs("div",{className:"tooltip-menu__header",children:[c.length>1?n.jsx(pe,{htmlType:"button",size:s,type:"dot",icon:"chevron-left",ariaLabel:i("common.back","\uB4A4\uB85C"),onClick:p,variant:"transparent-gray",useBorder:!1}):null,n.jsx("div",{className:"tooltip-menu__title button-1",children:d.title})]}),n.jsx("div",{className:"tooltip-menu__columns",ref:f,children:d.columns&&d.columns.map((h,_)=>n.jsxs("div",{className:"tooltip-menu__column",children:[h.title?n.jsx("div",{className:"tooltip-menu__column-title body-3",children:h.title}):null,n.jsx("div",{className:"tooltip-menu__items",children:(h.items||[]).map((g,A)=>n.jsxs(o.Fragment,{children:[g.separatorBefore&&A>0&&n.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),n.jsx(pe,{htmlType:"button",className:"tooltip-menu__item",size:s,type:g.label?"bar":"dot",icon:g.selected?"check":g.icon||"none",rightIcon:Array.isArray(g.children)&&g.children.length?"chevron-right":g.badgeCount?n.jsx(At,{type:"dot",position:"inline",number:Math.min(g.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:g.label,ariaLabel:g.label&&g.badgeCount&&g.badgeCount>0?i("nav.badgeLabel",{label:g.label,count:g.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):g.label,onClick:()=>C(g,_,A),selected:g.selected,disabled:g.disabled,showTooltipInfo:g.tooltip||!1,useBorder:!1,align:"left"})]},A))})]},_))})]})}const Rl=".content-area";function Bo(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(Rl);if(a){a.scrollTop=0;return}const r=document.scrollingElement??document.documentElement;r&&r.scrollHeight<=r.clientHeight&&St("nav-scroll-container",`[${t}] \uBCF8\uBB38\uC744 \uB9E8 \uC704\uB85C \uB418\uB3CC\uB9B4 \uD1B5\uC744 \uBABB \uCC3E\uC558\uB2E4(\uAE30\uBCF8 ${Rl}) \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 ko=52,sr=10,Pl=e=>e&&e>0?e:0;function Il({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:i,moreItems:s=[],scrollContainer:l}){const{t:u}=xe.useTranslation(),c=r==="manager"?"malgwi":"manager",d=r==="manager"?"arrow-left":"arrow-right",m=r==="manager"?u("nav.modeLabelMalgwi","\uB9D0\uADC0"):u("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=o.useRef(null),[f,y]=o.useState(0),x=e.length;o.useEffect(()=>{const R=p.current;if(!R)return;const H=()=>{const S=typeof getComputedStyle=="function"?getComputedStyle(R):null,j=R.clientWidth-(parseFloat(S?.paddingLeft??"")||0)-(parseFloat(S?.paddingRight??"")||0),F=R.querySelector(".bottom-nav__left"),U=F?.nextElementSibling,re=(F?.offsetWidth??0)+(F&&U?.classList.contains("bottom-nav__divider")?U.offsetWidth:0);y(Math.max(0,j-re))};if(H(),typeof ResizeObserver>"u")return;const W=new ResizeObserver(H);W.observe(R);const I=R.querySelector(".bottom-nav__left");return I&&W.observe(I),()=>W.disconnect()},[i]);const C=ko+1,h=R=>Math.max(0,Math.floor((R+sr)/(ko+sr))),_=x*(ko+sr)-sr<=f,g=f<=0||s.length===0&&_?x:Math.min(x,h(f-C)),A=f>0&&g<x,b=A?g:x,k=e.slice(0,b),v=e.slice(b),w=A||s.length>0,B=o.useCallback((R,H)=>({position:"fixed",bottom:window.innerHeight-R.top+8,right:window.innerWidth-R.right,zIndex:ja(H)}),[]),E=o.useId(),{open:D,toggle:N,close:O,style:P,triggerRef:G,menuRef:L}=Ma({computeStyle:B,onScroll:"ignore",onResize:"reposition"}),M=o.useCallback((R,H)=>H>0?u("nav.badgeLabel",{label:R,count:H,defaultValue:"{{label}}, {{count}}\uAC1C"}):R,[u]),$=o.useCallback((R,H)=>H>0?u("nav.badgeInsideLabel",{label:R,count:H,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):R,[u]),Z=o.useCallback(()=>i?.(c),[i,c]),q=o.useMemo(()=>v.find(R=>!!R.key&&R.key===t)??s.find(R=>R.selected||R.key&&R.key===t),[v,t,s]),z=o.useMemo(()=>[{items:[...v.map(R=>({label:R.label,icon:R.icon,badgeCount:R.badgeCount,selected:!!R.key&&R.key===t,closeOnSelect:!0,disabled:R.state==="disabled",onClick:()=>{R.state!=="disabled"&&(R.key&&a&&(a(R.key),Bo(l,"BottomNav")),O())}})),...s.map(R=>({label:R.label,icon:R.icon,badgeCount:R.badgeCount,selected:R.selected??(!!R.key&&R.key===t),closeOnSelect:!0,onClick:()=>{R.onClick?.(),O()}}))]}],[v,s,t,a,O]),V=[...v,...s].reduce((R,H)=>R+Pl(H.badgeCount),0);return n.jsxs("nav",{className:"bottom-nav",ref:p,"aria-label":u("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[i&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__left",children:n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:d,ariaLabel:m,className:"bottom-nav-item",onClick:Z})}),n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),n.jsx("div",{className:"bottom-nav__items",children:k.map((R,H)=>{const W=Pl(R.badgeCount);return n.jsxs("span",{className:"bottom-nav__slot",children:[n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:R.icon,ariaLabel:M(R.label,W),selected:!!R.key&&R.key===t,disabled:R.state==="disabled",className:"bottom-nav-item",onClick:()=>{R.key&&(a?.(R.key),Bo(l,"BottomNav"))}}),W>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(At,{type:"dot",position:"top-right",number:Math.min(W,99),size:24})})]},R.key??`__slot-${H}`)})}),w&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),n.jsx("div",{className:"bottom-nav__right",children:n.jsxs("div",{ref:G,className:"bottom-nav__slot",children:[n.jsx(pe,{htmlType:"button",size:52,type:"dot",icon:q?.icon??"ellipsis",ariaLabel:$(q?.label??u("nav.more","\uB354\uBCF4\uAE30"),V),selected:!!q,className:"bottom-nav-item",onClick:N,"aria-expanded":D,"aria-controls":D?E:void 0}),V>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(At,{type:"dot",position:"top-right",number:Math.min(V,99),size:24})}),D&&en.createPortal(n.jsx("div",{id:E,role:"group","aria-label":u("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:P,ref:L,children:n.jsx(La,{columns:z,onClose:O})}),document.body)]})})]})]})}function Fl(e){if(typeof e!="string")return!1;let t="";for(const r of e){const i=r.charCodeAt(0);i<=32||i>=127&&i<=159||(t+=r)}if(!t)return!1;const a=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);return a?["http","https","mailto","tel"].includes(a[1].toLowerCase()):!0}function Ol(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function p2(e){const{t}=xe.useTranslation(),{activeKey:a,unreadCount:r,onDebug:i,onNotification:s,onSetting:l,onHelp:u,onFeedback:c,onAccount:d}=e||{},m="default";return i||s||l||u||c||d?n.jsxs("div",{className:"side-nav__footer",children:[i&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:i,selected:a==="debug"}),s&&n.jsxs("span",{className:"side-nav__notification-wrap",children:[n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"bell",ariaLabel:Ol(t,t("nav.notifications","\uC54C\uB9BC"),r),onClick:s,selected:a==="notifications"}),!!r&&r>0&&n.jsx(At,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),l&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),u&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:u,selected:a==="help"}),c&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:c,selected:a==="feedback"}),d&&n.jsx(pe,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:d,selected:a==="account"})]}):null}function zl(e){const{t}=xe.useTranslation(),{item:a,itemKey:r,label:i,icon:s,active:l,onClick:u,style:c,state:d,labelStyle:m}=e||{},p=a?.key??r??"",f=a?.label??i??"",y=a?.icon??s??"",x=a?.badge??0,C=n.jsx("span",{className:"side-nav__icon-wrap",children:n.jsx(at,{icon:y,label:typeof f=="string"?f:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),h=d==="disabled",_=`side-nav__item ${l?"active":""} ${d||""} ${h?"disabled":""} ${a?.child?"side-nav__item--child":""}`,g=o.useCallback(A=>{if(h)return;const b=A.detail>0;if(b)try{A.currentTarget.blur()}catch{}u?.(p,A.currentTarget,b)},[h,p,u]);return n.jsxs("button",{type:"button",className:_,onClick:g,"aria-label":typeof f=="string"?Ol(t,f,x):void 0,"aria-current":l?"page":void 0,style:c,"aria-disabled":h,children:[C,n.jsx("span",{className:"side-nav__label button-1 f",style:m,children:f}),x>0&&n.jsx(At,{type:"dot",position:"inline",number:Math.min(x,99),size:24,"aria-hidden":!0}),d==="loading"&&n.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":t("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function Wl(e){const{t}=xe.useTranslation(),{items:a=[],activeKey:r,onChange:i,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:f,onAppModeChange:y,scrollContainer:x}=e||{},C=f==="manager",h=o.useCallback(()=>y?.(C?"malgwi":"manager"),[y,C]),_=o.useRef(null),[g,A]=o.useState(null);o.useEffect(()=>{const B=_.current;if(!B)return;let E=null;const D=()=>{const{scrollHeight:P,clientHeight:G,scrollTop:L}=B;if(P<=G+1){A(z=>z===null?z:null);return}const M=Math.max(24,G/P*G),$=G-M,Z=P-G,q={top:Math.round(L/Z*$),height:Math.round(M)};A(z=>z&&z.top===q.top&&z.height===q.height?z:q)},N=()=>{if(typeof requestAnimationFrame>"u"){D();return}E===null&&(E=requestAnimationFrame(()=>{E=null,D()}))};D(),B.addEventListener("scroll",N,{passive:!0});const O=typeof ResizeObserver<"u"?new ResizeObserver(N):null;O?.observe(B);for(const P of Array.from(B.children))O?.observe(P);return()=>{E!==null&&cancelAnimationFrame(E),B.removeEventListener("scroll",N),O?.disconnect()}},[a]);const b=o.useRef(null),k=o.useCallback(B=>{const E=_.current;E&&(B.preventDefault(),b.current={y:B.clientY,top:E.scrollTop},B.currentTarget.setPointerCapture(B.pointerId))},[]),v=o.useCallback(B=>{const E=_.current,D=b.current;!E||!D||(E.scrollTop=D.top+(B.clientY-D.y)*(E.scrollHeight/E.clientHeight))},[]),w=o.useCallback(B=>{b.current=null,B.currentTarget.hasPointerCapture(B.pointerId)&&B.currentTarget.releasePointerCapture(B.pointerId)},[]);return n.jsxs("nav",{ref:_,"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[g&&n.jsx("div",{className:"side-nav__scroll","aria-hidden":"true",children:n.jsx("div",{className:"side-nav__scroll-thumb",style:{top:g.top,height:g.height},onPointerDown:k,onPointerMove:v,onPointerUp:w,onPointerCancel:w})}),n.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(B=>!B.section&&(B.key||B.label)).map((B,E)=>n.jsxs(o.Fragment,{children:[B.divider&&n.jsx("div",{className:"side-nav__separator"}),n.jsx(zl,{item:B,active:!!B.key&&B.key===r,state:B.disabled?"disabled":void 0,onClick:(D,N,O)=>{if(B.disabled)return;if(B.href){if(Fl(B.href)&&window.open(B.href,"_blank","noopener,noreferrer"),O)try{N?.blur()}catch{}return}if(i?.(B.key),Bo(x,"SideNav"),!O)return;try{N?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const P=document.querySelector(".header");if(P){const G=typeof P.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&G&&P.matches(":hover"))){P.classList.add("header--force-collapsed");const L=()=>{P.classList.remove("header--force-collapsed"),P.removeEventListener("mouseenter",L)};P.addEventListener("mouseenter",L)}}}})]},B.key??`side-nav__item-${E}`)),y&&n.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),y&&n.jsx(zl,{item:{key:"__mode-switch__",label:C?t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:C?"arrow-left":"arrow-right"},onClick:h})]}),n.jsx(p2,{activeKey:r,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p})]})}var ir='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_SpeechEar_ko" xmlns="http://www.w3.org/2000/svg" width="583.33" height="240" viewBox="0 0 583.33 240"><g id="text"><path d="M278.07,115.18V47.71h85.73v67.47h-85.73ZM408.4,173.42v20.18h-125.33v-44.02h96.5v-5.96h-96.88v-20.18h124.18v44.02h-96.11v5.96h97.65ZM305.56,70.97v20.76h30.95v-20.76h-30.95ZM423.39,92.88h-16.53v25.37h-27.68V45.98h27.68v20.18h16.53v26.72Z"/><path d="M527.58,113.83v26.33c-7.82,3.59-20.06,5.38-36.71,5.38h-1.73v48.06h-27.68v-48.06h-34.21v-26.33h64.01c16.4,0,28.51-1.79,36.33-5.38ZM435.31,75.77v-26.33h80.35v62.09h-27.68v-35.75h-52.67ZM563.33,193.61h-27.68V45.98h27.68v147.63Z"/></g><g id="symbol"><path d="M183.92,56.08c-8.48-15.54-24.97-26.08-43.92-26.08h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%234dcdc0"/><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23499cdf"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>',Ao='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_SpeechEarManager_ko" xmlns="http://www.w3.org/2000/svg" width="1035.43" height="240" viewBox="0 0 1035.43 240"><g id="text"><path d="M278.07,115.18V47.71h85.73v67.47h-85.73ZM408.4,173.42v20.18h-125.33v-44.02h96.5v-5.96h-96.88v-20.18h124.18v44.02h-96.11v5.96h97.65ZM305.56,70.97v20.76h30.95v-20.76h-30.95ZM423.39,92.88h-16.53v25.37h-27.68V45.98h27.68v20.18h16.53v26.72Z"/><path d="M527.58,113.83v26.33c-7.82,3.59-20.06,5.38-36.71,5.38h-1.73v48.06h-27.68v-48.06h-34.21v-26.33h64.01c16.4,0,28.51-1.79,36.33-5.38ZM435.31,75.77v-26.33h80.35v62.09h-27.68v-35.75h-52.67ZM563.33,193.61h-27.68V45.98h27.68v147.63Z"/><path d="M644.64,52.32v131.48h-58.24V52.32h58.24ZM634.45,173.81V62.32h-38.25v111.49h38.25ZM713.65,193.61h-10.19v-75.16h-28.64v72.66h-10V46.94h10v61.32h28.64v-62.28h10.19v147.63Z"/><path d="M819.46,171.6c6.6-1.35,12.08-3.11,16.44-5.29v10.19c-4.23,2.31-9.64,4.1-16.24,5.38-6.6,1.28-13.3,1.92-20.09,1.92h-57.28V51.36h10.57v122.25h46.71c6.66,0,13.29-.67,19.89-2.02ZM851.47,193.8V45.98h10.57v147.63l-10.57.19Z"/><path d="M935.66,113.64l48.44,62.28-8.27,6.34-43.06-56.13c-4.36,16.66-10.38,29.92-18.07,39.79-7.69,9.87-16.72,15.83-27.1,17.88v-10.76c8.71-2.05,16.21-8.07,22.49-18.07,6.28-10,11.05-22.97,14.32-38.92,3.27-15.95,5.03-33.86,5.29-53.73h-39.21v-10h88.61v10h-39.02c-.13,18.84-1.6,35.95-4.42,51.32ZM1015.43,193.61h-10.38v-79.39h-37.87v-10.19h37.87v-58.05h10.38v147.63Z"/></g><g id="symbol"><path d="M183.92,56.08c-8.48-15.54-24.97-26.08-43.92-26.08h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%234dcdc0"/><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23499cdf"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>',m2='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Symbol_SpeechEar" xmlns="http://www.w3.org/2000/svg" width="240" height="240" viewBox="0 0 240 240"><g id="symbol"><path d="M183.92,56.08c-8.48-15.54-24.97-26.08-43.92-26.08h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%234dcdc0"/><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23499cdf"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>';function Hl({appMode:e}){const{t}=xe.useTranslation(),a=e==="manager",r=a?Ao:ir,i=m2;return n.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[n.jsx("img",{src:i,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image brand-identity__image--symbol"}),n.jsx("img",{src:r,alt:a?t("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):t("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image brand-identity__image--logo"})]})}function Vl({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:i,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:f,onAppModeChange:y,scrollContainer:x}){const{t:C}=xe.useTranslation(),h=ln("(max-width: 767px)"),_=o.useMemo(()=>(a??[]).filter(P=>!P.section&&(P.key||P.label)).map(P=>({key:P.key,label:typeof P.label=="string"?P.label:void 0,icon:P.icon,state:P.disabled?"disabled":void 0,badgeCount:P.badge})),[a]),g=o.useCallback(P=>{const G=a?.find(L=>L.key===P);if(!G?.disabled){if(G?.href){Fl(G.href)&&window.open(G.href,"_blank","noopener,noreferrer");return}t?.(P)}},[a,t]),A=o.useMemo(()=>{const P=[];return l&&P.push({key:"debug",icon:"terminal",label:C("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),u&&P.push({key:"notifications",icon:"bell",label:C("nav.notifications","\uC54C\uB9BC"),badgeCount:s,onClick:u}),d&&P.push({key:"settings",icon:"settings",label:C("nav.settings","\uC124\uC815"),onClick:d}),m&&P.push({key:"help",icon:"message-circle-question-mark",label:C("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:m}),p&&P.push({key:"feedback",icon:"bug",label:C("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:p}),c&&P.push({key:"account",icon:"user-round",label:C("nav.account","\uACC4\uC815"),onClick:c}),P},[C,l,u,d,m,p,c,s]),b=o.useCallback((P,G)=>({position:"fixed",top:P.bottom+8,right:Math.max(8,window.innerWidth-P.right),zIndex:ja(G)}),[]),k=o.useId(),{open:v,toggle:w,close:B,style:E,triggerRef:D,menuRef:N}=Ma({computeStyle:b,onScroll:"ignore",onResize:"reposition"}),O=o.useMemo(()=>[{items:A.map(P=>({label:P.label,icon:P.icon,badgeCount:P.badgeCount,selected:P.selected??(!!P.key&&P.key===e),closeOnSelect:!0,onClick:()=>{P.onClick?.(),B()}}))}],[A,e,B]);return n.jsxs("aside",{className:`header${f==="manager"?" header--manager":""}`,children:[n.jsxs("div",{className:"header__bi",children:[n.jsx(Hl,{appMode:f}),n.jsxs("div",{className:"header__menu-button",ref:D,children:[n.jsx(pe,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",useBorder:!1,icon:"menu",ariaLabel:u&&s&&s>0?C("nav.badgeInsideLabel",{label:C("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:s,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):C("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:w,"aria-expanded":v,"aria-controls":v?k:void 0}),!!u&&!!s&&s>0&&n.jsx(At,{type:"dot",number:Math.min(s,99),size:24,"aria-hidden":!0}),v&&en.createPortal(n.jsx("div",{id:k,role:"group","aria-label":C("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:E,ref:N,children:n.jsx(La,{columns:O,onClose:B})}),document.body)]})]}),n.jsx(Wl,{scrollContainer:x,items:a,activeKey:e??void 0,onChange:t,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:f,onAppModeChange:y}),h&&n.jsx(Il,{items:_,activeKey:e??void 0,onChange:g,scrollContainer:x,appMode:f,onAppModeChange:y})]})}const h2=Vl,f2=()=>Rt.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function ql(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 oa(`${t.toLocaleString("ko-KR")}\uC6D0`)}return oa(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function C2(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function g2(e){if(e.durationDays&&e.durationDays>0){const s=e.durationDays;return s%365===0?`${s/365}\uB144`:`${s}\uC77C`}const t=(e.code??"").match(/(\d+)(d|y)\b/i);if(t)return t[2].toLowerCase()==="y"?`${t[1]}\uB144`:`${t[1]}\uC77C`;const a=e.name??"",r=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(r)return r[1].replace(/\s+/g,"");const i=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return i?i[2].toLowerCase()==="year"?`${i[1]}\uB144`:`${i[1]}\uC77C`:a||f2()}function b2(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 Ul(e){return{type:e.type??C2(e),plan:g2(e),label:e.label,price:ql(e.price),originalPrice:ql(e.originalPrice),discountLabel:e.discountLabel}}var y2='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_SpeechEar_ko_mono" xmlns="http://www.w3.org/2000/svg" width="583.33" height="240" viewBox="0 0 583.33 240"><g id="text"><path d="M278.07,115.18V47.71h85.73v67.47h-85.73ZM408.4,173.42v20.18h-125.33v-44.02h96.5v-5.96h-96.88v-20.18h124.18v44.02h-96.11v5.96h97.65ZM305.56,70.97v20.76h30.95v-20.76h-30.95ZM423.39,92.88h-16.53v25.37h-27.68V45.98h27.68v20.18h16.53v26.72Z" fill="%23fff"/><path d="M527.58,113.83v26.33c-7.82,3.59-20.06,5.38-36.71,5.38h-1.73v48.06h-27.68v-48.06h-34.21v-26.33h64.01c16.4,0,28.51-1.79,36.33-5.38ZM435.31,75.77v-26.33h80.35v62.09h-27.68v-35.75h-52.67ZM563.33,193.61h-27.68V45.98h27.68v147.63Z" fill="%23fff"/></g><g id="symbol"><g opacity=".5"><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23fff"/></g><path d="M140,30h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84-3.88-7.1-6.08-15.25-6.08-23.92v-80c0-16.57,13.43-30,30-30h80c8.66,0,16.81,2.21,23.92,6.08-8.48-15.54-24.97-26.08-43.92-26.08Z" fill="%23fff"/><path d="M183.92,56.08c3.88,7.1,6.08,15.25,6.08,23.92v80c0,16.57-13.43,30-30,30h-80c-8.66,0-16.81-2.21-23.92-6.08,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%23fff"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>',v2='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_SpeechEarManager_ko_mono" xmlns="http://www.w3.org/2000/svg" width="1035.43" height="240" viewBox="0 0 1035.43 240"><g id="text"><path d="M278.07,115.18V47.71h85.73v67.47h-85.73ZM408.4,173.42v20.18h-125.33v-44.02h96.5v-5.96h-96.88v-20.18h124.18v44.02h-96.11v5.96h97.65ZM305.56,70.97v20.76h30.95v-20.76h-30.95ZM423.39,92.88h-16.53v25.37h-27.68V45.98h27.68v20.18h16.53v26.72Z" fill="%23fff"/><path d="M527.58,113.83v26.33c-7.82,3.59-20.06,5.38-36.71,5.38h-1.73v48.06h-27.68v-48.06h-34.21v-26.33h64.01c16.4,0,28.51-1.79,36.33-5.38ZM435.31,75.77v-26.33h80.35v62.09h-27.68v-35.75h-52.67ZM563.33,193.61h-27.68V45.98h27.68v147.63Z" fill="%23fff"/><path d="M644.64,52.32v131.48h-58.24V52.32h58.24ZM634.45,173.81V62.32h-38.25v111.49h38.25ZM713.65,193.61h-10.19v-75.16h-28.64v72.66h-10V46.94h10v61.32h28.64v-62.28h10.19v147.63Z" fill="%23fff"/><path d="M819.46,171.6c6.6-1.35,12.08-3.11,16.44-5.29v10.19c-4.23,2.31-9.64,4.1-16.24,5.38-6.6,1.28-13.3,1.92-20.09,1.92h-57.28V51.36h10.57v122.25h46.71c6.66,0,13.29-.67,19.89-2.02ZM851.47,193.8V45.98h10.57v147.63l-10.57.19Z" fill="%23fff"/><path d="M935.66,113.64l48.44,62.28-8.27,6.34-43.06-56.13c-4.36,16.66-10.38,29.92-18.07,39.79-7.69,9.87-16.72,15.83-27.1,17.88v-10.76c8.71-2.05,16.21-8.07,22.49-18.07,6.28-10,11.05-22.97,14.32-38.92,3.27-15.95,5.03-33.86,5.29-53.73h-39.21v-10h88.61v10h-39.02c-.13,18.84-1.6,35.95-4.42,51.32ZM1015.43,193.61h-10.38v-79.39h-37.87v-10.19h37.87v-58.05h10.38v147.63Z" fill="%23fff"/></g><g id="symbol"><g opacity=".5"><path d="M80,50c-16.57,0-30,13.43-30,30v80c0,8.66,2.21,16.81,6.08,23.92,7.1,3.88,15.25,6.08,23.92,6.08h80c16.57,0,30-13.43,30-30v-80c0-8.66-2.21-16.81-6.08-23.92-7.1-3.88-15.25-6.08-23.92-6.08h-80Z" fill="%23fff"/></g><path d="M140,30h-60c-27.61,0-50,22.39-50,50v23.38l-19.22,21.15c-1.15,1.26-1.02,3.24.3,4.33,5.82,4.84,12.22,8.56,18.92,11.21.03,18.92,10.56,35.37,26.08,43.84-3.88-7.1-6.08-15.25-6.08-23.92v-80c0-16.57,13.43-30,30-30h80c8.66,0,16.81,2.21,23.92,6.08-8.48-15.54-24.97-26.08-43.92-26.08Z" fill="%23fff"/><path d="M183.92,56.08c3.88,7.1,6.08,15.25,6.08,23.92v80c0,16.57-13.43,30-30,30h-80c-8.66,0-16.81-2.21-23.92-6.08,8.48,15.54,24.97,26.08,43.92,26.08h45.11c2.7,0,4.89,2.19,4.89,4.89,0,2.86,2.45,5.13,5.3,4.88,30.65-2.68,54.7-28.42,54.7-59.77v-60c0-18.95-10.54-35.44-26.08-43.92Z" fill="%23fff"/><rect x="69" y="88" width="12" height="24" rx="6" ry="6" fill="%23fff"/><path d="M111,140c-2.92,0-5.85-.75-8.5-2.28-2.39-1.38-3.21-4.44-1.82-6.83,1.38-2.39,4.44-3.21,6.83-1.82,2.74,1.58,6.21,1.13,8.44-1.1,1.08-1.08,1.76-2.45,1.97-3.95.9-6.37,3.71-12.42,8.14-17.5,2.64-3.02,4.03-6.9,3.93-10.92-.21-8.21-6.78-15.05-14.97-15.56-2.76-.18-5.42.33-7.88,1.51-2.49,1.19-5.48.12-6.66-2.37-1.19-2.49-.12-5.48,2.37-6.66,3.96-1.88,8.38-2.73,12.8-2.46,13.32.83,24.01,11.94,24.34,25.29.16,6.53-2.11,12.83-6.39,17.75-3.15,3.61-5.15,7.87-5.77,12.32-.52,3.67-2.18,7-4.8,9.63-3.27,3.27-7.62,4.97-12.02,4.97Z" fill="%23fff"/></g></svg>',Gl='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Symbol_IHAB_mono" xmlns="http://www.w3.org/2000/svg" width="240" height="240" viewBox="0 0 240 240"><path id="symbol" d="M190.71,49.29c-18.1-18.1-43.1-29.29-70.71-29.29s-34.94,28.87-53.03,46.97h0c-18.1,18.1-46.97,25.56-46.97,53.03s11.19,52.61,29.29,70.71c18.1,18.1,43.1,29.29,70.71,29.29s52.61-11.19,70.71-29.29c18.1-18.1,29.29-43.1,29.29-70.71s-11.19-52.61-29.29-70.71ZM155.36,155.36c-9.05,9.05-21.55,14.64-35.36,14.64s-26.31-5.6-35.36-14.64c-9.05-9.05-14.64-21.55-14.64-35.36s5.6-26.31,14.64-35.36c9.05-9.05,21.55-14.64,35.36-14.64s26.31,5.6,35.36,14.64c9.05,9.05,14.64,21.55,14.64,35.36s-5.6,26.31-14.64,35.36Z" fill="%23fff"/></svg>';const Zn={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},No=new WeakMap;function x2(e){if(e)return No.get(e)}function An(e,t){e&&(e.style.setProperty(Zn.text,t.text),e.style.setProperty(Zn.sub,t.sub),t.copyrightColor&&e.style.setProperty(Zn.copyright,t.copyrightColor),No.set(e,t))}function Nn(e){e&&(e.style.removeProperty(Zn.text),e.style.removeProperty(Zn.sub),e.style.removeProperty(Zn.copyright),No.delete(e))}const Kl={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#1a1a1a"};function Yl(e={}){const t=kt(Kl,An,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-two-circle__c1"}),n.jsx("div",{className:"pass-card-bg-two-circle__c3"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${Gl}")`}})]})}const Zl="M190.71,49.29c-18.1-18.1-43.1-29.29-70.71-29.29s-34.94,28.87-53.03,46.97h0c-18.1,18.1-46.97,25.56-46.97,53.03s11.19,52.61,29.29,70.71c18.1,18.1,43.1,29.29,70.71,29.29s52.61-11.19,70.71-29.29c18.1-18.1,29.29-43.1,29.29-70.71s-11.19-52.61-29.29-70.71Z",ua=240;var $a='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Symbol_IHAB" xmlns="http://www.w3.org/2000/svg" width="240" height="240" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 240 240"><defs><linearGradient id="linear-gradient" x1="62.99" y1="62.99" x2="190.71" y2="190.71" gradientUnits="userSpaceOnUse"><stop offset=".2" stop-color="%23499cdf"/><stop offset=".8" stop-color="%234dcdc0"/></linearGradient></defs><path id="symbol" d="M190.71,49.29c-18.1-18.1-43.1-29.29-70.71-29.29s-34.94,28.87-53.03,46.97h0c-18.1,18.1-46.97,25.56-46.97,53.03s11.19,52.61,29.29,70.71c18.1,18.1,43.1,29.29,70.71,29.29s52.61-11.19,70.71-29.29c18.1-18.1,29.29-43.1,29.29-70.71s-11.19-52.61-29.29-70.71ZM155.36,155.36c-9.05,9.05-21.55,14.64-35.36,14.64s-26.31-5.6-35.36-14.64c-9.05-9.05-14.64-21.55-14.64-35.36s5.6-26.31,14.64-35.36c9.05-9.05,21.55-14.64,35.36-14.64s26.31,5.6,35.36,14.64c9.05,9.05,14.64,21.55,14.64,35.36s-5.6,26.31-14.64,35.36Z" fill="url(%23linear-gradient)"/></svg>';const _2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"},w2=100,B2=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Xl(e={}){const t=kt(_2,An,Nn),a="var(--color-main)",r=270,i=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:B2.map(({scale:s,opacity:l},u)=>n.jsx("g",{transform:`translate(${r} ${i}) scale(${s*w2/ua}) translate(${-ua/2} ${-ua/2})`,opacity:l,children:n.jsx("path",{d:Zl,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},u))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}const k2={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",logoColor:"_mono",copyrightColor:"#ffffff"},A2=100,N2=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function E2(e={}){const t=kt(k2,An,Nn),a="#ffffff",r=270,i=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move-v1__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:N2.map(({scale:s,opacity:l},u)=>n.jsx("g",{transform:`translate(${r} ${i}) scale(${s*A2/ua}) translate(${-ua/2} ${-ua/2})`,opacity:l,children:n.jsx("path",{d:Zl,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},u))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${Gl}")`}})]})}const D2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"};function S2(e={}){const t=kt(D2,An,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}const T2={Logo_SpeechEar_ko:{"":ir,_mono:y2},Logo_SpeechEarManager_ko:{"":Ao,_mono:v2}};function j2(e,t){if(e)return T2[e]?.[t??""]??void 0}const M2={speechear:ir,manager:Ao},L2={speechear:"Logo_SpeechEar_ko",manager:"Logo_SpeechEarManager_ko"},Jl=10;function $2(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 Ql(e,t){if(e<=0)return t("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return t("passCard.remainingDay",{n:a});const r=Math.floor(e/3600);if(r>0)return t("passCard.remainingHour",{n:r});const i=Math.floor(e/60);return i>0?t("passCard.remainingMinute",{n:i}):t("passCard.remainingSecond",{n:Math.floor(e)})}function R2(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),i=a==="\uC624\uD508\uD2B9\uAC00"||a===Rt.t("passCard.specialLabel");return r?n.jsx(S2,{}):i?n.jsx(E2,{}):n.jsx(Xl,{})}return n.jsx(Yl,{})}function eu({ariaLabel:e,product:t,showPrice:a=!1,plan:r,type:i,endDate:s,remainingSeconds:l,endInclusive:u=!1,state:c="active",bg:d,bgOnly:m=!1,textColor:p,subColor:f,copyrightColor:y,logoSrc:x,label:C,price:h,originalPrice:_,discountLabel:g,onUse:A,onRefund:b,onDelete:k}){const{t:v}=xe.useTranslation(),w=t?Ul(t):void 0,B=i??w?.type??"speechear",E=r??w?.plan??v("passCard.planSuffix","\uC774\uC6A9\uAD8C"),D=C??w?.label,N=h??(a?w?.price:void 0),O=_??(a?w?.originalPrice:void 0),P=g??w?.discountLabel,G=o.useMemo(()=>{if(N)return null;const Y=t?.durationDays??b2(t?.code);if(!Y||Y<=0)return l!=null?{percent:null,remainingLabel:Ql(l,v)}:null;const Q=Y*86400;let me;if(l!=null)me=l;else if((c==="active"||c==="expired")&&s){const te=new Date(s).getTime();if(Number.isNaN(te))return null;const ue=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(s)),fe=/^(\d{4})-(\d{2})-(\d{2})/.exec(Ea()),ge=Math.round(ue&&fe?(Date.UTC(+ue[1],+ue[2]-1,+ue[3])-Date.UTC(+fe[1],+fe[2]-1,+fe[3]))/864e5:(te-Date.now())/864e5);me=Math.max(0,u?ge+1:ge)*86400}else c==="expired"?me=0:me=Q;const De=$2(me),be=Math.max(0,Math.min(100,Math.floor(Math.min(De,Q)/Q*100)));return c==="pending"&&be>=100?null:{percent:be,remainingLabel:c==="expired"?v("passCard.expired","\uB9CC\uB8CC\uB428"):Ql(me,v)}},[N,c,s,l,u,t?.durationDays,t?.code,v]),L=o.useRef(null),[M,$]=o.useState({}),[Z,q]=o.useState(null),z=!!(A||b||k),V=o.useRef(!1),R=o.useRef(void 0),[H,W]=o.useState(x);o.useLayoutEffect(()=>{W(x)},[x]),o.useLayoutEffect(()=>{const Y=L.current;Y&&(p!==void 0&&Y.style.setProperty("--pass-card-text",p),f!==void 0&&Y.style.setProperty("--pass-card-sub",f),y!==void 0&&Y.style.setProperty("--pass-card-copyright",y))},[p,f,y]),o.useLayoutEffect(()=>{const Y=L.current;if(!Y)return;const Q=x2(Y);if(!x){const me=L2[B],De=c==="expired"?"_mono":Q?.logoColor??"",be=j2(me,De);W(be)}},[d,x,B,c]);const I=Y=>{const Q=L.current;if(!Q)return null;const{left:me,top:De,width:be,height:te}=Q.getBoundingClientRect(),ue=(Y.clientX-me)/be-.5;return{rotateX:-((Y.clientY-De)/te-.5)*Jl,rotateY:ue*Jl}},S=(Y,Q)=>{const me=Q*-.7,De=Y*.7+10,be=20+(Math.abs(Y)+Math.abs(Q))*.4;return`${me}px ${De}px ${be}px rgba(0, 0, 0, 0.18)`},j=o.useCallback(Y=>{if(la())return;V.current=!0,clearTimeout(R.current),R.current=setTimeout(()=>{V.current=!1},200);const Q=I(Y);Q&&$({transform:`perspective(800px) rotateX(${Q.rotateX}deg) rotateY(${Q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:S(Q.rotateX,Q.rotateY),transition:"transform 0.25s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.25s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),F=o.useCallback(Y=>{if(la())return;const Q=I(Y);if(!Q)return;const me=V.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";$({transform:`perspective(800px) rotateX(${Q.rotateX}deg) rotateY(${Q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:S(Q.rotateX,Q.rotateY),transition:me})},[]),U=o.useCallback(()=>{clearTimeout(R.current),V.current=!1,$({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)"})},[]),re=o.useCallback(()=>q(null),[]),ne=o.useMemo(()=>{const Y=v("passCard.planSuffix","\uC774\uC6A9\uAD8C"),Q=E.replace("\uC774\uC6A9\uAD8C","").replace(Y==="\uC774\uC6A9\uAD8C"?"":Y,"").trim(),me=Q.match(/^(.*?)(일|년)$/);return me?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"h0 pass-card__plan-number",children:me[1]}),n.jsx("span",{className:"h5b pass-card__plan-unit",children:me[2]==="\uB144"?v("passCard.unitYear","\uB144"):v("passCard.unitDay","\uC77C")})]}):n.jsx("span",{className:"h0",children:Q})},[E,v]),le=o.useMemo(()=>{const Y=oa(N);if(!Y)return null;const Q=Y.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!Q)return n.jsx("span",{className:"h1",children:Y});const[,me,De,be]=Q;return n.jsxs(n.Fragment,{children:[me&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:me}),n.jsx("span",{className:"h1 pass-card__price-amount",children:De}),be.trim()&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:be.trim()})]})},[N]),K=o.useCallback(()=>{z&&q(Y=>{if(Y)return null;const Q=L.current?.getBoundingClientRect();if(!Q)return null;const me=50;return{left:Q.left,right:Q.right,width:Q.width,height:Q.height,x:Q.x,y:Q.y+me,top:Q.top+me,bottom:Q.bottom+me}})},[z]),oe=o.useCallback(Y=>{z&&(Y.key==="Enter"||Y.key===" ")&&(Y.preventDefault(),K())},[z,K]),Ae=[{items:[...A?[{label:v("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{A(),q(null)},closeOnSelect:!0}]:[],...b?[{label:v("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{b(),q(null)},closeOnSelect:!0}]:[],...k?[{label:v("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{k(),q(null)},closeOnSelect:!0}]:[]]}];return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card-frame",children:n.jsxs("div",{ref:L,className:`pass-card pass-card--${c}${z?" pass-card--clickable":""}`,style:M,onMouseEnter:j,onMouseMove:F,onMouseLeave:U,onPointerUp:Y=>{Y.pointerType==="touch"&&U()},onPointerCancel:Y=>{Y.pointerType==="touch"&&U()},onClick:K,onKeyDown:z?oe:void 0,role:z?"button":void 0,tabIndex:z?0:void 0,"aria-label":e,"aria-haspopup":z?"menu":void 0,"aria-expanded":z?!!Z:void 0,children:[d??R2(B,E,D),!m&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card__top",children:n.jsxs("div",{className:"pass-card__top-left",children:[n.jsx("img",{src:H??M2[B],className:"pass-card__logo",alt:B==="manager"?v("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):v("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),n.jsxs("div",{className:"pass-card__plan",children:[n.jsx("div",{children:ne}),n.jsx("span",{className:"h5b pass-card__plan-suffix",children:D?v("passCard.labeledPlan",{label:D}):v("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),N?n.jsxs("div",{className:"pass-card__price-area",children:[P&&n.jsx("span",{className:"pass-card__discount body-3",children:P}),n.jsxs("div",{className:"pass-card__price",children:[O&&n.jsx("span",{className:"pass-card__price-original body-3",children:oa(O)}),le]})]}):G?n.jsxs("div",{className:"pass-card__usage",children:[n.jsx("span",{className:"h5b pass-card__usage-remaining",children:G.remainingLabel}),G.percent!=null&&n.jsxs("span",{className:"pass-card__usage-percent",children:[n.jsx("span",{className:"h1 pass-card__usage-value",children:G.percent}),n.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):n.jsx("div",{className:"pass-card__copyright caption-2","aria-hidden":"true",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),Z&&n.jsx(cn,{anchorRect:Z,onClose:re,ariaLabel:v("tooltip.menu","\uBA54\uB274"),children:n.jsx(La,{columns:Ae,onClose:re,size:"small"})})]})}const P2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#1a1a1a"};function I2(e={}){const t=`passcard-sound-line-grad-${o.useId()}`,a=kt(P2,An,Nn);return n.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[n.jsxs("svg",{className:"pass-card-bg-sound-line__svg",viewBox:"0 0 500 300",preserveAspectRatio:"xMidYMid slice",xmlns:"http://www.w3.org/2000/svg",children:[n.jsx("defs",{children:n.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[n.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),n.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),n.jsx("g",{transform:"translate(25, 45)",children:n.jsx("path",{d:"M -30 150 C 40 80, 100 220, 160 150 S 280 80, 340 150 S 460 220, 510 150",fill:"none",stroke:`url(#${t})`,strokeWidth:"50",strokeLinecap:"round"})})]}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}const F2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"};function O2(e={}){const t=kt(F2,An,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}function z2(e,t){if(e){if(t==="manager_pro")return n.jsx(O2,{});if(t==="manager_standard")return n.jsx(I2,{});if(t==="manager_lite")return n.jsx(Xl,{})}}function W2(e){const t=oa(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,i,s]=a;return n.jsxs(n.Fragment,{children:[r&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),i,s.trim()&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:s.trim()})]})}function H2(e){const{t}=xe.useTranslation(),a=t("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),r=t("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:i,onSelect:s,period:l="monthly",ownedCodes:u}=e||{},c=b=>!!b&&!!u?.includes(b),d=b=>b.onceOnly??/오픈\s*특가/.test(b.label??""),m=(i.tiers||[]).some(b=>d(b)&&c(b.code)),p=b=>{const k=b.prices?b.prices[l]:b.price;return k?(i.tiers||[]).some(v=>!!v.badge&&v.originals?.[l]===k):!1},f=i.colorToken?`var(--color-${i.colorToken})`:"var(--color-gray)",y=t("payment.plan.freePrice","\uBB34\uB8CC"),x=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),C=b=>b.prices?b.prices[l]:b.price,h=(i.tiers||[]).length>0&&(i.tiers||[]).every(b=>{const k=C(b);return k==="\uBB34\uB8CC"||k===y||k==="0\uC6D0"||typeof k=="string"&&/\d/.test(k)&&!/[1-9]/.test(k)}),_=(i.tiers||[]).length>0&&(i.tiers||[]).every(b=>{const k=C(b);return k==="\uBB38\uC758"||k===x}),g=i.group==="org",A=g?"manager":"speechear";return n.jsxs("div",{className:"payment-plan__card",style:{borderColor:f,"--plan-color":f},children:[i.cardBadge&&n.jsx("div",{className:"payment-plan__card-badge",children:n.jsx(At,{label:i.cardBadge,variant:"main",size:"medium",fill:"soft"})}),n.jsxs("div",{className:"payment-plan__title",children:[n.jsx("p",{className:"payment-plan__quote body-3b",style:{color:f},children:i.quote||"\xA0"}),n.jsx("h3",{className:"payment-plan__title-heading h1",children:i.tier??i.title}),n.jsx("p",{className:"payment-plan__subtitle body-3",children:i.subtitle})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(i.recommendedFor||[]).map((b,k)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(at,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),b]},k))})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(i.features||[]).map((b,k)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(at,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),b]},k))})]}),n.jsx("div",{className:"payment-plan__card-pricing",children:h?null:_?n.jsx(pe,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>i.tiers?.[0]&&s?.({...i.tiers[0],productId:i.id,productTitle:i.title})}):n.jsx(n.Fragment,{children:n.jsx("div",{className:"payment-plan__pricing-list",children:(i.tiers||[]).map(b=>{const k=b.label||a,v=d(b),w=v||b.openPromo===!0,B=k.replace(/^오픈\s*특가\s*/,"")||a,E=b.prices?b.prices[l]:b.price,D=b.badge?w?`${r}
|
|
852
852
|
${b.badge}`:b.badge:void 0;if(v&&c(b.code))return null;if(!b.badge&&!m)return p(b)?null:n.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${b.highlight?" payment-plan__pricing-row--highlight":""}`,children:[n.jsx("div",{className:"payment-plan__pricing-row-title",children:n.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:b.label})}),n.jsx("div",{className:"payment-plan__pricing-row-price",children:n.jsx("span",{className:"payment-plan__pricing-current h1",children:W2(E)})})]},b.id);const N=i.tier??(g?i.title:void 0),O=n.jsx(eu,{showPrice:!0,product:{type:A,code:b.code,name:B,label:N,price:E,originalPrice:b.originals?.[l]??void 0,discountLabel:D},bg:z2(g,i.id)}),P=()=>s?.({...b,productId:i.id,productTitle:i.title,preview:O});return n.jsx("div",{className:"payment-plan__pricing-card",onClick:P,onKeyDown:s?G=>{G.target===G.currentTarget&&(G.key==="Enter"||G.key===" ")&&(G.preventDefault(),P())}:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,children:O},b.id)})})})})]})}function V2({variant:e="default"}){return n.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var Eo='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?><svg id="Logo_IHAB_en" xmlns="http://www.w3.org/2000/svg" width="765.08" height="240" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 765.08 240"><defs><linearGradient id="linear-gradient" x1="62.99" y1="62.99" x2="190.71" y2="190.71" gradientUnits="userSpaceOnUse"><stop offset=".2" stop-color="%23499cdf"/><stop offset=".8" stop-color="%234dcdc0"/></linearGradient></defs><path id="symbol" d="M190.71,49.29c-18.1-18.1-43.1-29.29-70.71-29.29s-34.94,28.87-53.03,46.97h0c-18.1,18.1-46.97,25.56-46.97,53.03s11.19,52.61,29.29,70.71c18.1,18.1,43.1,29.29,70.71,29.29s52.61-11.19,70.71-29.29c18.1-18.1,29.29-43.1,29.29-70.71s-11.19-52.61-29.29-70.71ZM155.36,155.36c-9.05,9.05-21.55,14.64-35.36,14.64s-26.31-5.6-35.36-14.64c-9.05-9.05-14.64-21.55-14.64-35.36s5.6-26.31,14.64-35.36c9.05-9.05,21.55-14.64,35.36-14.64s26.31,5.6,35.36,14.64c9.05,9.05,14.64,21.55,14.64,35.36s-5.6,26.31-14.64,35.36Z" fill="url(%23linear-gradient)"/><g id="text"><path d="M316.21,190.6h-36.74V50.61h36.74v139.99Z"/><path d="M335.16,50.61h36.74v55.11h51.63v-55.11h36.93v139.99h-36.93v-55.11h-51.63v55.11h-36.74V50.61Z"/><path d="M473.99,190.6l46.6-139.99h50.08l46.41,139.99h-39.64l-8.31-27.46h-46.99l-8.31,27.46h-39.83ZM560.62,135.3l-14.5-46.99h-1.16l-14.31,46.99h29.97Z"/><path d="M631,50.61h59.94c31.9,0,48.73,13.73,48.73,35.19,0,15.47-11.02,27.26-26.88,30.55v1.35c17.6.58,32.29,13.54,32.29,33.45,0,22.82-18.56,39.45-49.11,39.45h-64.97V50.61ZM701.77,93.53c0-8.89-6.96-13.92-17.02-13.92h-17.02v27.84h16.44c10.25,0,17.6-5.03,17.6-13.92ZM706.22,146.51c0-10.25-7.35-16.05-19.14-16.05h-19.34v30.55h18.76c13.15,0,19.72-5.03,19.72-14.5Z"/></g></svg>';const tu={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#c9c9c9"};function q2(){const e=kt(tu,An,Nn);return n.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${Eo}")`}})})}const nu={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEarManager_ko",logoColor:"_mono",copyrightColor:"#ffffff"};function U2(e={}){const t=kt(nu,An,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),n.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${$a}")`}})]})}function au({keys:e,anchor:t="top-right",scale:a,className:r=""}){const i=Array.isArray(e)?e:[e];return n.jsx("span",{className:_e("shortcut-badge",`shortcut-badge--${t}`,r),style:a===void 0?void 0:{"--shortcut-badge-scale":String(a)},children:i.map((s,l)=>n.jsxs("span",{className:"shortcut-badge__group",children:[l>0&&n.jsx("span",{className:"shortcut-badge__plus",children:"+"}),n.jsx("kbd",{className:"shortcut-badge__key",children:s})]},`${s}-${l}`))})}const Ra=(e,t,a)=>e+(t-e)*a;function G2({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:r=null,playedIds:i,selectedId:s=null,answerId:l=null,showFeedback:u=!1,pulseSelected:c=!1,pulseSelectedDuration:d,pulseScale:m,clickable:p=!1,onSelectSpeaker:f,buttonSize:y=40,showIcon:x=!0,onCenterClick:C,centerLabel:h,centerDisabled:_=!1,centerAttention:g=!1,shortcutAnchor:A="top-right",shortcutScale:b,scaleShortcut:k=!1}){const{t:v}=xe.useTranslation(),w=Math.max(0,Math.min(1,a)),B=t/2,E=110/300,D=.18,N=Y=>t*(E+(Y-1)*D),O=Y=>{const Q=N(Y.row??1),me=Y.angleDeg*Math.PI/180;return{x:B+Q*Math.cos(me),y:B+Q*Math.sin(me)}},P=Math.max(...e.map(Y=>Y.row??1),1),G=t*.08,L=t*.1,M=t*.24,$=t-2*G,Z=t-L-M,q=t-M/2,z=o.useMemo(()=>[...new Set(e.map(Y=>Y.deg))].sort((Y,Q)=>Y-Q),[e]),V=z.length,R=Math.max(68,V>1?$/(V-1):0),H=o.useMemo(()=>new Map(z.map((Y,Q)=>[Y,Q])),[z]),W=Y=>{const Q=H.get(Y.deg)??0,me=B+(Q-(V-1)/2)*R,De=P>1?Math.min(68,Z/(P-1)):0,be=De*(P-1),te=L+(Z-be)/2,ue=P===1?L+Z*.4:te+(P-(Y.row??1))*De;return{x:me,y:ue}},I=Y=>{const Q=O(Y),me=W(Y);return{x:Ra(Q.x,me.x,w),y:Ra(Q.y,me.y,w)}},S={x:B,y:Ra(B,q,w)},j=Math.round(y*1.2),F=Math.round(Math.max(16,Math.min(80,y*.7))),U=[],re=new Map;for(const Y of e){const Q=Y.row??1;re.has(Q)||re.set(Q,[]),re.get(Q).push(Y)}for(const[Y,Q]of re.entries()){if(Q.length<2)continue;const me=[...Q].sort((qe,mt)=>qe.deg-mt.deg),De=me.map(qe=>I(qe)),be=me.map(qe=>qe.deg),te=be[be.length-1]-be[0],ue=te/(be.length-1),fe=360-te,ge=me.length>=3&&ue>0&&fe<=ue*1.5,Ce=Math.round(N(Y)*1e3)/1e3,$e=(qe,mt,ct,rt)=>{const ft=(mt.angleDeg-qe.angleDeg+540)%360-180;if(ft===0)return`L ${rt.x} ${rt.y}`;if(w===0)return`A ${Ce} ${Ce} 0 0 ${ft>0?1:0} ${rt.x} ${rt.y}`;const ke=(qe.angleDeg+ft/2)*Math.PI/180,Ve={x:B+Ce*Math.cos(ke),y:B+Ce*Math.sin(ke)},we={x:(ct.x+rt.x)/2,y:(ct.y+rt.y)/2},Ue={x:Ra(Ve.x,we.x,w),y:Ra(Ve.y,we.y,w)},Be={x:2*Ue.x-we.x,y:2*Ue.y-we.y};return`Q ${Be.x} ${Be.y} ${rt.x} ${rt.y}`},He=ge?[...me,me[0]]:me,Te=ge?[...De,De[0]]:De;let Ie=`M ${Te[0].x} ${Te[0].y}`;for(let qe=1;qe<Te.length;qe++)Ie+=" "+$e(He[qe-1],He[qe],Te[qe-1],Te[qe]);U.push({key:`arc-${Y}`,d:Ie})}const ne=o.useMemo(()=>new Set(i??[]),[i]),le=Y=>({idle:"",active:v("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:v("soundCompass.state.played","\uB4E4\uC74C"),correct:v("soundCompass.state.correct","\uC815\uB2F5"),wrong:v("soundCompass.state.wrong","\uC624\uB2F5")})[Y],K=Y=>{if(r===Y.id)return"active";if(u){if(Y.id===l)return"correct";if(Y.id===s&&s!==l)return"wrong"}return ne.has(Y.id)?"played":"idle"},oe=Y=>r===Y.id?"loop":u?Y.id===l?"loop":null:c&&Y.id===s?"once":null,Ae=(Y,Q)=>{switch(Y){case"played":case"correct":return n.jsx(Ts,{size:Q});case"wrong":return n.jsx(zs,{size:Q});default:return n.jsx(Os,{size:Q})}};return n.jsx("div",{className:"sound-compass",children:n.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[n.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[w===0&&e.map(Y=>{const{x:Q,y:me}=I(Y);return n.jsx("line",{x1:S.x,y1:S.y,x2:Q,y2:me,stroke:"#dde3ec",strokeWidth:"1"},Y.id)}),U.map(Y=>n.jsx("path",{d:Y.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},Y.key))]}),g&&!_&&n.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:j,height:j,left:S.x-j/2,top:S.y-j/2}}),C?n.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${_?" sound-compass__center--disabled":""}`,style:{width:j,height:j,left:S.x,top:S.y},"aria-label":h,"aria-disabled":_||void 0,tabIndex:_?-1:0,onClick:_?void 0:C,children:n.jsx($r,{size:F,color:"currentColor",strokeWidth:1.5})}):n.jsx("div",{className:"sound-compass__center",style:{width:j,height:j,left:S.x,top:S.y},children:n.jsx($r,{size:F,color:"currentColor",strokeWidth:1.5})}),e.map((Y,Q)=>{const{x:me,y:De}=I(Y),be=K(Y),te=oe(Y),ue={...b!==void 0||k?{"--shortcut-badge-scale":String(b??Math.max(.75,Math.min(3,y/56)))}:null,pointerEvents:p?"auto":"none",cursor:p?"pointer":"default",zIndex:be!=="idle"?10:1},fe=y,ge=Math.round(Math.max(10,Math.min(56,fe*.38))),Ce=Math.round(Math.max(7,Math.min(18,fe*.2))),$e=Math.round(Math.max(10,Math.min(56,fe*.4))),He=x==="answered"&&(be==="played"||be==="correct"||be==="wrong"),Te=x===!0||He,Ie=!He;return n.jsxs("div",{className:"sound-compass__speaker-pos",style:{...ue,left:me-fe/2,top:De-fe/2},children:[te&&n.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${be}`+(te==="once"?" sound-compass__pulse--once":""),style:{width:fe,height:fe,...te==="once"&&d!==void 0?{"--sc-pulse-duration-once":`${d}ms`}:null,...m!==void 0?{"--sc-pulse-scale":String(m)}:null}}),n.jsxs("button",{type:"button",tabIndex:p?0:-1,"aria-disabled":p?void 0:!0,onClick:p?()=>f?.(Y.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${be}`,style:{width:fe,height:fe},"aria-label":le(be)?`${Y.label}, ${le(be)}`:Y.label,"aria-pressed":s!=null?Y.id===s:void 0,children:[Te&&Ae(be,ge),Ie&&n.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:x===!0?Ce:$e},children:Q+1})]}),Y.shortcut&&n.jsx(au,{keys:Y.shortcut,anchor:A,className:"sound-compass__speaker-shortcut"})]},Y.id)})]})})}function K2({children:e,position:t="top-left",size:a=24,className:r=""}){return n.jsx("span",{className:_e("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${t}`,r),children:e})}function Y2({orientation:e="horizontal",label:t,className:a=""}){const r=_e("divider",`divider--${e}`,t&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?n.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):t?n.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[n.jsx("span",{className:"divider__line"}),n.jsx("span",{className:"divider__label caption-1",children:t}),n.jsx("span",{className:"divider__line"})]}):n.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}function ru({checked:e,onChange:t,name:a,value:r,disabled:i=!1,label:s,className:l=""}){const u=o.useId();return n.jsxs("label",{className:`radio${i?" radio--disabled":""} ${l}`.trim(),htmlFor:u,children:[n.jsx("input",{id:u,type:"radio",name:a,value:r,checked:e,disabled:i,onChange:c=>t?.(c.target.checked)}),n.jsx("span",{className:"radio__dot"}),s&&n.jsx("span",{className:"radio__label body-2",children:s})]})}function Z2({options:e,value:t,onChange:a,name:r,disabled:i=!1,direction:s="vertical",className:l="",ariaLabel:u}){const c=o.useId(),d=r??`radio-group-${c}`;return n.jsx("div",{className:`radio-group radio-group--${s} ${l}`.trim(),role:"radiogroup","aria-label":u,children:e.map(m=>n.jsx(ru,{name:d,value:m.value,checked:t===m.value,disabled:i||m.disabled,label:m.label,onChange:p=>{p&&a?.(m.value)}},m.value))})}const X2={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function J2({tone:e="info",title:t,message:a,children:r,dismissible:i=!1,onDismiss:s,live:l,className:u=""}){const{t:c}=xe.useTranslation(),[d,m]=o.useState(!1),p=o.useRef(null),f=o.useCallback(()=>{const g=p.current;g&&g.contains(document.activeElement)&&ar(g),m(!0),s?.()},[s]);if(d)return null;const y=_e("alert",`alert--${e}`,u),x=l??(e==="danger"||e==="warning"?"assertive":"polite"),C=x==="assertive"?"alert":x==="polite"?"status":void 0,h=!!t,_=!!(a||r);return n.jsxs("div",{ref:p,className:y,role:C,children:[n.jsxs("div",{className:"alert__body",children:[n.jsxs("div",{className:"alert__header",children:[n.jsx(at,{icon:X2[e],size:20,className:"alert__icon"}),h&&n.jsx("span",{className:"alert__title body-2",children:t}),!h&&_&&n.jsx("div",{className:"alert__message body-3",children:a||r})]}),h&&_&&n.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||r})]}),i&&n.jsx("button",{type:"button",className:"alert__dismiss",onClick:f,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}const Q2={ready:"search",guide:"info",error:"circle-alert"};function ev(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const r=[];let i=0,s=0;for(const l of a){const u=e.indexOf(l,i);u<0||(u>i&&r.push(e.slice(i,u)),r.push(n.jsx("strong",{className:"search-summary__em body-2",children:l},s++)),i=u+l.length)}return i<e.length&&r.push(e.slice(i)),r}function tv({status:e="guide",label:t,children:a,emphasis:r,icon:i,className:s=""}){const l=i===!1?null:i??Q2[e],u=_e("search-summary",`search-summary--${e}`,s),c=t??a,d=typeof c=="string"&&r&&r.length>0?ev(c,r):c;return n.jsxs("div",{className:u,role:"status","aria-live":"polite",children:[l!=null&&n.jsx(at,{icon:l,size:18,className:"search-summary__icon"}),n.jsx("span",{className:"search-summary__text body-2",children:d})]})}function Pa({title:e,items:t}){const{t:a}=xe.useTranslation(),{anchorRect:r,openAt:i,close:s}=Ta(),l=o.useRef(null),u=fo(!!r,(c,d)=>{c&&d?i(l.current?.querySelector("button")??d):s()},l);return n.jsxs("span",{ref:l,style:{display:"contents"},children:[n.jsx(pe,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:c=>{ia(c)||i(c.currentTarget)},onPointerLeave:c=>{ia(c)||s()},onClick:c=>{u.touchPress(c.currentTarget)},onFocus:c=>{la()||i(c.currentTarget)},onBlur:s}),r&&n.jsx(Kn,{title:e,items:t,showIndex:t.length>1,anchorRect:r,onClose:s})]})}function nv({items:e=[],value:t,onChange:a,className:r="",size:i=40}){const s=o.useId(),{t:l}=xe.useTranslation(),u=o.useRef(null),c=e.find(C=>!C.disabled)?.key,d=e.some(C=>C.key===t)?t:c??e[0]?.key,m=e.find(C=>C.key===d&&!C.disabled)?.key??c,p=()=>Array.from(u.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),f=(C,h=p())=>{if(h.length===0)return;const _=(C%h.length+h.length)%h.length;h[_]?.focus(),h[_]?.click()},y=C=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(C.key))return;C.preventDefault();const h=p(),_=h.indexOf(C.currentTarget);C.key==="ArrowRight"||C.key==="ArrowDown"?f(_+1,h):C.key==="ArrowLeft"||C.key==="ArrowUp"?f(_-1,h):C.key==="Home"?f(0,h):f(h.length-1,h)},x=e.find(C=>C.key===d);return n.jsxs("div",{className:`tabs ${r}`.trim(),children:[n.jsx("div",{ref:u,className:`tabs__list tabs__list--${i}`,role:"tablist","aria-label":l("tabs.ariaLabel","\uD0ED"),children:e.map(C=>n.jsx("button",{id:`tabs__tab-${s}-${C.key}`,type:"button",role:"tab","aria-selected":C.key===d,"aria-controls":`tabs__panel-${s}-${C.key}`,disabled:C.disabled,tabIndex:C.key===m?0:-1,className:`tabs__tab body-2${C.key===d?" tabs__tab--active":""}`,onClick:()=>{C.key!==t&&a?.(C.key)},onKeyDown:y,children:C.label},C.key))}),x&&n.jsx("div",{id:`tabs__panel-${s}-${x.key}`,role:"tabpanel","aria-labelledby":`tabs__tab-${s}-${x.key}`,tabIndex:0,className:"tabs__panel",children:x.panel},x.key)]})}const av={xs:12,sm:16,md:20,lg:28,xl:36};function rv(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 ov({src:e,name:t,size:a="md",shape:r="circle",className:i=""}){const{t:s}=xe.useTranslation(),[l,u]=o.useState(null),c=!!e&&l===e,d=t?rv(t):"",m=!!e&&!c,p=!m&&!!d,f=t||s("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return n.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${i}`.trim(),role:"img","aria-label":f,children:[m&&n.jsx("img",{className:"avatar__image",src:e,alt:f,onError:()=>u(e??null)}),!m&&p&&n.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:d}),!m&&!p&&n.jsx(at,{icon:"user-round",size:av[a],className:"avatar__icon"})]})}function sv(e,t){if(!t)return!0;const a=t.split(",").map(s=>s.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),i=e.type.toLowerCase();return a.some(s=>{const l=s.toLowerCase();return l.startsWith(".")?r.endsWith(l):l.endsWith("/*")?i.startsWith(l.slice(0,-1)):i===l})}function iv({onFilesSelected:e,accept:t,multiple:a=!1,disabled:r=!1,showFileList:i=!0,files:s,onRemove:l,className:u=""}){const{t:c}=xe.useTranslation(),d=o.useRef(null),[m,p]=o.useState(!1),[f,y]=o.useState([]),x=s??f,C=v=>{if(!v||v.length===0)return;const w=Array.from(v).filter(E=>sv(E,t));if(w.length===0)return;const B=a?w:w.slice(0,1);if(s===void 0){const E=a?[...x,...B]:B;y(E),e?.(E)}else e?.(B)},h=v=>{v.preventDefault(),!r&&p(!0)},_=v=>{v.preventDefault(),p(!1)},g=v=>{v.preventDefault(),p(!1),!r&&C(v.dataTransfer.files)},A=v=>{const w=v.target;try{C(w.files)}finally{w.value=""}},b=()=>{r||d.current?.click()},k=v=>{if(!r&&(l?.(v),s===void 0)){const w=x.filter((B,E)=>E!==v);y(w),l||e?.(w)}};return n.jsxs("div",{className:`file-upload ${u}`.trim(),children:[n.jsxs("div",{className:_e("file-upload__dropzone",m&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:b,onKeyDown:v=>{(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),b())},onDragOver:h,onDragLeave:_,onDrop:g,children:[n.jsx(at,{icon:"upload",size:24,className:"file-upload__icon"}),n.jsx("span",{className:"file-upload__prompt body-2",children:c("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),n.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:v=>{v.stopPropagation(),b()},children:c("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),n.jsx("input",{ref:d,type:"file",className:"file-upload__input",accept:t,multiple:a,disabled:r,onChange:A,tabIndex:-1})]}),i&&x.length>0&&n.jsx("ul",{className:"file-upload__list",children:x.map((v,w)=>n.jsxs("li",{className:"file-upload__list-item body-3",children:[n.jsx("span",{className:"file-upload__file-name body-3",children:v.name}),n.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":c("fileUpload.removeAriaLabel",{name:v.name}),disabled:r,onClick:()=>k(w),children:n.jsx(at,{icon:"x",size:14})})]},`${v.name}-${w}`))})]})}function lv({items:e,className:t=""}){const{t:a}=xe.useTranslation();return n.jsx("nav",{className:`breadcrumb ${t}`.trim(),"aria-label":a("breadcrumb.ariaLabel","\uC774\uB3D9 \uACBD\uB85C"),children:n.jsx("ol",{className:"breadcrumb__list",children:e.map((r,i)=>{const s=i===e.length-1;return n.jsxs("li",{className:"breadcrumb__item",children:[s?n.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:r.label}):r.href?n.jsx("a",{className:"breadcrumb__link body-3",href:r.href,target:r.target,rel:r.rel??(r.target==="_blank"?"noopener noreferrer":void 0),onClick:r.onClick,children:r.label}):r.onClick?n.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:r.onClick,children:r.label}):n.jsx("span",{className:"breadcrumb__text body-3",children:r.label}),!s&&n.jsx(at,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},i)})})})}const uv={small:14,medium:20,large:28};function cv({value:e,onChange:t,max:a=5,readOnly:r=!1,size:i="medium",ariaLabel:s,className:l=""}){const{t:u}=xe.useTranslation(),c=r||!t,[d,m]=o.useState(null),p=c?e:Number.isFinite(e)?Math.round(e):0,f=d??p,y=uv[i],x=v=>{v!==e&&t?.(v)},C=v=>{c||x(v)},h=v=>{c||la()||m(v)},_=o.useRef(null),g=v=>{const w=Math.min(a,Math.max(1,v));x(w),Array.from(_.current?.querySelectorAll("[data-star]")??[]).find(B=>B.dataset.star===String(w))?.focus()},A=v=>{if(!c){switch(v.key){case"ArrowRight":case"ArrowUp":g((p||0)+1);break;case"ArrowLeft":case"ArrowDown":g((p||1)-1);break;case"Home":g(1);break;case"End":g(a);break;default:return}v.preventDefault()}},b=p>=1&&p<=a?Math.round(p):1,k=()=>{c||m(null)};return n.jsx("div",{className:`rating rating--${i}${c?" rating--readOnly":""} ${l}`.trim(),ref:_,onKeyDown:A,role:c?"img":"radiogroup","aria-label":c?u("rating.valueLabel",{value:e,max:a}):s??u("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:k,onPointerUp:v=>{v.pointerType==="touch"&&k()},onPointerCancel:v=>{v.pointerType==="touch"&&k()},children:Array.from({length:a},(v,w)=>{const B=w+1,E=Math.max(0,Math.min(1,f-w)),D=E>0&&E<1,N=n.jsxs("span",{className:"rating__star-wrap",children:[n.jsx(at,{icon:"star",size:y,className:"rating__star rating__star--empty"}),E>0&&n.jsx("span",{className:`rating__star-fill${D?" rating__star-fill--half":""}`,style:D?{width:`${E*100}%`}:void 0,children:n.jsx(at,{icon:"star",size:y,className:"rating__star rating__star--filled"})})]});return c?n.jsx("span",{className:"rating__item","aria-hidden":"true",children:N},B):n.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":p===B,"aria-label":u("rating.starLabel",{n:B}),"data-star":B,tabIndex:B===b?0:-1,onClick:()=>C(B),onMouseEnter:()=>h(B),children:N},B)})})}const dv=20,pv=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function mv({value:e,onChange:t,palette:a=pv,size:r=40,className:i="",ariaLabel:s}){const{t:l}=xe.useTranslation();return n.jsx("div",{className:`color-picker ${i}`.trim(),role:"group","aria-label":s,children:a.map(u=>{const c=e?.toLowerCase()===u.toLowerCase();return n.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:u},onClick:()=>t(u),"aria-pressed":c,"aria-label":c?`${u} ${l("colorPicker.selected","\uC120\uD0DD\uB428")}`:u,children:c&&n.jsx(at,{icon:"check",size:dv,className:"color-picker__check"})},u)})})}function ou({icon:e,label:t,tooltip:a,wrapperStyle:r,color:i,bgColor:s,useHover:l=!0,iconSize:u="medium"}){const{t:c}=xe.useTranslation(),d=u==="small",m=_e("category-icon",d?"category-icon--small":""),p=d?16:20,f=o.useRef(null),[y,x]=o.useState(!1),C=o.useMemo(()=>{const B=r&&typeof r=="object"?{...r}:{};return!i&&!s?B:{...B,...i?{color:i,"--t-item-fg":i}:{},...s?{"--t-item-bg":s}:{}}},[r,i,s]),h=a||t,_=l&&!!h,[g,A]=o.useState(null);o.useLayoutEffect(()=>{y&&A(f.current?.getBoundingClientRect()??null)},[y]),o.useEffect(()=>{if(!l&&y)try{x(!1)}catch{}},[l,y]),o.useEffect(()=>{if(!y)return;const B=E=>{const D=f.current;if(!D)return;const N=E.target;N&&!D.contains(N)&&x(!1)};return document.addEventListener("pointerdown",B,!0),()=>document.removeEventListener("pointerdown",B,!0)},[y]);const b=o.useCallback(()=>{l&&x(!0)},[l]),k=o.useCallback(()=>{l&&x(!1)},[l]),v=o.useCallback(()=>x(!1),[]),w=o.useCallback(B=>{if(B.key==="Escape"){x(!1);return}(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),x(E=>!E))},[]);return n.jsxs("span",{ref:f,className:_e("category-icon__wrap",_&&"category-icon__wrap--interactive"),onPointerEnter:b,onPointerLeave:k,onFocus:b,onBlur:k,onKeyDown:w,role:"button",tabIndex:0,"aria-label":typeof h=="string"?c("common.descriptionFor",{name:h,defaultValue:`${h} \uC124\uBA85`}):void 0,"aria-haspopup":!!h,"aria-expanded":y,"data-tooltip-ignore":!0,children:[n.jsx(at,{icon:e,label:t,className:m,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:C,size:p}),y&&h&&n.jsx(Bn,{anchorRect:g,text:typeof h=="string"?h:void 0,offset:8,onClose:v,className:"category-icon__tooltip",ariaLabel:typeof h=="string"?h:void 0})]})}let In=null;function lr(e){if(In&&In!==e)try{In()}catch{}return In=e,()=>{In===e&&(In=null)}}function ur(e){if(In===e){In=null;try{e()}catch{}}}function cr(e,t){let a=()=>{};const r=new Promise(u=>{a=u});if(typeof e!="string"||e.trim()===""){St("one-shot-empty-url","[core] playOneShot \uC5D0 \uBE48 \uC8FC\uC18C\uAC00 \uC654\uB2E4 \u2014 \uC548 \uD2BC\uB2E4. \uBD80\uB974\uB294 \uCABD\uC774 \uC8FC\uC18C\uB97C \uC5BB\uAE30 \uC804\uC5D0 \uBD88\uB800\uB2E4.",new Error("playOneShot(empty)").stack),a(!1);try{t?.(!1)}catch{}return{el:{},stop:()=>{},done:r}}let i=!1;const s=u=>{if(!i){i=!0;try{t?.(u)}catch{}a(u)}};let l;try{l=new Audio(e)}catch{return s(!1),{el:{},stop:()=>{},done:r}}l.onended=()=>s(!0),l.onerror=()=>s(!1);try{l.play().catch(()=>s(!1))}catch{s(!1)}return{el:l,stop:()=>{try{l.pause()}catch{}s(!1)},done:r}}function hv(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=l=>l.map(u=>u?.contextCode||u?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const l=a.sentences||a.items||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LIN_D"}}if(t==="SHORT_STORY"){const l=a.items||a.sentences||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"SHORT_S"}}if(t==="LONG_STORY"){const l=a.items||a.sentences||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LONG"}}if(t==="ORDERING_SENTENCE"){const l=a.sentences||a.items||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LIN_D"}}const i=a.sentences||a.items||[],s=r(Array.isArray(i)?i:[]);return s.length===0&&(a.contextCode||a.context_code)&&s.push(String(a.contextCode||a.context_code)),{previewCodes:s,previewBucket:null}}function fv(e,t){const[a,r]=o.useState(!1),[i,s]=o.useState(-1),[l,u]=o.useState({key:"",urls:[]}),c=o.useRef(null),d=o.useRef(!1),m=o.useRef(null),p=o.useRef(null),[f,y]=o.useState(!1),x=o.useRef([]),{previewCodes:C,previewBucket:h}=hv(e,t),_=`${C.join(",")}|${h??""}`,g=o.useMemo(()=>l.key===_?l.urls:[],[l,_]);o.useEffect(()=>{if(!C.length)return;let b=!1;return(async()=>{const k=[],v=[];for(const w of C)try{const B=fi(w,h);if(!B){k.push("");continue}let E=null;try{E=await Ci(B)}catch{}if(!E)try{const D=await gi(B);D&&(E=URL.createObjectURL(D),v.push(E))}catch{}k.push(E??"")}catch{k.push("")}b?v.forEach(w=>{try{URL.revokeObjectURL(w)}catch{}}):(x.current.forEach(w=>{try{URL.revokeObjectURL(w)}catch{}}),x.current=v,u({key:_,urls:k}))})(),()=>{b=!0}},[C.join(","),h]),o.useEffect(()=>()=>{x.current.forEach(b=>{try{URL.revokeObjectURL(b)}catch{}}),x.current=[]},[]);const A=o.useCallback(async b=>{if(b.stopPropagation(),b.preventDefault(),d.current){m.current&&ur(m.current),d.current=!1;try{c.current?.pause()}catch{}r(!1),s(-1);return}if(!g.filter(Boolean).length)return;let k=null;const v=()=>{d.current=!1,k?.stop()};m.current=v;const w=lr(v);d.current=!0,r(!0);for(let B=0;B<g.length&&d.current;B++){const E=g[B];if(E&&(s(B),k=cr(E),c.current=k.el,!await k.done))break}w(),m.current===v&&(m.current=null,d.current=!1,r(!1),s(-1))},[g]);return o.useEffect(()=>()=>{m.current&&ur(m.current),d.current=!1;try{c.current?.pause()}catch{}c.current=null},[]),{playing:a,playingIndex:i,previewUrls:g,previewHover:f,setPreviewHover:y,previewBtnRef:p,handlePreview:A}}const Cv=e=>{if(!e)return[];const t=typeof e.context=="string"&&e.context.trim()||typeof e.sentence=="string"&&e.sentence.trim()||typeof e.text=="string"&&e.text.trim()||"";if(t)return[String(t)];const a=e.sentences||e.items||e.questions||[];return Array.isArray(a)&&a.length>0?a.map(r=>{if(typeof r=="string")return r;if(r&&typeof r=="object"){const i=r;return i.sentence||i.text||i.context||i.question||i.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function Do(e){const{index:t,type:a,trainingData:r,ariaLabel:i,depth:s,renderPopup:l,completed:u,completedIds:c,selectedIds:d,tooltipText:m,useDescriptionTooltip:p=!1,onRemove:f,hideCheckBadge:y=!1,showTypeLabel:x=!1,onComplete:C,onSelect:h,onMore:_,countLabelOverride:g,size:A="square"}=e||{},{t:b}=xe.useTranslation(),[k,v]=o.useState(!1),w=o.useRef(null),[B,E]=o.useState(!1);o.useEffect(()=>{w.current?.matches(":hover")&&E(!0)},[]);const{playing:D,playingIndex:N,previewUrls:O,previewHover:P,setPreviewHover:G,previewBtnRef:L,handlePreview:M}=fv(r,a?.key),$=o.useCallback(()=>{h?h():v(!0)},[h]),Z=o.useCallback(()=>v(!1),[]),q=o.useCallback(()=>E(!0),[]),z=o.useCallback(()=>E(!1),[]),V=o.useCallback(()=>G(!0),[G]),R=o.useCallback(()=>G(!1),[G]),[H,W]=o.useState(null);o.useLayoutEffect(()=>{P&&W(L.current?.getBoundingClientRect()??null)},[P,L]);const[I,S]=o.useState(null);o.useLayoutEffect(()=>{B&&!k&&p&&S(w.current?.getBoundingClientRect()??null)},[B,k,p]);const j=o.useCallback(we=>{we.target===we.currentTarget&&(we.key==="Enter"||we.key===" ")&&(we.preventDefault(),$())},[$]),F=r||null,U=o.useMemo(()=>{if(!p)return null;const we=m?(Array.isArray(m)?m:[m]).filter(Boolean):null,Ue=we&&we.length>0?we:Cv(F);return Ue&&Ue.length>0?Ue:null},[p,m,F]),re=o.useCallback(we=>{we.stopPropagation(),f?.()},[f]),ne=o.useCallback(we=>we.stopPropagation(),[]),le=o.useCallback(we=>{typeof C=="function"&&C(we)},[C]),K=u||(c&&r?.id!=null?c.has(String(r.id)):!1),oe=!K&&(d!=null&&r?.id!=null?d.has(String(r.id)):!1);Nl("speechear.popup.close",Z);const Ae=Ii(),Y=`${a?.label||""} ${t+1}`,Q=F?.title||F?.name||Y;let me=a?.icon,De,be="",te="";try{const we=F?.category_0||F?.category_main_code||F?.category_main,Ue=F?.category_1||F?.category_sub_code||F?.category_sub,Be=Ae.find(je=>je.key===we);Be?.icon&&(me=Be.icon),!De&&Be?.color&&(De={"--t-item-fg":Be.color}),!De&&F?.iconColor&&(De={"--t-item-fg":F.iconColor}),be=Be?b(`topic.${Be.key}`,{defaultValue:Be.label||""}):"";try{const je=Be?.subs?.find(Se=>Se.key===Ue);te=je?b(`topic.sub.${je.key}`,{defaultValue:je.label||""}):""}catch{}}catch{}const ue=te?`${be} / ${te}`:be||a?.label||Q,fe=we=>b("training.countQuestions",{n:we,count:we}),ge=we=>b("training.countSentences",{n:we,count:we});let Ce="";try{if(F)if(a?.key==="LISTEN_IN_NOISE"){let we=0;Array.isArray(F.items)&&F.items.length>0?we=F.items.length:Array.isArray(F.sentences)&&F.sentences.length>0?we=F.sentences.length:F.sentences&&(we=1),Ce=ge(we)}else if(a?.key==="SHORT_STORY"){let we=1;Array.isArray(r?.items)?we=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?we=r.raw.items.length:Array.isArray(F?.questions)?we=F.questions.length:Array.isArray(F?.sentences)&&(we=F.sentences.length),Ce=fe(we)}else if(a?.key==="LONG_STORY"){let we=1;if(Array.isArray(F.items)&&F.items.length>0){const Ue=F.items.reduce((Be,je)=>{const Se=je.questionItems;return Array.isArray(Se)?Be+Se.length:Array.isArray(je.questions)?Be+je.questions.length:Be},0);we=Ue>0?Ue:F.items.length}else Array.isArray(F.questions)&&F.questions.length>0?we=F.questions.length:Array.isArray(F.sentences)&&F.sentences.length>0&&(we=F.sentences.length);Ce=fe(we)}else if(a?.key==="ORDERING_SENTENCE"){let we=1;Array.isArray(F.items)&&F.items.length>0?we=F.items.length:Array.isArray(F.sentences)&&F.sentences.length>0&&(we=F.sentences.length),Ce=ge(we)}else Array.isArray(F.items)&&(Ce=F.items.length>0?fe(F.items.length):"")}catch{}const $e=A==="row",He=A==="list"||$e,Te=A==="compact",Ie=A==="small",qe=Ie&&a?.key?TC().find(we=>we.key===a.key):void 0,mt=qe?Fi[qe.key]:void 0,ct=qe?mt?b(`trainingType.${mt}.title`,{defaultValue:qe.label}):qe.label??"":"",rt=x&&a?.label&&a.label!==String(Q)?String(a.label):Ie&&ct&&ct!==String(Q)?ct:"",ft=!!rt,ke=g!==void 0?g:Ce,Ve=[rt,typeof Q=="string"?Q:"",ke].map(we=>String(we??"").trim()).filter(Boolean).join(" ");return n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:w,className:`training-block-button${He?" training-block-button--list":""}${$e?" training-block-button--row":""}${Te?" training-block-button--compact":""}${Ie?" training-block-button--small":""}${K?" training-block-button--completed":""}${oe?" training-block-button--selected":""}${ft&&!Ie?" training-block-button--withType":""}${Ie&&!ft?" training-block-button--no-type-label":""}`,onClick:$,onPointerEnter:q,onPointerLeave:z,role:"button",tabIndex:0,onKeyDown:j,"aria-label":typeof i=="string"?i:Ve||void 0,title:!p&&m&&(Array.isArray(m)?m.filter(Boolean).join(`
|
|
853
853
|
`):m)||void 0,children:[n.jsxs("div",{className:"training-block-button__left",children:[x&&a?.label&&a.label!==String(Q)&&n.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Ie&&ct&&ct!==String(Q)&&n.jsx("span",{className:"training-block-button__type-label caption-2",children:ct}),n.jsx(ou,{icon:me,label:Q,tooltip:ue,wrapperStyle:De,iconSize:Ie||Te?"small":"medium"}),!y&&(K||oe)&&!(f&&B)&&n.jsx(At,{className:f?"training-block-button__check--removable":void 0,type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":K?b("training.completed","\uD6C8\uB828 \uC644\uB8CC"):b("training.selected","\uC120\uD0DD\uB428")}),f&&n.jsx(At,{className:`training-block-button__remove${B?" is-hover":""}`,type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":b("common.remove","\uC81C\uAC70"),onClick:re}),n.jsx("div",{className:`training-block-button__title ${Te?"body-3":Ie?"body-3b":"h3"}`,children:String(Q)}),n.jsxs("div",{className:"training-block-button__description",children:[ke?n.jsx("div",{className:`training-block-button__count ${Ie?"caption-2":"caption-1"}`,children:ke}):null,n.jsx("div",{className:"training-block-button__chevron",children:n.jsx(at,{icon:"chevron-right",label:b("training.next","\uB2E4\uC74C"),className:"training-block-button__chevron-icon",imgClassName:"training-block-button__chevron-icon-image",maskClassName:"training-block-button__chevron-icon-mask",svgClassName:"training-block-button__chevron-icon-svg",size:Ie?12:20})})]}),(He&&!$e||Ie)&&O.length>0&&n.jsx("div",{ref:L,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:ne,onPointerEnter:V,onPointerLeave:R,children:n.jsx(pe,{htmlType:"button",size:Ie?28:32,type:"dot",icon:D?"pause":"play",variant:Ie?"transparent-lightGray":"default",useBorder:!1,selected:D,ariaLabel:String(Q).trim()?D?b("training.stopFor",{name:Q,defaultValue:`${Q} \uC815\uC9C0`}):b("training.previewFor",{name:Q,defaultValue:`${Q} \uBBF8\uB9AC \uB4E3\uAE30`}):D?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:M})})]}),_&&n.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:we=>{we.stopPropagation(),_(we)},children:n.jsx(pe,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:String(Q).trim()?b("common.moreFor",{name:Q}):b("common.more","\uB354\uBCF4\uAE30")})})]}),P&&n.jsx(Bn,{anchorRect:H,text:D?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:R}),B&&!k&&p&&(U?n.jsx(Kn,{anchorRect:I,items:U,activeIndex:N,onClose:z}):F?.subTitle?n.jsx(Bn,{anchorRect:I,text:F.subTitle,offset:8,onClose:z}):null),k&&l&&l({trainingData:F,typeKey:a?.key??"",onClose:Z,onComplete:le,popupTitle:String(Q),popupSubTitle:a?.subTitle,depth:s!=null?String(s):void 0,popupIcon:me,popupIconTooltip:String(ue),popupWrapperStyle:De})]})}const su=200;function gv(e){return e.itemId?(RC()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function iu({plan:e,groups:t,anchorRect:a,offset:r=12,onClose:i}){const{t:s}=xe.useTranslation(),l=o.useMemo(()=>t?t.map((c,d)=>({key:c.key??c.type?.key??String(d),label:c.label,type:c.type,data:c.items??[]})).filter(c=>c.data.length>0):IC(s).map(c=>{const d=(e?.items??[]).filter(m=>m.trainingType===c.key);return{key:c.key,label:c.label,type:c,pickedCount:d.length,data:d.map(gv).filter(m=>m!=null)}}).filter(c=>c.pickedCount>0),[t,e?.items,s]);if(l.length===0)return null;const u=n.jsx("div",{className:"tooltip-training__box",children:n.jsx("div",{className:"tooltip-training__groups",children:l.flatMap(({key:c,label:d,type:m,data:p},f)=>[f>0?n.jsx("div",{className:"tooltip-training__divider"},`div-${c}`):null,n.jsxs("div",{className:"tooltip-training__section",children:[n.jsx("div",{className:"tooltip-training__section-header",children:n.jsx("span",{className:"tooltip-training__type-label body-3b",children:d})}),n.jsx("div",{className:"tooltip-training__items",children:p.map((y,x)=>n.jsx(Do,{index:x,type:m,trainingData:y,size:"compact",hideCheckBadge:!0},String(y.id??x)))})]},c)])})});return a?n.jsx(cn,{anchorRect:a,offset:r,onClose:i,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:s("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:u}):u}const bv=200;function yv({icon:e,count:t,title:a,plan:r,tooltip:i=!0,hoverAccent:s=!1,className:l="",onClick:u,onMouseEnter:c,onMouseLeave:d}){const m=!!u||!!c||i&&!!r,p=_e("count-tile",m&&"count-tile--interactive",m&&s&&"count-tile--accent",u&&"count-tile--clickable",l),f=o.useRef(null),[y,x]=o.useState(null),C=o.useRef(null),h=o.useRef(null),_=!!(y&&r&&i),g=o.useCallback(()=>{C.current&&(clearTimeout(C.current),C.current=null),h.current&&(clearTimeout(h.current),h.current=null)},[]),A=o.useCallback(()=>{g(),x(null)},[g]),b=o.useCallback(()=>{!i||!r||(g(),C.current=setTimeout(()=>{C.current=null,x(f.current?.getBoundingClientRect()??null)},su))},[i,r,g]),k=o.useCallback(()=>{C.current&&(clearTimeout(C.current),C.current=null),!h.current&&(h.current=setTimeout(()=>{h.current=null,x(null)},bv))},[]);return o.useEffect(()=>()=>{g()},[g]),o.useEffect(()=>{(!i||!r)&&A()},[i,r,A]),o.useEffect(()=>{if(!_)return;const v=B=>B instanceof Element&&(f.current?.contains(B)||!!B.closest(".tooltip-training")),w=B=>{v(B.target)?g():k()};return document.addEventListener("pointerover",w,!0),()=>document.removeEventListener("pointerover",w,!0)},[_,g,k]),n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:f,className:p,onClick:u?v=>{A(),u(v)}:void 0,onKeyDown:u?v=>{v.key!=="Enter"&&v.key!==" "||(v.preventDefault(),v.currentTarget.click())}:void 0,onPointerEnter:v=>{v.pointerType==="touch"||v.pointerType==="pen"?A():b()},onMouseEnter:c,onMouseLeave:v=>{k(),d?.(v)},role:u?"button":"img",tabIndex:u?0:void 0,"aria-label":`${a} ${t}`,children:[n.jsx(at,{icon:e,size:20,className:"count-tile__icon"}),n.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]}),y&&r&&n.jsx(iu,{plan:r,anchorRect:y,onClose:A})]})}let Ia=0,lu="",So="",Fa=0;function uu(){return cu(!1)}function vv(){return cu(!0)}function cu(e){const t=typeof document<"u";Ia===0&&t&&(lu=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(Fa===0&&(So=document.body.style.paddingRight),Fa++,document.body.style.paddingRight="0px"),Ia++;let a=!1;return()=>{a||(a=!0,Ia=Math.max(0,Ia-1),e&&t&&(Fa=Math.max(0,Fa-1),Fa===0&&(So?document.body.style.paddingRight=So:document.body.style.removeProperty("padding-right"))),Ia===0&&t&&(document.body.style.overflow=lu))}}function xv(){return n.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:n.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function _v({open:e,onClose:t,ariaLabel:a,title:r,children:i,size:s="md",closeOnBackdrop:l=!0,closeOnEscape:u=!0,showClose:c=!0,className:d,contentClassName:m}){const{t:p}=xe.useTranslation(),f=o.useId(),y=o.useRef(null),x=o.useCallback(()=>t(),[t]);o.useEffect(()=>{if(!e)return;const g=document.activeElement,A=uu(),b=y.current;return co(b,g),b?.focus(),()=>{A();const k=document.activeElement;(!k||k===document.body||b&&b.contains(k))&&po(g)?.focus?.()}},[e]);const C=o.useRef(x),h=o.useRef(u);o.useEffect(()=>{C.current=x,h.current=u}),o.useEffect(()=>{if(e)return Gn(()=>{h.current&&C.current()})},[e]);const _=o.useRef(!1);return lo(y,e),!e||typeof document>"u"?null:en.createPortal(n.jsx("div",{className:_e("dialog",d),onPointerDown:l?g=>{_.current=g.target===g.currentTarget}:void 0,onMouseDown:g=>{g.target===g.currentTarget&&g.preventDefault()},onClick:l?g=>{const A=_.current;_.current=!1,A&&g.target===g.currentTarget&&x()}:void 0,children:n.jsxs("div",{ref:y,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?f:void 0,tabIndex:-1,className:_e("dialog__surface",`dialog__surface--${s}`,m),onClick:g=>g.stopPropagation(),children:[r?n.jsx("div",{className:"dialog__header",children:n.jsx("h2",{id:f,className:"dialog__title h4b",children:r})}):null,c?n.jsx("button",{type:"button",className:"dialog__close","aria-label":p("common.close","\uB2EB\uAE30"),onClick:x,children:n.jsx(xv,{})}):null,n.jsx("div",{className:"dialog__body",children:i})]})}),document.body)}function wv({columns:e,rows:t,rowKey:a,title:r,toolbar:i,empty:s,loading:l,caption:u,className:c=""}){const{t:d}=xe.useTranslation(),m=!l&&t.length===0;return n.jsxs("div",{className:_e("board",c),children:[r||i?n.jsxs("div",{className:"board__head",children:[r?n.jsx("h2",{className:"board__title",children:r}):n.jsx("span",{}),i?n.jsx("div",{className:"board__toolbar",children:i}):null]}):null,n.jsxs("table",{className:"board__table",children:[u?n.jsx("caption",{className:"board__caption",children:u}):null,n.jsx("thead",{children:n.jsx("tr",{children:e.map(p=>n.jsx("th",{scope:"col",className:_e("board__th",`board__cell--${p.headerAlign??p.align??"left"}`),style:p.width?{width:p.width}:void 0,children:p.header},p.key))})}),n.jsx("tbody",{children:l?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:l})}):m?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:s??d("board.empty","\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):t.map((p,f)=>n.jsx("tr",{className:"board__row",children:e.map(y=>n.jsx("td",{className:_e("board__td",`board__cell--${y.align??"left"}`),children:y.render(p,f)},y.key))},a(p,f)))})]})]})}function Bv({name:e,role:t,photo:a,media:r,credentials:i,size:s=190,className:l=""}){return n.jsxs("div",{className:_e("person-card",l),children:[n.jsx("div",{className:"person-card__photo",style:{width:s,height:s},children:r??(a?n.jsx("img",{src:a,alt:t?`${e} ${t}`:e}):null)}),n.jsx("h3",{className:"person-card__name",children:e}),t?n.jsx("p",{className:"person-card__role",children:t}):null,i?.length?n.jsx("ul",{className:"person-card__credentials",children:i.map(u=>n.jsx("li",{children:u},u))}):null]})}function kv({groups:e,className:t=""}){return n.jsx("div",{className:_e("timeline",t),children:e.map(a=>n.jsxs("section",{className:"timeline__group",children:[n.jsx("h3",{className:"timeline__title",children:a.title}),n.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,i)=>n.jsxs("li",{className:"timeline__row",children:[r.label?n.jsx("span",{className:"timeline__label",children:r.label}):null,n.jsx("div",{className:"timeline__items",children:r.items.map((s,l)=>n.jsx("p",{children:s},l))})]},`${r.label??""}-${i}`))})]},a.title))})}function Av({title:e,kind:t,body:a,badge:r,badgeSrc:i,footer:s,width:l,className:u=""}){const c=r??(i?n.jsx("img",{src:i,alt:""}):null);return n.jsxs("div",{className:_e("publication-card",u),style:l?{width:l,flexShrink:0}:void 0,children:[c?n.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:c}):null,n.jsx("h3",{className:"publication-card__title",children:e}),t?n.jsx("p",{className:"publication-card__kind",children:t}):null,n.jsx("p",{className:"publication-card__body",children:a}),s?n.jsx("div",{className:"publication-card__footer",children:s}):null]})}function Nv({logo:e,alt:t,onDone:a,durationMs:r=3e3}){const i=Da(a);return o.useEffect(()=>{const s=setTimeout(()=>i.current?.(),r);return()=>clearTimeout(s)},[r,i]),n.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:n.jsx("img",{src:e,alt:t,className:"splash-logo__image"})})}function Ev({eyebrow:e,eyebrowIndex:t,title:a,description:r,level:i=2,tone:s="dark",className:l=""}){const u=i===1?"h1":"h2";return n.jsxs("div",{className:_e("section-header",`section-header--${s}`,l),children:[e?n.jsxs("p",{className:"section-header__eyebrow",children:[t?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"section-header__index",children:t}),n.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?n.jsx(u,{className:"section-header__title",children:a}):null,r?n.jsx("div",{className:"section-header__description",children:r}):null]})}function Dv({items:e,className:t=""}){return n.jsx("ul",{className:_e("company-meta",t),children:e.map((a,r)=>n.jsxs("li",{className:"company-meta__item",children:[r>0?n.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function du(e){return typeof e=="string"?e:e.label}function pu({value:e,onChange:t,suggestions:a,openOnFocus:r=!1,filterSuggestions:i,onSelectSuggestion:s,autoActiveFirst:l=!1}){const u=o.useId(),[c,d]=o.useState(!1),[m,p]=o.useState(-1),f=o.useRef(null),y=o.useMemo(()=>{if(!a.length)return[];const N=e??"";return i===!1?a:N?typeof i=="function"?i(a,N):a.filter(O=>du(O).toLowerCase().includes(N.toLowerCase())):r?a:[]},[a,e,r,i]),[x,C]=o.useState(!1),h=o.useRef([]),_=x&&y.length===0?h.current:y;o.useEffect(()=>{_.length&&(h.current=_)},[_]);const g=o.useCallback(()=>C(!0),[]),A=o.useCallback(()=>C(!1),[]),b=l?0:-1;o.useEffect(()=>{c||p(b)},[c,b]),o.useEffect(()=>()=>{f.current&&clearTimeout(f.current)},[]);const k=m<_.length?m:b<_.length?b:-1,v=o.useCallback(N=>{s?s(N):t?.(du(N)),d(!1)},[t,s]),w=o.useCallback(()=>d(!0),[]),B=o.useCallback(()=>{d(!0),p(b)},[b]),E=o.useCallback(()=>{f.current=setTimeout(()=>d(!1),120)},[]),D=o.useCallback(N=>{N.nativeEvent.isComposing||N.keyCode===229||(N.key==="ArrowDown"?(N.preventDefault(),d(!0),p(O=>Math.min(_.length-1,(O<_.length?O:b)+1))):N.key==="ArrowUp"?(N.preventDefault(),p(O=>Math.max(b,(O<_.length?O:_.length)-1))):N.key==="Enter"?k>=0&&v(_[k]):N.key==="Escape"&&c&&(N.preventDefault(),d(!1)))},[_,k,c,v,b]);return{listId:u,open:c,activeIdx:k,filtered:_,handleFocus:w,handleBlur:E,handleInput:B,handleKeyDown:D,handleSelect:v,handleCompositionStart:g,handleCompositionEnd:A}}const To=typeof window<"u"?o.useLayoutEffect:o.useEffect;function Xn(e){const{value:t,defaultValue:a,name:r,inputRef:i,onChange:s,label:l,ariaLabel:u,ariaDescribedBy:c,required:d,placeholder:m,ghostText:p,ghostHint:f,type:y="text",disabled:x=!1,readOnly:C=!1,error:h,helperText:_,maxLength:g,size:A=48,variant:b="input",fullWidth:k=!1,newline:v=!1,multiline:w=!1,rows:B=3,leftIcon:E,rightIcon:D,clearable:N=!1,list:O,showCount:P=!0,className:G="",onFocus:L,onBlur:M,onKeyDown:$,onEnter:Z,inputMode:q,autoComplete:z,autoFocus:V,suggestions:R,filterSuggestions:H,onSelectSuggestion:W,autoActiveFirst:I,openOnFocus:S=!1}=e,j=C||x?void 0:R,{t:F}=xe.useTranslation(),U=o.useId();!l&&!u&&St(`TextField:unnamed:${U}`,"[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 re=`tf-${U}`,ne=`tf-helper-${U}`,le=o.useRef(null),K=pu({value:t??"",onChange:s,suggestions:j??[],openOnFocus:S,filterSuggestions:H,onSelectSuggestion:W,autoActiveFirst:I}),oe=!!j&&K.open&&K.filtered.length>0,Ae=o.useRef(null),[Y,Q]=o.useState(null),me=o.useCallback(()=>{const ke=Ae.current;if(!ke||typeof window>"u")return;const Ve=ke.getBoundingClientRect(),we=230,Ue=window.innerHeight-Ve.bottom<we+8&&Ve.top>we+8;Q({position:"fixed",left:Ve.left,width:Ve.width,...Ue?{bottom:window.innerHeight-Ve.top+8}:{top:Ve.bottom+8},zIndex:ja(ke)})},[]);To(()=>{if(!oe)return;me();let ke=null;const Ve=()=>{if(typeof requestAnimationFrame>"u"){me();return}ke===null&&(ke=requestAnimationFrame(()=>{ke=null,me()}))},we=Ue=>{const Be=Ue.target;Be&&Be.nodeType===1&&Be.closest?.(".text-field__suggestions")||Ve()};return window.addEventListener("scroll",we,!0),window.addEventListener("resize",Ve),()=>{ke!==null&&cancelAnimationFrame(ke),window.removeEventListener("scroll",we,!0),window.removeEventListener("resize",Ve)}},[oe,me]);const De=o.useCallback(ke=>{le.current=ke,typeof i=="function"?i(ke):i&&(i.current=ke)},[i]),be=p?`${p}${f??F("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)")}`:m,te=t!==void 0,ue=te&&y==="password",[fe,ge]=o.useState((a??"").length),Ce=te?(t??"").length:fe,$e=o.useRef(t);To(()=>{$e.current=t}),o.useEffect(()=>{const ke=le.current;if(!ue||!ke)return;const Ve=t??"";ke.value!==Ve&&(ke.value=Ve)},[ue,t]),o.useEffect(()=>{if(!v||!le.current)return;const ke=le.current;ke.style.height="",ke.scrollHeight>ke.clientHeight&&(ke.style.height=`${ke.scrollHeight}px`)},[t,fe,v]);const He=g!=null&&Ce>g,Te=A===32?16:20,Ie=_e("text-field",`text-field--s${A}`,b==="display"?"text-field--display":"",k?"text-field--full-width":"",x?"text-field--disabled":"",C?"text-field--readonly":"",h?"text-field--error":"",E?"text-field--has-left-icon":"",D||N?"text-field--has-right-icon":"",G),qe={id:re,...ue?{}:te?{value:t}:{defaultValue:a},ref:De,placeholder:be,name:r,disabled:x,readOnly:C,autoFocus:V,maxLength:g,list:O,inputMode:q,autoComplete:z,"aria-label":!l&&u?u:void 0,"aria-required":d,"aria-invalid":!!h,"aria-describedby":[_||h?ne:null,c].filter(Boolean).join(" ")||void 0,role:j?"combobox":void 0,"aria-autocomplete":j?"list":void 0,"aria-haspopup":j?"listbox":void 0,"aria-expanded":j?oe:void 0,"aria-controls":oe?K.listId:void 0,"aria-activedescendant":oe&&K.activeIdx>=0?`${K.listId}-option-${K.activeIdx}`:void 0,onChange:ke=>{const Ve=ke.target;te||ge(Ve.value.length),s?.(Ve.value),j&&K.handleInput(),ue&&queueMicrotask(()=>{const we=$e.current??"";Ve.value!==we&&(Ve.value=we)})},onCompositionStart:j?K.handleCompositionStart:void 0,onCompositionEnd:j?K.handleCompositionEnd:void 0,onFocus:(ke=>{L?.(ke),j&&K.handleFocus()}),onBlur:(ke=>{M?.(ke),j&&K.handleBlur()}),onKeyDown:(ke=>{const Ve=(ke.key==="Tab"&&!ke.shiftKey||ke.key===" ")&&!ke.nativeEvent.isComposing;if(p&&Ve&&!C&&!x&&!(ke.currentTarget.value??"").trim()){ke.preventDefault();const we=ke.currentTarget;te||(we.value=p,ge(p.length)),s?.(p);return}j&&ke.key==="Enter"&&!ke.nativeEvent.isComposing&&K.activeIdx>=0?ke.preventDefault():Z&&ke.key==="Enter"&&!ke.nativeEvent.isComposing&&(ke.preventDefault(),Z()),$?.(ke),j&&K.handleKeyDown(ke)})},mt=N&&!x&&!C&&Ce>0,ct=()=>v?n.jsx("textarea",{...qe,className:"text-field__input text-field__input--auto body-2",rows:1}):w?n.jsx("textarea",{...qe,className:"text-field__input text-field__input--textarea body-2",rows:B}):n.jsx("input",{...qe,type:y,className:"text-field__input body-2"}),rt=b==="display"&&!v&&!w&&!!be,ft=()=>n.jsxs(n.Fragment,{children:[ct(),rt&&n.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:be})]});return n.jsxs("div",{ref:Ae,className:Ie,children:[l&&n.jsxs("label",{htmlFor:re,className:"text-field__label caption-1",children:[l,d&&n.jsx("span",{className:"text-field__required",children:"*"})]}),n.jsxs("div",{className:"text-field__wrap",children:[E&&n.jsx("span",{className:"text-field__icon text-field__icon--left",children:n.jsx(at,{icon:E,label:"",className:"",svgClassName:"text-field__icon-svg",size:Te})}),ft(),g!=null&&P&&n.jsxs("span",{className:`text-field__count caption-2${He?" text-field__count--over":""}`,children:[Ce,"/",g]}),mt&&n.jsx(pe,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:F("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:ke=>{ke.preventDefault()},onClick:()=>{!te&&le.current&&(le.current.value="",ge(0)),s?.("")},tabIndex:-1}),D&&!mt&&n.jsx("span",{className:"text-field__icon text-field__icon--right",children:n.jsx(at,{icon:D,label:"",className:"",svgClassName:"text-field__icon-svg",size:Te})})]}),!!j&&n.jsx("span",{className:"text-field__status",role:"status","aria-live":"polite",children:K.open&&(t??"").length>0&&K.filtered.length===0?F("common.noMatches","\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"):""}),oe&&(typeof document>"u"?null:en.createPortal(n.jsx("ul",{id:K.listId,className:"text-field__suggestions",role:"listbox",style:Y??{position:"fixed",visibility:"hidden"},"data-tooltip-ignore":!0,children:K.filtered.map((ke,Ve)=>n.jsx("li",{id:`${K.listId}-option-${Ve}`,role:"option","aria-selected":Ve===K.activeIdx,className:`text-field__suggestion body-2${Ve===K.activeIdx?" is-active":""}`,onMouseDown:we=>we.preventDefault(),onClick:()=>{K.handleSelect(ke),le.current?.focus()},children:typeof ke=="string"?ke:n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"text-field__suggestion-label",children:ke.label}),ke.hint&&n.jsx("span",{className:"text-field__suggestion-hint caption-1",children:ke.hint})]})},typeof ke=="string"?`${ke}-${Ve}`:ke.id))}),document.body)),(_||h)&&n.jsx("div",{className:"text-field__footer",children:n.jsx("span",{id:ne,className:"text-field__helper caption-1",role:h?"alert":void 0,children:h||_})})]})}function pn({options:e,value:t,onChange:a,placeholder:r,disabled:i=!1,block:s=!1,size:l=48,error:u=!1,className:c="",ariaLabel:d,ariaDescribedBy:m}){const{t:p}=xe.useTranslation(),f=r??p("dropdown.placeholder","\uC120\uD0DD"),y=o.useId(),x=o.useId(),C=o.useRef(null),h=o.useCallback((L,M)=>{const $=window.innerHeight-L.bottom<260&&L.top>260;return{position:"fixed",left:L.left,minWidth:L.width,...$?{bottom:window.innerHeight-L.top+6}:{top:L.bottom+6},zIndex:ja(M)}},[]),{open:_,setOpen:g,toggle:A,style:b,triggerRef:k,menuRef:v}=Ma({computeStyle:h}),[w,B]=o.useState(-1),E=o.useCallback(()=>B(-1),[]),D=e.find(L=>L.value===t);o.useEffect(()=>{if(_){const L=e.findIndex(M=>M.value===t);B(L>=0?L:e.length?0:-1),requestAnimationFrame(()=>{const M=v.current;if(!M)return;const $=M.querySelectorAll(".dropdown__option")[L];$&&(M.scrollTop=Math.max(0,$.offsetTop-M.clientHeight/2+$.clientHeight/2))})}},[_]),o.useEffect(()=>{_&&B(L=>{if(L>=0&&L<e.length)return L;const M=e.findIndex($=>$.value===t);return M>=0?M:e.length?0:-1})},[_,e.length]);const N=o.useCallback(()=>{i||A()},[i,A]),O=o.useCallback(L=>{L.disabled||i||(L.value!==t&&a?.(L.value),g(!1))},[a,g,i,t]);o.useEffect(()=>{i&&g(!1)},[i,g]);const P=o.useCallback(L=>{if(!i){if(!_){(L.key==="Enter"||L.key===" "||L.key==="ArrowDown")&&(L.preventDefault(),g(!0));return}if(L.key==="Escape"){L.preventDefault(),g(!1);return}L.key==="ArrowDown"?(L.preventDefault(),B(M=>{let $=M+1;for(;$<e.length&&e[$].disabled;)$++;return $<e.length?$:M})):L.key==="ArrowUp"?(L.preventDefault(),B(M=>{let $=M-1;for(;$>=0&&e[$].disabled;)$--;return $>=0?$:M})):(L.key==="Enter"||L.key===" ")&&(L.preventDefault(),e[w]?O(e[w]):g(!1))}},[i,_,e,w,O,g]),G=_?n.jsx("div",{ref:v,id:y,className:"dropdown__menu","data-tooltip-ignore":!0,role:"listbox",style:b,onMouseLeave:E,onMouseDown:L=>L.preventDefault(),children:e.map((L,M)=>n.jsxs("button",{id:`${y}-option-${M}`,type:"button",role:"option","aria-selected":L.value===t,className:_e("dropdown__option body-2",L.value===t?"dropdown__option--active":"",M===w?"dropdown__option--active":"",L.disabled?"dropdown__option--disabled":""),onMouseDown:$=>$.preventDefault(),onClick:()=>O(L),onMouseEnter:()=>B(M),disabled:L.disabled,children:[n.jsx("span",{className:"dropdown__option-check",children:L.value===t&&n.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),L.label]},L.value))}):null;return n.jsxs("div",{ref:C,className:_e("dropdown",`dropdown--s${l}`,_?"dropdown--open":"",s?"dropdown--block":"",u?"dropdown--error":"",c),onKeyDown:P,children:[n.jsxs("button",{ref:k,type:"button",className:"dropdown__trigger",role:"combobox","aria-haspopup":"listbox","aria-expanded":_,"aria-controls":_?y:void 0,"aria-activedescendant":_&&w>=0?`${y}-option-${w}`:void 0,"aria-label":d,"aria-describedby":[d&&D?x:"",m??""].filter(Boolean).join(" ")||void 0,"aria-invalid":u||void 0,disabled:i,onClick:N,onBlur:L=>{_&&!v.current?.contains(L.relatedTarget)&&g(!1)},children:[n.jsx("span",{id:x,className:`dropdown__trigger-label body-2${D?"":" dropdown__trigger-label--placeholder"}`,children:D?D.label:f}),n.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&en.createPortal(G,C.current?.closest(".ihabdevteam-core-scope")??document.body)]})}function dr({page:e,totalPages:t,onChange:a,prevLabel:r,nextLabel:i,className:s=""}){const{t:l}=xe.useTranslation(),u=r??l("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),c=i??l("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=Math.max(1,t),m=()=>a(Math.max(1,Math.min(d,e-1))),p=()=>a(Math.min(d,e+1));return n.jsxs("div",{className:_e("pagination",s),children:[n.jsx(pe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:u,disabled:e<=1,onClick:m}),n.jsxs("span",{className:"pagination__info body-3","aria-live":"polite","aria-atomic":"true",children:[Math.min(Math.max(1,e),d)," / ",d]}),n.jsx(pe,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:c,disabled:e>=t,onClick:p})]})}const Oa=new Map;function gn(e){const{t}=xe.useTranslation(),{options:a=[],value:r=a.find(b=>!b.disabled)?.key??a[0]?.key,onChange:i=b=>{},className:s="",size:l=40,shape:u="pill",useBG:c=!0,fullWidth:d=!1,minButtonWidth:m,ariaLabel:p}=e||{},f=o.useRef(null),y=a.filter(b=>!b.disabled),x=o.useId(),C=a.map(b=>b.key).join("\xB7");o.useEffect(()=>{if(!(!Ln||p!=null&&p!=="")){if(Oa.set(x,C||"(\uBCF4\uAE30 \uC5C6\uC74C)"),Oa.size>1){const b=[...Oa.values()].sort();St(`segmented-control-unnamed:${b.join("|")}`,`[ihab/SegmentedControl] \uC774\uB984 \uC5C6\uB294 \uB77C\uB514\uC624\uADF8\uB8F9\uC774 \uD55C \uD654\uBA74\uC5D0 ${Oa.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): ${b.join(" / ")}`)}return()=>{Oa.delete(x)}}},[p,C,x]);const h=b=>{if(!y.length)return;const k=Math.max(0,y.findIndex(w=>w.key===r)),v=b==="first"?y[0]:b==="last"?y[y.length-1]:y[(k+b+y.length)%y.length];v&&(i(v.key),Array.from(f.current?.querySelectorAll("[data-segkey]")??[]).find(w=>w.dataset.segkey===v.key)?.focus())},_=b=>{switch(b.key){case"ArrowRight":case"ArrowDown":h(1);break;case"ArrowLeft":case"ArrowUp":h(-1);break;case"Home":h("first");break;case"End":h("last");break;default:return}b.preventDefault()},g=b=>{const k=v=>typeof v=="string"||typeof v=="number";if(!(!k(b.label)||b.count==null||b.count===!1||!k(b.count)))return`${b.label}, ${b.count}`},A=y.some(b=>b.key===r)?r:y[0]?.key;return n.jsx("div",{ref:f,onKeyDown:_,className:_e("segmented-control",`segmented-control--${u}`,`segmented-control--${l}`,d&&"segmented-control--full",!c&&"segmented-control--no-bg",m!=null&&"segmented-control--min",s),style:m!=null?{"--segmented-min-button-w":`${m}px`}:void 0,role:"radiogroup","aria-label":p??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(b=>n.jsx(pe,{htmlType:"button",role:"radio","aria-checked":b.key===r,"data-segkey":b.key,tabIndex:b.key===A?0:-1,label:b.label,count:b.count,ariaLabel:g(b),disabled:b.disabled,className:b.key===r?"is-selected":"",onClick:()=>{b.disabled||i(b.key)},size:l,shape:u,useBorder:!1,useBG:!1},b.key))})}function jo({count:e,search:t,segment:a,filters:r,pageSize:i,pagination:s,actions:l,className:u}){const{t:c}=xe.useTranslation(),d=e!=null&&n.jsxs("p",{className:"toolbar__count body-1",role:"status","aria-atomic":"true",children:[e.prefix??c("common.totalPrefix","\uCD1D "),n.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),m=!!(t||r?.length||i||s||l);return n.jsxs("div",{className:_e("toolbar",u),children:[n.jsxs("div",{className:"toolbar__row",children:[d,a&&(Array.isArray(a)?a:[a]).map((p,f)=>n.jsx(gn,{size:40,...p},p.ariaLabel??f))]}),m&&n.jsx("div",{className:"toolbar__row",children:n.jsxs("div",{className:"toolbar__row-end",children:[t&&n.jsx(Xn,{className:"toolbar__search",size:40,value:t.value,onChange:t.onChange,placeholder:t.placeholder??c("common.search","\uAC80\uC0C9"),ariaLabel:t.placeholder??c("common.search","\uAC80\uC0C9"),autoFocus:t.autoFocus,clearable:!0}),r?.map((p,f)=>n.jsx(pn,{size:40,options:p.options,value:p.value,onChange:p.onChange,ariaLabel:p.ariaLabel},f)),(i||s)&&n.jsxs("div",{className:"toolbar__pager",children:[i&&n.jsx(pn,{size:40,options:i.options,value:i.value,onChange:i.onChange,ariaLabel:i.ariaLabel??c("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),s&&n.jsx(dr,{page:s.page,totalPages:s.total,onChange:s.onChange,prevLabel:s.prevLabel,nextLabel:s.nextLabel})]}),l]})})]})}function mu(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(mu).join(""):""}function Sv(e){let t=e.replace(/\r\n/g,`
|
|
854
854
|
`).replace(/\r/g,`
|