@ihabdevteam/core 0.352.0 → 0.354.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 +77 -0
- package/dist/components.cjs.js +1 -1
- package/dist/components.esm.css +1 -1
- package/dist/hooks.cjs.js +1 -1
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +81 -81
- package/dist/ihabdevteam-core.d.ts +1 -1
- package/dist/packages/core/src/components/NotifyTextPreview.css +21 -9
- 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
|
@@ -849,7 +849,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
849
849
|
\uC2E0\uB8B0\uB97C \uC313\uACE0
|
|
850
850
|
\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"},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"},Ng={timeHM:"{{h}}\uC2DC {{m}}\uBD84",timeH:"{{h}}\uC2DC"},Eg={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"},Dg={clearAriaLabel:"\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"},Sg={ariaLabel:"\uC120\uD0DD \uD0ED"},jg={ariaLabel:"\uD0ED"},Tg={dragPrompt:"\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC",browseButton:"\uD30C\uC77C \uC120\uD0DD",removeAriaLabel:"{{name}} \uC81C\uAC70"},Mg={ariaLabel:"\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0"},Lg={relativeDay:{today:"\uC624\uB298",yesterday:"\uC5B4\uC81C",daysAgo:"{{n}}\uC77C \uC804"}},$g={weekly:{title:"\uC8FC\uAC04 \uD6C8\uB828 \uD604\uD669",daily:"\uC624\uB298\uC758 \uB4E3\uAE30"},homework:{title:"\uC219\uC81C \uC9C4\uD589\uD604\uD669",totalRate:"\uC804\uCCB4 \uC644\uB8CC\uC728",done:"\uC644\uB8CC"},today:{tooltipTotal:"\uC804\uCCB4",tooltipDone:"\uC644\uB8CC"},visit:{title:"\uBC29\uBB38 \uC5F0\uB3D9 \uAE30\uB85D"},detail:"\uC0C1\uC138\uBCF4\uAE30",detailFor:"{{name}} \uC0C1\uC138\uBCF4\uAE30"},Rg={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"}},Pg={steps:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"},Ig={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.",runs:"{{count}}\uD310"},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={viewWords:"\uB0B1\uB9D0"},zg={ariaLabel:"\uBC30\uB108",dotAriaLabel:"{{count}}\uAC1C \uC911 {{index}}\uBC88\uC9F8 \uBC30\uB108"},Wg={chooseDate:"\uB0A0\uC9DC \uC120\uD0DD",selectYear:"\uC5F0 \uC120\uD0DD",selectMonth:"\uC6D4 \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={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:QC,calendar:eg,passCard:tg,rating:ng,colorPicker:ag,dropdown:rg,accordion:og,header:sg,nav:lg,settings:ig,usage:ug,account:cg,training:dg,customers:pg,payment:hg,coupons:mg,visits:fg,trainingType:Cg,myWordTable:gg,keyWords:bg,wordTable:yg,wordSearch:vg,wordPrint:xg,topic:_g,device:wg,manager:Bg,wordPairs:kg,footer:Ag,date:Ng,wordData:Eg,textField:Dg,segmentedControl:Sg,tabs:jg,fileUpload:Tg,avatar:Mg,myHomework:Lg,trainingStatus:$g,store: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={starLabel:"Select star {{n}}",valueLabel:"{{value}} out of {{max}}",groupLabel:"Rating"},ob={selected:"selected"},sb={placeholder:"Select"},lb={collapse:"Collapse",expand:"Expand"},ib={biArea:"BI area",biSymbol:"BI symbol",logoMalgwi:"Malgwi logo",logoManager:"Malgwi Manager logo",menuOpen:"Open menu",utilMenu:"Utility menu",menuClose:"Close menu"},ub={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"},cb={cache:{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"}}}},db={couponButton:"Enter Coupon"},pb={security:{password:{currentRequired:"Enter your current password.",newRequired:"Enter a new password.",mismatch:"The new passwords do not match.",changed:"Your password has been changed."}}},hb={settings:"Settings",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",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",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",noContent:"(No content)"},up:"Move up",down:"Move down",prev:"Previous",listenLabel:"Listen",sourcePlay:"Play source {{n}}",listen:"Listen",audioStatus:{synthesizing:"Preparing the sound\u2026",preparing:"Preparing sound\u2026"}},mb={totalCount:" customers",loadError:"Failed to load list",device:{title:"Hearing Devices",addButton:"Add device",historyEmpty:"No device history registered",wearing:" in use",notRegistered:"Not registered",unit:"",wearingNow:"In use",wear:"Wear",unwear:"Remove",wornSince:"Since {{date}}",historyTitle:"Hearing device history"},schedule:{registerTitle:" Register Schedule"},visitHistory:{empty:"No visit history yet",popupTitle:" Visit History",registerTitle:" Register Visit"},moreItems:"more",viewAll:"View All",duration:{minSec:"{{m}}m {{s}}s",min:"{{m}}m",sec:"{{s}}s"}},fb={plan:{recommendedFor:"Recommended for",features:"Key Features",freePrice:"Free",contact:"Contact Us",tierFallback:"Plan",openPromo:"Launch offer"},products:{mgrEnterprise:{tier:{price:"Contact us"}}}},Cb={input:{label:"Coupon code",placeholder:"Enter coupon code"},applyButton:"Apply"},gb={showN:"Show {{n}}"},bb={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."}},yb={newBadge:"Newly created",publishedBadge:"Published",sharedBadge:"Shared"},vb={title:"Key Words",empty:"No key words available."},xb={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",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"}},_b={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"},wb={clearAllSelection:"Clear All Selections",divLine:"Contrast Line",removePair:"Remove pair",removeWord:"Remove word"},Bb={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"}},kb={direction:{left:"L",right:"R",label:"Side"},wornDate:"Date Worn",deviceType:"Device Type",brand:"Brand",fitType:"Fit Type",productName:"Product Name",addNew:"Add New Device",selectFromList:"Select from List",removeDevice:"Remove",type:{hearingAid:"Hearing Aid",cochlearImplant:"Cochlear Implant",other:"Other"}},Ab={stat:{totalCustomers:"Total Customers",monthlyVisits:"This Month's Visits"},chart:{visitDetail:"Visit Details",trainingDetail:"Training Details",weekly:"Weekly",periodMonth:"Month",periodWeek:"Week",weeklyPrefix:"Weekly",monthlyPrefix:"Monthly",visit:"Visits",reservation:"Reservations",trainingDone:"Completed",trainingInProgress:"In Progress",weekRange:"{{start}}\u2013{{end}}",week:"W{{n}}"}},Nb={phonemeSelect:{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"},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."]},Eb={lead:`IHAB builds trust
|
|
851
851
|
through sound
|
|
852
|
-
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"},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"},Db={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},Sb={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"},jb={clearAriaLabel:"Clear input"},Tb={ariaLabel:"Select tab"},Mb={ariaLabel:"Tabs"},Lb={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},$b={ariaLabel:"User avatar"},Rb={relativeDay:{today:"Today",yesterday:"Yesterday",daysAgo:"{{n}}d ago"}},Pb={weekly:{title:"Weekly Training",daily:"Daily Listening"},homework:{title:"Homework Progress",totalRate:"Overall rate",done:"Done"},today:{tooltipTotal:"Total",tooltipDone:"Done"},visit:{title:"Linked Visit Records"},detail:"Details",detailFor:"{{name}} details"},Ib={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"}},Fb={steps:"Step {{current}} of {{total}}"},Ob={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.",runs_one:"{{count}} run",runs_other:"{{count}} runs"},zb={resetColumns:"Reset column widths",scrollRegion:"Horizontally scrollable table",rowActionHint:"Press a row to open its details"},Wb={viewWords:"Words"},Hb={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},Vb={chooseDate:"Choose a date",selectYear:"Select year",selectMonth:"Select month"},qb={previewRegion:"Report preview \u2014 scrollable sideways"},Ub={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},Gb={place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},Kb={clearSelection:"Clear selection"},Yb={showResult:"Show {{type}} result"},Zb={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},Xb={loading:"Loading"},Jb={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},Qb={ariaLabel:"Breadcrumb"},ey={empty:"No items yet."},ty={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"},ny={common:tb,calendar:nb,passCard:ab,rating:rb,colorPicker:ob,dropdown:sb,accordion:lb,header:ib,nav:ub,settings:cb,usage:db,account:pb,training:hb,customers:mb,payment:fb,coupons:Cb,visits:gb,trainingType:bb,myWordTable:yb,keyWords:vb,wordTable:xb,wordSearch:_b,wordPrint:wb,topic:Bb,device:kb,manager:Ab,wordPairs:Nb,footer:Eb,date:Db,wordData:Sb,textField:jb,segmentedControl:Tb,tabs:Mb,fileUpload:Lb,avatar:$b,myHomework:Rb,trainingStatus:Pb,store:Ib,progress:Fb,trainingMiss:Ob,table:zb,wordScore:Wb,topBanner:Hb,datePicker:Vb,report:qb,tooltip:Ub,phonemeProfile:Gb,bulkBar:Kb,debug:Yb,badge:Zb,loader:Xb,soundCompass:Jb,breadcrumb:Qb,board:ey,promoBannerBg:ty};const ay="0.352.0",ry=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],co="ko",oy="ihab_display_language";function ql(){if(typeof window>"u")return co;try{const e=localStorage.getItem(oy);if(e&&ry.some(t=>t.code===e))return e}catch{}return co}function Ul(e){try{document.documentElement.lang=e}catch{}}Rt.on("languageChanged",Ul),Ul(ql()),Rt.use(xe.initReactI18next).init({resources:{ko:{translation:eb},en:{translation:ny}},lng:ql(),fallbackLng:co,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const sy=new Map;try{Rt.store?.on?.("added",()=>sy.clear())}catch{}let or=null,Gl=null,Kl=null;function ly(){const e=Ll();if(e&&e.entries.length>0){const t=yC();if(or&&Gl===e&&Kl===t)return or;const a=new Set,r=[];for(const l of e.entries)!l.word||a.has(l.word)||(a.add(l.word),r.push({w:l.word,s:l.syllables,p:t?.[l.word]?[...t[l.word].cho??[],...t[l.word].jung??[],...t[l.word].jong??[]]:[],pron:l.pronunciation||l.word,grade:l.grade}));return or=r,Gl=e,Kl=t,or}return[]}new Proxy([],{get(e,t){const a=ly(),r=a[t];return typeof r=="function"?r.bind(a):r}});function iy(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 uy(e){if(typeof window>"u")return"";const t=(a,r)=>{typeof r.attrValue=="string"&&iy(r.attrValue)&&(r.keepAttr=!1)};oa.addHook("uponSanitizeAttribute",t);try{return oa.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{oa.removeHook("uponSanitizeAttribute",t)}}function cy(e){const[t,a]=o.useState(null),[r,l]=o.useState(null),[s,i]=o.useState(null),[u,c]=o.useState(null),[d,h]=o.useState(null);return o.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),l(null),i(null),c(null);return}const p=e.split("/").pop();let f=e;p&&(e.startsWith("/")?f=Yr(e):/^(Logo|Symbol)/i.test(p)?f=Yr(`logo/${p}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),f=e)),i(null),c(null),a(e),l(f)},[e]),o.useEffect(()=>{if(!r)return;let p=!1;async function f(){try{let b=await fetch(r);b.ok||(b=await fetch(r));const x=b.headers.get("content-type")||"";if(p)return;if(x.includes("svg")){i("mask");return}if(x.startsWith("image/")){i("img");return}const C=await fetch(r);if(!C.ok)throw new Error("not ok");const m=await C.text();if(p)return;if(/^\s*<svg[\s>]/i.test(m)){const _=uy(m);if(!_){i("none");return}c(_),i("inline");return}i("none")}catch{p||i("none")}}return f(),()=>{p=!0}},[r]),o.useEffect(()=>{let p=!1,f=null;return s==="mask"&&r&&fetch(r).then(b=>{if(!b.ok)throw new Error("fetch failed");return b.blob()}).then(b=>{p||(f=URL.createObjectURL(b),h(f))}).catch(()=>{p||i("img")}),()=>{p=!0,f&&URL.revokeObjectURL(f),h(null)}},[s,r]),t===e?{iconToUse:r,mode:s,svgText:u,blobUrl:d}:{iconToUse:null,mode:null,svgText:null,blobUrl:null}}function et(e){const{icon:t,label:a,className:r,imgClassName:l,maskClassName:s,svgClassName:i,wrapperStyle:u,size:c}=e||{},d=r??"iconRenderer-icon",h=l??"iconRenderer-icon-image",p=s??"iconRenderer-icon-mask",f=i??"iconRenderer-icon-svg",b=typeof t=="string"?t:null,x=J1(b),{iconToUse:C,mode:m,svgText:_,blobUrl:g}=cy(b),A=(k,E={})=>n.jsx("span",{className:d,style:u,...E,children:k}),y=typeof c=="number"?{width:c,height:c,objectFit:"contain"}:null,w=(k,E={})=>n.jsx("img",{src:k,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:h,...E,style:y?{...E.style,...y}: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(m==="mask"){const k={"--icon-url":g?`url(${g})`:`url(${C})`,...typeof c=="number"?{"--icon-size":`${c}px`}:null};return A(n.jsx("span",{className:p,style:k}),{"aria-hidden":"true"})}return m==="img"?A(w(C,{onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):m==="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 w(Yr(t),{style:u,onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}});const v=typeof c=="number"?c:20,B=`<svg width="${v}" height="${v}" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="18" height="18" rx="2" ry="2" style="fill:none;stroke:currentColor;stroke-width:2"/></svg>`;return A(n.jsx("span",{className:f,dangerouslySetInnerHTML:{__html:B}}),{"aria-hidden":"true"})}function Yl(e){const[t,a]=o.useState(!1),r=o.useRef(!1),l=o.useRef(!0);o.useEffect(()=>(l.current=!0,()=>{l.current=!1}),[]);const s=o.useCallback(()=>{if(!e||r.current)return;const i=e();if(i&&typeof i.then=="function"){r.current=!0,a(!0);const u=()=>{r.current=!1,l.current&&a(!1)};i.then(u,u)}},[e]);return{pending:t,press:s}}function dy({icon:e,title:t,message:a,action:r,className:l}){const{pending:s,press:i}=Yl(r?.onClick);return n.jsxs("div",{className:_e("empty-state",l),children:[e&&n.jsx(et,{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:i,disabled:s,"aria-busy":s||void 0,children:[r.icon&&n.jsx(et,{icon:r.icon,className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:r.label})]})]})}function py({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:l,className:s}){const{t:i}=xe.useTranslation(),{pending:u,press:c}=Yl(r);return n.jsxs("div",{className:_e("empty-state","error-state",s),role:"alert",children:[n.jsx(et,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),n.jsx("p",{className:"empty-state__message body-3",children:e??i("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(et,{icon:"rotate-cw",className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:l??i("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function hy({icon:e,title:t,description:a,cta:r,tone:l="main",disabled:s=!1,onClick:i,className:u=""}){const c=o.useId(),d=`${c}-title`,h=`${c}-desc`,p=`${c}-cta`,f=()=>{s||i?.()};return n.jsx("section",{role:"button",tabIndex:s?-1:0,"aria-disabled":s||void 0,"aria-labelledby":d,"aria-describedby":`${h} ${p}`,onClick:f,onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),f())},className:_e("action-card",`action-card--${l}`,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(et,{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:h,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(et,{icon:"arrow-right",size:18})})]})]})})}function my({as:e="div",className:t="",children:a,storage:r,...l}){r&&Of({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,...l,children:a})}function fy(e){if(e.closest('[aria-hidden="true"], [hidden], [inert]'))return!1;for(let t=e;t;t=t.parentElement){const a=window.getComputedStyle(t);if(a.display==="none"||a.visibility==="hidden"||a.visibility==="collapse")return!1}return!0}function po(e,t=!0){o.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=l=>{if(l.key!=="Tab")return;const s=Array.from(a.querySelectorAll(gn)).filter(fy);if(!s.length){l.preventDefault();return}const i=s[0],u=s[s.length-1],c=document.activeElement,d=c===a;l.shiftKey&&(c===i||d)?(l.preventDefault(),u.focus()):!l.shiftKey&&c===u&&(l.preventDefault(),i.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const gn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',ho=new WeakMap;function mo(e,t){e&&ho.set(e,t)}function fo(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let r=t;for(;r&&!ho.has(r);)r=r.parentElement;if(!r)return t;t=ho.get(r)??null}return t}function Zl(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 sr(e,t,a){const r=e?.isConnected?e:a?.isConnected?a:null;if(Zl(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!r)return null;const l=Array.from(document.querySelectorAll(gn)).filter(c=>!(e&&e.contains(c))&&Zl(c));let s=null,i=null;for(const c of l)r.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_PRECEDING?s=c:i||(i=c);const u=s??i;return u?.focus(),u}function Cy({title:e="",lines:t=[],notices:a=null,children:r,variant:l="default",dismissible:s=!1,className:i=""}){const{t:u}=xe.useTranslation(),[c,d]=o.useState(!1),h=o.useRef(null),p=o.useCallback(()=>{const C=h.current;C&&C.contains(document.activeElement)&&sr(C),d(!0)},[]);if(c)return null;const f=`notice-box notice-box--${l} body-2 ${i}`.trim(),b=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,m)=>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})]},m)),b]});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,m)=>n.jsx("li",{className:"notice-box__line",children:C},m))}):r})]}):n.jsx("div",{className:"notice-box__inner",children:r});return n.jsxs("div",{ref:h,className:f,role:"note",children:[x,b]})}const ua=[];let lr=!1;function Xl(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=ua[ua.length-1];t&&(e.stopPropagation(),t())}function Gn(e){return ua.push(e),!lr&&typeof document<"u"&&(document.addEventListener("keydown",Xl),lr=!0),()=>{const t=ua.lastIndexOf(e);t>=0&&ua.splice(t,1),ua.length===0&&lr&&typeof document<"u"&&(document.removeEventListener("keydown",Xl),lr=!1)}}const Jl=o.createContext(null);function gy(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const Ql=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function by(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 Ss.useSyncExternalStore(t,()=>Ql(e),()=>!1)}function yy(e){const[t,a]=o.useState(Ql(e));return o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),l=i=>a(i.matches),s=r;return s.addEventListener?s.addEventListener("change",l):s.addListener&&s.addListener(l),a(r.matches),()=>{s.removeEventListener?s.removeEventListener("change",l):s.removeListener&&s.removeListener(l)}},[e]),t}const vy=typeof Ss.useSyncExternalStore=="function"?by:yy;function un(e){const t=o.useContext(Jl),a=vy(e);return t&&typeof t.mobile=="boolean"&&gy(e)?t.mobile:a}const xy="(prefers-reduced-motion: reduce)";function Co(){return un(xy)}function mn(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:l=20,onClose:s,closeOnOutsideClick:i=!0,className:u="",role:c="dialog",ariaLabel:d="",children:h,backdrop:p=!1,isMobilePopup:f=!1,useBorder:b=!0,header:x,focusOnOpen:C}=e||{},m=o.useRef(null),[_,g]=o.useState({position:"fixed",left:0,top:-9999}),[A,y]=o.useState(!1),[w,v]=o.useState("bottom"),[B,k]=o.useState(!1),[E,D]=o.useState(!1),N=!t&&!a,I=o.useCallback((U=!1)=>{if(E&&f)return;const $=a?a.getBoundingClientRect():t;if(!$||!m.current)return;const H=m.current,{offsetWidth:z,offsetHeight:V}=H,S=window.innerWidth,P=window.innerHeight,F=S-$.right,X=$.left,se=$.top,ae=P-$.bottom;let me=0,ne=0,W="top";if(se>=V+r)W="top",ne=$.top-r-V,me=$.left+$.width/2-z/2;else if(ae>=V+r)W="bottom",ne=$.bottom+r,me=$.left+$.width/2-z/2;else if(F>=z+r)W="right",me=$.right+r,ne=$.top+$.height/2-V/2;else if(X>=z+r)W="left",me=$.left-r-z,ne=$.top+$.height/2-V/2;else{const ce=Math.max(se,ae,F,X);ce===se?(W="top",ne=$.top-r-V,me=$.left+$.width/2-z/2):ce===ae?(W="bottom",ne=$.bottom+r,me=$.left+$.width/2-z/2):ce===F?(W="right",me=$.right+r,ne=$.top+$.height/2-V/2):(W="left",me=$.left-r-z,ne=$.top+$.height/2-V/2)}const ie=Number.isFinite(Number(l))?Number(l):8;me=Math.min(Math.max(me,ie),S-z-ie),ne=Math.min(Math.max(ne,ie),P-V-ie);const q=Math.round(me),K=Math.round(ne);U&&m.current?(m.current.style.left=`${q}px`,m.current.style.top=`${K}px`,m.current.dataset.placement=W):(v(W||w),g({position:"fixed",left:q,top:K}),k(!0))},[E,f,a,t,r,l,w]);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)"}),k(!0);return}I();const U=requestAnimationFrame(()=>I());return()=>cancelAnimationFrame(U)},[t,a,r,h,l,N,E,f,I]),o.useEffect(()=>{if(N||E&&f||!m.current||typeof ResizeObserver>"u")return;const U=new ResizeObserver(()=>{t&&I()});return U.observe(m.current),()=>U.disconnect()},[t,h,l,N,E,f,I]),o.useEffect(()=>{if(N||E&&f)return;let U=null;const $=()=>{if(typeof requestAnimationFrame>"u"){I(!0);return}U===null&&(U=requestAnimationFrame(()=>{U=null,I(!0)}))},H=z=>{if(!a&&s){const V=z.target;if(V&&m.current&&m.current.contains(V))return;try{if(V&&V.closest&&V.closest("[data-tooltip-ignore]"))return}catch{}L.current(!0);return}$()};return window.addEventListener("resize",$),document.addEventListener("scroll",H,{passive:!0,capture:!0}),()=>{U!==null&&cancelAnimationFrame(U),window.removeEventListener("resize",$),document.removeEventListener("scroll",H,{capture:!0})}},[t,a,s,r,h,l,N,E,f,I]),o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const U=window.matchMedia("(max-width: 768px)"),$=()=>D(!!U.matches);$();try{U.addEventListener?U.addEventListener("change",$):U.addListener($)}catch{try{U.addListener($)}catch{}}return()=>{try{U.removeEventListener?U.removeEventListener("change",$):U.removeListener($)}catch{}}},[]);const R=o.useRef(!1),Y=o.useRef(null),M=Co(),T=o.useCallback((U=!1)=>{if(s&&!(A||R.current)){if(R.current=!0,U){y(!0);try{s&&s()}catch{R.current=!1,y(!1)}return}y(!0),Y.current=setTimeout(()=>{Y.current=null;try{s&&s()}catch{R.current=!1,y(!1)}},M?0:200)}},[A,s,y,M]);o.useEffect(()=>()=>{Y.current&&clearTimeout(Y.current)},[]),o.useEffect(()=>{if(N)return;const U=z=>{const V=m.current;if(!V)return;const S=z.target;if(S&&!V.contains(S)){try{if(S.closest&&S.closest("[data-tooltip-ignore]"))return}catch{}i&&T(!0)}},$=z=>{const V=m.current;if(!V)return;const S=z.target;if(S&&!V.contains(S)){try{if(S.closest&&S.closest("[data-tooltip-ignore]"))return}catch{}i&&T(!0)}},H=z=>{if(z.key==="Tab"){const V=m.current;if(!V)return;const S=V.querySelectorAll(gn);if(!S||S.length===0)return;const P=S[0],F=S[S.length-1],X=document.activeElement;z.shiftKey?X===P&&(z.preventDefault(),F.focus()):X===F&&(z.preventDefault(),P.focus())}};return document.addEventListener("pointerdown",U,!0),document.addEventListener("click",$,!0),document.addEventListener("keydown",H),()=>{document.removeEventListener("pointerdown",U,!0),document.removeEventListener("click",$,!0),document.removeEventListener("keydown",H)}},[s,i,T,N]);const L=o.useRef(T);o.useEffect(()=>{L.current=T});const Z=!!s;o.useEffect(()=>{if(!(N||!Z))return Gn(()=>L.current())},[N,Z]),o.useEffect(()=>{const U=()=>{T(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",U),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",U)}},[T]);const G=o.useRef(null);o.useEffect(()=>{if(N||C===!1||!B)return;const U=m.current;if(!U)return;const $=U.querySelector(gn);if($)return G.current=document.activeElement,$.focus(),()=>{const H=G.current;G.current=null,H&&document.contains(H)&&H.focus()}},[N,C,B]),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 O=n.jsxs("div",{ref:m,className:`tooltip-content ${N?"tooltip-content--inline":""} ${b?"tooltip-content--bordered":""} ${A?"is-closing":""} ${u} ${E&&f?"is-mobile":""}`,role:c,"aria-label":d||void 0,style:N?{}:{..._,visibility:B?"visible":"hidden"},tabIndex:-1,"data-placement":w,"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}),h]});if(N||typeof document>"u")return O;if(p||E&&f){const U=n.jsxs("div",{className:"tooltip-portal",children:[n.jsx("div",{className:"tooltip-backdrop",onClick:()=>{i&&T(!0)}}),O]});return nn.createPortal(U,document.body)}return nn.createPortal(O,document.body)}function wn(e){const{anchorRect:t,text:a,offset:r=8,onClose:l,className:s="",ariaLabel:i}=e||{};return a?n.jsx(mn,{anchorRect:t,offset:r,onClose:l,closeOnOutsideClick:!1,className:`tooltip-info ${s}`,ariaLabel:i||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:l,activeIndex:s=-1,showIndex:i=!0,onClose:u,offset:c=12,closeOnOutsideClick:d=!0}=e||{},h=(Array.isArray(l)?l:l?[l]:[]).map(p=>typeof p=="string"?{text:p}:p);return!h.length&&!r?null:n.jsx(mn,{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:h.map((p,f)=>n.jsxs("li",{className:`tooltip-description__item body-3${f===s?" tooltip-description__item--active":""}`,children:[i&&h.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 $a(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),t}let go=0,ei=!1;function ti(){ei||typeof document>"u"||(ei=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(go=Date.now())},!0),document.addEventListener("touchstart",()=>{go=Date.now()},{capture:!0,passive:!0}))}ti();function ca(e){return!!e&&e.pointerType==="touch"}function da(e=1e3){return ti(),Date.now()-go<e}function bo(e,t,a,{enabled:r=!0,fallbackOnParent:l=!1}={}){const s=$a(e),i=$a(t),u=o.useRef(null),c=o.useRef(0);o.useEffect(()=>{if(!r||typeof document>"u")return;const h=p=>{const f=p,b=p.target,x=a.current,C=!!(b&&x&&x.contains(b));if(f.pointerType!=="touch"){C&&(u.current=null);return}if(C){u.current=s.current;return}u.current=null,s.current&&!(b&&b.closest?.(".tooltip-content"))&&i.current(!1,x)};return document.addEventListener("pointerdown",h,!0),()=>document.removeEventListener("pointerdown",h,!0)},[r,a,s,i]);const d=o.useCallback(h=>{const p=u.current;return p===null?!1:(u.current=null,c.current=Date.now(),i.current(!p,h??a.current),!0)},[a,i]);return o.useEffect(()=>{if(!r||!l)return;const h=a.current,p=h?.parentElement;if(!h||!p)return;let f=null;const b=m=>{const _=m.changedTouches?.[0];if(!_)return!1;const g=h.getBoundingClientRect();return _.clientX>=g.left&&_.clientX<=g.right&&_.clientY>=g.top&&_.clientY<=g.bottom},x=m=>{f=b(m)?s.current:null},C=m=>{const _=f;f=null,!(_===null||Date.now()-c.current<700||!b(m))&&(u.current=null,c.current=Date.now(),i.current(!_,h))};return p.addEventListener("touchstart",x,{passive:!0}),p.addEventListener("touchend",C),()=>{p.removeEventListener("touchstart",x),p.removeEventListener("touchend",C)}},[r,l,a,s,i]),{touchPress:d}}function _y(e,t){const{size:a=48,type:r,htmlType:l,href:s,target:i,rel:u,icon:c,rightIcon:d,label:h,count:p,subLabel:f,children:b,ariaLabel:x,variant:C="default",align:m="center",nowrap:_=!1,selected:g,toggleable:A=!1,ariaExpanded:y,ariaControls:w,disabled:v=!1,useLabel:B=!0,useBorder:k=!0,useBG:E=!0,useDisabledCovered:D=!1,useDisabledInvisible:N=!1,width:I,minWidth:R,onClick:Y,onDisabledClick:M,showTooltipInfo:T=!1,tooltipInfoText:L=null,tooltipDescription:Z=null,tooltipOnly:G=!1,iconSize:O="medium",iconColor:U,shape:$="rounded",color:H,className:z,...V}=e,S=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),P=S.match(/^\d+$/)?`button${S}`:`button-${S}`,F=Number(a),X=!isNaN(F)&&F<40?"button-2":"button-1",se=h??b,ae=v||!!V.disabled,me=ae?D?"disabled-covered":N?"disabled-invisibled":"disabled":C,ne=me?`button--variant-${me}`:"",W=m?`button--align-${m}`:"",ie=_?"button--nowrap":"",q=$?`button--shape-${$}`:"",K=typeof U=="string"&&U.startsWith("--")?`var(${U})`:U,ce={...I?{width:typeof I=="number"?`${I}px`:I}:{},...R?{minWidth:typeof R=="number"?`${R}px`:R}:{},...k?{}:{"--button-border":ae?"0":"1px solid transparent"},...K?{"--button-icon-color":K}:{},...H?{"--color-main":H}:{}},ke=B===!1?"":se,ye=Array.isArray(ke)?ke.length>0:!!ke,de=!!d,oe=r??(ye||c||de?"bar":"dot"),ge=`${P}--${oe}`,he=o.useRef(null);o.useEffect(()=>{!$n||l!==void 0||he.current?.closest("form")&&St(`button-in-form:${typeof se=="string"?se:""}`,'[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 se=="string"&&se?` \uB2E8\uCD94: ${se}`:""))},[l,se]);const pe=o.useRef(t);pe.current=t;const Me=o.useCallback(Re=>{he.current=Re;const ot=pe.current;typeof ot=="function"?ot(Re):ot&&(ot.current=Re)},[]),ze=o.useRef(ae),[Le,Fe]=o.useState(!!g),[We,pt]=o.useState(!1),[it,at]=o.useState(null),ht=o.useCallback(()=>pt(!1),[]),[Ne,Ve]=o.useState(!1),we=o.useId();o.useEffect(()=>{typeof g=="boolean"&&Fe(g)},[g]),o.useEffect(()=>{if(ze.current&&!ae&&he.current){const Re=he.current;let ot=!1;try{ot=Re.matches(":focus:not(:focus-visible)")}catch{ot=!1}ot&&Re.blur(),Re.style.pointerEvents="none";const ft=requestAnimationFrame(()=>{requestAnimationFrame(()=>{he.current&&(he.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(ft)}ze.current=ae},[ae]);const Ue=typeof g=="boolean"?!!g:Le,Ae=typeof y=="boolean"?void 0:A||typeof g=="boolean"?Ue?"true":"false":V["aria-pressed"],$e=_e("button",P,ge,ne,W,ie,q,Ue?"is-selected":null,E?null:"button--no-bg",G?"button--tooltip-only":null,z),Se=`button__icon button__icon--${O}`,Xe=Array.isArray(f)?f:f!==void 0?[f]:[],gt=()=>{if(Array.isArray(ke))return ke.map((ot,ft)=>{const Bt=Xe[ft];return n.jsxs("span",{className:`button__label-text${Bt!==void 0?" button__label-text--has-sub":""}`,children:[ot,Bt!==void 0&&n.jsx("span",{className:"button__sub-label-text caption-1",children:Bt})]},ft)});const Re=f!==void 0;return n.jsxs("span",{className:`button__label-text${Re?" button__label-text--has-sub":""}`,children:[ke,p!=null&&n.jsx("span",{className:"button__count",children:p}),Re&&n.jsx("span",{className:"button__sub-label-text caption-1",children:f})]})},nt=Re=>{typeof g!="boolean"&&!A&&Fe(!1),Re.currentTarget.blur()},Je=Re=>{ae||(typeof V.onMouseLeave=="function"&&V.onMouseLeave(Re),nt(Re))},_t=Re=>{if(G&&vt&&bt.touchPress(Re.currentTarget),ae){vt&&bt.touchPress(Re.currentTarget),Re.preventDefault(),M?.(Re);return}typeof g!="boolean"&&A&&Fe(ot=>!ot),Y?.(Re)},mt=o.useCallback(()=>{(T||Z)&&(pt(!0),at(he.current?.getBoundingClientRect()??null))},[T,Z]),wt=o.useCallback(()=>{(T||Z)&&(pt(!1),at(null))},[T,Z]),vt=!!(T||Z),bt=bo(We,Re=>{Re?mt():wt()},he,{enabled:vt&&(ae||G),fallbackOnParent:vt&&ae}),Ke={...V};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,ae&&(Object.keys(Ke).forEach(Re=>{/^on[A-Z]/.test(Re)&&typeof Ke[Re]=="function"&&delete Ke[Re]}),Ke["aria-disabled"]="true");const re=(typeof T=="string"?T:null)??(typeof L=="string"?L:null)??(typeof x=="string"?x:null)??(typeof se=="string"?se:null)??void 0,Ee=typeof x=="string"?x:typeof se=="string"?se:re,Qe=Z?[Z.title,...Z.items??[]].filter(Boolean).join(". "):T&&re&&re!==Ee?re:"",qe=[typeof V["aria-describedby"]=="string"?V["aria-describedby"]:void 0,Qe?we:null].filter(Boolean).join(" ")||void 0,rt=(Re,ot)=>n.jsx(et,{icon:Re,label:ot??Ee,className:Se,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),Te=()=>oe==="dot"?n.jsxs(n.Fragment,{children:[rt(c),ye&&n.jsx("span",{className:`button__label ${X}`,children:gt()})]}):m==="center"&&c?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"button__center-group",children:[n.jsx("span",{className:"button__left",children:rt(c)}),ye&&n.jsx("span",{className:`button__label ${X}`,children:gt()})]}),de&&n.jsx("span",{className:"button__right",children:rt(d)})]}):n.jsxs(n.Fragment,{children:[c&&n.jsx("span",{className:"button__left",children:rt(c,x??se)}),ye&&n.jsx("span",{className:`button__label ${X}`,children:gt()}),de&&n.jsx("span",{className:"button__right",children:rt(d)})]}),ut=!!s&&!ae;return n.jsxs(n.Fragment,{children:[n.jsxs(ut?"a":"button",{...Ke,ref:Me,...ut?{href:s,target:i,rel:u??(i==="_blank"?"noreferrer":void 0)}:{type:l??"button",disabled:ae&&!M&&!Ne},className:$e,"aria-pressed":Ae,"aria-expanded":typeof y=="boolean"?y:V["aria-expanded"],"aria-controls":w??V["aria-controls"],"aria-label":Ee,"aria-disabled":ae&&(ut||M||Ne)?!0:void 0,"aria-describedby":qe,style:ce,onClick:_t,onMouseLeave:Je,onPointerEnter:Re=>{ca(Re)||mt(),!ae&&typeof V.onPointerEnter=="function"&&V.onPointerEnter(Re)},onPointerLeave:Re=>{ca(Re)||wt(),!ae&&typeof V.onPointerLeave=="function"&&V.onPointerLeave(Re)},onPointerUp:Re=>{ae&&vt&&bt.touchPress(Re.currentTarget),!ae&&typeof V.onPointerUp=="function"&&V.onPointerUp(Re)},onFocus:Re=>{Ve(!0),da()||mt(),!ae&&typeof V.onFocus=="function"&&V.onFocus(Re)},onBlur:Re=>{Ve(!1),ae||nt(Re),wt(),!ae&&typeof V.onBlur=="function"&&V.onBlur(Re)},children:[Te(),Qe?n.jsx("span",{id:we,hidden:!0,"aria-label":Qe}):null]}),We&&Z?n.jsx(Kn,{anchorRect:it,title:Z.title,items:Z.items,onClose:ht}):We&&re?n.jsx(wn,{anchorRect:it,text:re,onClose:ht}):null]})}const Ce=o.forwardRef(_y);Ce.displayName="Button";function Nt(e,t,a){const r=o.useRef(null);return o.useLayoutEffect(()=>{const l=r.current?.parentElement??null;return t(l,e),()=>a(l)},[e,t,a]),r}const Ra={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},yo=new WeakMap;function vo(e){if(e)return yo.get(e)}function Wt(e,t){e&&(e.style.setProperty(Ra.title,t.title),e.style.setProperty(Ra.description,t.description),yo.set(e,t))}function Ht(e){e&&(e.style.removeProperty(Ra.title),e.style.removeProperty(Ra.description),yo.delete(e))}const ni={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function ai(){const e=Nt(ni,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const ri={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function oi(){const e=Nt(ri,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const si={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function li(){const e=Nt(si,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const ii={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function ui(){const e=Nt(ii,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const ci={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function di(){const e=Nt(ci,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const pi={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function hi(){const e=Nt(pi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const mi={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function fi(){const e=Nt(mi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const Ci={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function gi(){const e=Nt(Ci,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const bi={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function yi(){const e=Nt(bi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const vi={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function xi(){const e=Nt(vi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const _i={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function wi(){const e=Nt(_i,Wt,Ht);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 Bi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function ki(){const e=Nt(Bi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const Ai={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function Ni(){const e=Nt(Ai,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const Ei={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Di(){const e=Nt(Ei,Wt,Ht);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}),wy=[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")],Si={main:ai,soft:oi,sub:li,deep:ui,softSub:di,warm:hi,dark:fi,radial:gi,diagonal:yi,dots:xi,outline:wi,success:ki,naver:Ni,instagram:Di};function ji({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:l=.1,lineHeightRatio:s=1.4}={}){const i=A=>Math.max(a,Math.min(r,Number(A))),u=A=>{try{const y=localStorage.getItem(A),w=y?Number(y):1;return Number.isFinite(w)?i(w):i(1)}catch{return i(1)}},[c,d]=o.useState(()=>u(e)),[h,p]=o.useState(e);h!==e&&(p(e),d(u(e))),o.useEffect(()=>{try{localStorage.setItem(e,String(c))}catch{}},[e,c]);const f=A=>{d(typeof A=="function"?y=>i(A(y)):i(A))},b=()=>f(A=>+(A+l).toFixed(6)),x=()=>f(A=>+(A-l).toFixed(6)),C=c<r-Number.EPSILON,m=c>a+Number.EPSILON,_=Math.round(t*c),g=Math.round(_*s);return{scale:c,setScale:f,increase:b,decrease:x,canIncrease:C,canDecrease:m,fontSize:_,lineHeight:g}}function Ti(e,t){const a=$a(t);o.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const xo=" \xB7 ",Mi=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(xo)?e.split(xo).pop()??e:e})(),By=o.createContext(!1),Yn=[];let Li=null;function ky(e){const t=o.useContext(By);o.useEffect(()=>{if(t||typeof e!="string"||!e)return;Yn.length===0&&(Li=document.title);const a={text:Mi?`${e}${xo}${Mi}`: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:Li??document.title}},[e,t])}const _o=[{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"}],Ay=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function on(e,t){return Ay().compare(e,t)}const ir=new Map;function Ny(e){const t=ir.get(e);if(t)return t;const a=[],r=/-?\d+(?:\.\d+)?/g;let l=0;for(let s=r.exec(e);s;s=r.exec(e)){let i=s.index,u=s[0];u[0]==="-"&&i>0&&!/\s/.test(e[i-1])&&(i+=1,u=u.slice(1)),i>l&&a.push(e.slice(l,i)),a.push(Number(u)),l=s.index+s[0].length}return l<e.length&&a.push(e.slice(l)),ir.size>5e3&&ir.clear(),ir.set(e,a),a}function Ey(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 Dy(e,t){const a=d=>d==null||typeof d=="number"&&Number.isNaN(d)?"":String(d).trim(),r=a(e),l=a(t);if(r===l)return 0;const s=(d,h)=>{if(typeof d=="number"&&!Number.isNaN(d))return[d];const p=Ey(h);return p!==null?[p]:Ny(h)},i=s(e,r),u=s(t,l),c=Math.min(i.length,u.length);for(let d=0;d<c;d++){const h=i[d],p=u[d];if(typeof h=="number"&&typeof p=="number"){if(h!==p)return h-p;continue}if(typeof h=="number")return-1;if(typeof p=="number")return 1;const f=on(h,p);if(f!==0)return f}return i.length!==u.length?i.length-u.length:on(r,l)}const $i=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function wo(e,t,a){const r=$i(e),l=$i(t);if(r||l)return r===l?0:r?1:-1;const s=Dy(e,t);return a?s:-s}function Sy(e,t,a){const{t:r}=xe.useTranslation(),[l,s]=o.useState(()=>{const x=a?.initialPageSize;return x&&_o.some(C=>C.value===x)?x:"25"}),[i,u]=o.useState(1),[c,d]=o.useState(t);Object.is(c,t)||(d(t),i!==1&&u(1));const h=o.useMemo(()=>_o.map(x=>({...x,label:r("visits.showN",{n:x.value})})),[r]),p=o.useCallback(x=>{_o.some(C=>C.value===x)&&(s(x),u(1))},[]),f=Math.max(1,Math.ceil(e.length/Number(l))),b=Math.min(Math.max(1,Number.isFinite(i)?Math.floor(i):1),f);return i!==b&&u(b),{pageRows:o.useMemo(()=>e.slice((b-1)*Number(l),b*Number(l)),[e,b,l]),pageSizeProps:{options:h,value:l,onChange:p},paginationProps:{page:b,total:f,onChange:u},setPage:u}}function jy(e){const[t,a]=o.useState(null),r=o.useRef(t),l=o.useRef(e?.onSortChange);l.current=e?.onSortChange;const s=o.useCallback(c=>{const d=r.current,h=d?.key===c?{key:c,asc:!d.asc}:{key:c,asc:!0};r.current=h,a(h),l.current?.(h)},[]),i=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:h,asc:p}=t;return[...c].sort((f,b)=>wo(d(f,h),d(b,h),p))},[t]);return{sort:t,field:i,sortRows:u}}const fn="\uC804\uCCB4";Object.fromEntries(Object.entries(cC).map(([e,{nucleus:t}])=>[e,t]));const Ty={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"})},My={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"})},Ly={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 $y(e,t){if("place"in t)return Ty[t.place](e);const a=My[t.vowel](e);return t.glide?`${a} \xB7 ${Ly[t.glide](e)}`:a}const Ry=(e,{defaultValue:t})=>t,Ri=(e,t)=>({jamos:e,phonetic:t,tooltip:$y(Ry,t)}),Bn=(e,t)=>t.map(a=>Ri([a],{place:e})),Pt=(e,t,a)=>Ri([...e],a?{vowel:t,glide:a}:{vowel:t}),Bo={cho:[Bn("labial",["\u3142","\u3143","\u314D","\u3141"]),Bn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),Bn("alveolar",["\u3145","\u3146"]),Bn("palatal",["\u3148","\u3149","\u314A"]),Bn("velar",["\u3131","\u3132","\u314B"]),Bn("glottal",["\u314E"])],jung:[[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:[Bn("labial",["\u3142","\u3141"]),Bn("alveolar",["\u3137","\u3134","\u3139"]),Bn("velar",["\u3131","\u3147"])]},Py=e=>e===Iy?[]:Array.from(e),Iy="__NO_CODA__",ko=e=>e.map(t=>t.map(({jamos:a,phonetic:r,tooltip:l})=>({v:a.join(""),phonetic:r,tooltip:l}))),Pi={cho:ko(Bo.cho),jung:ko(Bo.jung),jong:ko(Bo.jong)};Pi.jung.flat().forEach(({v:e})=>{for(const t of Py(e));}),new Set(Pi.cho.flat().map(e=>e.v));function Fy(e,t=!0){const a=$a(e);o.useEffect(()=>{if(t)return Gn(()=>{a.current?.()})},[t,a])}function Pa(){const[e,t]=o.useState(null),a=o.useCallback(s=>t(s.getBoundingClientRect()),[]),r=o.useCallback(()=>t(null),[]),l=o.useCallback(s=>{const i=s.getBoundingClientRect();t(u=>u?null:i)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:l}}function Oy(e){const[t,a]=o.useState(null),[r,l]=o.useState(null),s=o.useRef(null);o.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]);const i=o.useCallback((c,d)=>{s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{a(c),l(d)},e)},[e]),u=o.useCallback(()=>{s.current&&clearTimeout(s.current),a(null),l(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:i,close:u}}function Ii(e="warning"){const[t,a]=o.useState(""),[r,l]=o.useState(e),[s,i]=o.useState(0),u=o.useCallback((p,f)=>{l(f),a(p),i(b=>b+1)},[]),c=o.useCallback(p=>u(p,"warning"),[u]),d=o.useCallback(p=>u(p,"normal"),[u]),h=o.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:s,showToast:u,showWarning:c,showNormal:d,clearToast:h}}function Ia(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 Fa({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[l,s]=o.useState(!1),[i,u]=o.useState({position:"fixed"}),c=o.useRef(null),d=o.useRef(null),h=o.useCallback(()=>{c.current&&u(e(c.current.getBoundingClientRect(),c.current))},[e]);o.useLayoutEffect(()=>{l&&h()},[l,h]),o.useEffect(()=>{if(!l)return;let b=d.current?.offsetHeight??0;b>0&&h();let x=0,C=null;typeof ResizeObserver<"u"&&d.current&&(C=new ResizeObserver(()=>{const B=d.current?.offsetHeight??0;if(B!==b){if(b=B,++x>4){C?.disconnect(),C=null;return}h()}}),C.observe(d.current));const m=B=>{const k=B.target;r&&k.closest?.(r)||c.current?.contains(k)||d.current?.contains(k)||s(!1)};document.addEventListener("mousedown",m),document.addEventListener("pointerdown",m);let _=null;const g=()=>{if(typeof requestAnimationFrame>"u"){h();return}_===null&&(_=requestAnimationFrame(()=>{_=null,h()}))},A=B=>{d.current?.contains(B.target)||(t==="reposition"?g():t==="close"&&s(!1))};t!=="ignore"&&window.addEventListener("scroll",A,!0);const y=()=>{a==="reposition"?g():a==="close"&&s(!1)};let w=null;const v=()=>{y(),w&&clearTimeout(w),w=setTimeout(()=>{w=null,a==="reposition"&&h()},250)};return a!=="ignore"&&(window.addEventListener("resize",y),window.addEventListener("orientationchange",v)),()=>{_!==null&&cancelAnimationFrame(_),C?.disconnect(),document.removeEventListener("mousedown",m),document.removeEventListener("pointerdown",m),t!=="ignore"&&window.removeEventListener("scroll",A,!0),a!=="ignore"&&(window.removeEventListener("resize",y),window.removeEventListener("orientationchange",v)),w&&clearTimeout(w)}},[l,h,t,a,r]),o.useEffect(()=>{if(l)return Gn(()=>s(!1))},[l]);const p=o.useCallback(()=>s(b=>!b),[]),f=o.useCallback(()=>s(!1),[]);return{open:l,setOpen:s,toggle:p,close:f,style:i,triggerRef:c,menuRef:d}}function zy(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:l,playMs:s=1100,feedbackMs:i=1500}={}){const[u,c]=o.useState([]),[d,h]=o.useState(0),[p,f]=o.useState("idle"),[b,x]=o.useState(null),[C,m]=o.useState([]),[_,g]=o.useState(null),[A,y]=o.useState(0),w=o.useRef(0),v=o.useCallback($=>{w.current=typeof $=="function"?$(w.current):$,y(w.current)},[]),B=o.useRef(r),k=o.useRef(l);o.useEffect(()=>{B.current=r,k.current=l},[r,l]);const E=o.useRef([]),D=()=>{E.current.forEach(clearTimeout),E.current=[]},N=($,H)=>{E.current.push(setTimeout(H,$))};o.useEffect(()=>()=>D(),[]);const I=u[d]?.id??null,R=o.useRef(null),Y=o.useCallback(()=>{D(),f("playing"),m([]),g(null),v(0);let $=0;e.forEach((H,z)=>{N($,()=>{h(z),x(H.id),B.current?.(H)}),N($+1e3,()=>{x(null),m(V=>[...V,H.id])}),$+=1300}),N($,()=>{f("done"),k.current?.({score:0,total:e.length})})},[e,v]),M=o.useCallback(($,H)=>{if(H>=$.length){f("done"),k.current?.({score:w.current,total:$.length});return}R.current=null,h(H),g(null),f("playing"),x($[H].id),B.current?.($[H]),N(s,()=>{x(null),f("waiting")})},[s]),T=o.useCallback(()=>{D();const $=Ta(e);c($),v(0),m([]),M($,0)},[e,M,v]),L=o.useCallback(()=>{t==="playback"?(c(e),Y()):T()},[t,e,Y,T]),Z=o.useCallback(()=>{D(),f("idle"),x(null),m([]),g(null),h(0),v(0),c([])},[v]),G=JSON.stringify(e.map($=>[$.id,$.label,$.angleDeg,$.deg,$.row,$.shortcut]));o.useEffect(()=>(a?L():Z(),()=>D()),[t,G,a]);const O=o.useCallback($=>{p!=="waiting"||t==="playback"||R.current===d||(R.current=d,g($),$===u[d]?.id&&v(H=>H+1),t==="exam"?(f("playing"),N(400,()=>M(u,d+1))):(f("feedback"),N(i,()=>M(u,d+1))))},[p,t,u,d,M,i,v]),U=t==="playback"?e.length:u.length;return{bind:{activeSpeakerId:b,playedIds:C,selectedId:_,answerId:I,showFeedback:p==="feedback",clickable:p==="waiting",onSelectSpeaker:O},index:d,total:U,score:A,phase:p,done:p==="done",start:L,reset:Z}}const Ao=new Map,No=new Map,Wy=()=>()=>{},Hy=()=>!0,Vy=()=>!1;function Fi(e){const t=/^data:image\/svg\+xml(;base64)?,([\s\S]*)$/.exec(e);if(!t)return null;try{if(!t[1])return decodeURIComponent(t[2]);const a=Uint8Array.from(atob(t[2]),r=>r.charCodeAt(0));return new TextDecoder("utf-8").decode(a)}catch{return null}}function qy(e){if(typeof window>"u")return"";const t=(a,r)=>{const l=r.attrName.toLowerCase(),s=r.attrValue.trim();(l==="href"||l==="xlink:href")&&!s.startsWith("#")&&(r.keepAttr=!1),(l==="style"||s.includes("\\")&&s.includes("("))&&(r.keepAttr=!1);const i=s.replace(/url\s*\(\s*(['"]?)#[^)\s'"]+\1\s*\)/gi,"");/url\s*\(/i.test(i)&&(r.keepAttr=!1)};oa.addHook("uponSanitizeAttribute",t);try{return oa.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","style","foreignObject"]})}finally{oa.removeHook("uponSanitizeAttribute",t)}}function Uy(e,t){const a=new Set;for(const i of e.matchAll(/url\(\s*(['"]?)#([^)\s"']+)\1\s*\)/g))a.add(i[2]);for(const i of e.matchAll(/(?:xlink:)?href="#([^"]+)"/g))a.add(i[1]);const r=new Set([...e.matchAll(/id="([^"]*)"/g)].map(i=>i[1])),l=[...a].filter(i=>r.has(i));if(l.length===0)return e;let s=e;for(const i of l){const u=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),c=`${t}-${i}`;s=s.replace(new RegExp(`id="${u}"`,"g"),`id="${c}"`).replace(new RegExp(`url\\(\\s*(['"]?)#${u}\\1\\s*\\)`,"g"),(d,h)=>`url(${h}#${c}${h})`).replace(new RegExp(`((?:xlink:)?href)="#${u}"`,"g"),`$1="#${c}"`)}return s}function Gy(e){const t=No.get(e);if(t)return t;const a=fetch(e).then(r=>r.ok?r.text():null).then(r=>(r!=null&&Ao.set(e,r),r)).catch(()=>null).finally(()=>{No.delete(e)});return No.set(e,a),a}function Ky(e,t=!0){const a=o.useSyncExternalStore(Wy,Hy,Vy)&&t&&e?Fi(e)??Ao.get(e)??null:null,[r,l]=o.useState({src:e,enabled:t,svg:a});return o.useEffect(()=>{if(!t||!e){l({src:e,enabled:t,svg:null});return}const s=Fi(e)??Ao.get(e)??null;if(s!==null){l({src:e,enabled:t,svg:s});return}let i=!0;return Gy(e).then(u=>{i&&l({src:e,enabled:t,svg:u})}),()=>{i=!1}},[e,t]),r.src===e&&r.enabled===t?r.svg:a}function Yy({title:e,description:t,actionLabel:a,onAction:r,bg:l,color:s,size:i="medium",actionVariant:u,titleColor:c,descriptionColor:d,className:h=""}){const p=l??s??"main",f=o.useRef(null),[b,x]=o.useState("main"),C=un("(max-width: 767px)"),m=o.useRef({title:!1,description:!1});o.useLayoutEffect(()=>{const A=f.current;if(!A)return;const y=vo(A),w=(v,B,k)=>{if(k!==void 0)A.style.setProperty(B,k),m.current[v]=!0;else if(m.current[v]){const E=y?.[v];E?A.style.setProperty(B,E):A.style.removeProperty(B),m.current[v]=!1}};w("title","--promo-banner-bg-title",c),w("description","--promo-banner-bg-description",d)},[c,d,p]),o.useLayoutEffect(()=>{const A=f.current;if(!A)return;const y=vo(A);x(y?.actionVariant??"main")},[p]);const _=_e("promo-banner",`promo-banner--${i}`,h),g=Si[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 ${i==="small"?"body-2":"h2"}`,children:e}),t&&n.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&n.jsx(Ce,{htmlType:"button",size:40,variant:u??b,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...C?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function Zy({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":l}){const{t:s}=xe.useTranslation(),i=l??s("topBanner.ariaLabel","\uBC30\uB108"),u=o.Children.toArray(e),c=u.length,[d,h]=o.useState(0),[p,f]=o.useState(!1),[b,x]=o.useState(!1),[C,m]=o.useState(!1),_=o.useRef(null),g=o.useRef(null),A=o.useRef(null),y=Co(),w=p||b||C,v=c>0?Math.min(d,c-1):0;o.useEffect(()=>{if(c<2||t<=0||w||y)return;const k=window.setInterval(()=>h(E=>(Math.min(E,c-1)+1)%c),t);return()=>window.clearInterval(k)},[c,t,w,y]);const B=k=>{g.current!=null&&window.clearTimeout(g.current),g.current=window.setTimeout(()=>{g.current=null,m(!1)},k)};return o.useEffect(()=>()=>{g.current!=null&&window.clearTimeout(g.current)},[]),o.useEffect(()=>{if(!C)return;const k=E=>{E.pointerType==="touch"&&(A.current&&A.current.contains(E.target)||(g.current!=null&&(window.clearTimeout(g.current),g.current=null),m(!1)))};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[C]),c===0?null:n.jsxs("section",{ref:A,className:_e("top-banner",r),"aria-label":i,"aria-roledescription":"carousel",onPointerEnter:k=>{_.current=k.pointerType},onPointerDown:k=>{_.current=k.pointerType,k.pointerType==="touch"&&(g.current!=null&&(window.clearTimeout(g.current),g.current=null),m(!0))},onPointerUp:k=>{k.pointerType==="touch"&&B(5e3)},onPointerCancel:k=>{k.pointerType==="touch"&&B(5e3)},onMouseEnter:()=>{_.current!=="touch"&&f(!0)},onMouseLeave:()=>f(!1),onFocus:k=>{let E=!0;try{E=k.target.matches(":focus-visible")}catch{E=!0}x(E)},onBlur:k=>{k.currentTarget.contains(k.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((k,E)=>n.jsx("div",{className:"top-banner__slide","aria-hidden":E!==v,...E!==v?{inert:!0}:{},children:k},E))})}),c>1&&n.jsx("div",{className:`top-banner__dots${(a?.[v]??"light")==="dark"?" top-banner__dots--dark":""}`,children:u.map((k,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:()=>h(E)},E))})]})}function Xy({title:e,body:t,open:a=!1,onToggle:r,avatar:l,titleClassName:s="body-2",bodyClassName:i="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 h=d.currentTarget.closest('[role="list"]');if(!h)return;const p=Array.from(h.querySelectorAll("[data-accordion-header]")),f=p.indexOf(d.currentTarget);(d.key==="ArrowDown"?p[f+1]:p[f-1])?.focus()}},children:[l&&n.jsx("div",{className:"accordion-item__avatar",children:l}),n.jsx("div",{className:`accordion-item__title ${s}`,children:e}),n.jsx("div",{className:"accordion-item__chevron",children:n.jsx(et,{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 ${i}`,children:typeof t=="string"?n.jsx("p",{children:t}):t})]})}function Jy({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:l}){const[s,i]=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(Xy,{title:c.title,body:c.body,avatar:c.avatar,open:u(c,d),onToggle:()=>i(u(c,d)?{index:-1}:{index:d,id:c.id}),bodyClassName:l},c.id??d))})}function Qy(){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 e2(){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 t2(){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 Et(e){const{t}=xe.useTranslation(),{type:a="bar",size:r,className:l="","aria-label":s,"aria-hidden":i}=e;if(a==="dot"){const{icon:w,number:v,position:B="top-right",onClick:k,animate:E=!1}=e,D=w??"check",N=v!==void 0?"number":D,I=typeof r=="number"?r:32,R=_e("circle-badge",`circle-badge--${N}`,`circle-badge--${B}`,`circle-badge--${I}`,E?"circle-badge--animate":"",k?"circle-badge--clickable":"",l),Y=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:R,onClick:k,onKeyDown:k?M=>{M.key!=="Enter"&&M.key!==" "||(M.preventDefault(),M.currentTarget.click())}:void 0,"aria-label":i?void 0:s??Y,"aria-hidden":i||void 0,role:k?"button":i?void 0:"img",tabIndex:k?0:void 0,children:[v!==void 0&&v,v===void 0&&D==="check"&&n.jsx(Qy,{}),v===void 0&&D==="remove"&&n.jsx(e2,{}),v===void 0&&D==="minus"&&n.jsx(t2,{})]})}const{label:u,children:c,variant:d="default",fill:h="filled",minWidth:p,iconLeft:f,iconRight:b,color:x}=e,C=typeof r=="number"?"medium":r??"medium",m={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}`,h!=="filled"?`badge--${h}`:"",m,l),A=x?.startsWith("--")?`var(${x})`:x,y=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:y,"aria-label":i?void 0:s,role:s&&!i?"img":void 0,"aria-hidden":i||void 0,children:[f&&n.jsx(et,{icon:f,size:_,className:"badge__icon"}),u??c,b&&n.jsx(et,{icon:b,size:_,className:"badge__icon"})]})}function Oa({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:l}=xe.useTranslation(),s=r==="small"?40:48,[i,u]=o.useState([]),c=o.useMemo(()=>{const m=[{title:null,columns:e}];let _=e;for(const g of i){const A=_?.[g.ci]?.items?.[g.ii];if(!A||!Array.isArray(A.children)||!A.children.length)break;_=[{title:null,items:A.children}],m.push({title:A.label||null,columns:_})}return m},[e,i]),d=c[c.length-1],h=c.length-1,p=o.useCallback(()=>u(m=>m.slice(0,Math.max(0,Math.min(m.length,h)-1))),[h]),f=o.useRef(null),b=o.useRef(null),x=c.length;o.useEffect(()=>{b.current||(b.current=document.activeElement);let m=0,_=0;const g=()=>{const A=f.current?.querySelector("button:not([disabled])");if(A&&A.offsetParent){A.focus({preventScroll:!0});return}_++<20&&(m=requestAnimationFrame(g))};return m=requestAnimationFrame(g),()=>cancelAnimationFrame(m)},[x]),o.useEffect(()=>()=>{b.current?.focus?.({preventScroll:!0})},[]);const C=o.useCallback((m,_,g)=>{if(m){if(Array.isArray(m.children)&&m.children.length){u(A=>[...A.slice(0,h),{ci:_,ii:g}]);return}try{typeof m.onClick=="function"&&m.onClick()}catch{}try{m&&m.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,h]);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(Ce,{htmlType:"button",size:s,type:"dot",icon:"chevron-left",ariaLabel:l("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((m,_)=>n.jsxs("div",{className:"tooltip-menu__column",children:[m.title?n.jsx("div",{className:"tooltip-menu__column-title body-3",children:m.title}):null,n.jsx("div",{className:"tooltip-menu__items",children:(m.items||[]).map((g,A)=>n.jsxs(o.Fragment,{children:[g.separatorBefore&&A>0&&n.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),n.jsx(Ce,{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(Et,{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?l("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 Oi=".content-area";function Eo(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(Oi);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 ${Oi}) \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 Do=52,ur=10,zi=e=>e&&e>0?e:0;function Wi({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:l,moreItems:s=[],scrollContainer:i}){const{t:u}=xe.useTranslation(),c=r==="manager"?"malgwi":"manager",d=r==="manager"?"arrow-left":"arrow-right",h=r==="manager"?u("nav.modeLabelMalgwi","\uB9D0\uADC0"):u("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=o.useRef(null),[f,b]=o.useState(0),x=e.length;o.useEffect(()=>{const $=p.current;if(!$)return;const H=()=>{const S=typeof getComputedStyle=="function"?getComputedStyle($):null,P=$.clientWidth-(parseFloat(S?.paddingLeft??"")||0)-(parseFloat(S?.paddingRight??"")||0),F=$.querySelector(".bottom-nav__left"),X=F?.nextElementSibling,se=(F?.offsetWidth??0)+(F&&X?.classList.contains("bottom-nav__divider")?X.offsetWidth:0);b(Math.max(0,P-se))};if(H(),typeof ResizeObserver>"u")return;const z=new ResizeObserver(H);z.observe($);const V=$.querySelector(".bottom-nav__left");return V&&z.observe(V),()=>z.disconnect()},[l]);const C=Do+1,m=$=>Math.max(0,Math.floor(($+ur)/(Do+ur))),_=x*(Do+ur)-ur<=f,g=f<=0||s.length===0&&_?x:Math.min(x,m(f-C)),A=f>0&&g<x,y=A?g:x,w=e.slice(0,y),v=e.slice(y),B=A||s.length>0,k=o.useCallback(($,H)=>({position:"fixed",bottom:window.innerHeight-$.top+8,right:window.innerWidth-$.right,zIndex:Ia(H)}),[]),E=o.useId(),{open:D,toggle:N,close:I,style:R,triggerRef:Y,menuRef:M}=Fa({computeStyle:k,onScroll:"ignore",onResize:"reposition"}),T=o.useCallback(($,H)=>H>0?u("nav.badgeLabel",{label:$,count:H,defaultValue:"{{label}}, {{count}}\uAC1C"}):$,[u]),L=o.useCallback(($,H)=>H>0?u("nav.badgeInsideLabel",{label:$,count:H,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):$,[u]),Z=o.useCallback(()=>l?.(c),[l,c]),G=o.useMemo(()=>v.find($=>!!$.key&&$.key===t)??s.find($=>$.selected||$.key&&$.key===t),[v,t,s]),O=o.useMemo(()=>[{items:[...v.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:!!$.key&&$.key===t,closeOnSelect:!0,disabled:$.state==="disabled",onClick:()=>{$.state!=="disabled"&&($.key&&a&&(a($.key),Eo(i,"BottomNav")),I())}})),...s.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:$.selected??(!!$.key&&$.key===t),closeOnSelect:!0,onClick:()=>{$.onClick?.(),I()}}))]}],[v,s,t,a,I]),U=[...v,...s].reduce(($,H)=>$+zi(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:[l&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__left",children:n.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:d,ariaLabel:h,className:"bottom-nav-item",onClick:Z})}),n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),n.jsx("div",{className:"bottom-nav__items",children:w.map(($,H)=>{const z=zi($.badgeCount);return n.jsxs("span",{className:"bottom-nav__slot",children:[n.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:$.icon,ariaLabel:T($.label,z),selected:!!$.key&&$.key===t,disabled:$.state==="disabled",className:"bottom-nav-item",onClick:()=>{$.key&&(a?.($.key),Eo(i,"BottomNav"))}}),z>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(Et,{type:"dot",position:"top-right",number:Math.min(z,99),size:24})})]},$.key??`__slot-${H}`)})}),B&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),n.jsx("div",{className:"bottom-nav__right",children:n.jsxs("div",{ref:Y,className:"bottom-nav__slot",children:[n.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:G?.icon??"ellipsis",ariaLabel:L(G?.label??u("nav.more","\uB354\uBCF4\uAE30"),U),selected:!!G,className:"bottom-nav-item",onClick:N,"aria-expanded":D,"aria-controls":D?E:void 0}),U>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(Et,{type:"dot",position:"top-right",number:Math.min(U,99),size:24})}),D&&nn.createPortal(n.jsx("div",{id:E,role:"group","aria-label":u("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:R,ref:M,children:n.jsx(Oa,{columns:O,onClose:I})}),document.body)]})})]})]})}function Hi(e){if(typeof e!="string")return!1;let t="";for(const r of e){const l=r.charCodeAt(0);l<=32||l>=127&&l<=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 Vi(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function n2(e){const{t}=xe.useTranslation(),{activeKey:a,unreadCount:r,onDebug:l,onNotification:s,onSetting:i,onHelp:u,onFeedback:c,onAccount:d}=e||{},h="default";return l||s||i||u||c||d?n.jsxs("div",{className:"side-nav__footer",children:[l&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:l,selected:a==="debug"}),s&&n.jsxs("span",{className:"side-nav__notification-wrap",children:[n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"bell",ariaLabel:Vi(t,t("nav.notifications","\uC54C\uB9BC"),r),onClick:s,selected:a==="notifications"}),!!r&&r>0&&n.jsx(Et,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),i&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:i,selected:a==="settings"}),u&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:u,selected:a==="help"}),c&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:c,selected:a==="feedback"}),d&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:d,selected:a==="account"})]}):null}function qi(e){const{t}=xe.useTranslation(),{item:a,itemKey:r,label:l,icon:s,active:i,onClick:u,style:c,state:d,labelStyle:h}=e||{},p=a?.key??r??"",f=a?.label??l??"",b=a?.icon??s??"",x=a?.badge??0,C=n.jsx("span",{className:"side-nav__icon-wrap",children:n.jsx(et,{icon:b,label:typeof f=="string"?f:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),m=d==="disabled",_=`side-nav__item ${i?"active":""} ${d||""} ${m?"disabled":""} ${a?.child?"side-nav__item--child":""}`,g=o.useCallback(A=>{if(m)return;const y=A.detail>0;if(y)try{A.currentTarget.blur()}catch{}u?.(p,A.currentTarget,y)},[m,p,u]);return n.jsxs("button",{type:"button",className:_,onClick:g,"aria-label":typeof f=="string"?Vi(t,f,x):void 0,"aria-current":i?"page":void 0,style:c,"aria-disabled":m,children:[C,n.jsx("span",{className:"side-nav__label button-1 f",style:h,children:f}),x>0&&n.jsx(Et,{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 Ui(e){const{t}=xe.useTranslation(),{items:a=[],activeKey:r,onChange:l,unreadCount:s,onDebug:i,onNotification:u,onAccount:c,onSetting:d,onHelp:h,onFeedback:p,appMode:f,onAppModeChange:b,scrollContainer:x}=e||{},C=f==="manager",m=o.useCallback(()=>b?.(C?"malgwi":"manager"),[b,C]),_=o.useRef(null),[g,A]=o.useState(null);o.useEffect(()=>{const k=_.current;if(!k)return;let E=null;const D=()=>{const{scrollHeight:R,clientHeight:Y,scrollTop:M}=k;if(R<=Y+1){A(O=>O===null?O:null);return}const T=Math.max(24,Y/R*Y),L=Y-T,Z=R-Y,G={top:Math.round(M/Z*L),height:Math.round(T)};A(O=>O&&O.top===G.top&&O.height===G.height?O:G)},N=()=>{if(typeof requestAnimationFrame>"u"){D();return}E===null&&(E=requestAnimationFrame(()=>{E=null,D()}))};D(),k.addEventListener("scroll",N,{passive:!0});const I=typeof ResizeObserver<"u"?new ResizeObserver(N):null;I?.observe(k);for(const R of Array.from(k.children))I?.observe(R);return()=>{E!==null&&cancelAnimationFrame(E),k.removeEventListener("scroll",N),I?.disconnect()}},[a]);const y=o.useRef(null),w=o.useCallback(k=>{const E=_.current;E&&(k.preventDefault(),y.current={y:k.clientY,top:E.scrollTop},k.currentTarget.setPointerCapture(k.pointerId))},[]),v=o.useCallback(k=>{const E=_.current,D=y.current;!E||!D||(E.scrollTop=D.top+(k.clientY-D.y)*(E.scrollHeight/E.clientHeight))},[]),B=o.useCallback(k=>{y.current=null,k.currentTarget.hasPointerCapture(k.pointerId)&&k.currentTarget.releasePointerCapture(k.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:w,onPointerMove:v,onPointerUp:B,onPointerCancel:B})}),n.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(k=>!k.section&&(k.key||k.label)).map((k,E)=>n.jsxs(o.Fragment,{children:[k.divider&&n.jsx("div",{className:"side-nav__separator"}),n.jsx(qi,{item:k,active:!!k.key&&k.key===r,state:k.disabled?"disabled":void 0,onClick:(D,N,I)=>{if(k.disabled)return;if(k.href){if(Hi(k.href)&&window.open(k.href,"_blank","noopener,noreferrer"),I)try{N?.blur()}catch{}return}if(l?.(k.key),Eo(x,"SideNav"),!I)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 R=document.querySelector(".header");if(R){const Y=typeof R.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&Y&&R.matches(":hover"))){R.classList.add("header--force-collapsed");const M=()=>{R.classList.remove("header--force-collapsed"),R.removeEventListener("mouseenter",M)};R.addEventListener("mouseenter",M)}}}})]},k.key??`side-nav__item-${E}`)),b&&n.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),b&&n.jsx(qi,{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:m})]}),n.jsx(n2,{activeKey:r,unreadCount:s,onDebug:i,onNotification:u,onAccount:c,onSetting:d,onHelp:h,onFeedback:p})]})}var cr='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>',So='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>',a2='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 Gi({appMode:e}){const{t}=xe.useTranslation(),a=e==="manager",r=a?So:cr,l=a2;return n.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[n.jsx("img",{src:l,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 Ki({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:l,unreadCount:s,onDebug:i,onNotification:u,onAccount:c,onSetting:d,onHelp:h,onFeedback:p,appMode:f,onAppModeChange:b,scrollContainer:x}){const{t:C}=xe.useTranslation(),m=un("(max-width: 767px)"),_=o.useMemo(()=>(a??[]).filter(R=>!R.section&&(R.key||R.label)).map(R=>({key:R.key,label:typeof R.label=="string"?R.label:void 0,icon:R.icon,state:R.disabled?"disabled":void 0,badgeCount:R.badge})),[a]),g=o.useCallback(R=>{const Y=a?.find(M=>M.key===R);if(!Y?.disabled){if(Y?.href){Hi(Y.href)&&window.open(Y.href,"_blank","noopener,noreferrer");return}t?.(R)}},[a,t]),A=o.useMemo(()=>{const R=[];return i&&R.push({key:"debug",icon:"terminal",label:C("nav.debug","\uB514\uBC84\uADF8"),onClick:i}),u&&R.push({key:"notifications",icon:"bell",label:C("nav.notifications","\uC54C\uB9BC"),badgeCount:s,onClick:u}),d&&R.push({key:"settings",icon:"settings",label:C("nav.settings","\uC124\uC815"),onClick:d}),h&&R.push({key:"help",icon:"message-circle-question-mark",label:C("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:h}),p&&R.push({key:"feedback",icon:"bug",label:C("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:p}),c&&R.push({key:"account",icon:"user-round",label:C("nav.account","\uACC4\uC815"),onClick:c}),R},[C,i,u,d,h,p,c,s]),y=o.useCallback((R,Y)=>({position:"fixed",top:R.bottom+8,right:Math.max(8,window.innerWidth-R.right),zIndex:Ia(Y)}),[]),w=o.useId(),{open:v,toggle:B,close:k,style:E,triggerRef:D,menuRef:N}=Fa({computeStyle:y,onScroll:"ignore",onResize:"reposition"}),I=o.useMemo(()=>[{items:A.map(R=>({label:R.label,icon:R.icon,badgeCount:R.badgeCount,selected:R.selected??(!!R.key&&R.key===e),closeOnSelect:!0,onClick:()=>{R.onClick?.(),k()}}))}],[A,e,k]);return n.jsxs("aside",{className:`header${f==="manager"?" header--manager":""}`,children:[n.jsxs("div",{className:"header__bi",children:[n.jsx(Gi,{appMode:f}),n.jsxs("div",{className:"header__menu-button",ref:D,children:[n.jsx(Ce,{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:B,"aria-expanded":v,"aria-controls":v?w:void 0}),!!u&&!!s&&s>0&&n.jsx(Et,{type:"dot",number:Math.min(s,99),size:24,"aria-hidden":!0}),v&&nn.createPortal(n.jsx("div",{id:w,role:"group","aria-label":C("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:E,ref:N,children:n.jsx(Oa,{columns:I,onClose:k})}),document.body)]})]}),n.jsx(Ui,{scrollContainer:x,items:a,activeKey:e??void 0,onChange:t,unreadCount:s,onDebug:i,onNotification:u,onAccount:c,onSetting:d,onHelp:h,onFeedback:p,appMode:f,onAppModeChange:b}),m&&n.jsx(Wi,{items:_,activeKey:e??void 0,onChange:g,scrollContainer:x,appMode:f,onAppModeChange:b})]})}const r2=Ki,o2=()=>Rt.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function Yi(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 ia(`${t.toLocaleString("ko-KR")}\uC6D0`)}return ia(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function s2(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function l2(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 l=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return l?l[2].toLowerCase()==="year"?`${l[1]}\uB144`:`${l[1]}\uC77C`:a||o2()}function i2(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 Zi(e){return{type:e.type??s2(e),plan:l2(e),label:e.label,price:Yi(e.price),originalPrice:Yi(e.originalPrice),discountLabel:e.discountLabel}}var u2='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>',c2='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>',Xi='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"},jo=new WeakMap;function d2(e){if(e)return jo.get(e)}function kn(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),jo.set(e,t))}function An(e){e&&(e.style.removeProperty(Zn.text),e.style.removeProperty(Zn.sub),e.style.removeProperty(Zn.copyright),jo.delete(e))}const Ji={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#1a1a1a"};function Qi(e={}){const t=Nt(Ji,kn,An);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("${Xi}")`}})]})}const eu="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",pa=240;var za='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 p2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"},h2=100,m2=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function tu(e={}){const t=Nt(p2,kn,An),a="var(--color-main)",r=270,l=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:m2.map(({scale:s,opacity:i},u)=>n.jsx("g",{transform:`translate(${r} ${l}) scale(${s*h2/pa}) translate(${-pa/2} ${-pa/2})`,opacity:i,children:n.jsx("path",{d:eu,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("${za}")`}})]})}const f2={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",logoColor:"_mono",copyrightColor:"#ffffff"},C2=100,g2=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function b2(e={}){const t=Nt(f2,kn,An),a="#ffffff",r=270,l=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:g2.map(({scale:s,opacity:i},u)=>n.jsx("g",{transform:`translate(${r} ${l}) scale(${s*C2/pa}) translate(${-pa/2} ${-pa/2})`,opacity:i,children:n.jsx("path",{d:eu,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("${Xi}")`}})]})}const y2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"};function v2(e={}){const t=Nt(y2,kn,An);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("${za}")`}})]})}const x2={Logo_SpeechEar_ko:{"":cr,_mono:u2},Logo_SpeechEarManager_ko:{"":So,_mono:c2}};function _2(e,t){if(e)return x2[e]?.[t??""]??void 0}const w2={speechear:cr,manager:So},B2={speechear:"Logo_SpeechEar_ko",manager:"Logo_SpeechEarManager_ko"},nu=10;function k2(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 au(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 l=Math.floor(e/60);return l>0?t("passCard.remainingMinute",{n:l}):t("passCard.remainingSecond",{n:Math.floor(e)})}function A2(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),l=a==="\uC624\uD508\uD2B9\uAC00"||a===Rt.t("passCard.specialLabel");return r?n.jsx(v2,{}):l?n.jsx(b2,{}):n.jsx(tu,{})}return n.jsx(Qi,{})}function ru({ariaLabel:e,product:t,showPrice:a=!1,plan:r,type:l,endDate:s,remainingSeconds:i,endInclusive:u=!1,state:c="active",bg:d,bgOnly:h=!1,textColor:p,subColor:f,copyrightColor:b,logoSrc:x,label:C,price:m,originalPrice:_,discountLabel:g,onUse:A,onRefund:y,onDelete:w}){const{t:v}=xe.useTranslation(),B=t?Zi(t):void 0,k=l??B?.type??"speechear",E=r??B?.plan??v("passCard.planSuffix","\uC774\uC6A9\uAD8C"),D=C??B?.label,N=m??(a?B?.price:void 0),I=_??(a?B?.originalPrice:void 0),R=g??B?.discountLabel,Y=o.useMemo(()=>{if(N)return null;const q=t?.durationDays??i2(t?.code);if(!q||q<=0)return i!=null?{percent:null,remainingLabel:au(i,v)}:null;const K=q*86400;let ce;if(i!=null)ce=i;else if((c==="active"||c==="expired")&&s){const de=new Date(s).getTime();if(Number.isNaN(de))return null;const oe=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(s)),ge=/^(\d{4})-(\d{2})-(\d{2})/.exec(La()),he=Math.round(oe&&ge?(Date.UTC(+oe[1],+oe[2]-1,+oe[3])-Date.UTC(+ge[1],+ge[2]-1,+ge[3]))/864e5:(de-Date.now())/864e5);ce=Math.max(0,u?he+1:he)*86400}else c==="expired"?ce=0:ce=K;const ke=k2(ce),ye=Math.max(0,Math.min(100,Math.floor(Math.min(ke,K)/K*100)));return c==="pending"&&ye>=100?null:{percent:ye,remainingLabel:c==="expired"?v("passCard.expired","\uB9CC\uB8CC\uB428"):au(ce,v)}},[N,c,s,i,u,t?.durationDays,t?.code,v]),M=o.useRef(null),[T,L]=o.useState({}),[Z,G]=o.useState(null),O=!!(A||y||w),U=o.useRef(!1),$=o.useRef(void 0),[H,z]=o.useState(x);o.useLayoutEffect(()=>{z(x)},[x]),o.useLayoutEffect(()=>{const q=M.current;q&&(p!==void 0&&q.style.setProperty("--pass-card-text",p),f!==void 0&&q.style.setProperty("--pass-card-sub",f),b!==void 0&&q.style.setProperty("--pass-card-copyright",b))},[p,f,b]),o.useLayoutEffect(()=>{const q=M.current;if(!q)return;const K=d2(q);if(!x){const ce=B2[k],ke=c==="expired"?"_mono":K?.logoColor??"",ye=_2(ce,ke);z(ye)}},[d,x,k,c]);const V=q=>{const K=M.current;if(!K)return null;const{left:ce,top:ke,width:ye,height:de}=K.getBoundingClientRect(),oe=(q.clientX-ce)/ye-.5;return{rotateX:-((q.clientY-ke)/de-.5)*nu,rotateY:oe*nu}},S=(q,K)=>{const ce=K*-.7,ke=q*.7+10,ye=20+(Math.abs(q)+Math.abs(K))*.4;return`${ce}px ${ke}px ${ye}px rgba(0, 0, 0, 0.18)`},P=o.useCallback(q=>{if(da())return;U.current=!0,clearTimeout($.current),$.current=setTimeout(()=>{U.current=!1},200);const K=V(q);K&&L({transform:`perspective(800px) rotateX(${K.rotateX}deg) rotateY(${K.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:S(K.rotateX,K.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(q=>{if(da())return;const K=V(q);if(!K)return;const ce=U.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";L({transform:`perspective(800px) rotateX(${K.rotateX}deg) rotateY(${K.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:S(K.rotateX,K.rotateY),transition:ce})},[]),X=o.useCallback(()=>{clearTimeout($.current),U.current=!1,L({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)"})},[]),se=o.useCallback(()=>G(null),[]),ae=o.useMemo(()=>{const q=v("passCard.planSuffix","\uC774\uC6A9\uAD8C"),K=E.replace("\uC774\uC6A9\uAD8C","").replace(q==="\uC774\uC6A9\uAD8C"?"":q,"").trim(),ce=K.match(/^(.*?)(일|년)$/);return ce?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"h0 pass-card__plan-number",children:ce[1]}),n.jsx("span",{className:"h5b pass-card__plan-unit",children:ce[2]==="\uB144"?v("passCard.unitYear","\uB144"):v("passCard.unitDay","\uC77C")})]}):n.jsx("span",{className:"h0",children:K})},[E,v]),me=o.useMemo(()=>{const q=ia(N);if(!q)return null;const K=q.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!K)return n.jsx("span",{className:"h1",children:q});const[,ce,ke,ye]=K;return n.jsxs(n.Fragment,{children:[ce&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:ce}),n.jsx("span",{className:"h1 pass-card__price-amount",children:ke}),ye.trim()&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:ye.trim()})]})},[N]),ne=o.useCallback(()=>{O&&G(q=>{if(q)return null;const K=M.current?.getBoundingClientRect();if(!K)return null;const ce=50;return{left:K.left,right:K.right,width:K.width,height:K.height,x:K.x,y:K.y+ce,top:K.top+ce,bottom:K.bottom+ce}})},[O]),W=o.useCallback(q=>{O&&(q.key==="Enter"||q.key===" ")&&(q.preventDefault(),ne())},[O,ne]),ie=[{items:[...A?[{label:v("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{A(),G(null)},closeOnSelect:!0}]:[],...y?[{label:v("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{y(),G(null)},closeOnSelect:!0}]:[],...w?[{label:v("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{w(),G(null)},closeOnSelect:!0}]:[]]}];return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card-frame",children:n.jsxs("div",{ref:M,className:`pass-card pass-card--${c}${O?" pass-card--clickable":""}`,style:T,onMouseEnter:P,onMouseMove:F,onMouseLeave:X,onPointerUp:q=>{q.pointerType==="touch"&&X()},onPointerCancel:q=>{q.pointerType==="touch"&&X()},onClick:ne,onKeyDown:O?W:void 0,role:O?"button":void 0,tabIndex:O?0:void 0,"aria-label":e,"aria-haspopup":O?"menu":void 0,"aria-expanded":O?!!Z:void 0,children:[d??A2(k,E,D),!h&&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??w2[k],className:"pass-card__logo",alt:k==="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:ae}),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:[R&&n.jsx("span",{className:"pass-card__discount body-3",children:R}),n.jsxs("div",{className:"pass-card__price",children:[I&&n.jsx("span",{className:"pass-card__price-original body-3",children:ia(I)}),me]})]}):Y?n.jsxs("div",{className:"pass-card__usage",children:[n.jsx("span",{className:"h5b pass-card__usage-remaining",children:Y.remainingLabel}),Y.percent!=null&&n.jsxs("span",{className:"pass-card__usage-percent",children:[n.jsx("span",{className:"h1 pass-card__usage-value",children:Y.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(mn,{anchorRect:Z,onClose:se,ariaLabel:v("tooltip.menu","\uBA54\uB274"),children:n.jsx(Oa,{columns:ie,onClose:se,size:"small"})})]})}const N2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#1a1a1a"};function E2(e={}){const t=`passcard-sound-line-grad-${o.useId()}`,a=Nt(N2,kn,An);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("${za}")`}})]})}const D2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"};function S2(e={}){const t=Nt(D2,kn,An);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("${za}")`}})]})}function j2(e,t){if(e){if(t==="manager_pro")return n.jsx(S2,{});if(t==="manager_standard")return n.jsx(E2,{});if(t==="manager_lite")return n.jsx(tu,{})}}function T2(e){const t=ia(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,l,s]=a;return n.jsxs(n.Fragment,{children:[r&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),l,s.trim()&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:s.trim()})]})}function M2(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:l,onSelect:s,period:i="monthly",ownedCodes:u}=e||{},c=y=>!!y&&!!u?.includes(y),d=y=>y.onceOnly??/오픈\s*특가/.test(y.label??""),h=(l.tiers||[]).some(y=>d(y)&&c(y.code)),p=y=>{const w=y.prices?y.prices[i]:y.price;return w?(l.tiers||[]).some(v=>!!v.badge&&v.originals?.[i]===w):!1},f=l.colorToken?`var(--color-${l.colorToken})`:"var(--color-gray)",b=t("payment.plan.freePrice","\uBB34\uB8CC"),x=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),C=y=>y.prices?y.prices[i]:y.price,m=(l.tiers||[]).length>0&&(l.tiers||[]).every(y=>{const w=C(y);return w==="\uBB34\uB8CC"||w===b||w==="0\uC6D0"||typeof w=="string"&&/\d/.test(w)&&!/[1-9]/.test(w)}),_=(l.tiers||[]).length>0&&(l.tiers||[]).every(y=>{const w=C(y);return w==="\uBB38\uC758"||w===x}),g=l.group==="org",A=g?"manager":"speechear";return n.jsxs("div",{className:"payment-plan__card",style:{borderColor:f,"--plan-color":f},children:[l.cardBadge&&n.jsx("div",{className:"payment-plan__card-badge",children:n.jsx(Et,{label:l.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:l.quote||"\xA0"}),n.jsx("h3",{className:"payment-plan__title-heading h1",children:l.tier??l.title}),n.jsx("p",{className:"payment-plan__subtitle body-3",children:l.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:(l.recommendedFor||[]).map((y,w)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(et,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),y]},w))})]}),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:(l.features||[]).map((y,w)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(et,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),y]},w))})]}),n.jsx("div",{className:"payment-plan__card-pricing",children:m?null:_?n.jsx(Ce,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>l.tiers?.[0]&&s?.({...l.tiers[0],productId:l.id,productTitle:l.title})}):n.jsx(n.Fragment,{children:n.jsx("div",{className:"payment-plan__pricing-list",children:(l.tiers||[]).map(y=>{const w=y.label||a,v=d(y),B=v||y.openPromo===!0,k=w.replace(/^오픈\s*특가\s*/,"")||a,E=y.prices?y.prices[i]:y.price,D=y.badge?B?`${r}
|
|
852
|
+
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"},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"},Db={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},Sb={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"},jb={clearAriaLabel:"Clear input"},Tb={ariaLabel:"Select tab"},Mb={ariaLabel:"Tabs"},Lb={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},$b={ariaLabel:"User avatar"},Rb={relativeDay:{today:"Today",yesterday:"Yesterday",daysAgo:"{{n}}d ago"}},Pb={weekly:{title:"Weekly Training",daily:"Daily Listening"},homework:{title:"Homework Progress",totalRate:"Overall rate",done:"Done"},today:{tooltipTotal:"Total",tooltipDone:"Done"},visit:{title:"Linked Visit Records"},detail:"Details",detailFor:"{{name}} details"},Ib={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"}},Fb={steps:"Step {{current}} of {{total}}"},Ob={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.",runs_one:"{{count}} run",runs_other:"{{count}} runs"},zb={resetColumns:"Reset column widths",scrollRegion:"Horizontally scrollable table",rowActionHint:"Press a row to open its details"},Wb={viewWords:"Words"},Hb={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},Vb={chooseDate:"Choose a date",selectYear:"Select year",selectMonth:"Select month"},qb={previewRegion:"Report preview \u2014 scrollable sideways"},Ub={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},Gb={place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},Kb={clearSelection:"Clear selection"},Yb={showResult:"Show {{type}} result"},Zb={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},Xb={loading:"Loading"},Jb={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},Qb={ariaLabel:"Breadcrumb"},ey={empty:"No items yet."},ty={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"},ny={common:tb,calendar:nb,passCard:ab,rating:rb,colorPicker:ob,dropdown:sb,accordion:lb,header:ib,nav:ub,settings:cb,usage:db,account:pb,training:hb,customers:mb,payment:fb,coupons:Cb,visits:gb,trainingType:bb,myWordTable:yb,keyWords:vb,wordTable:xb,wordSearch:_b,wordPrint:wb,topic:Bb,device:kb,manager:Ab,wordPairs:Nb,footer:Eb,date:Db,wordData:Sb,textField:jb,segmentedControl:Tb,tabs:Mb,fileUpload:Lb,avatar:$b,myHomework:Rb,trainingStatus:Pb,store:Ib,progress:Fb,trainingMiss:Ob,table:zb,wordScore:Wb,topBanner:Hb,datePicker:Vb,report:qb,tooltip:Ub,phonemeProfile:Gb,bulkBar:Kb,debug:Yb,badge:Zb,loader:Xb,soundCompass:Jb,breadcrumb:Qb,board:ey,promoBannerBg:ty};const ay="0.354.0",ry=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],co="ko",oy="ihab_display_language";function ql(){if(typeof window>"u")return co;try{const e=localStorage.getItem(oy);if(e&&ry.some(t=>t.code===e))return e}catch{}return co}function Ul(e){try{document.documentElement.lang=e}catch{}}Rt.on("languageChanged",Ul),Ul(ql()),Rt.use(xe.initReactI18next).init({resources:{ko:{translation:eb},en:{translation:ny}},lng:ql(),fallbackLng:co,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const sy=new Map;try{Rt.store?.on?.("added",()=>sy.clear())}catch{}let or=null,Gl=null,Kl=null;function ly(){const e=Ll();if(e&&e.entries.length>0){const t=yC();if(or&&Gl===e&&Kl===t)return or;const a=new Set,r=[];for(const l of e.entries)!l.word||a.has(l.word)||(a.add(l.word),r.push({w:l.word,s:l.syllables,p:t?.[l.word]?[...t[l.word].cho??[],...t[l.word].jung??[],...t[l.word].jong??[]]:[],pron:l.pronunciation||l.word,grade:l.grade}));return or=r,Gl=e,Kl=t,or}return[]}new Proxy([],{get(e,t){const a=ly(),r=a[t];return typeof r=="function"?r.bind(a):r}});function iy(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 uy(e){if(typeof window>"u")return"";const t=(a,r)=>{typeof r.attrValue=="string"&&iy(r.attrValue)&&(r.keepAttr=!1)};oa.addHook("uponSanitizeAttribute",t);try{return oa.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{oa.removeHook("uponSanitizeAttribute",t)}}function cy(e){const[t,a]=o.useState(null),[r,l]=o.useState(null),[s,i]=o.useState(null),[u,c]=o.useState(null),[d,h]=o.useState(null);return o.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),l(null),i(null),c(null);return}const p=e.split("/").pop();let f=e;p&&(e.startsWith("/")?f=Yr(e):/^(Logo|Symbol)/i.test(p)?f=Yr(`logo/${p}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),f=e)),i(null),c(null),a(e),l(f)},[e]),o.useEffect(()=>{if(!r)return;let p=!1;async function f(){try{let b=await fetch(r);b.ok||(b=await fetch(r));const x=b.headers.get("content-type")||"";if(p)return;if(x.includes("svg")){i("mask");return}if(x.startsWith("image/")){i("img");return}const C=await fetch(r);if(!C.ok)throw new Error("not ok");const m=await C.text();if(p)return;if(/^\s*<svg[\s>]/i.test(m)){const _=uy(m);if(!_){i("none");return}c(_),i("inline");return}i("none")}catch{p||i("none")}}return f(),()=>{p=!0}},[r]),o.useEffect(()=>{let p=!1,f=null;return s==="mask"&&r&&fetch(r).then(b=>{if(!b.ok)throw new Error("fetch failed");return b.blob()}).then(b=>{p||(f=URL.createObjectURL(b),h(f))}).catch(()=>{p||i("img")}),()=>{p=!0,f&&URL.revokeObjectURL(f),h(null)}},[s,r]),t===e?{iconToUse:r,mode:s,svgText:u,blobUrl:d}:{iconToUse:null,mode:null,svgText:null,blobUrl:null}}function et(e){const{icon:t,label:a,className:r,imgClassName:l,maskClassName:s,svgClassName:i,wrapperStyle:u,size:c}=e||{},d=r??"iconRenderer-icon",h=l??"iconRenderer-icon-image",p=s??"iconRenderer-icon-mask",f=i??"iconRenderer-icon-svg",b=typeof t=="string"?t:null,x=J1(b),{iconToUse:C,mode:m,svgText:_,blobUrl:g}=cy(b),A=(k,E={})=>n.jsx("span",{className:d,style:u,...E,children:k}),y=typeof c=="number"?{width:c,height:c,objectFit:"contain"}:null,w=(k,E={})=>n.jsx("img",{src:k,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:h,...E,style:y?{...E.style,...y}: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(m==="mask"){const k={"--icon-url":g?`url(${g})`:`url(${C})`,...typeof c=="number"?{"--icon-size":`${c}px`}:null};return A(n.jsx("span",{className:p,style:k}),{"aria-hidden":"true"})}return m==="img"?A(w(C,{onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):m==="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 w(Yr(t),{style:u,onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}});const v=typeof c=="number"?c:20,B=`<svg width="${v}" height="${v}" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="18" height="18" rx="2" ry="2" style="fill:none;stroke:currentColor;stroke-width:2"/></svg>`;return A(n.jsx("span",{className:f,dangerouslySetInnerHTML:{__html:B}}),{"aria-hidden":"true"})}function Yl(e){const[t,a]=o.useState(!1),r=o.useRef(!1),l=o.useRef(!0);o.useEffect(()=>(l.current=!0,()=>{l.current=!1}),[]);const s=o.useCallback(()=>{if(!e||r.current)return;const i=e();if(i&&typeof i.then=="function"){r.current=!0,a(!0);const u=()=>{r.current=!1,l.current&&a(!1)};i.then(u,u)}},[e]);return{pending:t,press:s}}function dy({icon:e,title:t,message:a,action:r,className:l}){const{pending:s,press:i}=Yl(r?.onClick);return n.jsxs("div",{className:_e("empty-state",l),children:[e&&n.jsx(et,{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:i,disabled:s,"aria-busy":s||void 0,children:[r.icon&&n.jsx(et,{icon:r.icon,className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:r.label})]})]})}function py({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:l,className:s}){const{t:i}=xe.useTranslation(),{pending:u,press:c}=Yl(r);return n.jsxs("div",{className:_e("empty-state","error-state",s),role:"alert",children:[n.jsx(et,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),n.jsx("p",{className:"empty-state__message body-3",children:e??i("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(et,{icon:"rotate-cw",className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:l??i("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function hy({icon:e,title:t,description:a,cta:r,tone:l="main",disabled:s=!1,onClick:i,className:u=""}){const c=o.useId(),d=`${c}-title`,h=`${c}-desc`,p=`${c}-cta`,f=()=>{s||i?.()};return n.jsx("section",{role:"button",tabIndex:s?-1:0,"aria-disabled":s||void 0,"aria-labelledby":d,"aria-describedby":`${h} ${p}`,onClick:f,onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),f())},className:_e("action-card",`action-card--${l}`,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(et,{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:h,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(et,{icon:"arrow-right",size:18})})]})]})})}function my({as:e="div",className:t="",children:a,storage:r,...l}){r&&Of({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,...l,children:a})}function fy(e){if(e.closest('[aria-hidden="true"], [hidden], [inert]'))return!1;for(let t=e;t;t=t.parentElement){const a=window.getComputedStyle(t);if(a.display==="none"||a.visibility==="hidden"||a.visibility==="collapse")return!1}return!0}function po(e,t=!0){o.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=l=>{if(l.key!=="Tab")return;const s=Array.from(a.querySelectorAll(gn)).filter(fy);if(!s.length){l.preventDefault();return}const i=s[0],u=s[s.length-1],c=document.activeElement,d=c===a;l.shiftKey&&(c===i||d)?(l.preventDefault(),u.focus()):!l.shiftKey&&c===u&&(l.preventDefault(),i.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const gn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',ho=new WeakMap;function mo(e,t){e&&ho.set(e,t)}function fo(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let r=t;for(;r&&!ho.has(r);)r=r.parentElement;if(!r)return t;t=ho.get(r)??null}return t}function Zl(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 sr(e,t,a){const r=e?.isConnected?e:a?.isConnected?a:null;if(Zl(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!r)return null;const l=Array.from(document.querySelectorAll(gn)).filter(c=>!(e&&e.contains(c))&&Zl(c));let s=null,i=null;for(const c of l)r.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_PRECEDING?s=c:i||(i=c);const u=s??i;return u?.focus(),u}function Cy({title:e="",lines:t=[],notices:a=null,children:r,variant:l="default",dismissible:s=!1,className:i=""}){const{t:u}=xe.useTranslation(),[c,d]=o.useState(!1),h=o.useRef(null),p=o.useCallback(()=>{const C=h.current;C&&C.contains(document.activeElement)&&sr(C),d(!0)},[]);if(c)return null;const f=`notice-box notice-box--${l} body-2 ${i}`.trim(),b=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,m)=>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})]},m)),b]});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,m)=>n.jsx("li",{className:"notice-box__line",children:C},m))}):r})]}):n.jsx("div",{className:"notice-box__inner",children:r});return n.jsxs("div",{ref:h,className:f,role:"note",children:[x,b]})}const ua=[];let lr=!1;function Xl(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=ua[ua.length-1];t&&(e.stopPropagation(),t())}function Gn(e){return ua.push(e),!lr&&typeof document<"u"&&(document.addEventListener("keydown",Xl),lr=!0),()=>{const t=ua.lastIndexOf(e);t>=0&&ua.splice(t,1),ua.length===0&&lr&&typeof document<"u"&&(document.removeEventListener("keydown",Xl),lr=!1)}}const Jl=o.createContext(null);function gy(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const Ql=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function by(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 Ss.useSyncExternalStore(t,()=>Ql(e),()=>!1)}function yy(e){const[t,a]=o.useState(Ql(e));return o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),l=i=>a(i.matches),s=r;return s.addEventListener?s.addEventListener("change",l):s.addListener&&s.addListener(l),a(r.matches),()=>{s.removeEventListener?s.removeEventListener("change",l):s.removeListener&&s.removeListener(l)}},[e]),t}const vy=typeof Ss.useSyncExternalStore=="function"?by:yy;function un(e){const t=o.useContext(Jl),a=vy(e);return t&&typeof t.mobile=="boolean"&&gy(e)?t.mobile:a}const xy="(prefers-reduced-motion: reduce)";function Co(){return un(xy)}function mn(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:l=20,onClose:s,closeOnOutsideClick:i=!0,className:u="",role:c="dialog",ariaLabel:d="",children:h,backdrop:p=!1,isMobilePopup:f=!1,useBorder:b=!0,header:x,focusOnOpen:C}=e||{},m=o.useRef(null),[_,g]=o.useState({position:"fixed",left:0,top:-9999}),[A,y]=o.useState(!1),[w,v]=o.useState("bottom"),[B,k]=o.useState(!1),[E,D]=o.useState(!1),N=!t&&!a,I=o.useCallback((U=!1)=>{if(E&&f)return;const $=a?a.getBoundingClientRect():t;if(!$||!m.current)return;const H=m.current,{offsetWidth:z,offsetHeight:V}=H,S=window.innerWidth,P=window.innerHeight,F=S-$.right,X=$.left,se=$.top,ae=P-$.bottom;let me=0,ne=0,W="top";if(se>=V+r)W="top",ne=$.top-r-V,me=$.left+$.width/2-z/2;else if(ae>=V+r)W="bottom",ne=$.bottom+r,me=$.left+$.width/2-z/2;else if(F>=z+r)W="right",me=$.right+r,ne=$.top+$.height/2-V/2;else if(X>=z+r)W="left",me=$.left-r-z,ne=$.top+$.height/2-V/2;else{const ce=Math.max(se,ae,F,X);ce===se?(W="top",ne=$.top-r-V,me=$.left+$.width/2-z/2):ce===ae?(W="bottom",ne=$.bottom+r,me=$.left+$.width/2-z/2):ce===F?(W="right",me=$.right+r,ne=$.top+$.height/2-V/2):(W="left",me=$.left-r-z,ne=$.top+$.height/2-V/2)}const ie=Number.isFinite(Number(l))?Number(l):8;me=Math.min(Math.max(me,ie),S-z-ie),ne=Math.min(Math.max(ne,ie),P-V-ie);const q=Math.round(me),K=Math.round(ne);U&&m.current?(m.current.style.left=`${q}px`,m.current.style.top=`${K}px`,m.current.dataset.placement=W):(v(W||w),g({position:"fixed",left:q,top:K}),k(!0))},[E,f,a,t,r,l,w]);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)"}),k(!0);return}I();const U=requestAnimationFrame(()=>I());return()=>cancelAnimationFrame(U)},[t,a,r,h,l,N,E,f,I]),o.useEffect(()=>{if(N||E&&f||!m.current||typeof ResizeObserver>"u")return;const U=new ResizeObserver(()=>{t&&I()});return U.observe(m.current),()=>U.disconnect()},[t,h,l,N,E,f,I]),o.useEffect(()=>{if(N||E&&f)return;let U=null;const $=()=>{if(typeof requestAnimationFrame>"u"){I(!0);return}U===null&&(U=requestAnimationFrame(()=>{U=null,I(!0)}))},H=z=>{if(!a&&s){const V=z.target;if(V&&m.current&&m.current.contains(V))return;try{if(V&&V.closest&&V.closest("[data-tooltip-ignore]"))return}catch{}L.current(!0);return}$()};return window.addEventListener("resize",$),document.addEventListener("scroll",H,{passive:!0,capture:!0}),()=>{U!==null&&cancelAnimationFrame(U),window.removeEventListener("resize",$),document.removeEventListener("scroll",H,{capture:!0})}},[t,a,s,r,h,l,N,E,f,I]),o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const U=window.matchMedia("(max-width: 768px)"),$=()=>D(!!U.matches);$();try{U.addEventListener?U.addEventListener("change",$):U.addListener($)}catch{try{U.addListener($)}catch{}}return()=>{try{U.removeEventListener?U.removeEventListener("change",$):U.removeListener($)}catch{}}},[]);const R=o.useRef(!1),Y=o.useRef(null),M=Co(),T=o.useCallback((U=!1)=>{if(s&&!(A||R.current)){if(R.current=!0,U){y(!0);try{s&&s()}catch{R.current=!1,y(!1)}return}y(!0),Y.current=setTimeout(()=>{Y.current=null;try{s&&s()}catch{R.current=!1,y(!1)}},M?0:200)}},[A,s,y,M]);o.useEffect(()=>()=>{Y.current&&clearTimeout(Y.current)},[]),o.useEffect(()=>{if(N)return;const U=z=>{const V=m.current;if(!V)return;const S=z.target;if(S&&!V.contains(S)){try{if(S.closest&&S.closest("[data-tooltip-ignore]"))return}catch{}i&&T(!0)}},$=z=>{const V=m.current;if(!V)return;const S=z.target;if(S&&!V.contains(S)){try{if(S.closest&&S.closest("[data-tooltip-ignore]"))return}catch{}i&&T(!0)}},H=z=>{if(z.key==="Tab"){const V=m.current;if(!V)return;const S=V.querySelectorAll(gn);if(!S||S.length===0)return;const P=S[0],F=S[S.length-1],X=document.activeElement;z.shiftKey?X===P&&(z.preventDefault(),F.focus()):X===F&&(z.preventDefault(),P.focus())}};return document.addEventListener("pointerdown",U,!0),document.addEventListener("click",$,!0),document.addEventListener("keydown",H),()=>{document.removeEventListener("pointerdown",U,!0),document.removeEventListener("click",$,!0),document.removeEventListener("keydown",H)}},[s,i,T,N]);const L=o.useRef(T);o.useEffect(()=>{L.current=T});const Z=!!s;o.useEffect(()=>{if(!(N||!Z))return Gn(()=>L.current())},[N,Z]),o.useEffect(()=>{const U=()=>{T(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",U),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",U)}},[T]);const G=o.useRef(null);o.useEffect(()=>{if(N||C===!1||!B)return;const U=m.current;if(!U)return;const $=U.querySelector(gn);if($)return G.current=document.activeElement,$.focus(),()=>{const H=G.current;G.current=null,H&&document.contains(H)&&H.focus()}},[N,C,B]),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 O=n.jsxs("div",{ref:m,className:`tooltip-content ${N?"tooltip-content--inline":""} ${b?"tooltip-content--bordered":""} ${A?"is-closing":""} ${u} ${E&&f?"is-mobile":""}`,role:c,"aria-label":d||void 0,style:N?{}:{..._,visibility:B?"visible":"hidden"},tabIndex:-1,"data-placement":w,"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}),h]});if(N||typeof document>"u")return O;if(p||E&&f){const U=n.jsxs("div",{className:"tooltip-portal",children:[n.jsx("div",{className:"tooltip-backdrop",onClick:()=>{i&&T(!0)}}),O]});return nn.createPortal(U,document.body)}return nn.createPortal(O,document.body)}function wn(e){const{anchorRect:t,text:a,offset:r=8,onClose:l,className:s="",ariaLabel:i}=e||{};return a?n.jsx(mn,{anchorRect:t,offset:r,onClose:l,closeOnOutsideClick:!1,className:`tooltip-info ${s}`,ariaLabel:i||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:l,activeIndex:s=-1,showIndex:i=!0,onClose:u,offset:c=12,closeOnOutsideClick:d=!0}=e||{},h=(Array.isArray(l)?l:l?[l]:[]).map(p=>typeof p=="string"?{text:p}:p);return!h.length&&!r?null:n.jsx(mn,{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:h.map((p,f)=>n.jsxs("li",{className:`tooltip-description__item body-3${f===s?" tooltip-description__item--active":""}`,children:[i&&h.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 $a(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),t}let go=0,ei=!1;function ti(){ei||typeof document>"u"||(ei=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(go=Date.now())},!0),document.addEventListener("touchstart",()=>{go=Date.now()},{capture:!0,passive:!0}))}ti();function ca(e){return!!e&&e.pointerType==="touch"}function da(e=1e3){return ti(),Date.now()-go<e}function bo(e,t,a,{enabled:r=!0,fallbackOnParent:l=!1}={}){const s=$a(e),i=$a(t),u=o.useRef(null),c=o.useRef(0);o.useEffect(()=>{if(!r||typeof document>"u")return;const h=p=>{const f=p,b=p.target,x=a.current,C=!!(b&&x&&x.contains(b));if(f.pointerType!=="touch"){C&&(u.current=null);return}if(C){u.current=s.current;return}u.current=null,s.current&&!(b&&b.closest?.(".tooltip-content"))&&i.current(!1,x)};return document.addEventListener("pointerdown",h,!0),()=>document.removeEventListener("pointerdown",h,!0)},[r,a,s,i]);const d=o.useCallback(h=>{const p=u.current;return p===null?!1:(u.current=null,c.current=Date.now(),i.current(!p,h??a.current),!0)},[a,i]);return o.useEffect(()=>{if(!r||!l)return;const h=a.current,p=h?.parentElement;if(!h||!p)return;let f=null;const b=m=>{const _=m.changedTouches?.[0];if(!_)return!1;const g=h.getBoundingClientRect();return _.clientX>=g.left&&_.clientX<=g.right&&_.clientY>=g.top&&_.clientY<=g.bottom},x=m=>{f=b(m)?s.current:null},C=m=>{const _=f;f=null,!(_===null||Date.now()-c.current<700||!b(m))&&(u.current=null,c.current=Date.now(),i.current(!_,h))};return p.addEventListener("touchstart",x,{passive:!0}),p.addEventListener("touchend",C),()=>{p.removeEventListener("touchstart",x),p.removeEventListener("touchend",C)}},[r,l,a,s,i]),{touchPress:d}}function _y(e,t){const{size:a=48,type:r,htmlType:l,href:s,target:i,rel:u,icon:c,rightIcon:d,label:h,count:p,subLabel:f,children:b,ariaLabel:x,variant:C="default",align:m="center",nowrap:_=!1,selected:g,toggleable:A=!1,ariaExpanded:y,ariaControls:w,disabled:v=!1,useLabel:B=!0,useBorder:k=!0,useBG:E=!0,useDisabledCovered:D=!1,useDisabledInvisible:N=!1,width:I,minWidth:R,onClick:Y,onDisabledClick:M,showTooltipInfo:T=!1,tooltipInfoText:L=null,tooltipDescription:Z=null,tooltipOnly:G=!1,iconSize:O="medium",iconColor:U,shape:$="rounded",color:H,className:z,...V}=e,S=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),P=S.match(/^\d+$/)?`button${S}`:`button-${S}`,F=Number(a),X=!isNaN(F)&&F<40?"button-2":"button-1",se=h??b,ae=v||!!V.disabled,me=ae?D?"disabled-covered":N?"disabled-invisibled":"disabled":C,ne=me?`button--variant-${me}`:"",W=m?`button--align-${m}`:"",ie=_?"button--nowrap":"",q=$?`button--shape-${$}`:"",K=typeof U=="string"&&U.startsWith("--")?`var(${U})`:U,ce={...I?{width:typeof I=="number"?`${I}px`:I}:{},...R?{minWidth:typeof R=="number"?`${R}px`:R}:{},...k?{}:{"--button-border":ae?"0":"1px solid transparent"},...K?{"--button-icon-color":K}:{},...H?{"--color-main":H}:{}},ke=B===!1?"":se,ye=Array.isArray(ke)?ke.length>0:!!ke,de=!!d,oe=r??(ye||c||de?"bar":"dot"),ge=`${P}--${oe}`,he=o.useRef(null);o.useEffect(()=>{!$n||l!==void 0||he.current?.closest("form")&&St(`button-in-form:${typeof se=="string"?se:""}`,'[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 se=="string"&&se?` \uB2E8\uCD94: ${se}`:""))},[l,se]);const pe=o.useRef(t);pe.current=t;const Me=o.useCallback(Re=>{he.current=Re;const ot=pe.current;typeof ot=="function"?ot(Re):ot&&(ot.current=Re)},[]),ze=o.useRef(ae),[Le,Fe]=o.useState(!!g),[We,pt]=o.useState(!1),[it,at]=o.useState(null),ht=o.useCallback(()=>pt(!1),[]),[Ne,Ve]=o.useState(!1),we=o.useId();o.useEffect(()=>{typeof g=="boolean"&&Fe(g)},[g]),o.useEffect(()=>{if(ze.current&&!ae&&he.current){const Re=he.current;let ot=!1;try{ot=Re.matches(":focus:not(:focus-visible)")}catch{ot=!1}ot&&Re.blur(),Re.style.pointerEvents="none";const ft=requestAnimationFrame(()=>{requestAnimationFrame(()=>{he.current&&(he.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(ft)}ze.current=ae},[ae]);const Ue=typeof g=="boolean"?!!g:Le,Ae=typeof y=="boolean"?void 0:A||typeof g=="boolean"?Ue?"true":"false":V["aria-pressed"],$e=_e("button",P,ge,ne,W,ie,q,Ue?"is-selected":null,E?null:"button--no-bg",G?"button--tooltip-only":null,z),Se=`button__icon button__icon--${O}`,Xe=Array.isArray(f)?f:f!==void 0?[f]:[],gt=()=>{if(Array.isArray(ke))return ke.map((ot,ft)=>{const Bt=Xe[ft];return n.jsxs("span",{className:`button__label-text${Bt!==void 0?" button__label-text--has-sub":""}`,children:[ot,Bt!==void 0&&n.jsx("span",{className:"button__sub-label-text caption-1",children:Bt})]},ft)});const Re=f!==void 0;return n.jsxs("span",{className:`button__label-text${Re?" button__label-text--has-sub":""}`,children:[ke,p!=null&&n.jsx("span",{className:"button__count",children:p}),Re&&n.jsx("span",{className:"button__sub-label-text caption-1",children:f})]})},nt=Re=>{typeof g!="boolean"&&!A&&Fe(!1),Re.currentTarget.blur()},Je=Re=>{ae||(typeof V.onMouseLeave=="function"&&V.onMouseLeave(Re),nt(Re))},_t=Re=>{if(G&&vt&&bt.touchPress(Re.currentTarget),ae){vt&&bt.touchPress(Re.currentTarget),Re.preventDefault(),M?.(Re);return}typeof g!="boolean"&&A&&Fe(ot=>!ot),Y?.(Re)},mt=o.useCallback(()=>{(T||Z)&&(pt(!0),at(he.current?.getBoundingClientRect()??null))},[T,Z]),wt=o.useCallback(()=>{(T||Z)&&(pt(!1),at(null))},[T,Z]),vt=!!(T||Z),bt=bo(We,Re=>{Re?mt():wt()},he,{enabled:vt&&(ae||G),fallbackOnParent:vt&&ae}),Ke={...V};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,ae&&(Object.keys(Ke).forEach(Re=>{/^on[A-Z]/.test(Re)&&typeof Ke[Re]=="function"&&delete Ke[Re]}),Ke["aria-disabled"]="true");const re=(typeof T=="string"?T:null)??(typeof L=="string"?L:null)??(typeof x=="string"?x:null)??(typeof se=="string"?se:null)??void 0,Ee=typeof x=="string"?x:typeof se=="string"?se:re,Qe=Z?[Z.title,...Z.items??[]].filter(Boolean).join(". "):T&&re&&re!==Ee?re:"",qe=[typeof V["aria-describedby"]=="string"?V["aria-describedby"]:void 0,Qe?we:null].filter(Boolean).join(" ")||void 0,rt=(Re,ot)=>n.jsx(et,{icon:Re,label:ot??Ee,className:Se,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),Te=()=>oe==="dot"?n.jsxs(n.Fragment,{children:[rt(c),ye&&n.jsx("span",{className:`button__label ${X}`,children:gt()})]}):m==="center"&&c?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"button__center-group",children:[n.jsx("span",{className:"button__left",children:rt(c)}),ye&&n.jsx("span",{className:`button__label ${X}`,children:gt()})]}),de&&n.jsx("span",{className:"button__right",children:rt(d)})]}):n.jsxs(n.Fragment,{children:[c&&n.jsx("span",{className:"button__left",children:rt(c,x??se)}),ye&&n.jsx("span",{className:`button__label ${X}`,children:gt()}),de&&n.jsx("span",{className:"button__right",children:rt(d)})]}),ut=!!s&&!ae;return n.jsxs(n.Fragment,{children:[n.jsxs(ut?"a":"button",{...Ke,ref:Me,...ut?{href:s,target:i,rel:u??(i==="_blank"?"noreferrer":void 0)}:{type:l??"button",disabled:ae&&!M&&!Ne},className:$e,"aria-pressed":Ae,"aria-expanded":typeof y=="boolean"?y:V["aria-expanded"],"aria-controls":w??V["aria-controls"],"aria-label":Ee,"aria-disabled":ae&&(ut||M||Ne)?!0:void 0,"aria-describedby":qe,style:ce,onClick:_t,onMouseLeave:Je,onPointerEnter:Re=>{ca(Re)||mt(),!ae&&typeof V.onPointerEnter=="function"&&V.onPointerEnter(Re)},onPointerLeave:Re=>{ca(Re)||wt(),!ae&&typeof V.onPointerLeave=="function"&&V.onPointerLeave(Re)},onPointerUp:Re=>{ae&&vt&&bt.touchPress(Re.currentTarget),!ae&&typeof V.onPointerUp=="function"&&V.onPointerUp(Re)},onFocus:Re=>{Ve(!0),da()||mt(),!ae&&typeof V.onFocus=="function"&&V.onFocus(Re)},onBlur:Re=>{Ve(!1),ae||nt(Re),wt(),!ae&&typeof V.onBlur=="function"&&V.onBlur(Re)},children:[Te(),Qe?n.jsx("span",{id:we,hidden:!0,"aria-label":Qe}):null]}),We&&Z?n.jsx(Kn,{anchorRect:it,title:Z.title,items:Z.items,onClose:ht}):We&&re?n.jsx(wn,{anchorRect:it,text:re,onClose:ht}):null]})}const Ce=o.forwardRef(_y);Ce.displayName="Button";function Nt(e,t,a){const r=o.useRef(null);return o.useLayoutEffect(()=>{const l=r.current?.parentElement??null;return t(l,e),()=>a(l)},[e,t,a]),r}const Ra={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},yo=new WeakMap;function vo(e){if(e)return yo.get(e)}function Wt(e,t){e&&(e.style.setProperty(Ra.title,t.title),e.style.setProperty(Ra.description,t.description),yo.set(e,t))}function Ht(e){e&&(e.style.removeProperty(Ra.title),e.style.removeProperty(Ra.description),yo.delete(e))}const ni={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function ai(){const e=Nt(ni,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const ri={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function oi(){const e=Nt(ri,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const si={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function li(){const e=Nt(si,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const ii={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function ui(){const e=Nt(ii,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const ci={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function di(){const e=Nt(ci,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const pi={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function hi(){const e=Nt(pi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const mi={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function fi(){const e=Nt(mi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const Ci={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function gi(){const e=Nt(Ci,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const bi={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function yi(){const e=Nt(bi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const vi={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function xi(){const e=Nt(vi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const _i={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function wi(){const e=Nt(_i,Wt,Ht);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 Bi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function ki(){const e=Nt(Bi,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const Ai={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function Ni(){const e=Nt(Ai,Wt,Ht);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const Ei={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Di(){const e=Nt(Ei,Wt,Ht);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}),wy=[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")],Si={main:ai,soft:oi,sub:li,deep:ui,softSub:di,warm:hi,dark:fi,radial:gi,diagonal:yi,dots:xi,outline:wi,success:ki,naver:Ni,instagram:Di};function ji({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:l=.1,lineHeightRatio:s=1.4}={}){const i=A=>Math.max(a,Math.min(r,Number(A))),u=A=>{try{const y=localStorage.getItem(A),w=y?Number(y):1;return Number.isFinite(w)?i(w):i(1)}catch{return i(1)}},[c,d]=o.useState(()=>u(e)),[h,p]=o.useState(e);h!==e&&(p(e),d(u(e))),o.useEffect(()=>{try{localStorage.setItem(e,String(c))}catch{}},[e,c]);const f=A=>{d(typeof A=="function"?y=>i(A(y)):i(A))},b=()=>f(A=>+(A+l).toFixed(6)),x=()=>f(A=>+(A-l).toFixed(6)),C=c<r-Number.EPSILON,m=c>a+Number.EPSILON,_=Math.round(t*c),g=Math.round(_*s);return{scale:c,setScale:f,increase:b,decrease:x,canIncrease:C,canDecrease:m,fontSize:_,lineHeight:g}}function Ti(e,t){const a=$a(t);o.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const xo=" \xB7 ",Mi=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(xo)?e.split(xo).pop()??e:e})(),By=o.createContext(!1),Yn=[];let Li=null;function ky(e){const t=o.useContext(By);o.useEffect(()=>{if(t||typeof e!="string"||!e)return;Yn.length===0&&(Li=document.title);const a={text:Mi?`${e}${xo}${Mi}`: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:Li??document.title}},[e,t])}const _o=[{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"}],Ay=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function on(e,t){return Ay().compare(e,t)}const ir=new Map;function Ny(e){const t=ir.get(e);if(t)return t;const a=[],r=/-?\d+(?:\.\d+)?/g;let l=0;for(let s=r.exec(e);s;s=r.exec(e)){let i=s.index,u=s[0];u[0]==="-"&&i>0&&!/\s/.test(e[i-1])&&(i+=1,u=u.slice(1)),i>l&&a.push(e.slice(l,i)),a.push(Number(u)),l=s.index+s[0].length}return l<e.length&&a.push(e.slice(l)),ir.size>5e3&&ir.clear(),ir.set(e,a),a}function Ey(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 Dy(e,t){const a=d=>d==null||typeof d=="number"&&Number.isNaN(d)?"":String(d).trim(),r=a(e),l=a(t);if(r===l)return 0;const s=(d,h)=>{if(typeof d=="number"&&!Number.isNaN(d))return[d];const p=Ey(h);return p!==null?[p]:Ny(h)},i=s(e,r),u=s(t,l),c=Math.min(i.length,u.length);for(let d=0;d<c;d++){const h=i[d],p=u[d];if(typeof h=="number"&&typeof p=="number"){if(h!==p)return h-p;continue}if(typeof h=="number")return-1;if(typeof p=="number")return 1;const f=on(h,p);if(f!==0)return f}return i.length!==u.length?i.length-u.length:on(r,l)}const $i=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function wo(e,t,a){const r=$i(e),l=$i(t);if(r||l)return r===l?0:r?1:-1;const s=Dy(e,t);return a?s:-s}function Sy(e,t,a){const{t:r}=xe.useTranslation(),[l,s]=o.useState(()=>{const x=a?.initialPageSize;return x&&_o.some(C=>C.value===x)?x:"25"}),[i,u]=o.useState(1),[c,d]=o.useState(t);Object.is(c,t)||(d(t),i!==1&&u(1));const h=o.useMemo(()=>_o.map(x=>({...x,label:r("visits.showN",{n:x.value})})),[r]),p=o.useCallback(x=>{_o.some(C=>C.value===x)&&(s(x),u(1))},[]),f=Math.max(1,Math.ceil(e.length/Number(l))),b=Math.min(Math.max(1,Number.isFinite(i)?Math.floor(i):1),f);return i!==b&&u(b),{pageRows:o.useMemo(()=>e.slice((b-1)*Number(l),b*Number(l)),[e,b,l]),pageSizeProps:{options:h,value:l,onChange:p},paginationProps:{page:b,total:f,onChange:u},setPage:u}}function jy(e){const[t,a]=o.useState(null),r=o.useRef(t),l=o.useRef(e?.onSortChange);l.current=e?.onSortChange;const s=o.useCallback(c=>{const d=r.current,h=d?.key===c?{key:c,asc:!d.asc}:{key:c,asc:!0};r.current=h,a(h),l.current?.(h)},[]),i=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:h,asc:p}=t;return[...c].sort((f,b)=>wo(d(f,h),d(b,h),p))},[t]);return{sort:t,field:i,sortRows:u}}const fn="\uC804\uCCB4";Object.fromEntries(Object.entries(cC).map(([e,{nucleus:t}])=>[e,t]));const Ty={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"})},My={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"})},Ly={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 $y(e,t){if("place"in t)return Ty[t.place](e);const a=My[t.vowel](e);return t.glide?`${a} \xB7 ${Ly[t.glide](e)}`:a}const Ry=(e,{defaultValue:t})=>t,Ri=(e,t)=>({jamos:e,phonetic:t,tooltip:$y(Ry,t)}),Bn=(e,t)=>t.map(a=>Ri([a],{place:e})),Pt=(e,t,a)=>Ri([...e],a?{vowel:t,glide:a}:{vowel:t}),Bo={cho:[Bn("labial",["\u3142","\u3143","\u314D","\u3141"]),Bn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),Bn("alveolar",["\u3145","\u3146"]),Bn("palatal",["\u3148","\u3149","\u314A"]),Bn("velar",["\u3131","\u3132","\u314B"]),Bn("glottal",["\u314E"])],jung:[[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:[Bn("labial",["\u3142","\u3141"]),Bn("alveolar",["\u3137","\u3134","\u3139"]),Bn("velar",["\u3131","\u3147"])]},Py=e=>e===Iy?[]:Array.from(e),Iy="__NO_CODA__",ko=e=>e.map(t=>t.map(({jamos:a,phonetic:r,tooltip:l})=>({v:a.join(""),phonetic:r,tooltip:l}))),Pi={cho:ko(Bo.cho),jung:ko(Bo.jung),jong:ko(Bo.jong)};Pi.jung.flat().forEach(({v:e})=>{for(const t of Py(e));}),new Set(Pi.cho.flat().map(e=>e.v));function Fy(e,t=!0){const a=$a(e);o.useEffect(()=>{if(t)return Gn(()=>{a.current?.()})},[t,a])}function Pa(){const[e,t]=o.useState(null),a=o.useCallback(s=>t(s.getBoundingClientRect()),[]),r=o.useCallback(()=>t(null),[]),l=o.useCallback(s=>{const i=s.getBoundingClientRect();t(u=>u?null:i)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:l}}function Oy(e){const[t,a]=o.useState(null),[r,l]=o.useState(null),s=o.useRef(null);o.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]);const i=o.useCallback((c,d)=>{s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{a(c),l(d)},e)},[e]),u=o.useCallback(()=>{s.current&&clearTimeout(s.current),a(null),l(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:i,close:u}}function Ii(e="warning"){const[t,a]=o.useState(""),[r,l]=o.useState(e),[s,i]=o.useState(0),u=o.useCallback((p,f)=>{l(f),a(p),i(b=>b+1)},[]),c=o.useCallback(p=>u(p,"warning"),[u]),d=o.useCallback(p=>u(p,"normal"),[u]),h=o.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:s,showToast:u,showWarning:c,showNormal:d,clearToast:h}}function Ia(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 Fa({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[l,s]=o.useState(!1),[i,u]=o.useState({position:"fixed"}),c=o.useRef(null),d=o.useRef(null),h=o.useCallback(()=>{c.current&&u(e(c.current.getBoundingClientRect(),c.current))},[e]);o.useLayoutEffect(()=>{l&&h()},[l,h]),o.useEffect(()=>{if(!l)return;let b=d.current?.offsetHeight??0;b>0&&h();let x=0,C=null;typeof ResizeObserver<"u"&&d.current&&(C=new ResizeObserver(()=>{const B=d.current?.offsetHeight??0;if(B!==b){if(b=B,++x>4){C?.disconnect(),C=null;return}h()}}),C.observe(d.current));const m=B=>{const k=B.target;r&&k.closest?.(r)||c.current?.contains(k)||d.current?.contains(k)||s(!1)};document.addEventListener("mousedown",m),document.addEventListener("pointerdown",m);let _=null;const g=()=>{if(typeof requestAnimationFrame>"u"){h();return}_===null&&(_=requestAnimationFrame(()=>{_=null,h()}))},A=B=>{d.current?.contains(B.target)||(t==="reposition"?g():t==="close"&&s(!1))};t!=="ignore"&&window.addEventListener("scroll",A,!0);const y=()=>{a==="reposition"?g():a==="close"&&s(!1)};let w=null;const v=()=>{y(),w&&clearTimeout(w),w=setTimeout(()=>{w=null,a==="reposition"&&h()},250)};return a!=="ignore"&&(window.addEventListener("resize",y),window.addEventListener("orientationchange",v)),()=>{_!==null&&cancelAnimationFrame(_),C?.disconnect(),document.removeEventListener("mousedown",m),document.removeEventListener("pointerdown",m),t!=="ignore"&&window.removeEventListener("scroll",A,!0),a!=="ignore"&&(window.removeEventListener("resize",y),window.removeEventListener("orientationchange",v)),w&&clearTimeout(w)}},[l,h,t,a,r]),o.useEffect(()=>{if(l)return Gn(()=>s(!1))},[l]);const p=o.useCallback(()=>s(b=>!b),[]),f=o.useCallback(()=>s(!1),[]);return{open:l,setOpen:s,toggle:p,close:f,style:i,triggerRef:c,menuRef:d}}function zy(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:l,playMs:s=1100,feedbackMs:i=1500}={}){const[u,c]=o.useState([]),[d,h]=o.useState(0),[p,f]=o.useState("idle"),[b,x]=o.useState(null),[C,m]=o.useState([]),[_,g]=o.useState(null),[A,y]=o.useState(0),w=o.useRef(0),v=o.useCallback($=>{w.current=typeof $=="function"?$(w.current):$,y(w.current)},[]),B=o.useRef(r),k=o.useRef(l);o.useEffect(()=>{B.current=r,k.current=l},[r,l]);const E=o.useRef([]),D=()=>{E.current.forEach(clearTimeout),E.current=[]},N=($,H)=>{E.current.push(setTimeout(H,$))};o.useEffect(()=>()=>D(),[]);const I=u[d]?.id??null,R=o.useRef(null),Y=o.useCallback(()=>{D(),f("playing"),m([]),g(null),v(0);let $=0;e.forEach((H,z)=>{N($,()=>{h(z),x(H.id),B.current?.(H)}),N($+1e3,()=>{x(null),m(V=>[...V,H.id])}),$+=1300}),N($,()=>{f("done"),k.current?.({score:0,total:e.length})})},[e,v]),M=o.useCallback(($,H)=>{if(H>=$.length){f("done"),k.current?.({score:w.current,total:$.length});return}R.current=null,h(H),g(null),f("playing"),x($[H].id),B.current?.($[H]),N(s,()=>{x(null),f("waiting")})},[s]),T=o.useCallback(()=>{D();const $=Ta(e);c($),v(0),m([]),M($,0)},[e,M,v]),L=o.useCallback(()=>{t==="playback"?(c(e),Y()):T()},[t,e,Y,T]),Z=o.useCallback(()=>{D(),f("idle"),x(null),m([]),g(null),h(0),v(0),c([])},[v]),G=JSON.stringify(e.map($=>[$.id,$.label,$.angleDeg,$.deg,$.row,$.shortcut]));o.useEffect(()=>(a?L():Z(),()=>D()),[t,G,a]);const O=o.useCallback($=>{p!=="waiting"||t==="playback"||R.current===d||(R.current=d,g($),$===u[d]?.id&&v(H=>H+1),t==="exam"?(f("playing"),N(400,()=>M(u,d+1))):(f("feedback"),N(i,()=>M(u,d+1))))},[p,t,u,d,M,i,v]),U=t==="playback"?e.length:u.length;return{bind:{activeSpeakerId:b,playedIds:C,selectedId:_,answerId:I,showFeedback:p==="feedback",clickable:p==="waiting",onSelectSpeaker:O},index:d,total:U,score:A,phase:p,done:p==="done",start:L,reset:Z}}const Ao=new Map,No=new Map,Wy=()=>()=>{},Hy=()=>!0,Vy=()=>!1;function Fi(e){const t=/^data:image\/svg\+xml(;base64)?,([\s\S]*)$/.exec(e);if(!t)return null;try{if(!t[1])return decodeURIComponent(t[2]);const a=Uint8Array.from(atob(t[2]),r=>r.charCodeAt(0));return new TextDecoder("utf-8").decode(a)}catch{return null}}function qy(e){if(typeof window>"u")return"";const t=(a,r)=>{const l=r.attrName.toLowerCase(),s=r.attrValue.trim();(l==="href"||l==="xlink:href")&&!s.startsWith("#")&&(r.keepAttr=!1),(l==="style"||s.includes("\\")&&s.includes("("))&&(r.keepAttr=!1);const i=s.replace(/url\s*\(\s*(['"]?)#[^)\s'"]+\1\s*\)/gi,"");/url\s*\(/i.test(i)&&(r.keepAttr=!1)};oa.addHook("uponSanitizeAttribute",t);try{return oa.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","style","foreignObject"]})}finally{oa.removeHook("uponSanitizeAttribute",t)}}function Uy(e,t){const a=new Set;for(const i of e.matchAll(/url\(\s*(['"]?)#([^)\s"']+)\1\s*\)/g))a.add(i[2]);for(const i of e.matchAll(/(?:xlink:)?href="#([^"]+)"/g))a.add(i[1]);const r=new Set([...e.matchAll(/id="([^"]*)"/g)].map(i=>i[1])),l=[...a].filter(i=>r.has(i));if(l.length===0)return e;let s=e;for(const i of l){const u=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),c=`${t}-${i}`;s=s.replace(new RegExp(`id="${u}"`,"g"),`id="${c}"`).replace(new RegExp(`url\\(\\s*(['"]?)#${u}\\1\\s*\\)`,"g"),(d,h)=>`url(${h}#${c}${h})`).replace(new RegExp(`((?:xlink:)?href)="#${u}"`,"g"),`$1="#${c}"`)}return s}function Gy(e){const t=No.get(e);if(t)return t;const a=fetch(e).then(r=>r.ok?r.text():null).then(r=>(r!=null&&Ao.set(e,r),r)).catch(()=>null).finally(()=>{No.delete(e)});return No.set(e,a),a}function Ky(e,t=!0){const a=o.useSyncExternalStore(Wy,Hy,Vy)&&t&&e?Fi(e)??Ao.get(e)??null:null,[r,l]=o.useState({src:e,enabled:t,svg:a});return o.useEffect(()=>{if(!t||!e){l({src:e,enabled:t,svg:null});return}const s=Fi(e)??Ao.get(e)??null;if(s!==null){l({src:e,enabled:t,svg:s});return}let i=!0;return Gy(e).then(u=>{i&&l({src:e,enabled:t,svg:u})}),()=>{i=!1}},[e,t]),r.src===e&&r.enabled===t?r.svg:a}function Yy({title:e,description:t,actionLabel:a,onAction:r,bg:l,color:s,size:i="medium",actionVariant:u,titleColor:c,descriptionColor:d,className:h=""}){const p=l??s??"main",f=o.useRef(null),[b,x]=o.useState("main"),C=un("(max-width: 767px)"),m=o.useRef({title:!1,description:!1});o.useLayoutEffect(()=>{const A=f.current;if(!A)return;const y=vo(A),w=(v,B,k)=>{if(k!==void 0)A.style.setProperty(B,k),m.current[v]=!0;else if(m.current[v]){const E=y?.[v];E?A.style.setProperty(B,E):A.style.removeProperty(B),m.current[v]=!1}};w("title","--promo-banner-bg-title",c),w("description","--promo-banner-bg-description",d)},[c,d,p]),o.useLayoutEffect(()=>{const A=f.current;if(!A)return;const y=vo(A);x(y?.actionVariant??"main")},[p]);const _=_e("promo-banner",`promo-banner--${i}`,h),g=Si[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 ${i==="small"?"body-2":"h2"}`,children:e}),t&&n.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&n.jsx(Ce,{htmlType:"button",size:40,variant:u??b,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...C?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function Zy({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":l}){const{t:s}=xe.useTranslation(),i=l??s("topBanner.ariaLabel","\uBC30\uB108"),u=o.Children.toArray(e),c=u.length,[d,h]=o.useState(0),[p,f]=o.useState(!1),[b,x]=o.useState(!1),[C,m]=o.useState(!1),_=o.useRef(null),g=o.useRef(null),A=o.useRef(null),y=Co(),w=p||b||C,v=c>0?Math.min(d,c-1):0;o.useEffect(()=>{if(c<2||t<=0||w||y)return;const k=window.setInterval(()=>h(E=>(Math.min(E,c-1)+1)%c),t);return()=>window.clearInterval(k)},[c,t,w,y]);const B=k=>{g.current!=null&&window.clearTimeout(g.current),g.current=window.setTimeout(()=>{g.current=null,m(!1)},k)};return o.useEffect(()=>()=>{g.current!=null&&window.clearTimeout(g.current)},[]),o.useEffect(()=>{if(!C)return;const k=E=>{E.pointerType==="touch"&&(A.current&&A.current.contains(E.target)||(g.current!=null&&(window.clearTimeout(g.current),g.current=null),m(!1)))};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[C]),c===0?null:n.jsxs("section",{ref:A,className:_e("top-banner",r),"aria-label":i,"aria-roledescription":"carousel",onPointerEnter:k=>{_.current=k.pointerType},onPointerDown:k=>{_.current=k.pointerType,k.pointerType==="touch"&&(g.current!=null&&(window.clearTimeout(g.current),g.current=null),m(!0))},onPointerUp:k=>{k.pointerType==="touch"&&B(5e3)},onPointerCancel:k=>{k.pointerType==="touch"&&B(5e3)},onMouseEnter:()=>{_.current!=="touch"&&f(!0)},onMouseLeave:()=>f(!1),onFocus:k=>{let E=!0;try{E=k.target.matches(":focus-visible")}catch{E=!0}x(E)},onBlur:k=>{k.currentTarget.contains(k.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((k,E)=>n.jsx("div",{className:"top-banner__slide","aria-hidden":E!==v,...E!==v?{inert:!0}:{},children:k},E))})}),c>1&&n.jsx("div",{className:`top-banner__dots${(a?.[v]??"light")==="dark"?" top-banner__dots--dark":""}`,children:u.map((k,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:()=>h(E)},E))})]})}function Xy({title:e,body:t,open:a=!1,onToggle:r,avatar:l,titleClassName:s="body-2",bodyClassName:i="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 h=d.currentTarget.closest('[role="list"]');if(!h)return;const p=Array.from(h.querySelectorAll("[data-accordion-header]")),f=p.indexOf(d.currentTarget);(d.key==="ArrowDown"?p[f+1]:p[f-1])?.focus()}},children:[l&&n.jsx("div",{className:"accordion-item__avatar",children:l}),n.jsx("div",{className:`accordion-item__title ${s}`,children:e}),n.jsx("div",{className:"accordion-item__chevron",children:n.jsx(et,{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 ${i}`,children:typeof t=="string"?n.jsx("p",{children:t}):t})]})}function Jy({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:l}){const[s,i]=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(Xy,{title:c.title,body:c.body,avatar:c.avatar,open:u(c,d),onToggle:()=>i(u(c,d)?{index:-1}:{index:d,id:c.id}),bodyClassName:l},c.id??d))})}function Qy(){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 e2(){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 t2(){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 Et(e){const{t}=xe.useTranslation(),{type:a="bar",size:r,className:l="","aria-label":s,"aria-hidden":i}=e;if(a==="dot"){const{icon:w,number:v,position:B="top-right",onClick:k,animate:E=!1}=e,D=w??"check",N=v!==void 0?"number":D,I=typeof r=="number"?r:32,R=_e("circle-badge",`circle-badge--${N}`,`circle-badge--${B}`,`circle-badge--${I}`,E?"circle-badge--animate":"",k?"circle-badge--clickable":"",l),Y=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:R,onClick:k,onKeyDown:k?M=>{M.key!=="Enter"&&M.key!==" "||(M.preventDefault(),M.currentTarget.click())}:void 0,"aria-label":i?void 0:s??Y,"aria-hidden":i||void 0,role:k?"button":i?void 0:"img",tabIndex:k?0:void 0,children:[v!==void 0&&v,v===void 0&&D==="check"&&n.jsx(Qy,{}),v===void 0&&D==="remove"&&n.jsx(e2,{}),v===void 0&&D==="minus"&&n.jsx(t2,{})]})}const{label:u,children:c,variant:d="default",fill:h="filled",minWidth:p,iconLeft:f,iconRight:b,color:x}=e,C=typeof r=="number"?"medium":r??"medium",m={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}`,h!=="filled"?`badge--${h}`:"",m,l),A=x?.startsWith("--")?`var(${x})`:x,y=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:y,"aria-label":i?void 0:s,role:s&&!i?"img":void 0,"aria-hidden":i||void 0,children:[f&&n.jsx(et,{icon:f,size:_,className:"badge__icon"}),u??c,b&&n.jsx(et,{icon:b,size:_,className:"badge__icon"})]})}function Oa({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:l}=xe.useTranslation(),s=r==="small"?40:48,[i,u]=o.useState([]),c=o.useMemo(()=>{const m=[{title:null,columns:e}];let _=e;for(const g of i){const A=_?.[g.ci]?.items?.[g.ii];if(!A||!Array.isArray(A.children)||!A.children.length)break;_=[{title:null,items:A.children}],m.push({title:A.label||null,columns:_})}return m},[e,i]),d=c[c.length-1],h=c.length-1,p=o.useCallback(()=>u(m=>m.slice(0,Math.max(0,Math.min(m.length,h)-1))),[h]),f=o.useRef(null),b=o.useRef(null),x=c.length;o.useEffect(()=>{b.current||(b.current=document.activeElement);let m=0,_=0;const g=()=>{const A=f.current?.querySelector("button:not([disabled])");if(A&&A.offsetParent){A.focus({preventScroll:!0});return}_++<20&&(m=requestAnimationFrame(g))};return m=requestAnimationFrame(g),()=>cancelAnimationFrame(m)},[x]),o.useEffect(()=>()=>{b.current?.focus?.({preventScroll:!0})},[]);const C=o.useCallback((m,_,g)=>{if(m){if(Array.isArray(m.children)&&m.children.length){u(A=>[...A.slice(0,h),{ci:_,ii:g}]);return}try{typeof m.onClick=="function"&&m.onClick()}catch{}try{m&&m.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,h]);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(Ce,{htmlType:"button",size:s,type:"dot",icon:"chevron-left",ariaLabel:l("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((m,_)=>n.jsxs("div",{className:"tooltip-menu__column",children:[m.title?n.jsx("div",{className:"tooltip-menu__column-title body-3",children:m.title}):null,n.jsx("div",{className:"tooltip-menu__items",children:(m.items||[]).map((g,A)=>n.jsxs(o.Fragment,{children:[g.separatorBefore&&A>0&&n.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),n.jsx(Ce,{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(Et,{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?l("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 Oi=".content-area";function Eo(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(Oi);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 ${Oi}) \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 Do=52,ur=10,zi=e=>e&&e>0?e:0;function Wi({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:l,moreItems:s=[],scrollContainer:i}){const{t:u}=xe.useTranslation(),c=r==="manager"?"malgwi":"manager",d=r==="manager"?"arrow-left":"arrow-right",h=r==="manager"?u("nav.modeLabelMalgwi","\uB9D0\uADC0"):u("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=o.useRef(null),[f,b]=o.useState(0),x=e.length;o.useEffect(()=>{const $=p.current;if(!$)return;const H=()=>{const S=typeof getComputedStyle=="function"?getComputedStyle($):null,P=$.clientWidth-(parseFloat(S?.paddingLeft??"")||0)-(parseFloat(S?.paddingRight??"")||0),F=$.querySelector(".bottom-nav__left"),X=F?.nextElementSibling,se=(F?.offsetWidth??0)+(F&&X?.classList.contains("bottom-nav__divider")?X.offsetWidth:0);b(Math.max(0,P-se))};if(H(),typeof ResizeObserver>"u")return;const z=new ResizeObserver(H);z.observe($);const V=$.querySelector(".bottom-nav__left");return V&&z.observe(V),()=>z.disconnect()},[l]);const C=Do+1,m=$=>Math.max(0,Math.floor(($+ur)/(Do+ur))),_=x*(Do+ur)-ur<=f,g=f<=0||s.length===0&&_?x:Math.min(x,m(f-C)),A=f>0&&g<x,y=A?g:x,w=e.slice(0,y),v=e.slice(y),B=A||s.length>0,k=o.useCallback(($,H)=>({position:"fixed",bottom:window.innerHeight-$.top+8,right:window.innerWidth-$.right,zIndex:Ia(H)}),[]),E=o.useId(),{open:D,toggle:N,close:I,style:R,triggerRef:Y,menuRef:M}=Fa({computeStyle:k,onScroll:"ignore",onResize:"reposition"}),T=o.useCallback(($,H)=>H>0?u("nav.badgeLabel",{label:$,count:H,defaultValue:"{{label}}, {{count}}\uAC1C"}):$,[u]),L=o.useCallback(($,H)=>H>0?u("nav.badgeInsideLabel",{label:$,count:H,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):$,[u]),Z=o.useCallback(()=>l?.(c),[l,c]),G=o.useMemo(()=>v.find($=>!!$.key&&$.key===t)??s.find($=>$.selected||$.key&&$.key===t),[v,t,s]),O=o.useMemo(()=>[{items:[...v.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:!!$.key&&$.key===t,closeOnSelect:!0,disabled:$.state==="disabled",onClick:()=>{$.state!=="disabled"&&($.key&&a&&(a($.key),Eo(i,"BottomNav")),I())}})),...s.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:$.selected??(!!$.key&&$.key===t),closeOnSelect:!0,onClick:()=>{$.onClick?.(),I()}}))]}],[v,s,t,a,I]),U=[...v,...s].reduce(($,H)=>$+zi(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:[l&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__left",children:n.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:d,ariaLabel:h,className:"bottom-nav-item",onClick:Z})}),n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),n.jsx("div",{className:"bottom-nav__items",children:w.map(($,H)=>{const z=zi($.badgeCount);return n.jsxs("span",{className:"bottom-nav__slot",children:[n.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:$.icon,ariaLabel:T($.label,z),selected:!!$.key&&$.key===t,disabled:$.state==="disabled",className:"bottom-nav-item",onClick:()=>{$.key&&(a?.($.key),Eo(i,"BottomNav"))}}),z>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(Et,{type:"dot",position:"top-right",number:Math.min(z,99),size:24})})]},$.key??`__slot-${H}`)})}),B&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),n.jsx("div",{className:"bottom-nav__right",children:n.jsxs("div",{ref:Y,className:"bottom-nav__slot",children:[n.jsx(Ce,{htmlType:"button",size:52,type:"dot",icon:G?.icon??"ellipsis",ariaLabel:L(G?.label??u("nav.more","\uB354\uBCF4\uAE30"),U),selected:!!G,className:"bottom-nav-item",onClick:N,"aria-expanded":D,"aria-controls":D?E:void 0}),U>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(Et,{type:"dot",position:"top-right",number:Math.min(U,99),size:24})}),D&&nn.createPortal(n.jsx("div",{id:E,role:"group","aria-label":u("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:R,ref:M,children:n.jsx(Oa,{columns:O,onClose:I})}),document.body)]})})]})]})}function Hi(e){if(typeof e!="string")return!1;let t="";for(const r of e){const l=r.charCodeAt(0);l<=32||l>=127&&l<=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 Vi(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function n2(e){const{t}=xe.useTranslation(),{activeKey:a,unreadCount:r,onDebug:l,onNotification:s,onSetting:i,onHelp:u,onFeedback:c,onAccount:d}=e||{},h="default";return l||s||i||u||c||d?n.jsxs("div",{className:"side-nav__footer",children:[l&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:l,selected:a==="debug"}),s&&n.jsxs("span",{className:"side-nav__notification-wrap",children:[n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"bell",ariaLabel:Vi(t,t("nav.notifications","\uC54C\uB9BC"),r),onClick:s,selected:a==="notifications"}),!!r&&r>0&&n.jsx(Et,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),i&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:i,selected:a==="settings"}),u&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:u,selected:a==="help"}),c&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:c,selected:a==="feedback"}),d&&n.jsx(Ce,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:h,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:d,selected:a==="account"})]}):null}function qi(e){const{t}=xe.useTranslation(),{item:a,itemKey:r,label:l,icon:s,active:i,onClick:u,style:c,state:d,labelStyle:h}=e||{},p=a?.key??r??"",f=a?.label??l??"",b=a?.icon??s??"",x=a?.badge??0,C=n.jsx("span",{className:"side-nav__icon-wrap",children:n.jsx(et,{icon:b,label:typeof f=="string"?f:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),m=d==="disabled",_=`side-nav__item ${i?"active":""} ${d||""} ${m?"disabled":""} ${a?.child?"side-nav__item--child":""}`,g=o.useCallback(A=>{if(m)return;const y=A.detail>0;if(y)try{A.currentTarget.blur()}catch{}u?.(p,A.currentTarget,y)},[m,p,u]);return n.jsxs("button",{type:"button",className:_,onClick:g,"aria-label":typeof f=="string"?Vi(t,f,x):void 0,"aria-current":i?"page":void 0,style:c,"aria-disabled":m,children:[C,n.jsx("span",{className:"side-nav__label button-1 f",style:h,children:f}),x>0&&n.jsx(Et,{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 Ui(e){const{t}=xe.useTranslation(),{items:a=[],activeKey:r,onChange:l,unreadCount:s,onDebug:i,onNotification:u,onAccount:c,onSetting:d,onHelp:h,onFeedback:p,appMode:f,onAppModeChange:b,scrollContainer:x}=e||{},C=f==="manager",m=o.useCallback(()=>b?.(C?"malgwi":"manager"),[b,C]),_=o.useRef(null),[g,A]=o.useState(null);o.useEffect(()=>{const k=_.current;if(!k)return;let E=null;const D=()=>{const{scrollHeight:R,clientHeight:Y,scrollTop:M}=k;if(R<=Y+1){A(O=>O===null?O:null);return}const T=Math.max(24,Y/R*Y),L=Y-T,Z=R-Y,G={top:Math.round(M/Z*L),height:Math.round(T)};A(O=>O&&O.top===G.top&&O.height===G.height?O:G)},N=()=>{if(typeof requestAnimationFrame>"u"){D();return}E===null&&(E=requestAnimationFrame(()=>{E=null,D()}))};D(),k.addEventListener("scroll",N,{passive:!0});const I=typeof ResizeObserver<"u"?new ResizeObserver(N):null;I?.observe(k);for(const R of Array.from(k.children))I?.observe(R);return()=>{E!==null&&cancelAnimationFrame(E),k.removeEventListener("scroll",N),I?.disconnect()}},[a]);const y=o.useRef(null),w=o.useCallback(k=>{const E=_.current;E&&(k.preventDefault(),y.current={y:k.clientY,top:E.scrollTop},k.currentTarget.setPointerCapture(k.pointerId))},[]),v=o.useCallback(k=>{const E=_.current,D=y.current;!E||!D||(E.scrollTop=D.top+(k.clientY-D.y)*(E.scrollHeight/E.clientHeight))},[]),B=o.useCallback(k=>{y.current=null,k.currentTarget.hasPointerCapture(k.pointerId)&&k.currentTarget.releasePointerCapture(k.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:w,onPointerMove:v,onPointerUp:B,onPointerCancel:B})}),n.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(k=>!k.section&&(k.key||k.label)).map((k,E)=>n.jsxs(o.Fragment,{children:[k.divider&&n.jsx("div",{className:"side-nav__separator"}),n.jsx(qi,{item:k,active:!!k.key&&k.key===r,state:k.disabled?"disabled":void 0,onClick:(D,N,I)=>{if(k.disabled)return;if(k.href){if(Hi(k.href)&&window.open(k.href,"_blank","noopener,noreferrer"),I)try{N?.blur()}catch{}return}if(l?.(k.key),Eo(x,"SideNav"),!I)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 R=document.querySelector(".header");if(R){const Y=typeof R.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&Y&&R.matches(":hover"))){R.classList.add("header--force-collapsed");const M=()=>{R.classList.remove("header--force-collapsed"),R.removeEventListener("mouseenter",M)};R.addEventListener("mouseenter",M)}}}})]},k.key??`side-nav__item-${E}`)),b&&n.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),b&&n.jsx(qi,{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:m})]}),n.jsx(n2,{activeKey:r,unreadCount:s,onDebug:i,onNotification:u,onAccount:c,onSetting:d,onHelp:h,onFeedback:p})]})}var cr='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>',So='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>',a2='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 Gi({appMode:e}){const{t}=xe.useTranslation(),a=e==="manager",r=a?So:cr,l=a2;return n.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[n.jsx("img",{src:l,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 Ki({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:l,unreadCount:s,onDebug:i,onNotification:u,onAccount:c,onSetting:d,onHelp:h,onFeedback:p,appMode:f,onAppModeChange:b,scrollContainer:x}){const{t:C}=xe.useTranslation(),m=un("(max-width: 767px)"),_=o.useMemo(()=>(a??[]).filter(R=>!R.section&&(R.key||R.label)).map(R=>({key:R.key,label:typeof R.label=="string"?R.label:void 0,icon:R.icon,state:R.disabled?"disabled":void 0,badgeCount:R.badge})),[a]),g=o.useCallback(R=>{const Y=a?.find(M=>M.key===R);if(!Y?.disabled){if(Y?.href){Hi(Y.href)&&window.open(Y.href,"_blank","noopener,noreferrer");return}t?.(R)}},[a,t]),A=o.useMemo(()=>{const R=[];return i&&R.push({key:"debug",icon:"terminal",label:C("nav.debug","\uB514\uBC84\uADF8"),onClick:i}),u&&R.push({key:"notifications",icon:"bell",label:C("nav.notifications","\uC54C\uB9BC"),badgeCount:s,onClick:u}),d&&R.push({key:"settings",icon:"settings",label:C("nav.settings","\uC124\uC815"),onClick:d}),h&&R.push({key:"help",icon:"message-circle-question-mark",label:C("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:h}),p&&R.push({key:"feedback",icon:"bug",label:C("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:p}),c&&R.push({key:"account",icon:"user-round",label:C("nav.account","\uACC4\uC815"),onClick:c}),R},[C,i,u,d,h,p,c,s]),y=o.useCallback((R,Y)=>({position:"fixed",top:R.bottom+8,right:Math.max(8,window.innerWidth-R.right),zIndex:Ia(Y)}),[]),w=o.useId(),{open:v,toggle:B,close:k,style:E,triggerRef:D,menuRef:N}=Fa({computeStyle:y,onScroll:"ignore",onResize:"reposition"}),I=o.useMemo(()=>[{items:A.map(R=>({label:R.label,icon:R.icon,badgeCount:R.badgeCount,selected:R.selected??(!!R.key&&R.key===e),closeOnSelect:!0,onClick:()=>{R.onClick?.(),k()}}))}],[A,e,k]);return n.jsxs("aside",{className:`header${f==="manager"?" header--manager":""}`,children:[n.jsxs("div",{className:"header__bi",children:[n.jsx(Gi,{appMode:f}),n.jsxs("div",{className:"header__menu-button",ref:D,children:[n.jsx(Ce,{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:B,"aria-expanded":v,"aria-controls":v?w:void 0}),!!u&&!!s&&s>0&&n.jsx(Et,{type:"dot",number:Math.min(s,99),size:24,"aria-hidden":!0}),v&&nn.createPortal(n.jsx("div",{id:w,role:"group","aria-label":C("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:E,ref:N,children:n.jsx(Oa,{columns:I,onClose:k})}),document.body)]})]}),n.jsx(Ui,{scrollContainer:x,items:a,activeKey:e??void 0,onChange:t,unreadCount:s,onDebug:i,onNotification:u,onAccount:c,onSetting:d,onHelp:h,onFeedback:p,appMode:f,onAppModeChange:b}),m&&n.jsx(Wi,{items:_,activeKey:e??void 0,onChange:g,scrollContainer:x,appMode:f,onAppModeChange:b})]})}const r2=Ki,o2=()=>Rt.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function Yi(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 ia(`${t.toLocaleString("ko-KR")}\uC6D0`)}return ia(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function s2(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function l2(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 l=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return l?l[2].toLowerCase()==="year"?`${l[1]}\uB144`:`${l[1]}\uC77C`:a||o2()}function i2(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 Zi(e){return{type:e.type??s2(e),plan:l2(e),label:e.label,price:Yi(e.price),originalPrice:Yi(e.originalPrice),discountLabel:e.discountLabel}}var u2='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>',c2='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>',Xi='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"},jo=new WeakMap;function d2(e){if(e)return jo.get(e)}function kn(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),jo.set(e,t))}function An(e){e&&(e.style.removeProperty(Zn.text),e.style.removeProperty(Zn.sub),e.style.removeProperty(Zn.copyright),jo.delete(e))}const Ji={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#1a1a1a"};function Qi(e={}){const t=Nt(Ji,kn,An);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("${Xi}")`}})]})}const eu="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",pa=240;var za='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 p2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"},h2=100,m2=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function tu(e={}){const t=Nt(p2,kn,An),a="var(--color-main)",r=270,l=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:m2.map(({scale:s,opacity:i},u)=>n.jsx("g",{transform:`translate(${r} ${l}) scale(${s*h2/pa}) translate(${-pa/2} ${-pa/2})`,opacity:i,children:n.jsx("path",{d:eu,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("${za}")`}})]})}const f2={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",logoColor:"_mono",copyrightColor:"#ffffff"},C2=100,g2=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function b2(e={}){const t=Nt(f2,kn,An),a="#ffffff",r=270,l=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:g2.map(({scale:s,opacity:i},u)=>n.jsx("g",{transform:`translate(${r} ${l}) scale(${s*C2/pa}) translate(${-pa/2} ${-pa/2})`,opacity:i,children:n.jsx("path",{d:eu,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("${Xi}")`}})]})}const y2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"};function v2(e={}){const t=Nt(y2,kn,An);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("${za}")`}})]})}const x2={Logo_SpeechEar_ko:{"":cr,_mono:u2},Logo_SpeechEarManager_ko:{"":So,_mono:c2}};function _2(e,t){if(e)return x2[e]?.[t??""]??void 0}const w2={speechear:cr,manager:So},B2={speechear:"Logo_SpeechEar_ko",manager:"Logo_SpeechEarManager_ko"},nu=10;function k2(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 au(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 l=Math.floor(e/60);return l>0?t("passCard.remainingMinute",{n:l}):t("passCard.remainingSecond",{n:Math.floor(e)})}function A2(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),l=a==="\uC624\uD508\uD2B9\uAC00"||a===Rt.t("passCard.specialLabel");return r?n.jsx(v2,{}):l?n.jsx(b2,{}):n.jsx(tu,{})}return n.jsx(Qi,{})}function ru({ariaLabel:e,product:t,showPrice:a=!1,plan:r,type:l,endDate:s,remainingSeconds:i,endInclusive:u=!1,state:c="active",bg:d,bgOnly:h=!1,textColor:p,subColor:f,copyrightColor:b,logoSrc:x,label:C,price:m,originalPrice:_,discountLabel:g,onUse:A,onRefund:y,onDelete:w}){const{t:v}=xe.useTranslation(),B=t?Zi(t):void 0,k=l??B?.type??"speechear",E=r??B?.plan??v("passCard.planSuffix","\uC774\uC6A9\uAD8C"),D=C??B?.label,N=m??(a?B?.price:void 0),I=_??(a?B?.originalPrice:void 0),R=g??B?.discountLabel,Y=o.useMemo(()=>{if(N)return null;const q=t?.durationDays??i2(t?.code);if(!q||q<=0)return i!=null?{percent:null,remainingLabel:au(i,v)}:null;const K=q*86400;let ce;if(i!=null)ce=i;else if((c==="active"||c==="expired")&&s){const de=new Date(s).getTime();if(Number.isNaN(de))return null;const oe=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(s)),ge=/^(\d{4})-(\d{2})-(\d{2})/.exec(La()),he=Math.round(oe&&ge?(Date.UTC(+oe[1],+oe[2]-1,+oe[3])-Date.UTC(+ge[1],+ge[2]-1,+ge[3]))/864e5:(de-Date.now())/864e5);ce=Math.max(0,u?he+1:he)*86400}else c==="expired"?ce=0:ce=K;const ke=k2(ce),ye=Math.max(0,Math.min(100,Math.floor(Math.min(ke,K)/K*100)));return c==="pending"&&ye>=100?null:{percent:ye,remainingLabel:c==="expired"?v("passCard.expired","\uB9CC\uB8CC\uB428"):au(ce,v)}},[N,c,s,i,u,t?.durationDays,t?.code,v]),M=o.useRef(null),[T,L]=o.useState({}),[Z,G]=o.useState(null),O=!!(A||y||w),U=o.useRef(!1),$=o.useRef(void 0),[H,z]=o.useState(x);o.useLayoutEffect(()=>{z(x)},[x]),o.useLayoutEffect(()=>{const q=M.current;q&&(p!==void 0&&q.style.setProperty("--pass-card-text",p),f!==void 0&&q.style.setProperty("--pass-card-sub",f),b!==void 0&&q.style.setProperty("--pass-card-copyright",b))},[p,f,b]),o.useLayoutEffect(()=>{const q=M.current;if(!q)return;const K=d2(q);if(!x){const ce=B2[k],ke=c==="expired"?"_mono":K?.logoColor??"",ye=_2(ce,ke);z(ye)}},[d,x,k,c]);const V=q=>{const K=M.current;if(!K)return null;const{left:ce,top:ke,width:ye,height:de}=K.getBoundingClientRect(),oe=(q.clientX-ce)/ye-.5;return{rotateX:-((q.clientY-ke)/de-.5)*nu,rotateY:oe*nu}},S=(q,K)=>{const ce=K*-.7,ke=q*.7+10,ye=20+(Math.abs(q)+Math.abs(K))*.4;return`${ce}px ${ke}px ${ye}px rgba(0, 0, 0, 0.18)`},P=o.useCallback(q=>{if(da())return;U.current=!0,clearTimeout($.current),$.current=setTimeout(()=>{U.current=!1},200);const K=V(q);K&&L({transform:`perspective(800px) rotateX(${K.rotateX}deg) rotateY(${K.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:S(K.rotateX,K.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(q=>{if(da())return;const K=V(q);if(!K)return;const ce=U.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";L({transform:`perspective(800px) rotateX(${K.rotateX}deg) rotateY(${K.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:S(K.rotateX,K.rotateY),transition:ce})},[]),X=o.useCallback(()=>{clearTimeout($.current),U.current=!1,L({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)"})},[]),se=o.useCallback(()=>G(null),[]),ae=o.useMemo(()=>{const q=v("passCard.planSuffix","\uC774\uC6A9\uAD8C"),K=E.replace("\uC774\uC6A9\uAD8C","").replace(q==="\uC774\uC6A9\uAD8C"?"":q,"").trim(),ce=K.match(/^(.*?)(일|년)$/);return ce?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"h0 pass-card__plan-number",children:ce[1]}),n.jsx("span",{className:"h5b pass-card__plan-unit",children:ce[2]==="\uB144"?v("passCard.unitYear","\uB144"):v("passCard.unitDay","\uC77C")})]}):n.jsx("span",{className:"h0",children:K})},[E,v]),me=o.useMemo(()=>{const q=ia(N);if(!q)return null;const K=q.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!K)return n.jsx("span",{className:"h1",children:q});const[,ce,ke,ye]=K;return n.jsxs(n.Fragment,{children:[ce&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:ce}),n.jsx("span",{className:"h1 pass-card__price-amount",children:ke}),ye.trim()&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:ye.trim()})]})},[N]),ne=o.useCallback(()=>{O&&G(q=>{if(q)return null;const K=M.current?.getBoundingClientRect();if(!K)return null;const ce=50;return{left:K.left,right:K.right,width:K.width,height:K.height,x:K.x,y:K.y+ce,top:K.top+ce,bottom:K.bottom+ce}})},[O]),W=o.useCallback(q=>{O&&(q.key==="Enter"||q.key===" ")&&(q.preventDefault(),ne())},[O,ne]),ie=[{items:[...A?[{label:v("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{A(),G(null)},closeOnSelect:!0}]:[],...y?[{label:v("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{y(),G(null)},closeOnSelect:!0}]:[],...w?[{label:v("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{w(),G(null)},closeOnSelect:!0}]:[]]}];return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card-frame",children:n.jsxs("div",{ref:M,className:`pass-card pass-card--${c}${O?" pass-card--clickable":""}`,style:T,onMouseEnter:P,onMouseMove:F,onMouseLeave:X,onPointerUp:q=>{q.pointerType==="touch"&&X()},onPointerCancel:q=>{q.pointerType==="touch"&&X()},onClick:ne,onKeyDown:O?W:void 0,role:O?"button":void 0,tabIndex:O?0:void 0,"aria-label":e,"aria-haspopup":O?"menu":void 0,"aria-expanded":O?!!Z:void 0,children:[d??A2(k,E,D),!h&&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??w2[k],className:"pass-card__logo",alt:k==="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:ae}),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:[R&&n.jsx("span",{className:"pass-card__discount body-3",children:R}),n.jsxs("div",{className:"pass-card__price",children:[I&&n.jsx("span",{className:"pass-card__price-original body-3",children:ia(I)}),me]})]}):Y?n.jsxs("div",{className:"pass-card__usage",children:[n.jsx("span",{className:"h5b pass-card__usage-remaining",children:Y.remainingLabel}),Y.percent!=null&&n.jsxs("span",{className:"pass-card__usage-percent",children:[n.jsx("span",{className:"h1 pass-card__usage-value",children:Y.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(mn,{anchorRect:Z,onClose:se,ariaLabel:v("tooltip.menu","\uBA54\uB274"),children:n.jsx(Oa,{columns:ie,onClose:se,size:"small"})})]})}const N2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#1a1a1a"};function E2(e={}){const t=`passcard-sound-line-grad-${o.useId()}`,a=Nt(N2,kn,An);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("${za}")`}})]})}const D2={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"var(--color-main)"};function S2(e={}){const t=Nt(D2,kn,An);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("${za}")`}})]})}function j2(e,t){if(e){if(t==="manager_pro")return n.jsx(S2,{});if(t==="manager_standard")return n.jsx(E2,{});if(t==="manager_lite")return n.jsx(tu,{})}}function T2(e){const t=ia(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,l,s]=a;return n.jsxs(n.Fragment,{children:[r&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),l,s.trim()&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:s.trim()})]})}function M2(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:l,onSelect:s,period:i="monthly",ownedCodes:u}=e||{},c=y=>!!y&&!!u?.includes(y),d=y=>y.onceOnly??/오픈\s*특가/.test(y.label??""),h=(l.tiers||[]).some(y=>d(y)&&c(y.code)),p=y=>{const w=y.prices?y.prices[i]:y.price;return w?(l.tiers||[]).some(v=>!!v.badge&&v.originals?.[i]===w):!1},f=l.colorToken?`var(--color-${l.colorToken})`:"var(--color-gray)",b=t("payment.plan.freePrice","\uBB34\uB8CC"),x=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),C=y=>y.prices?y.prices[i]:y.price,m=(l.tiers||[]).length>0&&(l.tiers||[]).every(y=>{const w=C(y);return w==="\uBB34\uB8CC"||w===b||w==="0\uC6D0"||typeof w=="string"&&/\d/.test(w)&&!/[1-9]/.test(w)}),_=(l.tiers||[]).length>0&&(l.tiers||[]).every(y=>{const w=C(y);return w==="\uBB38\uC758"||w===x}),g=l.group==="org",A=g?"manager":"speechear";return n.jsxs("div",{className:"payment-plan__card",style:{borderColor:f,"--plan-color":f},children:[l.cardBadge&&n.jsx("div",{className:"payment-plan__card-badge",children:n.jsx(Et,{label:l.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:l.quote||"\xA0"}),n.jsx("h3",{className:"payment-plan__title-heading h1",children:l.tier??l.title}),n.jsx("p",{className:"payment-plan__subtitle body-3",children:l.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:(l.recommendedFor||[]).map((y,w)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(et,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),y]},w))})]}),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:(l.features||[]).map((y,w)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(et,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:f}}),y]},w))})]}),n.jsx("div",{className:"payment-plan__card-pricing",children:m?null:_?n.jsx(Ce,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>l.tiers?.[0]&&s?.({...l.tiers[0],productId:l.id,productTitle:l.title})}):n.jsx(n.Fragment,{children:n.jsx("div",{className:"payment-plan__pricing-list",children:(l.tiers||[]).map(y=>{const w=y.label||a,v=d(y),B=v||y.openPromo===!0,k=w.replace(/^오픈\s*특가\s*/,"")||a,E=y.prices?y.prices[i]:y.price,D=y.badge?B?`${r}
|
|
853
853
|
${y.badge}`:y.badge:void 0;if(v&&c(y.code))return null;if(!y.badge&&!h)return p(y)?null:n.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${y.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:y.label})}),n.jsx("div",{className:"payment-plan__pricing-row-price",children:n.jsx("span",{className:"payment-plan__pricing-current h1",children:T2(E)})})]},y.id);const N=l.tier??(g?l.title:void 0),I=n.jsx(ru,{showPrice:!0,product:{type:A,code:y.code,name:k,label:N,price:E,originalPrice:y.originals?.[i]??void 0,discountLabel:D},bg:j2(g,l.id)}),R=()=>s?.({...y,productId:l.id,productTitle:l.title,preview:I});return n.jsx("div",{className:"payment-plan__pricing-card",onClick:R,onKeyDown:s?Y=>{Y.target===Y.currentTarget&&(Y.key==="Enter"||Y.key===" ")&&(Y.preventDefault(),R())}:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,children:I},y.id)})})})})]})}function L2({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 To='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 ou={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEar_ko",copyrightColor:"#c9c9c9"};function $2(){const e=Nt(ou,kn,An);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("${To}")`}})})}const su={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_SpeechEarManager_ko",logoColor:"_mono",copyrightColor:"#ffffff"};function R2(e={}){const t=Nt(su,kn,An);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("${za}")`}})]})}function lu({keys:e,anchor:t="top-right",scale:a,className:r=""}){const l=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:l.map((s,i)=>n.jsxs("span",{className:"shortcut-badge__group",children:[i>0&&n.jsx("span",{className:"shortcut-badge__plus",children:"+"}),n.jsx("kbd",{className:"shortcut-badge__key",children:s})]},`${s}-${i}`))})}const Wa=(e,t,a)=>e+(t-e)*a;function P2({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:r=null,playedIds:l,selectedId:s=null,answerId:i=null,showFeedback:u=!1,pulseSelected:c=!1,pulseSelectedDuration:d,pulseScale:h,clickable:p=!1,onSelectSpeaker:f,buttonSize:b=40,showIcon:x=!0,onCenterClick:C,centerLabel:m,centerDisabled:_=!1,centerAttention:g=!1,shortcutAnchor:A="top-right",shortcutScale:y,scaleShortcut:w=!1}){const{t:v}=xe.useTranslation(),B=Math.max(0,Math.min(1,a)),k=t/2,E=110/300,D=.18,N=q=>t*(E+(q-1)*D),I=q=>{const K=N(q.row??1),ce=q.angleDeg*Math.PI/180;return{x:k+K*Math.cos(ce),y:k+K*Math.sin(ce)}},R=Math.max(...e.map(q=>q.row??1),1),Y=t*.08,M=t*.1,T=t*.24,L=t-2*Y,Z=t-M-T,G=t-T/2,O=o.useMemo(()=>[...new Set(e.map(q=>q.deg))].sort((q,K)=>q-K),[e]),U=O.length,$=Math.max(68,U>1?L/(U-1):0),H=o.useMemo(()=>new Map(O.map((q,K)=>[q,K])),[O]),z=q=>{const K=H.get(q.deg)??0,ce=k+(K-(U-1)/2)*$,ke=R>1?Math.min(68,Z/(R-1)):0,ye=ke*(R-1),de=M+(Z-ye)/2,oe=R===1?M+Z*.4:de+(R-(q.row??1))*ke;return{x:ce,y:oe}},V=q=>{const K=I(q),ce=z(q);return{x:Wa(K.x,ce.x,B),y:Wa(K.y,ce.y,B)}},S={x:k,y:Wa(k,G,B)},P=Math.round(b*1.2),F=Math.round(Math.max(16,Math.min(80,b*.7))),X=[],se=new Map;for(const q of e){const K=q.row??1;se.has(K)||se.set(K,[]),se.get(K).push(q)}for(const[q,K]of se.entries()){if(K.length<2)continue;const ce=[...K].sort((We,pt)=>We.deg-pt.deg),ke=ce.map(We=>V(We)),ye=ce.map(We=>We.deg),de=ye[ye.length-1]-ye[0],oe=de/(ye.length-1),ge=360-de,he=ce.length>=3&&oe>0&&ge<=oe*1.5,pe=Math.round(N(q)*1e3)/1e3,Me=(We,pt,it,at)=>{const ht=(pt.angleDeg-We.angleDeg+540)%360-180;if(ht===0)return`L ${at.x} ${at.y}`;if(B===0)return`A ${pe} ${pe} 0 0 ${ht>0?1:0} ${at.x} ${at.y}`;const Ne=(We.angleDeg+ht/2)*Math.PI/180,Ve={x:k+pe*Math.cos(Ne),y:k+pe*Math.sin(Ne)},we={x:(it.x+at.x)/2,y:(it.y+at.y)/2},Ue={x:Wa(Ve.x,we.x,B),y:Wa(Ve.y,we.y,B)},Ae={x:2*Ue.x-we.x,y:2*Ue.y-we.y};return`Q ${Ae.x} ${Ae.y} ${at.x} ${at.y}`},ze=he?[...ce,ce[0]]:ce,Le=he?[...ke,ke[0]]:ke;let Fe=`M ${Le[0].x} ${Le[0].y}`;for(let We=1;We<Le.length;We++)Fe+=" "+Me(ze[We-1],ze[We],Le[We-1],Le[We]);X.push({key:`arc-${q}`,d:Fe})}const ae=o.useMemo(()=>new Set(l??[]),[l]),me=q=>({idle:"",active:v("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:v("soundCompass.state.played","\uB4E4\uC74C"),correct:v("soundCompass.state.correct","\uC815\uB2F5"),wrong:v("soundCompass.state.wrong","\uC624\uB2F5")})[q],ne=q=>{if(r===q.id)return"active";if(u){if(q.id===i)return"correct";if(q.id===s&&s!==i)return"wrong"}return ae.has(q.id)?"played":"idle"},W=q=>r===q.id?"loop":u?q.id===i?"loop":null:c&&q.id===s?"once":null,ie=(q,K)=>{switch(q){case"played":case"correct":return n.jsx($s,{size:K});case"wrong":return n.jsx(qs,{size:K});default:return n.jsx(Vs,{size:K})}};return n.jsx("div",{className:"sound-compass",children:n.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[n.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[B===0&&e.map(q=>{const{x:K,y:ce}=V(q);return n.jsx("line",{x1:S.x,y1:S.y,x2:K,y2:ce,stroke:"#dde3ec",strokeWidth:"1"},q.id)}),X.map(q=>n.jsx("path",{d:q.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},q.key))]}),g&&!_&&n.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:P,height:P,left:S.x-P/2,top:S.y-P/2}}),C?n.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${_?" sound-compass__center--disabled":""}`,style:{width:P,height:P,left:S.x,top:S.y},"aria-label":m,"aria-disabled":_||void 0,tabIndex:_?-1:0,onClick:_?void 0:C,children:n.jsx(Pr,{size:F,color:"currentColor",strokeWidth:1.5})}):n.jsx("div",{className:"sound-compass__center",style:{width:P,height:P,left:S.x,top:S.y},children:n.jsx(Pr,{size:F,color:"currentColor",strokeWidth:1.5})}),e.map((q,K)=>{const{x:ce,y:ke}=V(q),ye=ne(q),de=W(q),oe={...y!==void 0||w?{"--shortcut-badge-scale":String(y??Math.max(.75,Math.min(3,b/56)))}:null,pointerEvents:p?"auto":"none",cursor:p?"pointer":"default",zIndex:ye!=="idle"?10:1},ge=b,he=Math.round(Math.max(10,Math.min(56,ge*.38))),pe=Math.round(Math.max(7,Math.min(18,ge*.2))),Me=Math.round(Math.max(10,Math.min(56,ge*.4))),ze=x==="answered"&&(ye==="played"||ye==="correct"||ye==="wrong"),Le=x===!0||ze,Fe=!ze;return n.jsxs("div",{className:"sound-compass__speaker-pos",style:{...oe,left:ce-ge/2,top:ke-ge/2},children:[de&&n.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${ye}`+(de==="once"?" sound-compass__pulse--once":""),style:{width:ge,height:ge,...de==="once"&&d!==void 0?{"--sc-pulse-duration-once":`${d}ms`}:null,...h!==void 0?{"--sc-pulse-scale":String(h)}:null}}),n.jsxs("button",{type:"button",tabIndex:p?0:-1,"aria-disabled":p?void 0:!0,onClick:p?()=>f?.(q.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${ye}`,style:{width:ge,height:ge},"aria-label":me(ye)?`${q.label}, ${me(ye)}`:q.label,"aria-pressed":s!=null?q.id===s:void 0,children:[Le&&ie(ye,he),Fe&&n.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:x===!0?pe:Me},children:K+1})]}),q.shortcut&&n.jsx(lu,{keys:q.shortcut,anchor:A,className:"sound-compass__speaker-shortcut"})]},q.id)})]})})}function I2({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 F2({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 iu({checked:e,onChange:t,name:a,value:r,disabled:l=!1,label:s,className:i=""}){const u=o.useId();return n.jsxs("label",{className:`radio${l?" radio--disabled":""} ${i}`.trim(),htmlFor:u,children:[n.jsx("input",{id:u,type:"radio",name:a,value:r,checked:e,disabled:l,onChange:c=>t?.(c.target.checked)}),n.jsx("span",{className:"radio__dot"}),s&&n.jsx("span",{className:"radio__label body-2",children:s})]})}function O2({options:e,value:t,onChange:a,name:r,disabled:l=!1,direction:s="vertical",className:i="",ariaLabel:u}){const c=o.useId(),d=r??`radio-group-${c}`;return n.jsx("div",{className:`radio-group radio-group--${s} ${i}`.trim(),role:"radiogroup","aria-label":u,children:e.map(h=>n.jsx(iu,{name:d,value:h.value,checked:t===h.value,disabled:l||h.disabled,label:h.label,onChange:p=>{p&&a?.(h.value)}},h.value))})}const z2={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function W2({tone:e="info",title:t,message:a,children:r,dismissible:l=!1,onDismiss:s,live:i,className:u=""}){const{t:c}=xe.useTranslation(),[d,h]=o.useState(!1),p=o.useRef(null),f=o.useCallback(()=>{const g=p.current;g&&g.contains(document.activeElement)&&sr(g),h(!0),s?.()},[s]);if(d)return null;const b=_e("alert",`alert--${e}`,u),x=i??(e==="danger"||e==="warning"?"assertive":"polite"),C=x==="assertive"?"alert":x==="polite"?"status":void 0,m=!!t,_=!!(a||r);return n.jsxs("div",{ref:p,className:b,role:C,children:[n.jsxs("div",{className:"alert__body",children:[n.jsxs("div",{className:"alert__header",children:[n.jsx(et,{icon:z2[e],size:20,className:"alert__icon"}),m&&n.jsx("span",{className:"alert__title body-2",children:t}),!m&&_&&n.jsx("div",{className:"alert__message body-3",children:a||r})]}),m&&_&&n.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||r})]}),l&&n.jsx("button",{type:"button",className:"alert__dismiss",onClick:f,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}const H2={ready:"search",guide:"info",error:"circle-alert"};function V2(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const r=[];let l=0,s=0;for(const i of a){const u=e.indexOf(i,l);u<0||(u>l&&r.push(e.slice(l,u)),r.push(n.jsx("strong",{className:"search-summary__em body-2",children:i},s++)),l=u+i.length)}return l<e.length&&r.push(e.slice(l)),r}function q2({status:e="guide",label:t,children:a,emphasis:r,icon:l,className:s=""}){const i=l===!1?null:l??H2[e],u=_e("search-summary",`search-summary--${e}`,s),c=t??a,d=typeof c=="string"&&r&&r.length>0?V2(c,r):c;return n.jsxs("div",{className:u,role:"status","aria-live":"polite",children:[i!=null&&n.jsx(et,{icon:i,size:18,className:"search-summary__icon"}),n.jsx("span",{className:"search-summary__text body-2",children:d})]})}function Ha({title:e,items:t}){const{t:a}=xe.useTranslation(),{anchorRect:r,openAt:l,close:s}=Pa(),i=o.useRef(null),u=bo(!!r,(c,d)=>{c&&d?l(i.current?.querySelector("button")??d):s()},i);return n.jsxs("span",{ref:i,style:{display:"contents"},children:[n.jsx(Ce,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:c=>{ca(c)||l(c.currentTarget)},onPointerLeave:c=>{ca(c)||s()},onClick:c=>{u.touchPress(c.currentTarget)},onFocus:c=>{da()||l(c.currentTarget)},onBlur:s}),r&&n.jsx(Kn,{title:e,items:t,showIndex:t.length>1,anchorRect:r,onClose:s})]})}function U2({items:e=[],value:t,onChange:a,className:r="",size:l=40}){const s=o.useId(),{t:i}=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,h=e.find(C=>C.key===d&&!C.disabled)?.key??c,p=()=>Array.from(u.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),f=(C,m=p())=>{if(m.length===0)return;const _=(C%m.length+m.length)%m.length;m[_]?.focus(),m[_]?.click()},b=C=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(C.key))return;C.preventDefault();const m=p(),_=m.indexOf(C.currentTarget);C.key==="ArrowRight"||C.key==="ArrowDown"?f(_+1,m):C.key==="ArrowLeft"||C.key==="ArrowUp"?f(_-1,m):C.key==="Home"?f(0,m):f(m.length-1,m)},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--${l}`,role:"tablist","aria-label":i("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===h?0:-1,className:`tabs__tab body-2${C.key===d?" tabs__tab--active":""}`,onClick:()=>{C.key!==t&&a?.(C.key)},onKeyDown:b,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 G2={xs:12,sm:16,md:20,lg:28,xl:36};function K2(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 Y2({src:e,name:t,size:a="md",shape:r="circle",className:l=""}){const{t:s}=xe.useTranslation(),[i,u]=o.useState(null),c=!!e&&i===e,d=t?K2(t):"",h=!!e&&!c,p=!h&&!!d,f=t||s("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return n.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${l}`.trim(),role:"img","aria-label":f,children:[h&&n.jsx("img",{className:"avatar__image",src:e,alt:f,onError:()=>u(e??null)}),!h&&p&&n.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:d}),!h&&!p&&n.jsx(et,{icon:"user-round",size:G2[a],className:"avatar__icon"})]})}function Z2(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(),l=e.type.toLowerCase();return a.some(s=>{const i=s.toLowerCase();return i.startsWith(".")?r.endsWith(i):i.endsWith("/*")?l.startsWith(i.slice(0,-1)):l===i})}function X2({onFilesSelected:e,accept:t,multiple:a=!1,disabled:r=!1,showFileList:l=!0,files:s,onRemove:i,className:u=""}){const{t:c}=xe.useTranslation(),d=o.useRef(null),[h,p]=o.useState(!1),[f,b]=o.useState([]),x=s??f,C=v=>{if(!v||v.length===0)return;const B=Array.from(v).filter(E=>Z2(E,t));if(B.length===0)return;const k=a?B:B.slice(0,1);if(s===void 0){const E=a?[...x,...k]:k;b(E),e?.(E)}else e?.(k)},m=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 B=v.target;try{C(B.files)}finally{B.value=""}},y=()=>{r||d.current?.click()},w=v=>{if(!r&&(i?.(v),s===void 0)){const B=x.filter((k,E)=>E!==v);b(B),i||e?.(B)}};return n.jsxs("div",{className:`file-upload ${u}`.trim(),children:[n.jsxs("div",{className:_e("file-upload__dropzone",h&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:y,onKeyDown:v=>{(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),y())},onDragOver:m,onDragLeave:_,onDrop:g,children:[n.jsx(et,{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(),y()},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})]}),l&&x.length>0&&n.jsx("ul",{className:"file-upload__list",children:x.map((v,B)=>n.jsxs("li",{className:"file-upload__list-item body-3",children:[n.jsx("span",{className:"file-upload__file-name body-3",children:v.name}),n.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":c("fileUpload.removeAriaLabel",{name:v.name}),disabled:r,onClick:()=>w(B),children:n.jsx(et,{icon:"x",size:14})})]},`${v.name}-${B}`))})]})}function J2({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,l)=>{const s=l===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(et,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},l)})})})}const Q2={small:14,medium:20,large:28};function ev({value:e,onChange:t,max:a=5,readOnly:r=!1,size:l="medium",ariaLabel:s,className:i=""}){const{t:u}=xe.useTranslation(),c=r||!t,[d,h]=o.useState(null),p=c?e:Number.isFinite(e)?Math.round(e):0,f=d??p,b=Q2[l],x=v=>{v!==e&&t?.(v)},C=v=>{c||x(v)},m=v=>{c||da()||h(v)},_=o.useRef(null),g=v=>{const B=Math.min(a,Math.max(1,v));x(B),Array.from(_.current?.querySelectorAll("[data-star]")??[]).find(k=>k.dataset.star===String(B))?.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()}},y=p>=1&&p<=a?Math.round(p):1,w=()=>{c||h(null)};return n.jsx("div",{className:`rating rating--${l}${c?" rating--readOnly":""} ${i}`.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:w,onPointerUp:v=>{v.pointerType==="touch"&&w()},onPointerCancel:v=>{v.pointerType==="touch"&&w()},children:Array.from({length:a},(v,B)=>{const k=B+1,E=Math.max(0,Math.min(1,f-B)),D=E>0&&E<1,N=n.jsxs("span",{className:"rating__star-wrap",children:[n.jsx(et,{icon:"star",size:b,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(et,{icon:"star",size:b,className:"rating__star rating__star--filled"})})]});return c?n.jsx("span",{className:"rating__item","aria-hidden":"true",children:N},k):n.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":p===k,"aria-label":u("rating.starLabel",{n:k}),"data-star":k,tabIndex:k===y?0:-1,onClick:()=>C(k),onMouseEnter:()=>m(k),children:N},k)})})}const tv=20,nv=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function av({value:e,onChange:t,palette:a=nv,size:r=40,className:l="",ariaLabel:s}){const{t:i}=xe.useTranslation();return n.jsx("div",{className:`color-picker ${l}`.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} ${i("colorPicker.selected","\uC120\uD0DD\uB428")}`:u,children:c&&n.jsx(et,{icon:"check",size:tv,className:"color-picker__check"})},u)})})}function uu({icon:e,label:t,tooltip:a,wrapperStyle:r,color:l,bgColor:s,useHover:i=!0,iconSize:u="medium"}){const{t:c}=xe.useTranslation(),d=u==="small",h=_e("category-icon",d?"category-icon--small":""),p=d?16:20,f=o.useRef(null),[b,x]=o.useState(!1),C=o.useMemo(()=>{const k=r&&typeof r=="object"?{...r}:{};return!l&&!s?k:{...k,...l?{color:l,"--t-item-fg":l}:{},...s?{"--t-item-bg":s}:{}}},[r,l,s]),m=a||t,_=i&&!!m,[g,A]=o.useState(null);o.useLayoutEffect(()=>{b&&A(f.current?.getBoundingClientRect()??null)},[b]),o.useEffect(()=>{if(!i&&b)try{x(!1)}catch{}},[i,b]),o.useEffect(()=>{if(!b)return;const k=E=>{const D=f.current;if(!D)return;const N=E.target;N&&!D.contains(N)&&x(!1)};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[b]);const y=o.useCallback(()=>{i&&x(!0)},[i]),w=o.useCallback(()=>{i&&x(!1)},[i]),v=o.useCallback(()=>x(!1),[]),B=o.useCallback(k=>{if(k.key==="Escape"){x(!1);return}(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),x(E=>!E))},[]);return n.jsxs("span",{ref:f,className:_e("category-icon__wrap",_&&"category-icon__wrap--interactive"),onPointerEnter:y,onPointerLeave:w,onFocus:y,onBlur:w,onKeyDown:B,role:"button",tabIndex:0,"aria-label":typeof m=="string"?c("common.descriptionFor",{name:m,defaultValue:`${m} \uC124\uBA85`}):void 0,"aria-haspopup":!!m,"aria-expanded":b,"data-tooltip-ignore":!0,children:[n.jsx(et,{icon:e,label:t,className:h,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:C,size:p}),b&&m&&n.jsx(wn,{anchorRect:g,text:typeof m=="string"?m:void 0,offset:8,onClose:v,className:"category-icon__tooltip",ariaLabel:typeof m=="string"?m:void 0})]})}let Fn=null;function dr(e){if(Fn&&Fn!==e)try{Fn()}catch{}return Fn=e,()=>{Fn===e&&(Fn=null)}}function pr(e){if(Fn===e){Fn=null;try{e()}catch{}}}function hr(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 l=!1;const s=u=>{if(!l){l=!0;try{t?.(u)}catch{}a(u)}};let i;try{i=new Audio(e)}catch{return s(!1),{el:{},stop:()=>{},done:r}}i.onended=()=>s(!0),i.onerror=()=>s(!1);try{i.play().catch(()=>s(!1))}catch{s(!1)}return{el:i,stop:()=>{try{i.pause()}catch{}s(!1)},done:r}}function rv(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=i=>i.map(u=>u?.contextCode||u?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const i=a.sentences||a.items||[],u=Array.isArray(i)&&i.length>0?r(i):[];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 i=a.items||a.sentences||[],u=Array.isArray(i)&&i.length>0?r(i):[];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 i=a.items||a.sentences||[],u=Array.isArray(i)&&i.length>0?r(i):[];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 i=a.sentences||a.items||[],u=Array.isArray(i)&&i.length>0?r(i):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LIN_D"}}const l=a.sentences||a.items||[],s=r(Array.isArray(l)?l:[]);return s.length===0&&(a.contextCode||a.context_code)&&s.push(String(a.contextCode||a.context_code)),{previewCodes:s,previewBucket:null}}function ov(e,t){const[a,r]=o.useState(!1),[l,s]=o.useState(-1),[i,u]=o.useState({key:"",urls:[]}),c=o.useRef(null),d=o.useRef(!1),h=o.useRef(null),p=o.useRef(null),[f,b]=o.useState(!1),x=o.useRef([]),{previewCodes:C,previewBucket:m}=rv(e,t),_=`${C.join(",")}|${m??""}`,g=o.useMemo(()=>i.key===_?i.urls:[],[i,_]);o.useEffect(()=>{if(!C.length)return;let y=!1;return(async()=>{const w=[],v=[];for(const B of C)try{const k=yl(B,m);if(!k){w.push("");continue}let E=null;try{E=await vl(k)}catch{}if(!E)try{const D=await xl(k);D&&(E=URL.createObjectURL(D),v.push(E))}catch{}w.push(E??"")}catch{w.push("")}y?v.forEach(B=>{try{URL.revokeObjectURL(B)}catch{}}):(x.current.forEach(B=>{try{URL.revokeObjectURL(B)}catch{}}),x.current=v,u({key:_,urls:w}))})(),()=>{y=!0}},[C.join(","),m]),o.useEffect(()=>()=>{x.current.forEach(y=>{try{URL.revokeObjectURL(y)}catch{}}),x.current=[]},[]);const A=o.useCallback(async y=>{if(y.stopPropagation(),y.preventDefault(),d.current){h.current&&pr(h.current),d.current=!1;try{c.current?.pause()}catch{}r(!1),s(-1);return}if(!g.filter(Boolean).length)return;let w=null;const v=()=>{d.current=!1,w?.stop()};h.current=v;const B=dr(v);d.current=!0,r(!0);for(let k=0;k<g.length&&d.current;k++){const E=g[k];if(E&&(s(k),w=hr(E),c.current=w.el,!await w.done))break}B(),h.current===v&&(h.current=null,d.current=!1,r(!1),s(-1))},[g]);return o.useEffect(()=>()=>{h.current&&pr(h.current),d.current=!1;try{c.current?.pause()}catch{}c.current=null},[]),{playing:a,playingIndex:l,previewUrls:g,previewHover:f,setPreviewHover:b,previewBtnRef:p,handlePreview:A}}const sv=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 l=r;return l.sentence||l.text||l.context||l.question||l.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function Mo(e){const{index:t,type:a,trainingData:r,ariaLabel:l,depth:s,renderPopup:i,completed:u,completedIds:c,selectedIds:d,tooltipText:h,useDescriptionTooltip:p=!1,onRemove:f,hideCheckBadge:b=!1,showTypeLabel:x=!1,onComplete:C,onSelect:m,onMore:_,countLabelOverride:g,size:A="square"}=e||{},{t:y}=xe.useTranslation(),[w,v]=o.useState(!1),B=o.useRef(null),[k,E]=o.useState(!1);o.useEffect(()=>{B.current?.matches(":hover")&&E(!0)},[]);const{playing:D,playingIndex:N,previewUrls:I,previewHover:R,setPreviewHover:Y,previewBtnRef:M,handlePreview:T}=ov(r,a?.key),L=o.useCallback(()=>{m?m():v(!0)},[m]),Z=o.useCallback(()=>v(!1),[]),G=o.useCallback(()=>E(!0),[]),O=o.useCallback(()=>E(!1),[]),U=o.useCallback(()=>Y(!0),[Y]),$=o.useCallback(()=>Y(!1),[Y]),[H,z]=o.useState(null);o.useLayoutEffect(()=>{R&&z(M.current?.getBoundingClientRect()??null)},[R,M]);const[V,S]=o.useState(null);o.useLayoutEffect(()=>{k&&!w&&p&&S(B.current?.getBoundingClientRect()??null)},[k,w,p]);const P=o.useCallback(we=>{we.target===we.currentTarget&&(we.key==="Enter"||we.key===" ")&&(we.preventDefault(),L())},[L]),F=r||null,X=o.useMemo(()=>{if(!p)return null;const we=h?(Array.isArray(h)?h:[h]).filter(Boolean):null,Ue=we&&we.length>0?we:sv(F);return Ue&&Ue.length>0?Ue:null},[p,h,F]),se=o.useCallback(we=>{we.stopPropagation(),f?.()},[f]),ae=o.useCallback(we=>we.stopPropagation(),[]),me=o.useCallback(we=>{typeof C=="function"&&C(we)},[C]),ne=u||(c&&r?.id!=null?c.has(String(r.id)):!1),W=!ne&&(d!=null&&r?.id!=null?d.has(String(r.id)):!1);Ti("speechear.popup.close",Z);const ie=Hl(),q=`${a?.label||""} ${t+1}`,K=F?.title||F?.name||q;let ce=a?.icon,ke,ye="",de="";try{const we=F?.category_0||F?.category_main_code||F?.category_main,Ue=F?.category_1||F?.category_sub_code||F?.category_sub,Ae=ie.find($e=>$e.key===we);Ae?.icon&&(ce=Ae.icon),!ke&&Ae?.color&&(ke={"--t-item-fg":Ae.color}),!ke&&F?.iconColor&&(ke={"--t-item-fg":F.iconColor}),ye=Ae?y(`topic.${Ae.key}`,{defaultValue:Ae.label||""}):"";try{const $e=Ae?.subs?.find(Se=>Se.key===Ue);de=$e?y(`topic.sub.${$e.key}`,{defaultValue:$e.label||""}):""}catch{}}catch{}const oe=de?`${ye} / ${de}`:ye||a?.label||K,ge=we=>y("training.countQuestions",{n:we,count:we}),he=we=>y("training.countSentences",{n:we,count:we});let pe="";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),pe=he(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),pe=ge(we)}else if(a?.key==="LONG_STORY"){let we=1;if(Array.isArray(F.items)&&F.items.length>0){const Ue=F.items.reduce((Ae,$e)=>{const Se=$e.questionItems;return Array.isArray(Se)?Ae+Se.length:Array.isArray($e.questions)?Ae+$e.questions.length:Ae},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);pe=ge(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),pe=he(we)}else Array.isArray(F.items)&&(pe=F.items.length>0?ge(F.items.length):"")}catch{}const Me=A==="row",ze=A==="list"||Me,Le=A==="compact",Fe=A==="small",We=Fe&&a?.key?qC().find(we=>we.key===a.key):void 0,pt=We?Vl[We.key]:void 0,it=We?pt?y(`trainingType.${pt}.title`,{defaultValue:We.label}):We.label??"":"",at=x&&a?.label&&a.label!==String(K)?String(a.label):Fe&&it&&it!==String(K)?it:"",ht=!!at,Ne=g!==void 0?g:pe,Ve=[at,typeof K=="string"?K:"",Ne].map(we=>String(we??"").trim()).filter(Boolean).join(" ");return n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:B,className:`training-block-button${ze?" training-block-button--list":""}${Me?" training-block-button--row":""}${Le?" training-block-button--compact":""}${Fe?" training-block-button--small":""}${ne?" training-block-button--completed":""}${W?" training-block-button--selected":""}${ht&&!Fe?" training-block-button--withType":""}${Fe&&!ht?" training-block-button--no-type-label":""}`,onClick:L,onPointerEnter:G,onPointerLeave:O,role:"button",tabIndex:0,onKeyDown:P,"aria-label":typeof l=="string"?l:Ve||void 0,title:!p&&h&&(Array.isArray(h)?h.filter(Boolean).join(`
|
|
854
854
|
`):h)||void 0,children:[n.jsxs("div",{className:"training-block-button__left",children:[x&&a?.label&&a.label!==String(K)&&n.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Fe&&it&&it!==String(K)&&n.jsx("span",{className:"training-block-button__type-label caption-2",children:it}),n.jsx(uu,{icon:ce,label:K,tooltip:oe,wrapperStyle:ke,iconSize:Fe||Le?"small":"medium"}),!b&&(ne||W)&&!(f&&k)&&n.jsx(Et,{className:f?"training-block-button__check--removable":void 0,type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":ne?y("training.completed","\uD6C8\uB828 \uC644\uB8CC"):y("training.selected","\uC120\uD0DD\uB428")}),f&&n.jsx(Et,{className:`training-block-button__remove${k?" is-hover":""}`,type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":y("common.remove","\uC81C\uAC70"),onClick:se}),n.jsx("div",{className:`training-block-button__title ${Le?"body-3":Fe?"body-3b":"h3"}`,children:String(K)}),n.jsxs("div",{className:"training-block-button__description",children:[Ne?n.jsx("div",{className:`training-block-button__count ${Fe?"caption-2":"caption-1"}`,children:Ne}):null,n.jsx("div",{className:"training-block-button__chevron",children:n.jsx(et,{icon:"chevron-right",label:y("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:Fe?12:20})})]}),(ze&&!Me||Fe)&&I.length>0&&n.jsx("div",{ref:M,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:ae,onPointerEnter:U,onPointerLeave:$,children:n.jsx(Ce,{htmlType:"button",size:Fe?28:32,type:"dot",icon:D?"pause":"play",variant:Fe?"transparent-lightGray":"default",useBorder:!1,selected:D,ariaLabel:String(K).trim()?D?y("training.stopFor",{name:K,defaultValue:`${K} \uC815\uC9C0`}):y("training.previewFor",{name:K,defaultValue:`${K} \uBBF8\uB9AC \uB4E3\uAE30`}):D?y("training.stop","\uC815\uC9C0"):y("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:T})})]}),_&&n.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:we=>{we.stopPropagation(),_(we)},children:n.jsx(Ce,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:String(K).trim()?y("common.moreFor",{name:K}):y("common.more","\uB354\uBCF4\uAE30")})})]}),R&&n.jsx(wn,{anchorRect:H,text:D?y("training.stop","\uC815\uC9C0"):y("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:$}),k&&!w&&p&&(X?n.jsx(Kn,{anchorRect:V,items:X,activeIndex:N,onClose:O}):F?.subTitle?n.jsx(wn,{anchorRect:V,text:F.subTitle,offset:8,onClose:O}):null),w&&i&&i({trainingData:F,typeKey:a?.key??"",onClose:Z,onComplete:me,popupTitle:String(K),popupSubTitle:a?.subTitle,depth:s!=null?String(s):void 0,popupIcon:ce,popupIconTooltip:String(oe),popupWrapperStyle:ke})]})}const cu=200;function lv(e){return e.itemId?(ZC()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function du({plan:e,groups:t,anchorRect:a,offset:r=12,onClose:l}){const{t:s}=xe.useTranslation(),i=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):JC(s).map(c=>{const d=(e?.items??[]).filter(h=>h.trainingType===c.key);return{key:c.key,label:c.label,type:c,pickedCount:d.length,data:d.map(lv).filter(h=>h!=null)}}).filter(c=>c.pickedCount>0),[t,e?.items,s]);if(i.length===0)return null;const u=n.jsx("div",{className:"tooltip-training__box",children:n.jsx("div",{className:"tooltip-training__groups",children:i.flatMap(({key:c,label:d,type:h,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((b,x)=>n.jsx(Mo,{index:x,type:h,trainingData:b,size:"compact",hideCheckBadge:!0},String(b.id??x)))})]},c)])})});return a?n.jsx(mn,{anchorRect:a,offset:r,onClose:l,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:s("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:u}):u}const iv=200;function uv({icon:e,count:t,title:a,plan:r,tooltip:l=!0,hoverAccent:s=!1,className:i="",onClick:u,onMouseEnter:c,onMouseLeave:d}){const h=!!u||!!c||l&&!!r,p=_e("count-tile",h&&"count-tile--interactive",h&&s&&"count-tile--accent",u&&"count-tile--clickable",i),f=o.useRef(null),[b,x]=o.useState(null),C=o.useRef(null),m=o.useRef(null),_=!!(b&&r&&l),g=o.useCallback(()=>{C.current&&(clearTimeout(C.current),C.current=null),m.current&&(clearTimeout(m.current),m.current=null)},[]),A=o.useCallback(()=>{g(),x(null)},[g]),y=o.useCallback(()=>{!l||!r||(g(),C.current=setTimeout(()=>{C.current=null,x(f.current?.getBoundingClientRect()??null)},cu))},[l,r,g]),w=o.useCallback(()=>{C.current&&(clearTimeout(C.current),C.current=null),!m.current&&(m.current=setTimeout(()=>{m.current=null,x(null)},iv))},[]);return o.useEffect(()=>()=>{g()},[g]),o.useEffect(()=>{(!l||!r)&&A()},[l,r,A]),o.useEffect(()=>{if(!_)return;const v=k=>k instanceof Element&&(f.current?.contains(k)||!!k.closest(".tooltip-training")),B=k=>{v(k.target)?g():w()};return document.addEventListener("pointerover",B,!0),()=>document.removeEventListener("pointerover",B,!0)},[_,g,w]),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():y()},onMouseEnter:c,onMouseLeave:v=>{w(),d?.(v)},role:u?"button":"img",tabIndex:u?0:void 0,"aria-label":`${a} ${t}`,children:[n.jsx(et,{icon:e,size:20,className:"count-tile__icon"}),n.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]}),b&&r&&n.jsx(du,{plan:r,anchorRect:b,onClose:A})]})}let Va=0,pu="",Lo="",qa=0;function hu(){return mu(!1)}function cv(){return mu(!0)}function mu(e){const t=typeof document<"u";Va===0&&t&&(pu=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(qa===0&&(Lo=document.body.style.paddingRight),qa++,document.body.style.paddingRight="0px"),Va++;let a=!1;return()=>{a||(a=!0,Va=Math.max(0,Va-1),e&&t&&(qa=Math.max(0,qa-1),qa===0&&(Lo?document.body.style.paddingRight=Lo:document.body.style.removeProperty("padding-right"))),Va===0&&t&&(document.body.style.overflow=pu))}}function dv(){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 pv({open:e,onClose:t,ariaLabel:a,title:r,children:l,size:s="md",closeOnBackdrop:i=!0,closeOnEscape:u=!0,showClose:c=!0,className:d,contentClassName:h}){const{t:p}=xe.useTranslation(),f=o.useId(),b=o.useRef(null),x=o.useCallback(()=>t(),[t]);o.useEffect(()=>{if(!e)return;const g=document.activeElement,A=hu(),y=b.current;return mo(y,g),y?.focus(),()=>{A();const w=document.activeElement;(!w||w===document.body||y&&y.contains(w))&&fo(g)?.focus?.()}},[e]);const C=o.useRef(x),m=o.useRef(u);o.useEffect(()=>{C.current=x,m.current=u}),o.useEffect(()=>{if(e)return Gn(()=>{m.current&&C.current()})},[e]);const _=o.useRef(!1);return po(b,e),!e||typeof document>"u"?null:nn.createPortal(n.jsx("div",{className:_e("dialog",d),onPointerDown:i?g=>{_.current=g.target===g.currentTarget}:void 0,onMouseDown:g=>{g.target===g.currentTarget&&g.preventDefault()},onClick:i?g=>{const A=_.current;_.current=!1,A&&g.target===g.currentTarget&&x()}:void 0,children:n.jsxs("div",{ref:b,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}`,h),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(dv,{})}):null,n.jsx("div",{className:"dialog__body",children:l})]})}),document.body)}function hv({columns:e,rows:t,rowKey:a,title:r,toolbar:l,empty:s,loading:i,caption:u,className:c=""}){const{t:d}=xe.useTranslation(),h=!i&&t.length===0;return n.jsxs("div",{className:_e("board",c),children:[r||l?n.jsxs("div",{className:"board__head",children:[r?n.jsx("h2",{className:"board__title",children:r}):n.jsx("span",{}),l?n.jsx("div",{className:"board__toolbar",children:l}):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:i?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:i})}):h?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(b=>n.jsx("td",{className:_e("board__td",`board__cell--${b.align??"left"}`),children:b.render(p,f)},b.key))},a(p,f)))})]})]})}function mv({name:e,role:t,photo:a,media:r,credentials:l,size:s=190,className:i=""}){return n.jsxs("div",{className:_e("person-card",i),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,l?.length?n.jsx("ul",{className:"person-card__credentials",children:l.map(u=>n.jsx("li",{children:u},u))}):null]})}function fv({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,l)=>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,i)=>n.jsx("p",{children:s},i))})]},`${r.label??""}-${l}`))})]},a.title))})}function Cv({title:e,kind:t,body:a,badge:r,badgeSrc:l,footer:s,width:i,className:u=""}){const c=r??(l?n.jsx("img",{src:l,alt:""}):null);return n.jsxs("div",{className:_e("publication-card",u),style:i?{width:i,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 gv({logo:e,alt:t,onDone:a,durationMs:r=3e3}){const l=$a(a);return o.useEffect(()=>{const s=setTimeout(()=>l.current?.(),r);return()=>clearTimeout(s)},[r,l]),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 bv({eyebrow:e,eyebrowIndex:t,title:a,description:r,level:l=2,tone:s="dark",className:i=""}){const u=l===1?"h1":"h2";return n.jsxs("div",{className:_e("section-header",`section-header--${s}`,i),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 yv({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 fu(e){return typeof e=="string"?e:e.label}function Cu({value:e,onChange:t,suggestions:a,openOnFocus:r=!1,filterSuggestions:l,onSelectSuggestion:s,autoActiveFirst:i=!1}){const u=o.useId(),[c,d]=o.useState(!1),[h,p]=o.useState(-1),f=o.useRef(null),b=o.useMemo(()=>{if(!a.length)return[];const N=e??"";return l===!1?a:N?typeof l=="function"?l(a,N):a.filter(I=>fu(I).toLowerCase().includes(N.toLowerCase())):r?a:[]},[a,e,r,l]),[x,C]=o.useState(!1),m=o.useRef([]),_=x&&b.length===0?m.current:b;o.useEffect(()=>{_.length&&(m.current=_)},[_]);const g=o.useCallback(()=>C(!0),[]),A=o.useCallback(()=>C(!1),[]),y=i?0:-1;o.useEffect(()=>{c||p(y)},[c,y]),o.useEffect(()=>()=>{f.current&&clearTimeout(f.current)},[]);const w=h<_.length?h:y<_.length?y:-1,v=o.useCallback(N=>{s?s(N):t?.(fu(N)),d(!1)},[t,s]),B=o.useCallback(()=>d(!0),[]),k=o.useCallback(()=>{d(!0),p(y)},[y]),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(I=>Math.min(_.length-1,(I<_.length?I:y)+1))):N.key==="ArrowUp"?(N.preventDefault(),p(I=>Math.max(y,(I<_.length?I:_.length)-1))):N.key==="Enter"?w>=0&&v(_[w]):N.key==="Escape"&&c&&(N.preventDefault(),d(!1)))},[_,w,c,v,y]);return{listId:u,open:c,activeIdx:w,filtered:_,handleFocus:B,handleBlur:E,handleInput:k,handleKeyDown:D,handleSelect:v,handleCompositionStart:g,handleCompositionEnd:A}}const $o=typeof window<"u"?o.useLayoutEffect:o.useEffect;function Xn(e){const{value:t,defaultValue:a,name:r,inputRef:l,onChange:s,label:i,ariaLabel:u,ariaDescribedBy:c,required:d,placeholder:h,ghostText:p,ghostHint:f,type:b="text",disabled:x=!1,readOnly:C=!1,error:m,helperText:_,maxLength:g,size:A=48,variant:y="input",fullWidth:w=!1,newline:v=!1,multiline:B=!1,rows:k=3,leftIcon:E,rightIcon:D,clearable:N=!1,list:I,showCount:R=!0,className:Y="",onFocus:M,onBlur:T,onKeyDown:L,onEnter:Z,inputMode:G,autoComplete:O,autoFocus:U,suggestions:$,filterSuggestions:H,onSelectSuggestion:z,autoActiveFirst:V,openOnFocus:S=!1}=e,P=C||x?void 0:$,{t:F}=xe.useTranslation(),X=o.useId();!i&&!u&&St(`TextField:unnamed:${X}`,"[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 se=`tf-${X}`,ae=`tf-helper-${X}`,me=o.useRef(null),ne=Cu({value:t??"",onChange:s,suggestions:P??[],openOnFocus:S,filterSuggestions:H,onSelectSuggestion:z,autoActiveFirst:V}),W=!!P&&ne.open&&ne.filtered.length>0,ie=o.useRef(null),[q,K]=o.useState(null),ce=o.useCallback(()=>{const Ne=ie.current;if(!Ne||typeof window>"u")return;const Ve=Ne.getBoundingClientRect(),we=230,Ue=window.innerHeight-Ve.bottom<we+8&&Ve.top>we+8;K({position:"fixed",left:Ve.left,width:Ve.width,...Ue?{bottom:window.innerHeight-Ve.top+8}:{top:Ve.bottom+8},zIndex:Ia(Ne)})},[]);$o(()=>{if(!W)return;ce();let Ne=null;const Ve=()=>{if(typeof requestAnimationFrame>"u"){ce();return}Ne===null&&(Ne=requestAnimationFrame(()=>{Ne=null,ce()}))},we=Ue=>{const Ae=Ue.target;Ae&&Ae.nodeType===1&&Ae.closest?.(".text-field__suggestions")||Ve()};return window.addEventListener("scroll",we,!0),window.addEventListener("resize",Ve),()=>{Ne!==null&&cancelAnimationFrame(Ne),window.removeEventListener("scroll",we,!0),window.removeEventListener("resize",Ve)}},[W,ce]);const ke=o.useCallback(Ne=>{me.current=Ne,typeof l=="function"?l(Ne):l&&(l.current=Ne)},[l]),ye=p?`${p}${f??F("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)")}`:h,de=t!==void 0,oe=de&&b==="password",[ge,he]=o.useState((a??"").length),pe=de?(t??"").length:ge,Me=o.useRef(t);$o(()=>{Me.current=t}),o.useEffect(()=>{const Ne=me.current;if(!oe||!Ne)return;const Ve=t??"";Ne.value!==Ve&&(Ne.value=Ve)},[oe,t]),o.useEffect(()=>{if(!v||!me.current)return;const Ne=me.current;Ne.style.height="",Ne.scrollHeight>Ne.clientHeight&&(Ne.style.height=`${Ne.scrollHeight}px`)},[t,ge,v]);const ze=g!=null&&pe>g,Le=A===32?16:20,Fe=_e("text-field",`text-field--s${A}`,y==="display"?"text-field--display":"",w?"text-field--full-width":"",x?"text-field--disabled":"",C?"text-field--readonly":"",m?"text-field--error":"",E?"text-field--has-left-icon":"",D||N?"text-field--has-right-icon":"",Y),We={id:se,...oe?{}:de?{value:t}:{defaultValue:a},ref:ke,placeholder:ye,name:r,disabled:x,readOnly:C,autoFocus:U,maxLength:g,list:I,inputMode:G,autoComplete:O,"aria-label":!i&&u?u:void 0,"aria-required":d,"aria-invalid":!!m,"aria-describedby":[_||m?ae:null,c].filter(Boolean).join(" ")||void 0,role:P?"combobox":void 0,"aria-autocomplete":P?"list":void 0,"aria-haspopup":P?"listbox":void 0,"aria-expanded":P?W:void 0,"aria-controls":W?ne.listId:void 0,"aria-activedescendant":W&&ne.activeIdx>=0?`${ne.listId}-option-${ne.activeIdx}`:void 0,onChange:Ne=>{const Ve=Ne.target;de||he(Ve.value.length),s?.(Ve.value),P&&ne.handleInput(),oe&&queueMicrotask(()=>{const we=Me.current??"";Ve.value!==we&&(Ve.value=we)})},onCompositionStart:P?ne.handleCompositionStart:void 0,onCompositionEnd:P?ne.handleCompositionEnd:void 0,onFocus:(Ne=>{M?.(Ne),P&&ne.handleFocus()}),onBlur:(Ne=>{T?.(Ne),P&&ne.handleBlur()}),onKeyDown:(Ne=>{const Ve=(Ne.key==="Tab"&&!Ne.shiftKey||Ne.key===" ")&&!Ne.nativeEvent.isComposing;if(p&&Ve&&!C&&!x&&!(Ne.currentTarget.value??"").trim()){Ne.preventDefault();const we=Ne.currentTarget;de||(we.value=p,he(p.length)),s?.(p);return}P&&Ne.key==="Enter"&&!Ne.nativeEvent.isComposing&&ne.activeIdx>=0?Ne.preventDefault():Z&&Ne.key==="Enter"&&!Ne.nativeEvent.isComposing&&(Ne.preventDefault(),Z()),L?.(Ne),P&&ne.handleKeyDown(Ne)})},pt=N&&!x&&!C&&pe>0,it=()=>v?n.jsx("textarea",{...We,className:"text-field__input text-field__input--auto body-2",rows:1}):B?n.jsx("textarea",{...We,className:"text-field__input text-field__input--textarea body-2",rows:k}):n.jsx("input",{...We,type:b,className:"text-field__input body-2"}),at=y==="display"&&!v&&!B&&!!ye,ht=()=>n.jsxs(n.Fragment,{children:[it(),at&&n.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:ye})]});return n.jsxs("div",{ref:ie,className:Fe,children:[i&&n.jsxs("label",{htmlFor:se,className:"text-field__label caption-1",children:[i,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(et,{icon:E,label:"",className:"",svgClassName:"text-field__icon-svg",size:Le})}),ht(),g!=null&&R&&n.jsxs("span",{className:`text-field__count caption-2${ze?" text-field__count--over":""}`,children:[pe,"/",g]}),pt&&n.jsx(Ce,{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:Ne=>{Ne.preventDefault()},onClick:()=>{!de&&me.current&&(me.current.value="",he(0)),s?.("")},tabIndex:-1}),D&&!pt&&n.jsx("span",{className:"text-field__icon text-field__icon--right",children:n.jsx(et,{icon:D,label:"",className:"",svgClassName:"text-field__icon-svg",size:Le})})]}),!!P&&n.jsx("span",{className:"text-field__status",role:"status","aria-live":"polite",children:ne.open&&(t??"").length>0&&ne.filtered.length===0?F("common.noMatches","\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"):""}),W&&(typeof document>"u"?null:nn.createPortal(n.jsx("ul",{id:ne.listId,className:"text-field__suggestions",role:"listbox",style:q??{position:"fixed",visibility:"hidden"},"data-tooltip-ignore":!0,children:ne.filtered.map((Ne,Ve)=>n.jsx("li",{id:`${ne.listId}-option-${Ve}`,role:"option","aria-selected":Ve===ne.activeIdx,className:`text-field__suggestion body-2${Ve===ne.activeIdx?" is-active":""}`,onMouseDown:we=>we.preventDefault(),onClick:()=>{ne.handleSelect(Ne),me.current?.focus()},children:typeof Ne=="string"?Ne:n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"text-field__suggestion-label",children:Ne.label}),Ne.hint&&n.jsx("span",{className:"text-field__suggestion-hint caption-1",children:Ne.hint})]})},typeof Ne=="string"?`${Ne}-${Ve}`:Ne.id))}),document.body)),(_||m)&&n.jsx("div",{className:"text-field__footer",children:n.jsx("span",{id:ae,className:"text-field__helper caption-1",role:m?"alert":void 0,children:m||_})})]})}function cn({options:e,value:t,onChange:a,placeholder:r,disabled:l=!1,block:s=!1,size:i=48,error:u=!1,className:c="",ariaLabel:d,ariaDescribedBy:h}){const{t:p}=xe.useTranslation(),f=r??p("dropdown.placeholder","\uC120\uD0DD"),b=o.useId(),x=o.useId(),C=o.useRef(null),m=o.useCallback((M,T)=>{const L=window.innerHeight-M.bottom<260&&M.top>260;return{position:"fixed",left:M.left,minWidth:M.width,...L?{bottom:window.innerHeight-M.top+6}:{top:M.bottom+6},zIndex:Ia(T)}},[]),{open:_,setOpen:g,toggle:A,style:y,triggerRef:w,menuRef:v}=Fa({computeStyle:m}),[B,k]=o.useState(-1),E=o.useCallback(()=>k(-1),[]),D=e.find(M=>M.value===t);o.useEffect(()=>{if(_){const M=e.findIndex(T=>T.value===t);k(M>=0?M:e.length?0:-1),requestAnimationFrame(()=>{const T=v.current;if(!T)return;const L=T.querySelectorAll(".dropdown__option")[M];L&&(T.scrollTop=Math.max(0,L.offsetTop-T.clientHeight/2+L.clientHeight/2))})}},[_]),o.useEffect(()=>{_&&k(M=>{if(M>=0&&M<e.length)return M;const T=e.findIndex(L=>L.value===t);return T>=0?T:e.length?0:-1})},[_,e.length]);const N=o.useCallback(()=>{l||A()},[l,A]),I=o.useCallback(M=>{M.disabled||l||(M.value!==t&&a?.(M.value),g(!1))},[a,g,l,t]);o.useEffect(()=>{l&&g(!1)},[l,g]);const R=o.useCallback(M=>{if(!l){if(!_){(M.key==="Enter"||M.key===" "||M.key==="ArrowDown")&&(M.preventDefault(),g(!0));return}if(M.key==="Escape"){M.preventDefault(),g(!1);return}M.key==="ArrowDown"?(M.preventDefault(),k(T=>{let L=T+1;for(;L<e.length&&e[L].disabled;)L++;return L<e.length?L:T})):M.key==="ArrowUp"?(M.preventDefault(),k(T=>{let L=T-1;for(;L>=0&&e[L].disabled;)L--;return L>=0?L:T})):(M.key==="Enter"||M.key===" ")&&(M.preventDefault(),e[B]?I(e[B]):g(!1))}},[l,_,e,B,I,g]),Y=_?n.jsx("div",{ref:v,id:b,className:"dropdown__menu","data-tooltip-ignore":!0,role:"listbox",style:y,onMouseLeave:E,onMouseDown:M=>M.preventDefault(),children:e.map((M,T)=>n.jsxs("button",{id:`${b}-option-${T}`,type:"button",role:"option","aria-selected":M.value===t,className:_e("dropdown__option body-2",M.value===t?"dropdown__option--active":"",T===B?"dropdown__option--active":"",M.disabled?"dropdown__option--disabled":""),onMouseDown:L=>L.preventDefault(),onClick:()=>I(M),onMouseEnter:()=>k(T),disabled:M.disabled,children:[n.jsx("span",{className:"dropdown__option-check",children:M.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"})})}),M.label]},M.value))}):null;return n.jsxs("div",{ref:C,className:_e("dropdown",`dropdown--s${i}`,_?"dropdown--open":"",s?"dropdown--block":"",u?"dropdown--error":"",c),onKeyDown:R,children:[n.jsxs("button",{ref:w,type:"button",className:"dropdown__trigger",role:"combobox","aria-haspopup":"listbox","aria-expanded":_,"aria-controls":_?b:void 0,"aria-activedescendant":_&&B>=0?`${b}-option-${B}`:void 0,"aria-label":d,"aria-describedby":[d&&D?x:"",h??""].filter(Boolean).join(" ")||void 0,"aria-invalid":u||void 0,disabled:l,onClick:N,onBlur:M=>{_&&!v.current?.contains(M.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"&&nn.createPortal(Y,C.current?.closest(".ihabdevteam-core-scope")??document.body)]})}function mr({page:e,totalPages:t,onChange:a,prevLabel:r,nextLabel:l,className:s=""}){const{t:i}=xe.useTranslation(),u=r??i("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),c=l??i("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=Math.max(1,t),h=()=>a(Math.max(1,Math.min(d,e-1))),p=()=>a(Math.min(d,e+1));return n.jsxs("div",{className:_e("pagination",s),children:[n.jsx(Ce,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:u,disabled:e<=1,onClick:h}),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(Ce,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:c,disabled:e>=t,onClick:p})]})}const Ua=new Map;function bn(e){const{t}=xe.useTranslation(),{options:a=[],value:r=a.find(y=>!y.disabled)?.key??a[0]?.key,onChange:l=y=>{},className:s="",size:i=40,shape:u="pill",useBG:c=!0,fullWidth:d=!1,minButtonWidth:h,ariaLabel:p}=e||{},f=o.useRef(null),b=a.filter(y=>!y.disabled),x=o.useId(),C=a.map(y=>y.key).join("\xB7");o.useEffect(()=>{if(!(!$n||p!=null&&p!=="")){if(Ua.set(x,C||"(\uBCF4\uAE30 \uC5C6\uC74C)"),Ua.size>1){const y=[...Ua.values()].sort();St(`segmented-control-unnamed:${y.join("|")}`,`[ihab/SegmentedControl] \uC774\uB984 \uC5C6\uB294 \uB77C\uB514\uC624\uADF8\uB8F9\uC774 \uD55C \uD654\uBA74\uC5D0 ${Ua.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): ${y.join(" / ")}`)}return()=>{Ua.delete(x)}}},[p,C,x]);const m=y=>{if(!b.length)return;const w=Math.max(0,b.findIndex(B=>B.key===r)),v=y==="first"?b[0]:y==="last"?b[b.length-1]:b[(w+y+b.length)%b.length];v&&(l(v.key),Array.from(f.current?.querySelectorAll("[data-segkey]")??[]).find(B=>B.dataset.segkey===v.key)?.focus())},_=y=>{switch(y.key){case"ArrowRight":case"ArrowDown":m(1);break;case"ArrowLeft":case"ArrowUp":m(-1);break;case"Home":m("first");break;case"End":m("last");break;default:return}y.preventDefault()},g=y=>{const w=v=>typeof v=="string"||typeof v=="number";if(!(!w(y.label)||y.count==null||y.count===!1||!w(y.count)))return`${y.label}, ${y.count}`},A=b.some(y=>y.key===r)?r:b[0]?.key;return n.jsx("div",{ref:f,onKeyDown:_,className:_e("segmented-control",`segmented-control--${u}`,`segmented-control--${i}`,d&&"segmented-control--full",!c&&"segmented-control--no-bg",h!=null&&"segmented-control--min",s),style:h!=null?{"--segmented-min-button-w":`${h}px`}:void 0,role:"radiogroup","aria-label":p??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(y=>n.jsx(Ce,{htmlType:"button",role:"radio","aria-checked":y.key===r,"data-segkey":y.key,tabIndex:y.key===A?0:-1,label:y.label,count:y.count,ariaLabel:g(y),disabled:y.disabled,className:y.key===r?"is-selected":"",onClick:()=>{y.disabled||l(y.key)},size:i,shape:u,useBorder:!1,useBG:!1},y.key))})}function Ro({count:e,search:t,segment:a,filters:r,pageSize:l,pagination:s,actions:i,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]}),h=!!(t||r?.length||l||s||i);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(bn,{size:40,...p},p.ariaLabel??f))]}),h&&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(cn,{size:40,options:p.options,value:p.value,onChange:p.onChange,ariaLabel:p.ariaLabel},f)),(l||s)&&n.jsxs("div",{className:"toolbar__pager",children:[l&&n.jsx(cn,{size:40,options:l.options,value:l.value,onChange:l.onChange,ariaLabel:l.ariaLabel??c("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),s&&n.jsx(mr,{page:s.page,totalPages:s.total,onChange:s.onChange,prevLabel:s.prevLabel,nextLabel:s.nextLabel})]}),i]})})]})}function gu(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(gu).join(""):""}function vv(e){let t=e.replace(/\r\n/g,`
|
|
855
855
|
`).replace(/\r/g,`
|