@ihabdevteam/core 0.12.3 → 0.13.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.
@@ -8,7 +8,7 @@ questions?`,contactButton:"Contact Us",items:[{q:"Can I cancel at any time?",a:"
8
8
  {{url}}`},shareLinkCreating:"Creating link\u2026"},colName:"Name",colBirthDate:"DOB",colPhone:"Phone",sendSms:"Send via SMS",copyLink:"Copy Link",copyLinkTooltip:"Copy link (paste in KakaoTalk)",addCard:"Add Word Training Bundle",addGroup:"Add Group",addGroupDesc:"Enter a name for the new group.",cardGroupEmpty:"No cards in this group",cardSearchPlaceholder:"Search by card name",copySuffix:"{{name}} (Copy)",defaultDescCount:"{{count}} word trainings",cardsEmpty:"No word training bundles created yet.",create:"Add Word Training",empty:"No word training created yet.",groupEmpty:"No word training in this group",groupNamePlaceholder:"Group name",noGroup:"No Group",searchPlaceholder:"Search by training name",tab:{cards:"Word Training Bundles",training:"Word Training"},totalPrefix:"",totalSuffix:" word trainings",renameCardAriaLabel:"Rename {{name}}",viewLabel:"View type"},A1={title:"My Word Tables",subtitle:"Manage your saved word tables.",searchPlaceholder:"Search by name",colName:"Table Name",open:"Open",deleteConfirm:"Delete this word table?",addButton:"Add Table",deleted:"Word table deleted.",empty:"No saved word tables.",countSuffix:" tables",sort:{newest:"Newest",oldest:"Oldest",name:"Name",count:"Word count"},addPairButton:"Add Contrast Pair Table",groupNamePlaceholder:"Group name",groupAddTitle:"Add Group",groupAddButton:"Add",groupNameRequired:"Please enter a group name.",groupNameDuplicate:"A group with this name already exists.",groupDeleteMessage:"Word tables in this group will be moved to 'No Group'.",deleteGroupConfirmTitle:"Delete the '{{group}}' group?",storeBadge:"Training Store",addCard:"Add Word Table Card",addGroup:"Add Group",cardsEmpty:"No word table cards created yet.",deleteGroup:"Delete Group",duplicated:"Word table duplicated.",groupEmpty:"No word tables.",menu:{copyLink:"Copy Link",deactivateLink:"Deactivate Share Link",duplicate:"Copy",openBuilder:"Edit",openNewTab:"Open in New Tab",publishStore:"Post to Training Store",unpublishStore:"Remove from Training Store"},sharedBadge:"Shared",newBadge:"Newly created",renameGroup:"Rename Group",tab:{cards:"Word Table Cards",tables:"Word Tables"},publishDefaultDesc:"{{count}} words"},T1={title:"Key Words",empty:"No key words available.",tableTitle:"'{{name}}' Key Word Table",print:"Print",saveToMyTable:"Save to My Tables",saved:"Saved to My Tables.",wordTableName:"{{name}} Key Words"},B1={defaultName:"Word Table",title:"Word Table Builder",createTitlePair:"Compose Contrast Pair Table",subtitle:"Set columns and add words to build a table.",filterTitle:"Table Settings",filter:{composition:"Composition",image:"Image",word:"Word",standardPron:"Standard Pronunciation",colloquialPron:"Colloquial Pronunciation",paperOrientation:"Paper Orientation",landscape:"Landscape",portrait:"Portrait",columns:"Columns",column:"{{count}} col",itemsPerPageWord:"Words per page",itemsPerPagePair:"Pairs per page",itemsPerPageOption:"{{count}}",pageIndicator:"{{current}} / {{total}}",pageNumber:"Page Number",pageNumberLeft:"Left",pageNumberCenter:"Center",pageNumberRight:"Right",border:"Border",cutLine:"Cut Line",show:"Show",hide:"Hide",dotted:"Dotted",corner:"Corner"},addWord:"Add",wordInfo:"Info for {{word}}",emptyItems:"Please add at least one word.",load:"Load",openNewWindow:"Open in New Window",saveButton:"Save",saveAsNewButton:"Save as New",print:"Print",popupBlocked:"Popup was blocked. Please allow popups in your browser settings.",printFileNameSingle:"Word Table",printFileNamePair:"Contrast Pair Table",save:{title:"Save Word Table",nameLabel:"Name",desc:"Enter a name for the word table.",placeholder:"Enter a title for this word table.",descriptionLabel:"Description",descriptionPlaceholder:"Enter a description for this word table.",duplicateName:"This name is already in use.",nameRequired:"Please enter a table name.",autoFillHint:" (Press Tab or Space to autofill)"},loadTable:{title:"Load Saved Word Table",empty:"No saved word tables.",loadButton:"Load",itemCount:"{{count}} words",deleteAriaLabel:"Delete",sort:{newest:"Newest",oldest:"Oldest",name:"Name",count:"Word Count"},view:{grid:"Grid View",list:"List View"}},groupDeleteMessage:"Word tables in this group will be moved to 'No Group'.",groupNamePlaceholder:"Group name",store:{badge:"Training Store"},card:{sub:"Word Table Card",empty:"No word tables in this card."},builder:{title:"Create Word Table",nameLabel:"Name",namePlaceholder:"Enter word table name",groupLabel:"Group",groupPlaceholder:"Group name (optional)",descLabel:"Description",descPlaceholder:"Brief description (optional)",nameRequired:"Please enter a name for the word table."},toast:{loadError:"Failed to load the word table list. Please refresh",renameError:"Failed to rename",saveError:"Failed to save",deleteError:"Failed to delete",shareLinkError:"Failed to create link",shareLinkCopied:"Link copied",shareLinkCreated:"Link created",shareLinkDeactivated:"Share link deactivated.",shareLinkDeactivateError:"Failed to deactivate share link.",customWordNotShareable:"This contains words you added yourself, so it cannot be shared -- others do not have them.",duplicateError:"Failed to duplicate",unpublishError:"Failed to remove from Training Store",unpublished:"Removed from Training Store",saveSuccess:"Word table saved.",shareLinkCreating:"Creating link\u2026"},scoring:{o:"{{word}} correct",triangle:"{{word}} partial",x:"{{word}} incorrect",button:"Score",pickTitle:"Who are you scoring?",pickSubtitle:"Choose the customer who trained with \u201C{{name}}\u201D.",pickSearch:"Search by name or phone",pickEmpty:"No customers registered.",pickNoMatch:"No matching customer.",pickAgain:"Choose another",scoringFor:"Scoring {{name}}",none:"Tap a cell to mark \u25CB \xB7 \u25B3 \xB7 \u2715.",tally:"{{marked}} scored \xB7 \u25CB {{o}} \xB7 \u25B3 {{triangle}} \xB7 \u2715 {{x}} \xB7 {{rate}}%",save:"Save score",saved:"Saved {{count}} marks for {{name}}.",reviewTitle:"Create a review table?",reviewMessage:"Builds a new table from the {{count}} cells {{name}} got wrong or partial. Correct ones are left out.",reviewConfirm:"Create review table",reviewDescription:"Cells marked wrong or partial in \u201C{{name}}\u201D \u2014 {{count}} of them.",reviewCreated:"Created \u201C{{name}}\u201D \u2014 {{count}} cells.",discardTitle:"Discard this scoring?",discardMessage:"You marked {{count}} cells but have not saved. Leaving discards them.",discardConfirm:"Discard and leave"}},N1={editTitle:"Edit '{{name}}'",editBanner:{message:"Saving will update the word table you're editing."},subtitle:"Select filters to search for words.",filterTitle:"Word Search Settings",searchOptionsTitle:"Search Options",filter:{wordInput:"Word Input",wordInputShort:"Input",wordInputInfo:["Finds words containing the full syllables you type. A syllable typed without a final consonant matches any final (\uC218 \u2192 \uC218\xB7\uC220\xB7\uC219\xB7\uC21C\u2026).","Mix syllables and phonemes in one search. [\u3131\uC218 \u2192 any word containing a syllable with initial '\u3131' immediately followed by '\uC218' \u2014 \uAD6D\uC218\xB7\uAC80\uC218\u2026]","Use commas (,) to separate syllable positions. Each position can be a full syllable or a single consonant/vowel; leave it empty for unconstrained. ['\uAC00,\u3134,,\uB2E4' \u2192 any word containing '\uAC00' \xB7 initial '\u3134' \xB7 any \xB7 '\uB2E4' in a row]","Use underscores (_) for initial/medial/final positions ('_' = unconstrained; trailing positions may be omitted). ['\u3131_' \u2192 words containing a syllable with initial '\u3131' / '_\u314F' \u2192 medial '\u314F' / '__\u3131,\uACE0' \u2192 a syllable with final '\u3131' immediately followed by '\uACE0']"],wordPlaceholder:"Enter characters",wordInputError:"Invalid input format. Use only complete characters, consonants/vowels, or the '__\u3131' (onset\xB7nucleus\xB7coda) template.",wordInputUsageLabel:"Usage",viewChar:"Choose Letters",viewPron:"Choose Sound",viewDirect:"Type Letters",inputMode:"Input mode",phonemeCho:"Initial",phonemeJung:"Vowel",phonemeJong:"Final",phonemePosition:"Position",positionAny:"Any",positionHead:"Start",positionMid:"Middle",positionTail:"End",phonemeModeInfo:["Find words by initial, vowel, or final consonant alone \u2014 no typing needed.","Selecting multiple values matches any one of them.","Narrowing position to Start/Middle/End checks only that syllable (first, middle, or last)."],difficulty:"Grade",grade:"Grade {{n}}",syllables:"Syllables",syllable:"{{n}} Syll.",syllable5plus:"5+ Syllables",partOfSpeech:"Part of Speech",pos:{noun:"Noun/Numeral",verb:"Verb/Adjective",modifier:"Adverb/Determiner"},wordType:"Word Type",type:{native:"Native Korean",sino:"Sino-Korean",foreign:"Loanword",mixed:"Hybrid"},exclude:"Exclude",excludeNoImage:"No Image",selectLabel:"Select",onlyHasImage:"Only words with images",onlyHasImageInfo:"Only words with images: keeps only results with a registered word 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.",emptyMidNeedsThree:"There is no word-medial position in the syllable counts you picked \u2014 it only exists from 3 syllables up. Try 3+ syllables, or switch the position to initial or final.",groupCount:"{{count}}",sort:{aria:"Sort",match:"Best Match",ganada:"A\u2013Z \u2191",ganadaDesc:"A\u2013Z \u2193",syllable:"Syllables \u2191",syllableDesc:"Syllables \u2193",grade:"Grade \u2191",gradeDesc:"Grade \u2193"},pageSize:"Show {{count}}",pageSizeAria:"Page size",loadError:"Failed to load word data. Please refresh.",loadErrorButton:"Failed to load data \u2014 Refresh",checkingImages:"Checking images\u2026",maxSelectReached:"Cannot select more.",printBlockTitle:"Word Table Preview",popup:{title:"Select a word for cell {{n}}"},title:"Create Word Table",imageFilterOn:"Showing only words that have an image \u2014 about 7% of all words have one, and roughly one in four at level 1. Turn that option off in Search options to see more."},D1={title:"Word Management",subtitle:"Review all words in a table, exclude individual words, or add new ones to build your own word pool.",noSelection:"None",gradeSuffix:"grade",includeInSearch:"Include in search",searchPlaceholder:"Search word or pronunciation",add:"Add Word",addTitle:"Add Word",addConfirm:"Add",listTitle:"Word List",empty:"No matching words.",removeAdded:"Delete",addedBadge:"Added",view:{all:"All",excluded:"Excluded",added:"Added"},col:{exclude:"Exclude",word:"Word",pron:"Pronunciation",colloquialPron:"Colloquial Pronunciation",grade:"Grade",pos:"POS",wordType:"Type",meaning:"Meaning"},toast:{duplicate:"This word already exists.",added:"Word added."},viewLabel:"View type"},E1={clearAllSelection:"Clear All Selections",scrollToTable:"Go to Word Table",divLine:"Contrast Line",removePair:"Remove pair",removeWord:"Remove word"},j1={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"}},L1={title:"Password Change Required",subtitleMustChange:"You signed in with a temporary password issued by an administrator. You must set a new password to continue.",subtitleExpired:"Your password has expired per security policy. You must set a new password to continue.",currentPassword:"Current Password",newPassword:"New Password",confirmPassword:"Confirm New Password",changing:"Changing\u2026",submit:"Change Password",error:{currentRequired:"Please enter your current password.",mismatch:"New passwords do not match.",sameAsCurrent:"Please use a different password from your current one.",reused:"You can't reuse a recently used password.",reusedWithCount:"You can't reuse your last {{count}} passwords.",tooShort:"Password is too short.",currentIncorrect:"Current password is incorrect.",unauthorized:"Please sign in again.",unknown:"Failed to change your password. Please try again in a moment."}},M1={memoLabel:"Feedback message",reportBug:"Report a bug",title:"Send feedback",cropHint:"Drag to select an area \xB7 click to capture the whole screen",captureFull:"Capture all",memoPlaceholder:"Describe the issue",memoPlaceholderOptional:"Briefly describe the issue (optional)",retake:"Retake",addScreenshot:"Add screenshot",send:"Send",sending:"Sending\u2026",sent:"\u2713 Sent!",captureError:"An error occurred while capturing.",sendFailed:"Failed to send",errorPrefix:"Error",menuCapture:"Capture screenshot",menuTextOnly:"Text only"},P1={maxUses:"Max uses (leave blank for unlimited)",redirect:"Redirect URL (leave blank for app home)",creating:"Creating\u2026",create:"Create link",created:"\u2713 Link created",copied:"Copied!",copy:"Copy",loading:"Loading\u2026",empty:"No links created yet.",uses:"Used {{count}} times",expiresAt:"Expires: {{date}}",createdAt:"Created: {{date}}",confirmDelete:"Delete this link?",deactivate:"Deactivate",delete:"Delete",status:{active:"Active",expired:"Expired",inactive:"Inactive"}},R1={title:"Word suggestions"},$1={scope:{user:"Your pass",org:"Your organization pass"},expired:{title:"{{scope}} has expired",message:"{{plan}} (ended {{date}}) \u2014 purchase a pass to keep using it."},today:{title:"{{scope}} expires today"},tomorrow:{title:"{{scope}} expires tomorrow"},soon:{title:"{{scope}} expires in {{days}} days",message:"{{plan}} ends on {{date}}. Purchase a pass before it expires."},action:"Buy a pass"},z1={inProgress:"Training with {{name}}",endFailed:"Couldn't end the session. Please try again.",ending:"Ending\u2026",end:"End Training",endConfirm:"End this training session? It will be recorded in the visit history.",endConfirmTitle:"End session"},I1={tab:{login:"Sign In",signup:"Sign Up"},email:"Email",username:"Username",password:"Password",passwordPlaceholder:"Enter password",confirmPassword:"Confirm Password",submitSignup:"Sign Up",processing:"Processing\u2026",signupSuccess:"A confirmation email has been sent. Please check your inbox.",backToLogin:"Back to sign in",resetPassword:{link:"Forgot password?",title:"Reset Password",desc:"Enter the email address you signed up with and we'll send you a password reset link.",button:"Send reset link",success:`A reset link has been sent to your email.
9
9
  Please check your inbox.`,failed:"Failed to send the reset link. Please try again later."},error:{emailRequired:"Please enter your email.",signupDisabled:"Self sign-up is currently disabled. Please join through an invitation.",lockedWithMinutes:"Your account is locked after {{count}} failed sign-in attempts. Try again in {{minutes}} minutes.",lockedContactAdmin:"Your account is locked after {{count}} failed sign-in attempts. Please contact an administrator.",attemptsLeft:"{{message}} ({{count}} attempts left)",passwordRequired:"Please enter your password.",usernameRequired:"Please enter a username.",passwordMinLength:"Password must be at least 6 characters.",passwordMinLengthN:"Password must be at least {{n}} characters.",passwordMismatch:"Passwords do not match.",invalidCredentials:"Incorrect email or password.",emailNotConfirmed:"Email verification is not complete. Please check your inbox.",invalidEmailFormat:"Invalid email format.",termsRequired:"Please agree to the Terms of Use.",privacyRequired:"Please agree to the Privacy Policy.",emailFormat:"This is not a valid email format.",usernameMaxLength:"Username must be at most 12 characters.",serviceUnavailable:"Can't reach the service right now. Please try again shortly, and contact an administrator if it continues.",unknown:"Sign-in failed. Please try again shortly, and contact an administrator if it continues."},agreement:{termsTitle:"Terms of Use",privacyTitle:"Privacy Policy",termsLabel:"I agree to the Terms of Use.",privacyLabel:"I agree to the Privacy Policy.",view:"View",loadError:"Failed to load the document."},resetPage:{title:"Reset Password",sessionChecking:"Checking session\u2026",accessDenied:"This page can only be accessed via the reset link in your email. If the link has expired, please request a new one.",newPassword:"New password",confirmPassword:"Confirm new password",mismatch:"Passwords do not match.",reused:"You cannot reuse your last {{count}} passwords.",submit:"Reset password",submitting:"Resetting\u2026",done:"Your password has been reset. Please go to the homepage and sign in again.",goHome:"Go to homepage"},emailPlaceholder:"Enter your email",passwordNewPlaceholder:"Enter your password",usernamePlaceholder:"Enter your username",orDivider:"or",kakaoStart:"Continue with Kakao"},O1={title:"Agreement required",subtitle:"Please agree to the Terms of Use and Privacy Policy to continue using the service.",submit:"Agree and continue",processing:"Processing\u2026",error:"Failed to save your agreement. Please try again later."},F1={title:"Address Search",loadError:"Failed to load Daum Postcode script"},W1={addTitle:"Add Training Bundle",editTitle:"Edit Training Bundle",nameLabel:"Training Bundle Name",namePlaceholder:"Enter training bundle name",basketLabel:"Selected Training",selectLabel:"Select Training",customerSelect:"Select Customers",tab:{byTopic:"By Topic",byType:"By Type"},toast:{maxItems:"You can select up to 10 items per training type.",noItemsToAdd:"No items available to add."},descLabel:"Description",descPlaceholder:"Briefly describe this training (optional)",copyLink:"Copy Link",removeLink:"Remove Link",linkCopied:"Link copied.",linkCreated:"Link created.",linkRemoved:"Link removed.",linkCreating:"Creating\u2026",linkError:"Failed to create link.",linkSaveFirst:"Please save the training bundle first.",linkSaveFirstHint:"You can only create a shared link from a saved training bundle.",linkCopySelect:"Copy blocked \u2014 link selected. Press Ctrl/\u2318+C to copy.",nameRequired:"Please enter a training bundle name.",itemRequired:"Please add at least one training item.",randomAdd:"Random Add",shareLinkLabel:"Shared Link",basketEmpty:"No training selected",basketPerTypeMax:"/ max 10 each",clearAll:"Clear All",removeLinkConfirm:{title:"Remove Shared Link",body:"Remove this shared link? It will no longer be accessible.",confirm:"Remove"},groupLabel:"Group",groupPlaceholder:"Group name (optional)",noGroup:"No Group",shareLink:"Create Link"},H1={type:{hearingAid:"Hearing Aid",cochlearImplant:"Cochlear Implant",other:"Other"},direction:{left:"L",right:"R",label:"Side"},wornDate:"Date Worn",deviceType:"Device Type",brand:"Brand",fitType:"Fit Type",productName:"Product Name",productNamePlaceholder:"Enter product name",registerTitle:"Device Registration",validationError:{brandAndProduct:"Please enter brand and product name.",wornYear:"Worn year must be between {{min}} and {{max}}.",brand:"Choose a brand.",productName:"Enter a product name."},addNew:"Add New Device",selectFromList:"Select from List",removeDevice:"Remove",editTitle:"Edit device",editSubmit:"Save device",deleteSubmit:"Delete device"},V1={stat:{totalCustomers:"Total Customers",monthlyTraining:"This Month's Training",monthlyVisits:"This Month's Visits",savedWordTables:"Saved Word Tables",todayVisits:"Today's Visits",todayVisitsEmpty:"No visits scheduled today",subscription:"Subscription Status",subscriptionRemaining:"In Use",subscriptionTotal:"Total",subscriptionHeld:"Held"},chart:{visitDetail:"Visit Details",trainingDetail:"Training Details",weekly:"Weekly",daily:"Daily",periodMonth:"Month",periodWeek:"Week",weeklyPrefix:"Weekly",monthlyPrefix:"Monthly",visit:"Visits",reservation:"Reservations",trainingDone:"Completed",trainingInProgress:"In Progress",weekRange:"{{start}}\u2013{{end}}",week:"W{{n}}"},moreItems:"+ {{count}} more",headerBadge:"Pre-Open 30 days",greeting:"{{name}}",subscriptionStatus:{active:"{{pct}}% Active",expired:"{{pct}}% Expired",unused:"{{pct}}% Unused"}},G1={title:"Word Pairs",editTitle:"Edit '{{name}}'",editBanner:{message:"Saving will update the contrast pair table you're editing."},subtitle:"Select phonemes to search for minimal pairs.",phonemeSelect:{title:"Phoneme Selection",emptySummary:"Select a phoneme.",needsContrast:"Select the contrast phoneme.",vs:"vs"},caution:"Caution",mode:{include:"Phoneme Include",pick:"Phoneme Contrast",contrast:"Specify Contrast",infoTitle:"Contrast Mode",infoInclude:"Include \u2014 finds words containing all selected phonemes, plus their minimal pair.",infoPick:"Contrast \u2014 matches only if the selected phoneme is the actual point of difference in the pair.",infoContrast:"Specify Contrast \u2014 directly choose phonemes for the base word and the contrasting word to find pairs."},count:"{{n}}",input:{char:"Choose Letters",pron:"Choose Sound",infoTitle:"Input mode",infoChar:"Choose Letters \u2014 finds words by the selected phonemes (spelling), then finds their standard-pronunciation contrast pairs.",infoPron:"Choose Sound \u2014 finds standard-pronunciation contrast pairs directly from the selected phonemes."},phonemeN:"Syllable {{n}}",phonemeSingleLabel:"Syllable",phonemeContrastSingleLabel:"Contrast Syllable",ordinals:["First","Second","Third","Fourth"],phonemeOrdinalLabel:"{{ordinal}} Syllable",phonemeContrastOrdinalLabel:"Contrast {{ordinal}} Syllable",composition:"Answer Word Composition",syllableCount:"Syllables",syllableN:"{{n}} syll.",syllableNPlus:"{{n}}+ syll.",onset:"Onset",vowel:"Vowel",coda:"Coda",glide:"Glide",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",noCoda:"None",noCodaTip:"Find only words without a final consonant",orderMatch:"Match",difficultyInfo:"Reflects the National Institute of Korean Language's basic vocabulary grade.",selectLabel:"Select",selectInfo:["Only words with images: keeps only results with a registered word image.","Only same phoneme structure: keeps only pairs where both words have the same syllable structure (length, batchim, etc.)."],onlyHasImage:"Only words with images",onlySameStructure:"Only same phoneme structure",scopeSearchWordOnly:"Search word only"},resultUnit:"pairs",group:{onset:"Onset Contrast",vowel:"Vowel Contrast",glide:"Glide Contrast",coda:"Coda Contrast"},toast:{samePhonemesError:"The base phoneme and the contrast phoneme must be different."},searchLabel:{error:"Failed to load data",loading:"Loading\u2026",checking:"Checking images"},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."],imageFilterOn:"Showing only words that have an image \u2014 a pair needs an image for both words, so far fewer pairs remain. Turn that option off in Search options to see more."},q1={title:"Games",subtitle:"Train your listening with fun games",scoreSaveFailed:"Failed to save your score. Please try again.",endsIn:"Ends in {{days}}d {{hours}}h",bestScore:"Best Score",totalScore:"Total score",rank:"Rank",leaderboard:{title:"Ranking",loading:"Loading the ranking\u2026",empty:"No scores yet. Be the first!",unavailable:"Couldn't load the ranking. Try reopening in a moment.",me:"You",anonymous:"Anonymous",score:"{{score}} pts",chase:"{{points}} more points to reach #{{rank}}.",top:"You're #1! Now defend it."},crossword:{title:"Crossword Puzzle",desc:"Listen to each word and fill the grid with letter tiles.",tip1:"Tap a numbered square to hear the word that goes there (both in turn if it starts two).",tip2:"Tap the letter tiles below to fill the blanks",tip3:"Fill in all cells, then tap 'Check answer' to see your result",scoreTitle:"Scoring",score1:"10 points per correct cell, nothing deducted for wrong ones.",score2:"Speed and difficulty don't raise it.",score3:"Rounds add up, so the more you play the higher you climb.",playHint:"Tap a numbered square to hear the word there. (If a square has two numbers, in the order you tap.)",pickCellFirst:"Pick a square to fill first. Squares with a number play the word for that spot. (Two numbers: in the order you tap them.)",levelIntro:"Pick a difficulty and get a fresh puzzle every time.",wordsLoading:"Loading words\u2026",alertNoPuzzle:"Could not build a puzzle. Please try again.",level:{basic:"Basic",intermediate:"Intermediate",advanced:"Advanced"},levelDesc:{basic:"Start with easy words",intermediate:"A bit more challenging",advanced:"The hardest words"},alertFillAll:"Please fill in all cells.",undo:"\u21A9 Undo",checkAnswer:"\u2713 Check",cellEmpty:"empty",cellCorrect:"correct",cellWrong:"wrong",hintLabel:"{{label}} {{number}}",horizontal:"Across",vertical:"Down"},reflex:{title:"Reflex Game",desc:"Listen and quickly click the correct word.",roundCount:"{{total}} rounds \xB7 {{timeLimit}}s each",tip1:"Click the correct answer from 4 choices when you hear the word",tip2:"Click the question to hear the word again",tip3:"Answer within {{timeLimit}} seconds",accuracy:"{{pct}}% accuracy",avgTime:"avg {{time}}s",timeout:"(timeout)",correctMsg:"\u2713 Correct! {{time}}s",wrongMsg:"\u2717 Answer: {{word}}"},typing:{title:"Word Typing",desc:"Listen and type the word within the time limit.",roundCount:"{{rounds}} rounds \xB7 {{timeLimit}}s each",placeholder:"Type the word you heard",tip1:"Listen and type the word within the time limit",tip2:"Tap 'Listen again' to hear the word again",tip3:"Press Enter or the Confirm button to submit",accuracy:"{{pct}}% accuracy",notEntered:"(not entered)",correctMsg:"\u2713 Correct!",wrongMsg:"\u2717 Answer: {{word}}"},sentenceTyping:{title:"Sentence Typing",desc:"Listen and type the sentence within the time limit.",roundCount:"{{rounds}} rounds \xB7 {{timeLimit}}s each",placeholder:"Type the sentence you heard",tip1:"Listen and type the sentence within the time limit",tip2:"Tap 'Listen again' to hear the sentence again",tip3:"Press Enter or the Confirm button to submit"},wordDefense:{inputLabel:"Type the word you heard",title:"Word Defense",desc:"Type incoming words to defeat them.",introTitle:"Space Defense",introDesc:"A word plays whenever an alien appears.",introDesc2:"Type the word you heard to defeat the alien!",tip1:"Click alien / Spacebar \u2192 hear the word again",tip2:"Aliens come from all directions",tip3:"The invasion speed increases over time",gameoverTitle:"Base Destroyed!",killCount:"Aliens defeated: {{count}}",msgPerfect:"Perfect space defense!",msgGood:"Well fought!",msgTryAgain:"Keep practicing!",dailyBest:"Today's Best",replayBtn:"Listen Again",energyBtn:"Use Energy",energyTitle:"Activate energy (Tab) \u2014 remove all enemies",clickToPlay:"Click to play immediately",me:"Me"},dictation:{title:"Dictation",desc:"Practice writing down exactly what you hear.",comingSoon:"Coming soon: audio playback, input field, answer comparison"},result:{heading:"Level {{number}} Answer",allCorrect:"Clap clap clap \u2014 All correct!",scoreEarned:"You scored {{score}}",scoreSummary:"{{correct}} of {{total}} cells correct",retry:"Try Again",next:"Next Quiz"},common:{howToPlay:"How to Play",start:"Start",retry:"Play Again",confirm:"Confirm",listenAgain:"Listen Again",result:"Result",score:"Score {{score}}",timerSec:"{{sec}}s",progressFilled:"Progress \u2014 {{filled}} of {{total}} cells filled",roundCorrect:"Round {{n}} correct",roundWrong:"Round {{n}} incorrect",accuracy:"{{pct}}% accuracy",rankChecking:"Checking rank\u2026",rankValue:"Rank #{{rank}}",bestScore:"Best {{score}} pts",newRecord:"New record",dialogIntro:"{{game}} \u2014 how to play",dialogResult:"{{game}} \u2014 results",dialogPlay:"{{game}} \u2014 in progress"},soundMatch:{title:"Sound Match",desc:"Quickly match words or sentences that share the same sound.",comingSoon:"Coming soon: play button, timer, score tracking"},orderSequence:{title:"Sentence Ordering",desc:"Arrange scattered sentence fragments in the correct order.",comingSoon:"Coming soon: sentence sets, ordering interface"},speedListen:{title:"Speed Listen",desc:"A challenge game to count the number of words in a sentence within a time limit.",comingSoon:"Coming soon: time limit, scoreboard"},noiseChallenge:{title:"Noise Challenge",desc:"Practice distinguishing sentences amid background noise.",comingSoon:"Coming soon: various noise levels, score tracking"},fastListen:{title:"Fast Listen",desc:"Listen to short sentences at speed and select the key word.",comingSoon:"Coming soon: speed by difficulty, timer"},shadowing:{title:"Shadowing",desc:"Practice pronunciation and intonation by repeating sentences aloud.",comingSoon:"Coming soon: playback, recording, comparison feedback"},phonemeHunt:{title:"Phoneme Hunt",desc:"Find words that contain a specific phoneme (sound).",comingSoon:"Coming soon: phoneme filter, hint feature"}},Y1={lead:`IHAB builds trust
10
10
  through sound
11
- and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Direction System",vrSoundDirection:"VR Sound Direction System",hearingTest:"Hearing Test Pro"},sns:{title:"SNS",naverBlog:"Naver Blog",kakao:"KAKAO Talk Open Chat"},policy:{title:"Policy",terms:"Terms of Service",privacy:"Privacy Policy"},ceo:"CEO",address:"Address",support:"Support",ceoName:"Ji-hye Han",addressValue:"302, 3F, Haechan Bldg, 32 Siocheong-gil, Chuncheon, Gangwon, Korea"},U1={nav:{programs:"Programs",manager:"Manager",themes:"Training Topics",plans:"Pricing",login:"Log in",menuOpen:"Open menu",menuClose:"Close menu"},hero:{eyebrow:"Auditory Training by Hearing Professionals",title:"Practice <em>hearing speech</em><br/>with programs made by<br/>hearing professionals.",sub:"IHAB \uB9D0\uADC0 is an auditory training program designed to support everyday communication for hearing aid wearers, with a variety of listening scenarios and engaging content.",ctaPrimary:"Start for free"},marquee:["4,460 listening contents","Audiology expert advisory","Everyday recovery for hearing aid users","Daily updates","9 topic categories","Noise environment simulation"],counter:{prefix:"A total of",unit:"",unitSuffix:"",suffix:"vast training contents.",trainingCardSuffix:" sent.",cap:"With 4,000+ listening contents updated daily, no two listening experiences are ever repeated.",chips:[{num:"1,284",label:"Sentence listening in noise"},{num:"1,612",label:"Short story listening"},{num:"986",label:"Long story listening"},{num:"578",label:"Sentence ordering"}]},features:{title:"All the <em>auditory training</em> you need, <em>in one place</em>",sub:"From today's listening to noise training, word discrimination, and games\u2014<br/>experience everything you need for auditory rehabilitation with \uB9D0\uADC0.",items:[{title:"Today's Listening",desc:"Fresh daily listening training to support consistent auditory rehabilitation."},{title:"Topic Training",desc:"Improve real-life listening ability with topics like daily life, news, and weather."},{title:"Word Training",desc:"Focused training to distinguish phonemes by comparing onset, vowel, and coda differences."},{title:"Listening in Noise",desc:"Build adaptability to clearly distinguish speech in various noise environments."},{title:"Games",desc:"Keep up with auditory training without getting bored through fun game formats."},{title:"Training Log",desc:"Track your auditory rehabilitation progress at a glance with history and statistics."},{title:"Expert Management",desc:"Audiologists and hearing aid centers can manage patient training settings and visit history together."}]},programs:{title:"Auditory training program designed for<br/><em>diverse listening</em> situations and <em>engagement</em>",sub:"Consistent auditory rehabilitation improves auditory attention and cognitive ability.",steps:[{n:"01",variant:"start",title:"Listen",desc:"Training to hear sentences in real everyday noise environments"},{n:"02",variant:"feedback",title:"Remember",desc:"Review the sentence and check which parts you heard clearly"},{n:"03",variant:"done",title:"Confirm",desc:"Save accuracy and trends per session to inform the next training"}]},themes:{title:"Auditory training with <em>topics</em><br/>you're <em>interested</em> in",sub:"Organized by topics you encounter in everyday life so you can practice listening naturally.",sentenceSuffix:" sentences",items:{weather:"Weather",food:"Food",people:"People",koreanCulture:"Korean Culture",stories:"Stories",locations:"Locations",societyArts:"Society & Arts",natureScience:"Nature & Science",sports:"Sports",health:"Health"}},manager:{title:"Manager features for<br/><em>auditory training professionals</em>",sub:"We provide a manager page service that lets you manage customers and set up personalized auditory training.",footText:"Save your preferred training directly to set up your own custom preset.",footBtn:"Apply for \uB9D0\uADC0 Manager"},pricing:{title:"Enjoy all \uB9D0\uADC0 content<br/>without limits"},cta:{eyebrow:"Start right now",title:"10 minutes a day \u2014 regain<br/>confidence in daily communication.",sub:"Log in with your IHAB account to start training immediately<br/>with the first-visit customer preset.",btn:"Log in with IHAB and start \uB9D0\uADC0"},trainingPhone:{title:"Sentence Listening in Noise",topic:"Gardening",prev:"Prev",next:"Next",speed:"Speed 3",noiseType:"Crowd noise",settings:"Settings",start:{caption:"Press the play (\u25B6) button below and listen carefully. After listening, check the sentence."},feedback:{caption:"Plant the well-grown seedlings in the garden bed and cover them carefully with plastic film."},done:{heardWell:"Heard clearly",listenAgain:"Listen again"}},managerDash:{nav:{customers:"Customers",trainingSettings:"Training Settings",visitHistory:"Visit History"},trainingName:"Training Name",tabs:[{label:"Sentence listening in noise",icon:"\u{1F50A}"},{label:"Short story listening",icon:"\u{1F4AC}"},{label:"Long story listening",icon:"\u{1F4D6}"},{label:"Sentence ordering",icon:"\u{1F500}"}],checks:[{n:"Kendo",on:!0},{n:"Golf",on:!0},{n:"Golf etiquette",on:!0},{n:"Basketball",on:!1},{n:"Marathon",on:!1},{n:"Badminton",on:!1}]},stickyCta:"Log in and start \uB9D0\uADC0",stickyTaglinePrefix:"'s\xA0",stickyTaglineHighlight:"auditory training",stickyTaglineSuffix:" \u2014 ready to start?",forceLogout:{duplicateSession:"You were signed out because this account signed in on another device.",sessionExpired:"Your session expired, so you were signed out."}},K1={yearField:"Year",monthField:"Month",dayField:"Day",yearLabel:"{{y}}",monthLabel:"{{m}}",hourLabel:"{{h}}:00",daySuffix:"",minuteSuffix:"",dayLabel:"{{n}}",timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},Z1={discrimination:{label:"Discrimination Training",disc:"Training to distinguish whether two sounds are the same or different.",types:{SAME_SOUND_PICK:{label:"Listen & Pick Same Sound",sub:"Pick the word card that matches the sound you heard.",setupSub:"Choose a target word and distractors to create a same-sound picking question.",step1:"Select the target word.",step2:"Select other words to present alongside it."},SAME_OR_DIFF:{label:"Same or Different?",sub:"Decide whether the two sounds are the same or different.",setupSub:"Choose two words to compare and create a same-or-different question.",step1:"Listen to the two sounds.",step2:"Are they the same or different?",choiceSame:"Same",choiceDiff:"Different"},HEAR_AND_PICK_SAME:{label:"Hear & Match the Word",sub:"Pick the word card that matches what you heard.",setupSub:"Choose a target word and distractors to create a word-matching question.",step1:"Listen to the word.",step2:"Select the matching word card."},HEAR_AND_PICK_INCLUDED:{label:"Hear & Pick Word with Syllable",sub:"Pick the word card that contains the syllable you heard.",setupSub:"Create a question using a target with the syllable and distractors without it.",step1:"Listen to the syllable.",step2:"Select the word that contains this syllable."},STARTS_WITH_SAME_SOUND:{label:"Hear & Pick Same Starting Sound",sub:"Pick the word that starts with the same sound as the one you heard.",setupSub:"Create a question using words that start with the same sound and distractors that don't.",step1:"Listen to the word.",step2:"Select the word starting with the same sound."}}},synthesis:{label:"Synthesis Training",disc:"Training to combine two or more syllables or phonemes into a word.",types:{MERGE_2_SYLLABLES:{label:"Combine 2 Syllables",sub:"What word do you get when you combine these 2 syllables?",setupSub:"Choose a target word and it will be split into 2 syllables for the question.",step1:"Listen to the 2 syllables.",step2:"What word do they make?"},MERGE_3_SYLLABLES:{label:"Combine 3 Syllables",sub:"What word do you get when you combine these 3 syllables?",setupSub:"Choose a target word and it will be split into 3 syllables for the question.",step1:"Listen to the 3 syllables.",step2:"What word do they make?"},MERGE_2_PHONEMES:{label:"Combine 2 Phonemes",sub:"What sound do you get when you combine these 2 phonemes?",setupSub:"Choose a target sound and create a 2-phoneme combination question.",step1:"Listen to the 2 phonemes.",step2:"What sound do they make?"},MERGE_3_PHONEMES:{label:"Combine 3 Phonemes",sub:"What sound do you get when you combine these 3 phonemes?",setupSub:"Choose a target sound and create a 3-phoneme combination question.",step1:"Listen to the 3 phonemes.",step2:"What sound do they make?"}}},deletion:{label:"Deletion Training",disc:"Training to identify the remaining sound after removing a syllable or phoneme.",types:{DROP_1_FROM_2SYLL:{label:"Drop 1 Syllable from 2-Syllable Word",sub:"What sound is left when you remove one syllable from a 2-syllable word?",setupSub:"Choose a 2-syllable target word and create a syllable-deletion question.",step1:"Listen to the word.",step2:"What sound remains when one syllable is removed?"},DROP_1_FROM_3SYLL:{label:"Drop 1 Syllable from 3-Syllable Word",sub:"What sound is left when you remove one syllable from a 3-syllable word?",setupSub:"Choose a 3-syllable target word and create a syllable-deletion question.",step1:"Listen to the word.",step2:"What sound remains when one syllable is removed?"},DROP_PART_FROM_COMPOUND:{label:"Drop Part of Compound Word",sub:"What word is left when you remove part of a compound word?",setupSub:"Choose a compound word and create a partial-deletion question.",step1:"Listen to the compound word.",step2:"What word remains when part is removed?"},DROP_FINAL_CONSONANT_FROM_1SYLL:{label:"Drop Final Consonant",sub:"What sound is left when you remove the final consonant?",setupSub:"Choose a 1-syllable word with a final consonant and create a deletion question.",step1:"Listen to the word.",step2:"What sound remains when the coda is removed?"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{label:"Drop Consonant from 1-Syllable Word",sub:"What sound remains after removing the consonant?",setupSub:"Choose a 1-syllable word and create a consonant-removal question.",step1:"Listen to the word.",step2:"What sound remains when the consonant is removed?"}}},substitution:{label:"Substitution Training",disc:"Training to create new sounds by substituting syllables or phonemes.",types:{CHANGE_1_SYLL_IN_2SYLL:{label:"Change 1 Syllable in 2-Syllable Word",sub:"Change one syllable of a 2-syllable word to make a new word.",setupSub:"Choose a 2-syllable target word and create a syllable-substitution question.",step1:"Listen to the word.",step2:"Change one syllable to make a new word."},CHANGE_1_SYLL_IN_3SYLL:{label:"Change 1 Syllable in 3-Syllable Word",sub:"Change one syllable of a 3-syllable word to make a new word.",setupSub:"Choose a 3-syllable target word and create a syllable-substitution question.",step1:"Listen to the word.",step2:"Change one syllable to make a new word."},CHANGE_1_PHONEME_IN_1SYLL:{label:"Change 1 Phoneme in 1-Syllable Word",sub:"Change one phoneme of a 1-syllable word to make a new sound.",setupSub:"Choose a 1-syllable target word and create a phoneme-substitution question.",step1:"Listen to the word.",step2:"Change one phoneme to make a new sound."},CHANGE_1_PHONEME_IN_2SYLL:{label:"Change 1 Phoneme in 2-Syllable Word",sub:"Change one phoneme of a 2-syllable word to make a new word.",setupSub:"Choose a 2-syllable target word and create a phoneme-substitution question.",step1:"Listen to the word.",step2:"Change one phoneme to make a new word."}}},attention:{label:"Auditory Attention Training",disc:"Training attention and short-term memory by listening to and recalling sequences of sounds.",types:{LISTEN_AND_REMEMBER_ORDER:{label:"Listen & Recall in Order",sub:"Select the three word cards in the order you heard them.",setupSub:"Choose three words to present and create a recall-in-order question.",step1:"Listen to the three words.",step2:"Select them in the order you heard them."}}}},X1={subtitle:"Select a training type",resultUnit:"word set",nameLabel:"Name",namePlaceholder:"Enter training name",options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",save:"Save",preview:"Preview",excludeOptions:{none:"None",noImage:"No Image"},toast:{nameRequired:"Please enter a set name.",noWords:"No words selected.",noProblem:"Please complete at least one question.",loginRequired:"Login required.",saveFailed:"Failed to save.",saveSuccess:'"{{name}}" set saved ({{count}} questions).',saveSuccessWithIncomplete:'"{{name}}" set saved ({{count}} questions, {{incomplete}} incomplete excluded).',bundleApplied:"Applied to the current question."},suggest:{noCoda:"No batchim",syllable:"{{n}} syllable(s)"}},Q1={namePlaceholder:"Enter a training name.",trainingTitle:"'{{name}}' Word Training",questionInput:"Enter a word",answer:"Answer",distractor:"Distractor",groupStep:"Select the word set for the problem.",pickWordStep:"Choose the word to use in the question.",groupStepSub:"The correct answer and distractors are chosen at random from the selected set.",sameOrDiffStepSub:"Chosen at random from the selected word set.",problemNav:"Q {{current}} / {{count}}",problemNum:"Q {{n}}",clearQuestion:"Deselect",removeQuestion:"Remove Question",addQuestion:"Add Question",noWords:"No words match the selected filters.",validOk:"Valid word.",validNoImage:"No image for this word.",validNeed1SyllCoda:"Only 1-syllable words with a final consonant are allowed.",validNeed1SyllNoCoda:"Only 1-syllable words without a final consonant are allowed (excluding words starting with \u3147).",validNeed2Syll:"Only 2-syllable words are allowed.",validNeed3Syll:"Only 3-syllable words are allowed.",manualOnlyHint:"This type doesn't support automatic suggestions yet. Please enter the question word manually."},J1={unexpectedTitle:"Something went wrong",unexpectedMessage:"An unexpected error occurred. Please try again.",retry:"Try Again"},ef={loadError:"Word Data Load Failed",loadErrorMessage:"Failed to load word data. Please check your network and try again.",updateAvailable:"Word Data v{{version}}",updateMessage:"New word data is available.",phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items",update:{title:"Word Data Update"}},tf={title:"Apply for Malgwi Manager",submitting:"Submitting\u2026",submit:"Apply",promo:{title:"3-Day Free Trial for Malgwi Manager",desc:"Register now and try Malgwi Manager free for 3 days!",action:"View Info Page"},applicantEmail:"Applicant Email",companyId:{label:"Company ID",placeholder:"e.g. ACME01 (uppercase letters & numbers)",helper:"Company ID cannot be changed after creation. Only uppercase letters, numbers, _, - are allowed.",errors:{required:"Please enter a company ID",startWithLetter:"Company ID must start with an uppercase letter.",tooLong:"Company ID must be 12 characters or fewer."}},companyName:{label:"Company / Username",placeholder:"Enter company name or username",errors:{required:"Please enter a company name",tooLong:"Company / Username must be 12 characters or fewer."}},companyType:{label:"Company Type",placeholder:"Select company type",errors:{required:"Please select a company type"}},phone:{label:"Phone",errors:{required:"Please enter a phone number",format:"Please enter a valid phone number"}}},af={clearAriaLabel:"Clear input"},of={ariaLabel:"Select tab"},rf={ariaLabel:"Tabs"},nf={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},sf={ariaLabel:"User avatar"},lf={title:"Homework",subtitle:"Check and do the homework your manager sent you.",completed:"Done",inProgress:"In progress",fromManager:"Manager",received:"received",recordExpired:"The homework has expired, so the result was not recorded. Please contact your manager.",segment:{all:"All",new:"New",inprogress:"In Progress",done:"Done"},pageSize:{10:"Show 10",20:"Show 20",50:"Show 50"},searchPlaceholder:"Search homework name",sort:{newest:"Newest",oldest:"Oldest",title:"Title"},relativeDay:{today:"Today",yesterday:"Yesterday",daysAgo:"{{n}}d ago"},orgLink:{title:"Link Organization",placeholder:"Enter link code",connect:"Link",linked:"Linked to {{org}}.",failed:"Failed to link.",org:"the organization"},reason:{notLoggedIn:"Login required."},list:{title:"Received Homework",empty:"No homework received."},status:{expired:"Expired",done:"Done {{count}}\xD7 \xB7 {{date}}",notDone:"Not done"}},cf={title:"Training Status",sub:"View your hearing training records",weekly:{title:"Weekly Training",daily:"Daily Listening",crossword:"Crossword",trainingTime:"Training Time",timeAvg:"Avg time",accuracy:"Accuracy",unit:" times"},sentence:{title:"Sentence Training"},word:{title:"Word Training"},homework:{title:"Homework Progress",weeklyRate:"Weekly Rate",count:"Total",done:"Done",remaining:"Remaining",unit:""},today:{title:"Today's Listening",progress:"Progress",accuracy:"Accuracy",progressAvg:"Avg progress",unitPct:"%",tooltipTotal:"Total",tooltipDone:"Done"},filter:{countSuffix:" sessions"},time:{title:"Training Time",countLabel:"{{n}} sessions",empty:"No training records",sec:"{{n}}s",min:"{{n}}m",hourMin:"{{h}}h {{m}}m",hour:"{{h}}h"},daily:{title:"Today's Listening Record",empty:"No completed sessions"},crossword:{title:"Crossword Quiz",empty:"No completed levels"},visit:{title:"Linked Visit Records"},detail:"Details",detailEmpty:"No training records for this period.",detailError:"Could not load training records. Please try again shortly.",col:{date:"Date",type:"Type",score:"Score",time:"Time"},trainingType:{LISTEN_IN_NOISE:"Sentence in Noise",SHORT_STORY:"Short Story",LONG_STORY:"Long Story",ORDERING_SENTENCE:"Sentence Ordering"},accuracy:{overall:"Overall accuracy",itemUnit:" items",skipped:"{{n}} had no accuracy record and were left out of this count."}},df={title:"Training Store",subtitle:"Browse trainings shared by other managers and add them to your list.",searchPlaceholder:"Search by training name or publisher",category:{word:"Word Tables",wordTraining:"Word Training",sentence:"Sentence Training"},sort:{newest:"Newest",likes:"Most liked",downloads:"Most downloaded"},wordKind:{pair:"Pairs",single:"Words",emptyHintToSingle:"No pair tables here, but the 'Words' tab has some.",emptyHintToPair:"No word tables here, but the 'Pairs' tab has some."},pageSize:"{{n}} per page",countPrefix:"Total ",countSuffix:" trainings",notice:"Log in with a manager account to add trainings to your list.",empty:"No trainings have been published yet.",emptyHint:"You can publish your own trainings from the Training Settings page.",like:"Like",unlike:"Unlike",loginRequired:"Login required",import:"Add to my trainings",importButton:"Import",publisher:"Publisher",importFail:"Import failed: {{error}}",importSuccess:"Added '{{title}}' to your training list.",dupTitle:"Same content already exists",dupMessageOne:"Same content as <m>{{title}}</m>. Import anyway?",dupMessageMany:"Same content as <m>{{title}}</m> and <m>{{n}}</m> more. Import anyway?",time:{justNow:"just now",minutesAgo:"{{n}}m ago",hoursAgo:"{{n}}h ago",daysAgo:"{{n}}d ago",weeksAgo:"{{n}}w ago",monthsAgo:"{{n}}mo ago",yearsAgo:"{{n}}y ago"},badge:{shared:"Store"},unpublishOnDelete:"The store listing will also be deleted.",publish:{confirmLabel:"Post",confirmLoading:"Posting\u2026",descPlaceholder:"One-line description for the Training Store (optional)",dialogTitle:"Post to Training Store",message:"Publish '{{name}}' to the Training Store."},categoryLabel:"Resource type",toast:{registered:"Published to the Malgue Library",registerError:"Failed to publish to the Malgue Library"}},uf={common:{cardName:"Card Name",cardNamePlaceholder:"Enter card name",group:"Group",groupPlaceholder:"Group name (optional)",description:"Description",descriptionPlaceholder:"Briefly describe this card (optional)",nameRequired:"Please enter a card name.",removeAll:"Remove All",deleteConfirm:"Delete '{{name}}'?",deleteConfirmDefault:"Delete this card?"},wordTableCard:{createTitle:"Create Word Table Card",editTitle:"Edit Word Table Card",deleteTitle:"Delete Word Table Card",basket:"Selected Tables",basketEmpty:"No tables selected",depth:"Word Table"},wordTrainingCard:{createTitle:"Create Word Training Bundle",editTitle:"Edit Word Training Bundle",deleteTitle:"Delete Word Training Bundle",selectSection:"Select Trainings",defaultSection:"Default Trainings",defaultSectionDesc:"Words are filled automatically when you add a standard training",mySection:"My Trainings",noTrainingsEmpty:"Please create a word training first.",adding:"Adding\u2026",add:"Add",basket:"Selected Trainings",basketEmpty:"No trainings selected",trainingRequired:"Please add at least one training.",maxTrainingsAlert:"You can add up to {{max}} trainings",notEnoughWords:"Not enough words to generate questions",addSaveError:"Failed to save the training. Please try again",complete:{message:"All done! Great job!",button:"Done"}},shareLink:{saveCardFirst:"Save the card first.",copied:"Link copied",created:"Link created",createFailed:"Failed to create link",copyBlocked:"Copying was blocked, so the link is selected. Press Ctrl/\u2318+C to copy",removed:"Link removed",removeFailed:"Failed to remove link"}},pf={manage:{title:"Homework",sub:"View shared training links and submission status.",filterActive:"Active",filterExpired:"Expired / Inactive",searchPlaceholder:"Search by title or recipient",emptySearch:"No results found.",emptyLinks:"No shared homework links yet.",unit:"item(s)",loadFailed:"Could not load homework links."},card:{deleteTitle:"Delete Homework Link",deleteMessage:"Delete this homework link? Submitted results will also be removed."},status:{inactive:"Inactive",expired:"Expired",active:"Active",done_one:"Completed {{count}} time",done_other:"Completed {{count}} times",notDone:"Not Completed",noTarget:"No Target",sentFmt:"{{target}} \xB7 sent {{date}}"},menu:{activate:"Activate",deactivate:"Deactivate"},personalLinkTitle:"Personal link"},hf={title:"Invitations",sub:"Create and manage invite links \u2014 no customer info needed.",copyAriaLabel:"Copy link",deleteAriaLabel:"Delete",deleteConfirmTitle:"Delete invite link",deleteConfirmMessage:"Delete this invite link? Any link already shared will stop working."},mf={card:{sub:"Word Training Bundle",empty:"No word training in this card."}},bf={ariaLabel:"Contact Us",emailPlaceholder:"Email for reply",contentPlaceholder:"Please enter your inquiry.",cancelLabel:"Cancel",submitLabel:"Send",title:"Contact Us",emailLabel:"Email",contentLabel:"Inquiry",successMsg:"\u2713 Your inquiry has been submitted.",submitError:"Failed to submit your inquiry.",subText:"Send us a message about purchasing a subscription plan. We will respond within 1\u20132 business days."},gf={inProgress:"Exam in progress"},ff={countSuffix:"",searchPlaceholder:"Search links",creating:"Creating\u2026",create:"Create Link",colLink:"Link",colCreatedAt:"Created At",empty:"No items.",loadFailed:"Could not load invitations."},vf={empty:"No training items to run.",loading:"Loading training data\u2026",subtitle:"Select a topic to start listening practice.",title:"Run Training"},yf={reason:{invalid:"This invite has expired or is no longer valid.",notFound:"This invite does not exist.",notLoggedIn:"Please sign in.",rateLimited:"Please try again in a moment."},defaultOrgName:"the organization",loading:"Loading\u2026",invalidTitle:"Can't open this invite",acceptError:"Failed to accept the invite.",alreadyConnected:"already connected.",connected:"connected.",doneMessage:"{{orgName}} \u2014 {{suffix}}",doneSub:"You can now receive homework from your manager.",goToHomework:"Go to homework",failedTitle:"Couldn't accept the invite",home:"Home",readyTitle:"Invite from {{orgName}}",readySub:"Register as a customer of {{orgName}} and start receiving homework?",accepting:"Connecting\u2026",acceptButton:"Accept invite"},xf={reason:{notFound:"This link does not exist.",inactive:"This link has been deactivated.",expired:"This link has expired.",maxUses:"This link has reached its maximum uses.",missingToken:"This link is invalid.",default:"This link is not valid.",unavailable:"We can't check this link right now."},checking:"Checking the link\u2026",validBadge:"Valid link",availableUntil:"Available until {{date}}",redirecting:"Redirecting\u2026",redirectingIn3s:"Redirecting to the app in 3 seconds.",enterNow:"Enter now",invalidBadge:"Unavailable",expiredAt:"Expired: {{date}}",contactAdmin:"If you believe this link should still work, please contact your administrator.",unavailableBadge:"Cannot check",unavailableHint:"Check your connection and open the link again. The link itself is still fine."},Cf={loading:"Loading\u2026",invalidTitle:"Can't open this link",invalidMessage:"This shared link doesn't exist, or has expired or been deactivated.",goToMyHomework:"Go to My Homework",recordFailed:"This homework link has expired, so your result wasn't saved. Please contact your manager."},_f={defaultTitle:"Word Table"},wf={label:"Share link",copyAriaLabel:"Copy link",removeAriaLabel:"Remove link",creating:"Creating\u2026",hint:"You can only create a share link for a saved card.",removeConfirmTitle:"Remove share link",removeConfirmMessage:"Remove this share link? The existing link will stop working."},kf={title:"Organization link request",subtitle:"The organization below wants to register you as their customer. Please confirm this is an organization you actually use before choosing.",registeredName:"Registered as: {{name}}",decline:"Decline",accept:"Accept",error:"Failed to process: {{message}} \u2014 please try again."},Sf={steps:"Step {{current}} of {{total}}"},Af={title:"Build the next training",lead:"Sets containing items {{name}} has not caught yet. Only these go in.",planGroup:"Into a training plan",bundleGroup:"Into a word-training bundle",pending:"{{count}} left",unknownSet:"Set name not found",confirm:"Create",newBase:"{{name}} training",planDesc:"{{count}} set(s) holding items {{name}} got wrong",bundleDesc:"{{count}} word training(s) holding items {{name}} got wrong",madePlan:"{{count}} training plan(s)",madeBundle:"{{count}} word-training bundle(s)",created:"Created '{{name}}' \u2014 {{what}}",nothingMade:"No set could be included, so nothing was created.",noSetNote:"{{n}} item(s) could not be included \u2014 the record does not say which set they came from.",emptyTitle:"Nothing to build right now",emptyAllClear:"No items are still being missed.",emptyNoSet:"{{n}} item(s) are still missed, but the records do not say which set they came from, so they cannot be pulled back. One more training run will start recording it."},Tf={panelTitle:"Training misses",viewItems:"Items",viewTypes:"Types",colTitle:"Item",colWhen:"When",colScore:"Correct",colDuration:"Duration",scoreFmt:"{{correct}}/{{total}}",unitRun:" runs",runsEmpty:"No training recorded yet.",colType:"Type",colRate:"Accuracy",colTried:"Tries",colLatest:"Last",colPending:"Left",colTrend:"Change",colRuns:"Runs",unitItem:" items",empty:"No training misses recorded yet.",loadFailed:"Could not load the training records.",skippedOnly:"{{n}} older record(s) were excluded \u2014 they do not say what was answered.",summaryLabel:"Recorded",summaryValue:"{{items}} items \xB7 {{pending}} still missed",nextLabel:"Next to work on",nextCount:"{{count}}",nextCountCapped:"{{shown}} of {{total}}",allClear:"All caught up",tried:"{{count}}x",picked:"\u2192 {{what}}",typeClear:"All caught up",typePending:"{{pending}} of {{total}} left",flat:"no change",runs:"{{count}} run(s)",avgDuration:"{{sec}}s avg",truncated:"Only the most recent {{n}} items were loaded \u2014 the counts below cover just those."},Bf={panelTitle:"Word table scores",viewWords:"Words",viewTables:"Tables",colWord:"Word",colMark:"Last",colRate:"Accuracy",colTried:"Tries",colLatest:"When",colTable:"Table",colTrend:"Change",colScoredAt:"Scored at",unitTime:" times",empty:"No word tables scored yet.",summaryLabel:"Scored",summaryValue:"{{times}} times \xB7 {{words}} words",nextLabel:"Focus next",nextCount:"{{count}}",allClear:"All correct last time.",tried:"{{count}}x",times:"{{count}}x",flat:"no change",recentLabel:"Recent scorings",deleteOne:"Delete \u201C{{name}}\u201D scoring",deleteTitle:"Delete this scoring?",deleteMessage:"Deletes the \u201C{{name}}\u201D scoring from {{when}}. This cannot be undone.",nextCountCapped:"{{shown}} of {{total}}",loadFailed:"Could not load word scores."},Nf={title:"What to train next?",subtitle:"Picked for the {{count}} words {{name}} has not mastered yet.",allClear:"All correct last time. Nothing to focus on right now.",noMatch:"None of your tables contain these words.",coverage:"{{covered}} of {{total}} cells",uncovered:"{{count}} words not in any table",makeNew:"Make a new table from these {{count}}",newTableBase:"{{name}} focus",newTableDesc:"The {{count}} words {{name}} has not mastered yet.",created:"Created \u201C{{name}}\u201D \u2014 {{count}} cells.",button:"Suggest next table"},Df={hint:"Pin what you want to keep; the rest can be redrawn.",pin:"Pin \u201C{{name}}\u201D",unpin:"Unpin \u201C{{name}}\u201D",remove:"Remove \u201C{{name}}\u201D",regenerate:"Redraw the rest",regenerating:"Drawing\u2026",save:"Create as shown",count:"{{total}} \xB7 {{pinned}} pinned",empty:"Nothing left. At least one is needed."},Ef={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},jf={selectYearMonth:"Select year and month"},Lf={common:Q0,plan:J0,calendar:e1,passCard:t1,searchField:a1,rating:o1,colorPicker:r1,dropdown:n1,accordion:i1,header:s1,nav:l1,settings:c1,usage:d1,account:u1,help:p1,notifications:h1,wordSuggestion:m1,training:b1,trainingSettings:g1,customers:f1,today:v1,payment:y1,coupons:x1,visits:C1,company:_1,sentenceTraining:w1,trainingType:k1,myWordTraining:S1,myWordTable:A1,keyWords:T1,wordTable:B1,wordSearch:N1,wordManagement:D1,wordPrint:E1,topic:j1,passwordExpiry:L1,feedbackWidget:M1,accessLinkManager:P1,wordRecommend:R1,subscriptionExpiry:$1,customerTrainingBanner:z1,login:I1,agreementGate:O1,addressSearch:F1,trainingPlan:W1,device:H1,manager:V1,wordPairs:G1,game:q1,footer:Y1,landing:U1,date:K1,trainingGroup:Z1,trainingSetPage:X1,wordTrainingPreview:Q1,error:J1,wordData:ef,infoInput:tf,textField:af,segmentedControl:of,tabs:rf,fileUpload:nf,avatar:sf,myHomework:lf,trainingStatus:cf,store:df,cardPopup:uf,homework:pf,invite:hf,wordTraining:mf,inquiry:bf,exam:gf,inviteManage:ff,trainingPlanRun:vf,orgInvitePage:yf,linkGate:xf,homeworkGate:Cf,wordTableView:_f,shareLinkFooter:wf,linkRequestGate:kf,progress:Sf,nextTraining:Af,trainingMiss:Tf,wordScore:Bf,nextTable:Nf,draft:Df,topBanner:Ef,datePicker:jf};const jo=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],lo="ko",$n="ihab_display_language";function Ic(){try{const e=localStorage.getItem($n);if(e&&jo.some(t=>t.code===e))return e}catch{}return lo}function Mf(e){try{localStorage.setItem($n,e)}catch{}}function Oc(e){try{document.documentElement.lang=e}catch{}}Ca.on("languageChanged",Oc),Oc(Ic()),Ca.use(me.initReactI18next).init({resources:{ko:{translation:X0},en:{translation:Lf}},lng:Ic(),fallbackLng:lo,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const Fc=l.createContext({locale:lo,supportedLocales:jo});function Pf(){return l.useContext(Fc)}function Rf({locale:e=lo,children:t}){return l.useEffect(()=>{const a=jo.find(r=>r.code===e)?e:lo;Ca.language!==a&&Ca.changeLanguage(a)},[e]),o.jsx(Fc.Provider,{value:{locale:e,supportedLocales:jo},children:t})}function ye(...e){return e.filter(Boolean).join(" ")}var $f=".ihabdevteam-core-scope .empty-state{align-items:center;border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);display:flex;flex-direction:column;gap:10px;justify-content:center;padding:var(--spacing-page) var(--spacing-xl);text-align:center}.ihabdevteam-core-scope .empty-state__emoji{font-size:40px;line-height:1}.ihabdevteam-core-scope .empty-state__icon{color:var(--color-lightGray);height:40px;width:40px}.ihabdevteam-core-scope .empty-state__title{color:var(--color-lightGray);margin:0}.ihabdevteam-core-scope .empty-state__message{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .empty-state__hint{color:var(--color-lightGray);margin:0}.ihabdevteam-core-scope .empty-state__action{margin-top:var(--spacing-xs);min-width:120px}.ihabdevteam-core-scope .empty-state--compact{padding:var(--spacing-page) var(--spacing-m);padding-block:56px}";Q($f);/**
11
+ and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Direction System",vrSoundDirection:"VR Sound Direction System",hearingTest:"Hearing Test Pro"},sns:{title:"SNS",naverBlog:"Naver Blog",kakao:"KAKAO Talk Open Chat"},policy:{title:"Policy",terms:"Terms of Service",privacy:"Privacy Policy"},ceo:"CEO",address:"Address",support:"Support",ceoName:"Ji-hye Han",addressValue:"302, 3F, Haechan Bldg, 32 Siocheong-gil, Chuncheon, Gangwon, Korea"},U1={nav:{programs:"Programs",manager:"Manager",themes:"Training Topics",plans:"Pricing",login:"Log in",menuOpen:"Open menu",menuClose:"Close menu"},hero:{eyebrow:"Auditory Training by Hearing Professionals",title:"Practice <em>hearing speech</em><br/>with programs made by<br/>hearing professionals.",sub:"IHAB \uB9D0\uADC0 is an auditory training program designed to support everyday communication for hearing aid wearers, with a variety of listening scenarios and engaging content.",ctaPrimary:"Start for free"},marquee:["4,460 listening contents","Audiology expert advisory","Everyday recovery for hearing aid users","Daily updates","9 topic categories","Noise environment simulation"],counter:{prefix:"A total of",unit:"",unitSuffix:"",suffix:"vast training contents.",trainingCardSuffix:" sent.",cap:"With 4,000+ listening contents updated daily, no two listening experiences are ever repeated.",chips:[{num:"1,284",label:"Sentence listening in noise"},{num:"1,612",label:"Short story listening"},{num:"986",label:"Long story listening"},{num:"578",label:"Sentence ordering"}]},features:{title:"All the <em>auditory training</em> you need, <em>in one place</em>",sub:"From today's listening to noise training, word discrimination, and games\u2014<br/>experience everything you need for auditory rehabilitation with \uB9D0\uADC0.",items:[{title:"Today's Listening",desc:"Fresh daily listening training to support consistent auditory rehabilitation."},{title:"Topic Training",desc:"Improve real-life listening ability with topics like daily life, news, and weather."},{title:"Word Training",desc:"Focused training to distinguish phonemes by comparing onset, vowel, and coda differences."},{title:"Listening in Noise",desc:"Build adaptability to clearly distinguish speech in various noise environments."},{title:"Games",desc:"Keep up with auditory training without getting bored through fun game formats."},{title:"Training Log",desc:"Track your auditory rehabilitation progress at a glance with history and statistics."},{title:"Expert Management",desc:"Audiologists and hearing aid centers can manage patient training settings and visit history together."}]},programs:{title:"Auditory training program designed for<br/><em>diverse listening</em> situations and <em>engagement</em>",sub:"Consistent auditory rehabilitation improves auditory attention and cognitive ability.",steps:[{n:"01",variant:"start",title:"Listen",desc:"Training to hear sentences in real everyday noise environments"},{n:"02",variant:"feedback",title:"Remember",desc:"Review the sentence and check which parts you heard clearly"},{n:"03",variant:"done",title:"Confirm",desc:"Save accuracy and trends per session to inform the next training"}]},themes:{title:"Auditory training with <em>topics</em><br/>you're <em>interested</em> in",sub:"Organized by topics you encounter in everyday life so you can practice listening naturally.",sentenceSuffix:" sentences",items:{weather:"Weather",food:"Food",people:"People",koreanCulture:"Korean Culture",stories:"Stories",locations:"Locations",societyArts:"Society & Arts",natureScience:"Nature & Science",sports:"Sports",health:"Health"}},manager:{title:"Manager features for<br/><em>auditory training professionals</em>",sub:"We provide a manager page service that lets you manage customers and set up personalized auditory training.",footText:"Save your preferred training directly to set up your own custom preset.",footBtn:"Apply for \uB9D0\uADC0 Manager"},pricing:{title:"Enjoy all \uB9D0\uADC0 content<br/>without limits"},cta:{eyebrow:"Start right now",title:"10 minutes a day \u2014 regain<br/>confidence in daily communication.",sub:"Log in with your IHAB account to start training immediately<br/>with the first-visit customer preset.",btn:"Log in with IHAB and start \uB9D0\uADC0"},trainingPhone:{title:"Sentence Listening in Noise",topic:"Gardening",prev:"Prev",next:"Next",speed:"Speed 3",noiseType:"Crowd noise",settings:"Settings",start:{caption:"Press the play (\u25B6) button below and listen carefully. After listening, check the sentence."},feedback:{caption:"Plant the well-grown seedlings in the garden bed and cover them carefully with plastic film."},done:{heardWell:"Heard clearly",listenAgain:"Listen again"}},managerDash:{nav:{customers:"Customers",trainingSettings:"Training Settings",visitHistory:"Visit History"},trainingName:"Training Name",tabs:[{label:"Sentence listening in noise",icon:"\u{1F50A}"},{label:"Short story listening",icon:"\u{1F4AC}"},{label:"Long story listening",icon:"\u{1F4D6}"},{label:"Sentence ordering",icon:"\u{1F500}"}],checks:[{n:"Kendo",on:!0},{n:"Golf",on:!0},{n:"Golf etiquette",on:!0},{n:"Basketball",on:!1},{n:"Marathon",on:!1},{n:"Badminton",on:!1}]},stickyCta:"Log in and start \uB9D0\uADC0",stickyTaglinePrefix:"'s\xA0",stickyTaglineHighlight:"auditory training",stickyTaglineSuffix:" \u2014 ready to start?",forceLogout:{duplicateSession:"You were signed out because this account signed in on another device.",sessionExpired:"Your session expired, so you were signed out."}},K1={yearField:"Year",monthField:"Month",dayField:"Day",yearLabel:"{{y}}",monthLabel:"{{m}}",hourLabel:"{{h}}:00",daySuffix:"",minuteSuffix:"",dayLabel:"{{n}}",timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},Z1={discrimination:{label:"Discrimination Training",disc:"Training to distinguish whether two sounds are the same or different.",types:{SAME_SOUND_PICK:{label:"Listen & Pick Same Sound",sub:"Pick the word card that matches the sound you heard.",setupSub:"Choose a target word and distractors to create a same-sound picking question.",step1:"Select the target word.",step2:"Select other words to present alongside it."},SAME_OR_DIFF:{label:"Same or Different?",sub:"Decide whether the two sounds are the same or different.",setupSub:"Choose two words to compare and create a same-or-different question.",step1:"Listen to the two sounds.",step2:"Are they the same or different?",choiceSame:"Same",choiceDiff:"Different"},HEAR_AND_PICK_SAME:{label:"Hear & Match the Word",sub:"Pick the word card that matches what you heard.",setupSub:"Choose a target word and distractors to create a word-matching question.",step1:"Listen to the word.",step2:"Select the matching word card."},HEAR_AND_PICK_INCLUDED:{label:"Hear & Pick Word with Syllable",sub:"Pick the word card that contains the syllable you heard.",setupSub:"Create a question using a target with the syllable and distractors without it.",step1:"Listen to the syllable.",step2:"Select the word that contains this syllable."},STARTS_WITH_SAME_SOUND:{label:"Hear & Pick Same Starting Sound",sub:"Pick the word that starts with the same sound as the one you heard.",setupSub:"Create a question using words that start with the same sound and distractors that don't.",step1:"Listen to the word.",step2:"Select the word starting with the same sound."}}},synthesis:{label:"Synthesis Training",disc:"Training to combine two or more syllables or phonemes into a word.",types:{MERGE_2_SYLLABLES:{label:"Combine 2 Syllables",sub:"What word do you get when you combine these 2 syllables?",setupSub:"Choose a target word and it will be split into 2 syllables for the question.",step1:"Listen to the 2 syllables.",step2:"What word do they make?"},MERGE_3_SYLLABLES:{label:"Combine 3 Syllables",sub:"What word do you get when you combine these 3 syllables?",setupSub:"Choose a target word and it will be split into 3 syllables for the question.",step1:"Listen to the 3 syllables.",step2:"What word do they make?"},MERGE_2_PHONEMES:{label:"Combine 2 Phonemes",sub:"What sound do you get when you combine these 2 phonemes?",setupSub:"Choose a target sound and create a 2-phoneme combination question.",step1:"Listen to the 2 phonemes.",step2:"What sound do they make?"},MERGE_3_PHONEMES:{label:"Combine 3 Phonemes",sub:"What sound do you get when you combine these 3 phonemes?",setupSub:"Choose a target sound and create a 3-phoneme combination question.",step1:"Listen to the 3 phonemes.",step2:"What sound do they make?"}}},deletion:{label:"Deletion Training",disc:"Training to identify the remaining sound after removing a syllable or phoneme.",types:{DROP_1_FROM_2SYLL:{label:"Drop 1 Syllable from 2-Syllable Word",sub:"What sound is left when you remove one syllable from a 2-syllable word?",setupSub:"Choose a 2-syllable target word and create a syllable-deletion question.",step1:"Listen to the word.",step2:"What sound remains when one syllable is removed?"},DROP_1_FROM_3SYLL:{label:"Drop 1 Syllable from 3-Syllable Word",sub:"What sound is left when you remove one syllable from a 3-syllable word?",setupSub:"Choose a 3-syllable target word and create a syllable-deletion question.",step1:"Listen to the word.",step2:"What sound remains when one syllable is removed?"},DROP_PART_FROM_COMPOUND:{label:"Drop Part of Compound Word",sub:"What word is left when you remove part of a compound word?",setupSub:"Choose a compound word and create a partial-deletion question.",step1:"Listen to the compound word.",step2:"What word remains when part is removed?"},DROP_FINAL_CONSONANT_FROM_1SYLL:{label:"Drop Final Consonant",sub:"What sound is left when you remove the final consonant?",setupSub:"Choose a 1-syllable word with a final consonant and create a deletion question.",step1:"Listen to the word.",step2:"What sound remains when the coda is removed?"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{label:"Drop Consonant from 1-Syllable Word",sub:"What sound remains after removing the consonant?",setupSub:"Choose a 1-syllable word and create a consonant-removal question.",step1:"Listen to the word.",step2:"What sound remains when the consonant is removed?"}}},substitution:{label:"Substitution Training",disc:"Training to create new sounds by substituting syllables or phonemes.",types:{CHANGE_1_SYLL_IN_2SYLL:{label:"Change 1 Syllable in 2-Syllable Word",sub:"Change one syllable of a 2-syllable word to make a new word.",setupSub:"Choose a 2-syllable target word and create a syllable-substitution question.",step1:"Listen to the word.",step2:"Change one syllable to make a new word."},CHANGE_1_SYLL_IN_3SYLL:{label:"Change 1 Syllable in 3-Syllable Word",sub:"Change one syllable of a 3-syllable word to make a new word.",setupSub:"Choose a 3-syllable target word and create a syllable-substitution question.",step1:"Listen to the word.",step2:"Change one syllable to make a new word."},CHANGE_1_PHONEME_IN_1SYLL:{label:"Change 1 Phoneme in 1-Syllable Word",sub:"Change one phoneme of a 1-syllable word to make a new sound.",setupSub:"Choose a 1-syllable target word and create a phoneme-substitution question.",step1:"Listen to the word.",step2:"Change one phoneme to make a new sound."},CHANGE_1_PHONEME_IN_2SYLL:{label:"Change 1 Phoneme in 2-Syllable Word",sub:"Change one phoneme of a 2-syllable word to make a new word.",setupSub:"Choose a 2-syllable target word and create a phoneme-substitution question.",step1:"Listen to the word.",step2:"Change one phoneme to make a new word."}}},attention:{label:"Auditory Attention Training",disc:"Training attention and short-term memory by listening to and recalling sequences of sounds.",types:{LISTEN_AND_REMEMBER_ORDER:{label:"Listen & Recall in Order",sub:"Select the three word cards in the order you heard them.",setupSub:"Choose three words to present and create a recall-in-order question.",step1:"Listen to the three words.",step2:"Select them in the order you heard them."}}}},X1={subtitle:"Select a training type",resultUnit:"word set",nameLabel:"Name",namePlaceholder:"Enter training name",options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",save:"Save",preview:"Preview",excludeOptions:{none:"None",noImage:"No Image"},toast:{nameRequired:"Please enter a set name.",noWords:"No words selected.",noProblem:"Please complete at least one question.",loginRequired:"Login required.",saveFailed:"Failed to save.",saveSuccess:'"{{name}}" set saved ({{count}} questions).',saveSuccessWithIncomplete:'"{{name}}" set saved ({{count}} questions, {{incomplete}} incomplete excluded).',bundleApplied:"Applied to the current question."},suggest:{noCoda:"No batchim",syllable:"{{n}} syllable(s)"}},Q1={namePlaceholder:"Enter a training name.",trainingTitle:"'{{name}}' Word Training",questionInput:"Enter a word",answer:"Answer",distractor:"Distractor",groupStep:"Select the word set for the problem.",pickWordStep:"Choose the word to use in the question.",groupStepSub:"The correct answer and distractors are chosen at random from the selected set.",sameOrDiffStepSub:"Chosen at random from the selected word set.",problemNav:"Q {{current}} / {{count}}",problemNum:"Q {{n}}",clearQuestion:"Deselect",removeQuestion:"Remove Question",addQuestion:"Add Question",noWords:"No words match the selected filters.",validOk:"Valid word.",validNoImage:"No image for this word.",validNeed1SyllCoda:"Only 1-syllable words with a final consonant are allowed.",validNeed1SyllNoCoda:"Only 1-syllable words without a final consonant are allowed (excluding words starting with \u3147).",validNeed2Syll:"Only 2-syllable words are allowed.",validNeed3Syll:"Only 3-syllable words are allowed.",manualOnlyHint:"This type doesn't support automatic suggestions yet. Please enter the question word manually."},J1={unexpectedTitle:"Something went wrong",unexpectedMessage:"An unexpected error occurred. Please try again.",retry:"Try Again"},ef={loadError:"Word Data Load Failed",loadErrorMessage:"Failed to load word data. Please check your network and try again.",updateAvailable:"Word Data v{{version}}",updateMessage:"New word data is available.",phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items",update:{title:"Word Data Update"}},tf={title:"Apply for Malgwi Manager",submitting:"Submitting\u2026",submit:"Apply",promo:{title:"3-Day Free Trial for Malgwi Manager",desc:"Register now and try Malgwi Manager free for 3 days!",action:"View Info Page"},applicantEmail:"Applicant Email",companyId:{label:"Company ID",placeholder:"e.g. ACME01 (uppercase letters & numbers)",helper:"Company ID cannot be changed after creation. Only uppercase letters, numbers, _, - are allowed.",errors:{required:"Please enter a company ID",startWithLetter:"Company ID must start with an uppercase letter.",tooLong:"Company ID must be 12 characters or fewer."}},companyName:{label:"Company / Username",placeholder:"Enter company name or username",errors:{required:"Please enter a company name",tooLong:"Company / Username must be 12 characters or fewer."}},companyType:{label:"Company Type",placeholder:"Select company type",errors:{required:"Please select a company type"}},phone:{label:"Phone",errors:{required:"Please enter a phone number",format:"Please enter a valid phone number"}}},af={clearAriaLabel:"Clear input"},of={ariaLabel:"Select tab"},rf={ariaLabel:"Tabs"},nf={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},sf={ariaLabel:"User avatar"},lf={title:"Homework",subtitle:"Check and do the homework your manager sent you.",completed:"Done",inProgress:"In progress",fromManager:"Manager",received:"received",recordExpired:"The homework has expired, so the result was not recorded. Please contact your manager.",segment:{all:"All",new:"New",inprogress:"In Progress",done:"Done"},pageSize:{10:"Show 10",20:"Show 20",50:"Show 50"},searchPlaceholder:"Search homework name",sort:{newest:"Newest",oldest:"Oldest",title:"Title"},relativeDay:{today:"Today",yesterday:"Yesterday",daysAgo:"{{n}}d ago"},orgLink:{title:"Link Organization",placeholder:"Enter link code",connect:"Link",linked:"Linked to {{org}}.",failed:"Failed to link.",org:"the organization"},reason:{notLoggedIn:"Login required."},list:{title:"Received Homework",empty:"No homework received."},status:{expired:"Expired",done:"Done {{count}}\xD7 \xB7 {{date}}",notDone:"Not done"}},cf={title:"Training Status",sub:"View your hearing training records",weekly:{title:"Weekly Training",daily:"Daily Listening",crossword:"Crossword",trainingTime:"Training Time",timeAvg:"Avg time",accuracy:"Accuracy",unit:" times"},sentence:{title:"Sentence Training"},word:{title:"Word Training"},homework:{title:"Homework Progress",weeklyRate:"Weekly Rate",count:"Total",done:"Done",remaining:"Remaining",unit:""},today:{title:"Today's Listening",progress:"Progress",accuracy:"Accuracy",progressAvg:"Avg progress",unitPct:"%",tooltipTotal:"Total",tooltipDone:"Done"},filter:{countSuffix:" sessions"},time:{title:"Training Time",countLabel:"{{n}} sessions",empty:"No training records",sec:"{{n}}s",min:"{{n}}m",hourMin:"{{h}}h {{m}}m",hour:"{{h}}h"},daily:{title:"Today's Listening Record",empty:"No completed sessions"},crossword:{title:"Crossword Quiz",empty:"No completed levels"},visit:{title:"Linked Visit Records"},detail:"Details",detailEmpty:"No training records for this period.",detailError:"Could not load training records. Please try again shortly.",col:{date:"Date",type:"Type",score:"Score",time:"Time"},trainingType:{LISTEN_IN_NOISE:"Sentence in Noise",SHORT_STORY:"Short Story",LONG_STORY:"Long Story",ORDERING_SENTENCE:"Sentence Ordering"},accuracy:{overall:"Overall accuracy",itemUnit:" items",skipped:"{{n}} had no accuracy record and were left out of this count."}},df={title:"Training Store",subtitle:"Browse trainings shared by other managers and add them to your list.",searchPlaceholder:"Search by training name or publisher",category:{word:"Word Tables",wordTraining:"Word Training",sentence:"Sentence Training"},sort:{newest:"Newest",likes:"Most liked",downloads:"Most downloaded"},wordKind:{pair:"Pairs",single:"Words",emptyHintToSingle:"No pair tables here, but the 'Words' tab has some.",emptyHintToPair:"No word tables here, but the 'Pairs' tab has some."},pageSize:"{{n}} per page",countPrefix:"Total ",countSuffix:" trainings",notice:"Log in with a manager account to add trainings to your list.",empty:"No trainings have been published yet.",emptyHint:"You can publish your own trainings from the Training Settings page.",like:"Like",unlike:"Unlike",loginRequired:"Login required",import:"Add to my trainings",importButton:"Import",publisher:"Publisher",importFail:"Import failed: {{error}}",importSuccess:"Added '{{title}}' to your training list.",dupTitle:"Same content already exists",dupMessageOne:"Same content as <m>{{title}}</m>. Import anyway?",dupMessageMany:"Same content as <m>{{title}}</m> and <m>{{n}}</m> more. Import anyway?",time:{justNow:"just now",minutesAgo:"{{n}}m ago",hoursAgo:"{{n}}h ago",daysAgo:"{{n}}d ago",weeksAgo:"{{n}}w ago",monthsAgo:"{{n}}mo ago",yearsAgo:"{{n}}y ago"},badge:{shared:"Store"},unpublishOnDelete:"The store listing will also be deleted.",publish:{confirmLabel:"Post",confirmLoading:"Posting\u2026",descPlaceholder:"One-line description for the Training Store (optional)",dialogTitle:"Post to Training Store",message:"Publish '{{name}}' to the Training Store."},categoryLabel:"Resource type",toast:{registered:"Published to the Malgue Library",registerError:"Failed to publish to the Malgue Library"}},uf={common:{cardName:"Card Name",cardNamePlaceholder:"Enter card name",group:"Group",groupPlaceholder:"Group name (optional)",description:"Description",descriptionPlaceholder:"Briefly describe this card (optional)",nameRequired:"Please enter a card name.",removeAll:"Remove All",deleteConfirm:"Delete '{{name}}'?",deleteConfirmDefault:"Delete this card?"},wordTableCard:{createTitle:"Create Word Table Card",editTitle:"Edit Word Table Card",deleteTitle:"Delete Word Table Card",basket:"Selected Tables",basketEmpty:"No tables selected",depth:"Word Table"},wordTrainingCard:{createTitle:"Create Word Training Bundle",editTitle:"Edit Word Training Bundle",deleteTitle:"Delete Word Training Bundle",selectSection:"Select Trainings",defaultSection:"Default Trainings",defaultSectionDesc:"Words are filled automatically when you add a standard training",mySection:"My Trainings",noTrainingsEmpty:"Please create a word training first.",adding:"Adding\u2026",add:"Add",basket:"Selected Trainings",basketEmpty:"No trainings selected",trainingRequired:"Please add at least one training.",maxTrainingsAlert:"You can add up to {{max}} trainings",notEnoughWords:"Not enough words to generate questions",addSaveError:"Failed to save the training. Please try again",complete:{message:"All done! Great job!",button:"Done"}},shareLink:{saveCardFirst:"Save the card first.",copied:"Link copied",created:"Link created",createFailed:"Failed to create link",copyBlocked:"Copying was blocked, so the link is selected. Press Ctrl/\u2318+C to copy",removed:"Link removed",removeFailed:"Failed to remove link"}},pf={manage:{title:"Homework",sub:"View shared training links and submission status.",filterActive:"Active",filterExpired:"Expired / Inactive",searchPlaceholder:"Search by title or recipient",emptySearch:"No results found.",emptyLinks:"No shared homework links yet.",unit:"item(s)",loadFailed:"Could not load homework links."},card:{deleteTitle:"Delete Homework Link",deleteMessage:"Delete this homework link? Submitted results will also be removed."},status:{inactive:"Inactive",expired:"Expired",active:"Active",done_one:"Completed {{count}} time",done_other:"Completed {{count}} times",notDone:"Not Completed",noTarget:"No Target",sentFmt:"{{target}} \xB7 sent {{date}}"},menu:{activate:"Activate",deactivate:"Deactivate"},personalLinkTitle:"Personal link"},hf={title:"Invitations",sub:"Create and manage invite links \u2014 no customer info needed.",copyAriaLabel:"Copy link",deleteAriaLabel:"Delete",deleteConfirmTitle:"Delete invite link",deleteConfirmMessage:"Delete this invite link? Any link already shared will stop working."},mf={card:{sub:"Word Training Bundle",empty:"No word training in this card."}},bf={ariaLabel:"Contact Us",emailPlaceholder:"Email for reply",contentPlaceholder:"Please enter your inquiry.",cancelLabel:"Cancel",submitLabel:"Send",title:"Contact Us",emailLabel:"Email",contentLabel:"Inquiry",successMsg:"\u2713 Your inquiry has been submitted.",submitError:"Failed to submit your inquiry.",subText:"Send us a message about purchasing a subscription plan. We will respond within 1\u20132 business days."},gf={inProgress:"Exam in progress"},ff={countSuffix:"",searchPlaceholder:"Search links",creating:"Creating\u2026",create:"Create Link",colLink:"Link",colCreatedAt:"Created At",empty:"No items.",loadFailed:"Could not load invitations."},vf={empty:"No training items to run.",loading:"Loading training data\u2026",subtitle:"Select a topic to start listening practice.",title:"Run Training"},yf={reason:{invalid:"This invite has expired or is no longer valid.",notFound:"This invite does not exist.",notLoggedIn:"Please sign in.",rateLimited:"Please try again in a moment."},defaultOrgName:"the organization",loading:"Loading\u2026",invalidTitle:"Can't open this invite",acceptError:"Failed to accept the invite.",alreadyConnected:"already connected.",connected:"connected.",doneMessage:"{{orgName}} \u2014 {{suffix}}",doneSub:"You can now receive homework from your manager.",goToHomework:"Go to homework",failedTitle:"Couldn't accept the invite",home:"Home",readyTitle:"Invite from {{orgName}}",readySub:"Register as a customer of {{orgName}} and start receiving homework?",accepting:"Connecting\u2026",acceptButton:"Accept invite"},xf={reason:{notFound:"This link does not exist.",inactive:"This link has been deactivated.",expired:"This link has expired.",maxUses:"This link has reached its maximum uses.",missingToken:"This link is invalid.",default:"This link is not valid.",unavailable:"We can't check this link right now."},checking:"Checking the link\u2026",validBadge:"Valid link",availableUntil:"Available until {{date}}",redirecting:"Redirecting\u2026",redirectingIn3s:"Redirecting to the app in 3 seconds.",enterNow:"Enter now",invalidBadge:"Unavailable",expiredAt:"Expired: {{date}}",contactAdmin:"If you believe this link should still work, please contact your administrator.",unavailableBadge:"Cannot check",unavailableHint:"Check your connection and open the link again. The link itself is still fine."},Cf={loading:"Loading\u2026",invalidTitle:"Can't open this link",invalidMessage:"This shared link doesn't exist, or has expired or been deactivated.",goToMyHomework:"Go to My Homework",recordFailed:"This homework link has expired, so your result wasn't saved. Please contact your manager."},_f={defaultTitle:"Word Table"},wf={label:"Share link",copyAriaLabel:"Copy link",removeAriaLabel:"Remove link",creating:"Creating\u2026",hint:"You can only create a share link for a saved card.",removeConfirmTitle:"Remove share link",removeConfirmMessage:"Remove this share link? The existing link will stop working."},kf={title:"Organization link request",subtitle:"The organization below wants to register you as their customer. Please confirm this is an organization you actually use before choosing.",registeredName:"Registered as: {{name}}",decline:"Decline",accept:"Accept",error:"Failed to process: {{message}} \u2014 please try again."},Sf={steps:"Step {{current}} of {{total}}"},Af={title:"Build the next training",lead:"Sets containing items {{name}} has not caught yet. Only these go in.",planGroup:"Into a training plan",bundleGroup:"Into a word-training bundle",pending:"{{count}} left",unknownSet:"Set name not found",confirm:"Create",newBase:"{{name}} training",planDesc:"{{count}} set(s) holding items {{name}} got wrong",bundleDesc:"{{count}} word training(s) holding items {{name}} got wrong",madePlan:"{{count}} training plan(s)",madeBundle:"{{count}} word-training bundle(s)",created:"Created '{{name}}' \u2014 {{what}}",nothingMade:"No set could be included, so nothing was created.",noSetNote:"{{n}} item(s) could not be included \u2014 the record does not say which set they came from.",emptyTitle:"Nothing to build right now",emptyAllClear:"No items are still being missed.",emptyNoSet:"{{n}} item(s) are still missed, but the records do not say which set they came from, so they cannot be pulled back. One more training run will start recording it."},Tf={panelTitle:"Training misses",viewItems:"Items",viewTypes:"Types",colTitle:"Item",colWhen:"When",colScore:"Correct",colDuration:"Duration",scoreFmt:"{{correct}}/{{total}}",unitRun:" runs",runsEmpty:"No training recorded yet.",colType:"Type",colRate:"Accuracy",colTried:"Tries",colLatest:"Last",colPending:"Left",colTrend:"Change",colRuns:"Runs",unitItem:" items",empty:"No training misses recorded yet.",loadFailed:"Could not load the training records.",skippedOnly:"{{n}} older record(s) were excluded \u2014 they do not say what was answered.",summaryLabel:"Recorded",summaryValue:"{{items}} items \xB7 {{pending}} still missed",nextLabel:"Next to work on",nextCount:"{{count}}",nextCountCapped:"{{shown}} of {{total}}",allClear:"All caught up",tried:"{{count}}x",picked:"\u2192 {{what}}",typeClear:"All caught up",typePending:"{{pending}} of {{total}} left",flat:"no change",runs:"{{count}} run(s)",avgDuration:"{{sec}}s avg",truncated:"Only the most recent {{n}} items were loaded \u2014 the counts below cover just those."},Bf={panelTitle:"Word table scores",viewWords:"Words",viewTables:"Tables",colWord:"Word",colMark:"Last",colRate:"Accuracy",colTried:"Tries",colLatest:"When",colTable:"Table",colTrend:"Change",colScoredAt:"Scored at",unitTime:" times",empty:"No word tables scored yet.",summaryLabel:"Scored",summaryValue:"{{times}} times \xB7 {{words}} words",nextLabel:"Focus next",nextCount:"{{count}}",allClear:"All correct last time.",tried:"{{count}}x",times:"{{count}}x",flat:"no change",recentLabel:"Recent scorings",deleteOne:"Delete \u201C{{name}}\u201D scoring",deleteTitle:"Delete this scoring?",deleteMessage:"Deletes the \u201C{{name}}\u201D scoring from {{when}}. This cannot be undone.",nextCountCapped:"{{shown}} of {{total}}",loadFailed:"Could not load word scores."},Nf={title:"What to train next?",subtitle:"Picked for the {{count}} words {{name}} has not mastered yet.",allClear:"All correct last time. Nothing to focus on right now.",noMatch:"None of your tables contain these words.",coverage:"{{covered}} of {{total}} cells",uncovered:"{{count}} words not in any table",makeNew:"Make a new table from these {{count}}",newTableBase:"{{name}} focus",newTableDesc:"The {{count}} words {{name}} has not mastered yet.",created:"Created \u201C{{name}}\u201D \u2014 {{count}} cells.",button:"Suggest next table"},Df={hint:"Pin what you want to keep; the rest can be redrawn.",pin:"Pin \u201C{{name}}\u201D",unpin:"Unpin \u201C{{name}}\u201D",remove:"Remove \u201C{{name}}\u201D",regenerate:"Redraw the rest",regenerating:"Drawing\u2026",save:"Create as shown",count:"{{total}} \xB7 {{pinned}} pinned",empty:"Nothing left. At least one is needed."},Ef={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},jf={selectYearMonth:"Select year and month"},Lf={common:Q0,plan:J0,calendar:e1,passCard:t1,searchField:a1,rating:o1,colorPicker:r1,dropdown:n1,accordion:i1,header:s1,nav:l1,settings:c1,usage:d1,account:u1,help:p1,notifications:h1,wordSuggestion:m1,training:b1,trainingSettings:g1,customers:f1,today:v1,payment:y1,coupons:x1,visits:C1,company:_1,sentenceTraining:w1,trainingType:k1,myWordTraining:S1,myWordTable:A1,keyWords:T1,wordTable:B1,wordSearch:N1,wordManagement:D1,wordPrint:E1,topic:j1,passwordExpiry:L1,feedbackWidget:M1,accessLinkManager:P1,wordRecommend:R1,subscriptionExpiry:$1,customerTrainingBanner:z1,login:I1,agreementGate:O1,addressSearch:F1,trainingPlan:W1,device:H1,manager:V1,wordPairs:G1,game:q1,footer:Y1,landing:U1,date:K1,trainingGroup:Z1,trainingSetPage:X1,wordTrainingPreview:Q1,error:J1,wordData:ef,infoInput:tf,textField:af,segmentedControl:of,tabs:rf,fileUpload:nf,avatar:sf,myHomework:lf,trainingStatus:cf,store:df,cardPopup:uf,homework:pf,invite:hf,wordTraining:mf,inquiry:bf,exam:gf,inviteManage:ff,trainingPlanRun:vf,orgInvitePage:yf,linkGate:xf,homeworkGate:Cf,wordTableView:_f,shareLinkFooter:wf,linkRequestGate:kf,progress:Sf,nextTraining:Af,trainingMiss:Tf,wordScore:Bf,nextTable:Nf,draft:Df,topBanner:Ef,datePicker:jf};const jo=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],lo="ko",$n="ihab_display_language";function Ic(){try{const e=localStorage.getItem($n);if(e&&jo.some(t=>t.code===e))return e}catch{}return lo}function Mf(e){try{localStorage.setItem($n,e)}catch{}}function Oc(e){try{document.documentElement.lang=e}catch{}}Ca.on("languageChanged",Oc),Oc(Ic()),Ca.use(me.initReactI18next).init({resources:{ko:{translation:X0},en:{translation:Lf}},lng:Ic(),fallbackLng:lo,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const Fc=l.createContext({locale:lo,supportedLocales:jo});function Pf(){return l.useContext(Fc)}function Rf({locale:e=lo,children:t}){return l.useEffect(()=>{const a=jo.find(r=>r.code===e)?e:lo;Ca.language!==a&&Ca.changeLanguage(a)},[e]),o.jsx(Fc.Provider,{value:{locale:e,supportedLocales:jo},children:t})}function xe(...e){return e.filter(Boolean).join(" ")}var $f=".ihabdevteam-core-scope .empty-state{align-items:center;border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);display:flex;flex-direction:column;gap:10px;justify-content:center;padding:var(--spacing-page) var(--spacing-xl);text-align:center}.ihabdevteam-core-scope .empty-state__emoji{font-size:40px;line-height:1}.ihabdevteam-core-scope .empty-state__icon{color:var(--color-lightGray);height:40px;width:40px}.ihabdevteam-core-scope .empty-state__title{color:var(--color-lightGray);margin:0}.ihabdevteam-core-scope .empty-state__message{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .empty-state__hint{color:var(--color-lightGray);margin:0}.ihabdevteam-core-scope .empty-state__action{margin-top:var(--spacing-xs);min-width:120px}.ihabdevteam-core-scope .empty-state--compact{padding:var(--spacing-page) var(--spacing-m);padding-block:56px}";Q($f);/**
12
12
  * @license lucide-react v1.38.0 - ISC
13
13
  *
14
14
  * This source code is licensed under the ISC license.
@@ -794,8 +794,8 @@ and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Dir
794
794
  * This source code is licensed under the ISC license.
795
795
  * See the LICENSE file in the root directory of this source tree.
796
796
  */const a_=[["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z",key:"emmmcr"}],["path",{d:"M7 10v12",key:"1qc93n"}]],o_=K("thumbs-up",a_),id={"alert-triangle":Vc,"align-start-vertical":qf,anchor:gC,armchair:vC,"arrow-down":Uf,"arrow-left":Zf,"arrow-right":Qf,"arrow-right-left":ev,"arrow-up-a-z":xC,"audio-lines":av,baby:rv,ban:iv,"bar-chart-2":_C,bell:lv,"book-marked":dv,"book-open":pv,"bow-arrow":mv,braces:gv,bug:vv,calendar:od,"calendar-check":xv,"calendar-days":_v,camera:kv,car:SC,"chart-column":Av,"chart-line":Bv,"chart-pie":Dv,check:Gc,"chevron-down":rd,"chevron-left":qc,"chevron-right":Yc,"chevron-up":nd,circle:KC,"clipboard-list":Pv,coffee:TC,combine:$v,copy:Iv,"credit-card":Fv,database:Uc,diff:Vv,download:Kc,ear:Yv,edit:Kv,"edit-2":Xv,"edit-3":Jv,ellipsis:Zc,eraser:ay,"external-link":ry,eye:iy,"file-text":ly,"flip-horizontal":dy,"folder-open":py,"folder-plus":my,gamepad:gy,"gamepad-2":NC,gavel:vy,"git-merge":Xc,globe:Cy,headphones:wy,heart:Sy,home:Ty,inbox:EC,info:Ny,"key-round":Ey,landmark:Ly,layers:Py,"layout-dashboard":$y,leaf:Iy,lightbulb:Fy,link:Hy,"link-2":Gy,"link-2-off":Yy,list:Ky,"list-checks":Xy,"list-ordered":Jy,"list-tree":LC,loader:tx,"log-out":ox,mail:nx,"map-pin":sx,menu:JC,"message-circle":cx,"message-circle-question-mark":ux,"message-square":hx,"message-square-more":PC,"message-square-text":bx,minus:$C,"minus-circle":fx,moon:t_,"more-horizontal":Zc,package:yx,palette:Cx,"party-popper":wx,pause:Sx,pencil:Tx,phone:Nx,play:Ex,"play-circle":Lx,plus:Px,printer:$x,"refresh-cw":Ix,repeat:Fx,replace:Hx,rocket:Gx,"rotate-ccw":Yx,"rotate-cw":Kx,salad:Xx,"scan-search":Jx,search:o2,"circle-alert":Qc,"alert-circle":Qc,"check-circle":Jc,scissors:n2,"search-x":s2,send:c2,settings:u2,"share-2":IC,"shield-check":h2,"shopping-cart":b2,shuffle:f2,"skip-back":y2,"skip-forward":C2,sparkles:FC,square:w2,star:S2,store:T2,"sun-medium":N2,table:E2,"table-2":L2,terminal:P2,"text-cursor-input":$2,"text-initial":I2,"thumbs-up":o_,ticket:F2,triangle:XC,"trash-2":H2,"trending-up":G2,"triangle-alert":Vc,trophy:Y2,type:HC,unlink:K2,upload:X2,user:ed,"user-plus":eC,"user-round":aC,"user-round-check":rC,users:iC,"users-round":lC,volume:GC,"volume-2":td,wrench:uC,x:ad,zap:mC};function r_(e){return id[e]??null}const sd=new Set,n_=(()=>{try{const e=globalThis;return e.process!=null&&e.process.env?.NODE_ENV!=="production"}catch{return!1}})();function i_(e){return n_&&!(e in id)&&!sd.has(e)&&(sd.add(e),console.warn(`[ihabdevteam-core] lucide \uC544\uC774\uCF58 '${e}' \uC774 \uC815\uC801 \uBAA9\uB85D\uC5D0 \uC5C6\uC5B4 \uB80C\uB354\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. utils/lucideIconSet.ts \uC758 STATIC_LUCIDE_ICONS \uC5D0 \uCD94\uAC00\uD558\uC138\uC694.`)),Promise.resolve(null)}const s_=e=>e.replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Za-z])([0-9])/g,"$1-$2").replace(/[_ ]+/g,"-").toLowerCase();function l_(e){const t=e.toLowerCase();if(t.startsWith("http://")||t.startsWith("https://")||t.startsWith("data:")||e.includes("/assets/"))return null;const a=(e.split("/").pop()||"").replace(/\.svg$/,"");return a?s_(a):null}const ld=new Map;function c_(e){const t=typeof e=="string"?l_(e):null,a=t?r_(t)??ld.get(t)??null:null,[r,n]=l.useState(null);return l.useEffect(()=>{if(!t||a)return;let i=!1;return i_(t).then(s=>{ld.set(t,s),i||n(s)}),()=>{i=!0}},[t,a]),a??r}/*! @license DOMPurify 3.4.14 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.14/LICENSE */function cd(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}function d_(e){if(Array.isArray(e))return e}function u_(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var r,n,i,s,c=[],u=!0,d=!1;try{if(i=(a=a.call(e)).next,t!==0)for(;!(u=(r=i.call(a)).done)&&(c.push(r.value),c.length!==t);u=!0);}catch(m){d=!0,n=m}finally{try{if(!u&&a.return!=null&&(s=a.return(),Object(s)!==s))return}finally{if(d)throw n}}return c}}function p_(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
797
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function h_(e,t){return d_(e)||u_(e,t)||m_(e,t)||p_()}function m_(e,t){if(e){if(typeof e=="string")return cd(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?cd(e,t):void 0}}const dd=Object.entries,ud=Object.setPrototypeOf,b_=Object.isFrozen,g_=Object.getPrototypeOf,f_=Object.getOwnPropertyDescriptor;let bt=Object.freeze,vt=Object.seal,co=Object.create,pd=typeof Reflect<"u"&&Reflect,In=pd.apply,On=pd.construct;bt||(bt=function(t){return t}),vt||(vt=function(t){return t}),In||(In=function(t,a){for(var r=arguments.length,n=new Array(r>2?r-2:0),i=2;i<r;i++)n[i-2]=arguments[i];return t.apply(a,n)}),On||(On=function(t){for(var a=arguments.length,r=new Array(a>1?a-1:0),n=1;n<a;n++)r[n-1]=arguments[n];return new t(...r)});const Ya=pt(Array.prototype.forEach),v_=pt(Array.prototype.lastIndexOf),hd=pt(Array.prototype.pop),Lo=pt(Array.prototype.push),y_=pt(Array.prototype.splice),uo=Array.isArray,Mo=pt(String.prototype.toLowerCase),Fn=pt(String.prototype.toString),md=pt(String.prototype.match),Po=pt(String.prototype.replace),bd=pt(String.prototype.indexOf),x_=pt(String.prototype.trim),C_=pt(Number.prototype.toString),__=pt(Boolean.prototype.toString),gd=typeof BigInt>"u"?null:pt(BigInt.prototype.toString),fd=typeof Symbol>"u"?null:pt(Symbol.prototype.toString),Rt=pt(Object.prototype.hasOwnProperty),Ro=pt(Object.prototype.toString),kt=pt(RegExp.prototype.test),Ua=w_(TypeError);function pt(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var a=arguments.length,r=new Array(a>1?a-1:0),n=1;n<a;n++)r[n-1]=arguments[n];return In(e,t,r)}}function w_(e){return function(){for(var t=arguments.length,a=new Array(t),r=0;r<t;r++)a[r]=arguments[r];return On(e,a)}}function Ve(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Mo;if(ud&&ud(e,null),!uo(t))return e;let r=t.length;for(;r--;){let n=t[r];if(typeof n=="string"){const i=a(n);i!==n&&(b_(t)||(t[r]=i),n=i)}e[n]=!0}return e}function k_(e){for(let t=0;t<e.length;t++)Rt(e,t)||(e[t]=null);return e}function It(e){const t=co(null);for(const r of dd(e)){var a=h_(r,2);const n=a[0],i=a[1];Rt(e,n)&&(uo(i)?t[n]=k_(i):i&&typeof i=="object"&&i.constructor===Object?t[n]=It(i):t[n]=i)}return t}function S_(e){switch(typeof e){case"string":return e;case"number":return C_(e);case"boolean":return __(e);case"bigint":return gd?gd(e):"0";case"symbol":return fd?fd(e):"Symbol()";case"undefined":return Ro(e);case"function":case"object":{if(e===null)return Ro(e);const t=e,a=Xt(t,"toString");if(typeof a=="function"){const r=a(t);return typeof r=="string"?r:Ro(r)}return Ro(e)}default:return Ro(e)}}function Xt(e,t){for(;e!==null;){const r=f_(e,t);if(r){if(r.get)return pt(r.get);if(typeof r.value=="function")return pt(r.value)}e=g_(e)}function a(){return null}return a}function A_(e){try{return kt(e,""),!0}catch{return!1}}const vd=bt(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Wn=bt(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Hn=bt(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),T_=bt(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Vn=bt(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),B_=bt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),yd=bt(["#text"]),xd=bt(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Gn=bt(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Cd=bt(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Ar=bt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),N_=vt(/{{[\w\W]*|^[\w\W]*}}/g),D_=vt(/<%[\w\W]*|^[\w\W]*%>/g),E_=vt(/\${[\w\W]*/g),j_=vt(/^data-[\-\w.\u00B7-\uFFFF]+$/),L_=vt(/^aria-[\-\w]+$/),_d=vt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),M_=vt(/^(?:\w+script|data):/i),P_=vt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),R_=vt(/^html$/i),$_=vt(/^[a-z][.\w]*(-[.\w]+)+$/i),wd=vt(/<[/\w!]/g),kd=vt(/<[/\w]/g),z_=vt(/<\/no(script|embed|frames)/i),I_=vt(/\/>/i),Ot={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Sd=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],O_=bt(Ve({},Sd)),F_=(function(){const e={};return Ya(Sd,t=>{e[t]=vt(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),bt(e)})(),W_=function(){return typeof window>"u"?null:window},H_=function(t,a){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let r=null;const n="data-tt-policy-suffix";a&&a.hasAttribute(n)&&(r=a.getAttribute(n));const i="dompurify"+(r?"#"+r:"");try{return t.createPolicy(i,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},Ad=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},La=function(t,a,r,n){return Rt(t,a)&&uo(t[a])?Ve(n.base?It(n.base):{},t[a],n.transform):r},qn=function(t,a,r){const n=Rt(t,a)?t[a]:void 0;return n&&typeof n=="object"?It(n):r()};function Td(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:W_();const t=he=>Td(he);if(t.version="3.4.14",t.removed=[],!e||!e.document||e.document.nodeType!==Ot.document||!e.Element)return t.isSupported=!1,t;let a=e.document;const r=a,n=r.currentScript;e.DocumentFragment;const i=e.HTMLTemplateElement,s=e.Node,c=e.Element,u=e.NodeFilter,d=e.NamedNodeMap;d===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const m=e.DOMParser,h=e.trustedTypes,p=c.prototype,g=Xt(p,"cloneNode"),v=Xt(p,"remove"),b=Xt(p,"nextSibling"),y=Xt(p,"childNodes"),f=Xt(p,"parentNode"),x=Xt(p,"shadowRoot"),_=Xt(p,"attributes"),C=s&&s.prototype?Xt(s.prototype,"nodeType"):null,A=s&&s.prototype?Xt(s.prototype,"nodeName"):null,w=s&&s.prototype?Xt(s.prototype,"ownerDocument"):null,S=function(B){return C?C(B):B.nodeType},D=function(B){return A?A(B):B.nodeName};if(typeof i=="function"){const he=a.createElement("template");he.content&&he.content.ownerDocument&&(a=he.content.ownerDocument)}let T,E="",W,M=!1,k=0;const N=function(){if(k>0)throw Ua('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},j=function(B){N(),k++;try{return T.createHTML(B)}finally{k--}},F=function(B){N(),k++;try{return T.createScriptURL(B)}finally{k--}},te=function(){return M||(W=H_(h,n),M=!0),W},Z=a,ee=Z.implementation,L=Z.createNodeIterator,R=Z.createDocumentFragment,O=Z.getElementsByTagName,H=r.importNode;let $=Ad();t.isSupported=typeof dd=="function"&&typeof f=="function"&&ee&&ee.createHTMLDocument!==void 0;const q=N_,I=D_,G=E_,z=j_,Y=L_,J=M_,ue=P_,pe=$_;let ae=_d,X=null;const ce=Ve({},[...vd,...Wn,...Hn,...Vn,...yd]);let xe=null;const Se=Ve({},[...xd,...Gn,...Cd,...Ar]);let Ae=Object.seal(co(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),P=null,oe=null;const re=Object.seal(co(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Ce=!0,De=!0,Ie=!1,Oe=!0,Fe=!1,Qe=!0,Re=!1,Ge=!1,We=null,be=null,at=!1,He=!1,Le=!1,Ue=!1,Dt=!0,Ke=!1;const Ye="user-content-";let ut=!0,je=!1,rt={},Je=null;const $e=Ve({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let Ze=null;const et=Ve({},["audio","video","img","source","image","track"]);let yt=null;const Et=Ve({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),it="http://www.w3.org/1998/Math/MathML",Ht="http://www.w3.org/2000/svg",mt="http://www.w3.org/1999/xhtml";let Vt=mt,ia=!1,Gt=null;const Ea=Ve({},[it,Ht,mt],Fn),sa=bt(["mi","mo","mn","ms","mtext"]);let Kt=Ve({},sa);const ja=bt(["annotation-xml"]);let jt=Ve({},ja);const Ga=Ve({},["title","style","font","a","script"]);let $t=null;const ya=["application/xhtml+xml","text/html"],qa="text/html";let Xe=null,zt=null;const wt=a.createElement("form"),xa=function(B){return B instanceof RegExp||B instanceof Function},la=function(){let B=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(zt&&zt===B)return;(!B||typeof B!="object")&&(B={}),B=It(B),$t=ya.indexOf(B.PARSER_MEDIA_TYPE)===-1?qa:B.PARSER_MEDIA_TYPE,Xe=$t==="application/xhtml+xml"?Fn:Mo,X=La(B,"ALLOWED_TAGS",ce,{transform:Xe}),xe=La(B,"ALLOWED_ATTR",Se,{transform:Xe}),Gt=La(B,"ALLOWED_NAMESPACES",Ea,{transform:Fn}),yt=La(B,"ADD_URI_SAFE_ATTR",Et,{transform:Xe,base:Et}),Ze=La(B,"ADD_DATA_URI_TAGS",et,{transform:Xe,base:et}),Je=La(B,"FORBID_CONTENTS",$e,{transform:Xe}),P=La(B,"FORBID_TAGS",It({}),{transform:Xe}),oe=La(B,"FORBID_ATTR",It({}),{transform:Xe}),rt=Rt(B,"USE_PROFILES")?B.USE_PROFILES&&typeof B.USE_PROFILES=="object"?It(B.USE_PROFILES):B.USE_PROFILES:!1,Ce=B.ALLOW_ARIA_ATTR!==!1,De=B.ALLOW_DATA_ATTR!==!1,Ie=B.ALLOW_UNKNOWN_PROTOCOLS||!1,Oe=B.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Fe=B.SAFE_FOR_TEMPLATES||!1,Qe=B.SAFE_FOR_XML!==!1,Re=B.WHOLE_DOCUMENT||!1,He=B.RETURN_DOM||!1,Le=B.RETURN_DOM_FRAGMENT||!1,Ue=B.RETURN_TRUSTED_TYPE||!1,at=B.FORCE_BODY||!1,Dt=B.SANITIZE_DOM!==!1,Ke=B.SANITIZE_NAMED_PROPS||!1,ut=B.KEEP_CONTENT!==!1,je=B.IN_PLACE||!1,ae=A_(B.ALLOWED_URI_REGEXP)?B.ALLOWED_URI_REGEXP:_d,Vt=typeof B.NAMESPACE=="string"?B.NAMESPACE:mt,Kt=qn(B,"MATHML_TEXT_INTEGRATION_POINTS",()=>Ve({},sa)),jt=qn(B,"HTML_INTEGRATION_POINTS",()=>Ve({},ja));const V=qn(B,"CUSTOM_ELEMENT_HANDLING",()=>co(null));if(Ae=co(null),Rt(V,"tagNameCheck")&&xa(V.tagNameCheck)&&(Ae.tagNameCheck=V.tagNameCheck),Rt(V,"attributeNameCheck")&&xa(V.attributeNameCheck)&&(Ae.attributeNameCheck=V.attributeNameCheck),Rt(V,"allowCustomizedBuiltInElements")&&typeof V.allowCustomizedBuiltInElements=="boolean"&&(Ae.allowCustomizedBuiltInElements=V.allowCustomizedBuiltInElements),vt(Ae),Fe&&(De=!1),Le&&(He=!0),rt&&(X=Ve({},yd),xe=co(null),rt.html===!0&&(Ve(X,vd),Ve(xe,xd)),rt.svg===!0&&(Ve(X,Wn),Ve(xe,Gn),Ve(xe,Ar)),rt.svgFilters===!0&&(Ve(X,Hn),Ve(xe,Gn),Ve(xe,Ar)),rt.mathMl===!0&&(Ve(X,Vn),Ve(xe,Cd),Ve(xe,Ar))),re.tagCheck=null,re.attributeCheck=null,Rt(B,"ADD_TAGS")&&(typeof B.ADD_TAGS=="function"?re.tagCheck=B.ADD_TAGS:uo(B.ADD_TAGS)&&(X===ce&&(X=It(X)),Ve(X,B.ADD_TAGS,Xe))),Rt(B,"ADD_ATTR")&&(typeof B.ADD_ATTR=="function"?re.attributeCheck=B.ADD_ATTR:uo(B.ADD_ATTR)&&(xe===Se&&(xe=It(xe)),Ve(xe,B.ADD_ATTR,Xe))),Rt(B,"ADD_FORBID_CONTENTS")&&uo(B.ADD_FORBID_CONTENTS)&&(Je===$e&&(Je=It(Je)),Ve(Je,B.ADD_FORBID_CONTENTS,Xe)),ut&&(X["#text"]=!0),Re&&Ve(X,["html","head","body"]),X.table&&(Ve(X,["tbody"]),delete P.tbody),B.TRUSTED_TYPES_POLICY){if(typeof B.TRUSTED_TYPES_POLICY.createHTML!="function")throw Ua('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof B.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Ua('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const se=T;T=B.TRUSTED_TYPES_POLICY;try{E=j("")}catch(_e){throw T=se,_e}}else B.TRUSTED_TYPES_POLICY===null?(T=void 0,E=""):(T===void 0&&(T=te()),T&&typeof E=="string"&&(E=j("")));bt&&bt(B),zt=B},ne=Ve({},[...Wn,...Hn,...T_]),ge=Ve({},[...Vn,...B_]),fe=function(B,V,se){return V.namespaceURI===mt?B==="svg":V.namespaceURI===it?B==="svg"&&(se==="annotation-xml"||Kt[se]):!!ne[B]},U=function(B,V,se){return V.namespaceURI===mt?B==="math":V.namespaceURI===Ht?B==="math"&&jt[se]:!!ge[B]},ie=function(B,V,se){return V.namespaceURI===Ht&&!jt[se]||V.namespaceURI===it&&!Kt[se]?!1:!ge[B]&&(Ga[B]||!ne[B])},ve=function(B){let V=f(B);(!V||!V.tagName)&&(V={namespaceURI:Vt,tagName:"template"});const se=Mo(B.tagName),_e=Mo(V.tagName);return Gt[B.namespaceURI]?B.namespaceURI===Ht?fe(se,V,_e):B.namespaceURI===it?U(se,V,_e):B.namespaceURI===mt?ie(se,V,_e):!!($t==="application/xhtml+xml"&&Gt[B.namespaceURI]):!1},we=function(B){Lo(t.removed,{element:B});try{f(B).removeChild(B)}catch{if(v(B),!f(B))throw Ua("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},ke=function(B,V,se){try{B.removeAttributeNode(V)}catch{try{B.removeAttribute(se)}catch{}}},Me=function(B){de(B);const V=y(B);if(V){const _e=[];Ya(V,Be=>{Lo(_e,Be)}),Ya(_e,Be=>{try{v(Be)}catch{}})}const se=_(B);if(se)for(let _e=se.length-1;_e>=0;--_e){const Be=se[_e],Ee=Be&&Be.name;typeof Ee=="string"&&ke(B,Be,Ee)}},nt=function(B,V,se){if(!se)try{se=V.getAttributeNode(B)}catch{se=null}Lo(t.removed,{attribute:se||null,from:V});try{se?V.removeAttributeNode(se):V.removeAttribute(B)}catch{try{V.removeAttribute(B)}catch{}}if(B==="is")if(He||Le)try{we(V)}catch{}else try{V.setAttribute(B,"")}catch{}},ct=function(B){const V=_(B);if(V)for(let se=V.length-1;se>=0;--se){const _e=V[se],Be=_e&&_e.name;typeof Be!="string"||xe[Xe(Be)]||ke(B,_e,Be)}},de=function(B){const V=[B];for(;V.length>0;){const se=V.pop();S(se)===Ot.element&&ct(se);const Be=y(se);if(Be)for(let Ee=Be.length-1;Ee>=0;--Ee)V.push(Be[Ee])}},Te=function(B,V){return Qe?B==="patchsrc"?!0:B==="for"&&V!=="label"&&V!=="output":!1},tt=function(B){if(!Qe)return;const V=[B];for(;V.length>0;){const se=V.pop(),_e=S(se);if(_e===Ot.processingInstruction||_e===Ot.comment&&kt(kd,se.data)){try{v(se)}catch{}continue}if(_e===Ot.element){const Ee=se,ot=Xe(D(se));try{Ee.hasAttribute&&Ee.hasAttribute("patchsrc")&&Ee.removeAttribute("patchsrc"),Ee.hasAttribute&&Ee.hasAttribute("for")&&Te("for",ot)&&Ee.removeAttribute("for")}catch{}}const Be=y(se);if(Be)for(let Ee=Be.length-1;Ee>=0;--Ee)V.push(Be[Ee])}},xt=function(B){let V=null,se=null;if(at)B="<remove></remove>"+B;else{const Ee=md(B,/^[\r\n\t ]+/);se=Ee&&Ee[0]}$t==="application/xhtml+xml"&&Vt===mt&&(B='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+B+"</body></html>");const _e=T?j(B):B;if(Vt===mt)try{V=new m().parseFromString(_e,$t)}catch{}if(!V||!V.documentElement){V=ee.createDocument(Vt,"template",null);try{V.documentElement.innerHTML=ia?E:_e}catch{}}const Be=V.body||V.documentElement;return B&&se&&Be.insertBefore(a.createTextNode(se),Be.childNodes[0]||null),Vt===mt?O.call(V,Re?"html":"body")[0]:Re?V.documentElement:Be},Ct=function(B){const V=w?w(B):B.ownerDocument;return L.call(V||B,B,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Zt=function(B){return B=Po(B,q," "),B=Po(B,I," "),B=Po(B,G," "),B},Do=function(B){var V;B.normalize();const se=w?w(B):B.ownerDocument,_e=L.call(se||B,B,u.SHOW_TEXT|u.SHOW_COMMENT|u.SHOW_CDATA_SECTION|u.SHOW_PROCESSING_INSTRUCTION,null);let Be=_e.nextNode();for(;Be;)Be.data=Zt(Be.data),Be=_e.nextNode();const Ee=(V=B.querySelectorAll)===null||V===void 0?void 0:V.call(B,"template");Ee&&Ya(Ee,ot=>{so(ot.content)&&Do(ot.content)})},wr=function(B){const V=A?A(B):null;return typeof V!="string"||Xe(V)!=="form"?!1:typeof B.nodeName!="string"||typeof B.textContent!="string"||typeof B.removeChild!="function"||B.attributes!==_(B)||typeof B.removeAttribute!="function"||typeof B.setAttribute!="function"||typeof B.namespaceURI!="string"||typeof B.insertBefore!="function"||typeof B.hasChildNodes!="function"||B.nodeType!==C(B)||B.childNodes!==y(B)},so=function(B){if(!C||typeof B!="object"||B===null)return!1;try{return C(B)===Ot.documentFragment}catch{return!1}},Eo=function(B){if(!C||typeof B!="object"||B===null)return!1;try{return typeof C(B)=="number"}catch{return!1}};function ca(he,B,V){he.length!==0&&Ya(he,se=>{se.call(t,B,V,zt)})}const ug=function(B,V){return!!(Qe&&B.hasChildNodes()&&!Eo(B.firstElementChild)&&kt(wd,B.textContent)&&kt(wd,B.innerHTML)||Qe&&B.namespaceURI===mt&&O_[V]&&(Eo(B.firstElementChild)||typeof B.textContent=="string"&&kt(F_[V],B.textContent))||B.nodeType===Ot.processingInstruction||Qe&&B.nodeType===Ot.comment&&kt(kd,B.data))},kr=function(B,V){if(B instanceof RegExp)return kt(B,V);if(B instanceof Function){for(var se=arguments.length,_e=new Array(se>2?se-2:0),Be=2;Be<se;Be++)_e[Be-2]=arguments[Be];return!!B(V,..._e)}return!1},pg=function(B,V,se){if(!P[V]&&$c(V)&&kr(Ae.tagNameCheck,V))return!1;if(ut&&!Je[V]){const _e=f(B),Be=y(B);if(Be&&_e){const Ee=Be.length;for(let ot=Ee-1;ot>=0;--ot){const st=B===se?g(Be[ot],!0):Be[ot];_e.insertBefore(st,b(B))}}}return we(B),!0},Lc=function(B,V,se,_e){return B.length===0?V:V===se||V===_e?It(V):V},Mc=function(B,V){return B===V||f(B)!==null?!1:(je&&de(B),!0)},Pc=function(B,V){if(ca($.beforeSanitizeElements,B,null),Mc(B,V))return!0;if(wr(B))return we(B),!0;const se=Xe(D(B));if(X=Lc($.uponSanitizeElement,X,ce,We),ca($.uponSanitizeElement,B,{tagName:se,allowedTags:X}),Mc(B,V))return!0;if(ug(B,se))return we(B),!0;if(P[se]||!(re.tagCheck instanceof Function&&re.tagCheck(se))&&!X[se]){const Be=pg(B,se,V);return Be===!1&&ca($.afterSanitizeElements,B,null),Be}if(S(B)===Ot.element&&!ve(B)||(se==="noscript"||se==="noembed"||se==="noframes")&&kt(z_,B.innerHTML))return we(B),!0;if(Fe&&B.nodeType===Ot.text){const Be=Zt(B.textContent);B.textContent!==Be&&(Lo(t.removed,{element:B.cloneNode()}),B.textContent=Be)}return ca($.afterSanitizeElements,B,null),!1},Rc=function(B,V,se){if(oe[V]||Te(V,B)||Dt&&(V==="id"||V==="name")&&(se in a||se in wt))return!1;const _e=xe[V]||re.attributeCheck instanceof Function&&re.attributeCheck(V,B);return De&&kt(z,V)||Ce&&kt(Y,V)?!0:_e?yt[V]||kt(ae,Po(se,ue,""))||(V==="src"||V==="xlink:href"||V==="href")&&B!=="script"&&bd(se,"data:")===0&&Ze[B]||Ie&&!kt(J,Po(se,ue,""))?!0:!se:$c(B)&&kr(Ae.tagNameCheck,B)&&kr(Ae.attributeNameCheck,V,B)||V==="is"&&Ae.allowCustomizedBuiltInElements&&kr(Ae.tagNameCheck,se)},hg=Ve({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),$c=function(B){return!hg[Mo(B)]&&kt(pe,B)},mg=function(B,V,se,_e){if(T&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!se)switch(h.getAttributeType(B,V)){case"TrustedHTML":return j(_e);case"TrustedScriptURL":return F(_e)}return _e},bg=function(B,V,se,_e){try{se?B.setAttributeNS(se,V,_e):B.setAttribute(V,_e),wr(B)?we(B):hd(t.removed)}catch{nt(V,B)}},zc=function(B){ca($.beforeSanitizeAttributes,B,null);const V=B.attributes;if(!V||wr(B))return;xe=Lc($.uponSanitizeAttribute,xe,Se,be);const se={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:xe,forceKeepAttr:void 0};let _e=V.length;const Be=Xe(B.nodeName);for(;_e--;){const Ee=V[_e],ot=Ee.name,st=Ee.namespaceURI,Mt=Ee.value,Pt=Xe(ot),Rn=Mt;let Lt=ot==="value"?Rn:x_(Rn);if(se.attrName=Pt,se.attrValue=Lt,se.keepAttr=!0,se.forceKeepAttr=void 0,ca($.uponSanitizeAttribute,B,se),Lt=se.attrValue,Ke&&(Pt==="id"||Pt==="name")&&bd(Lt,Ye)!==0&&(nt(ot,B,Ee),Lt=Ye+Lt),Qe&&kt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Lt)){nt(ot,B,Ee);continue}if(Pt==="attributename"&&md(Lt,"href")){nt(ot,B,Ee);continue}if(!se.forceKeepAttr){if(!se.keepAttr){nt(ot,B,Ee);continue}if(!Oe&&kt(I_,Lt)){nt(ot,B,Ee);continue}if(Fe&&(Lt=Zt(Lt)),!Rc(Be,Pt,Lt)){nt(ot,B,Ee);continue}Lt=mg(Be,Pt,st,Lt),Lt!==Rn&&bg(B,ot,st,Lt)}}ca($.afterSanitizeAttributes,B,null)},Sr=function(B){let V=null;const se=Ct(B);for(ca($.beforeSanitizeShadowDOM,B,null);V=se.nextNode();)if(ca($.uponSanitizeShadowNode,V,null),Pc(V,B),zc(V),so(V.content)&&Sr(V.content),S(V)===Ot.element){const _e=x(V);so(_e)&&(Pn(_e),Sr(_e))}ca($.afterSanitizeShadowDOM,B,null)},Pn=function(B){const V=[{node:B,shadow:null}];for(;V.length>0;){const se=V.pop();if(se.shadow){Sr(se.shadow);continue}const _e=se.node,Ee=S(_e)===Ot.element,ot=y(_e);if(ot)for(let st=ot.length-1;st>=0;--st)V.push({node:ot[st],shadow:null});if(Ee){const st=A?A(_e):null;if(typeof st=="string"&&Xe(st)==="template"){const Mt=_e.content;so(Mt)&&V.push({node:Mt,shadow:null})}}if(Ee){const st=x(_e);so(st)&&V.push({node:null,shadow:st},{node:st,shadow:null})}}};return t.sanitize=function(he){let B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},V=null,se=null,_e=null,Be=null;if(ia=!he,ia&&(he="<!-->"),typeof he!="string"&&!Eo(he)&&(he=S_(he),typeof he!="string"))throw Ua("dirty is not a string, aborting");if(!t.isSupported)return he;Ge?(X=We,xe=be):la(B),($.uponSanitizeElement.length>0||$.uponSanitizeAttribute.length>0)&&(X=It(X)),$.uponSanitizeAttribute.length>0&&(xe=It(xe)),t.removed=[];const Ee=je&&typeof he!="string"&&Eo(he);if(Ee){tt(he);const Mt=D(he);if(typeof Mt=="string"){const Pt=Xe(Mt);if(!X[Pt]||P[Pt])throw Me(he),Ua("root node is forbidden and cannot be sanitized in-place")}if(wr(he))throw Me(he),Ua("root node is clobbered and cannot be sanitized in-place");try{Pn(he)}catch(Pt){throw Me(he),Pt}}else if(Eo(he))V=xt("<!---->"),se=V.ownerDocument.importNode(he,!0),se.nodeType===Ot.element&&se.nodeName==="BODY"||se.nodeName==="HTML"?V=se:V.appendChild(se),Pn(se);else{if(!He&&!Fe&&!Re&&he.indexOf("<")===-1)return T&&Ue?j(he):he;if(V=xt(he),!V)return He?null:Ue?E:""}V&&at&&we(V.firstChild);const ot=Ee?he:V;try{const Mt=Ct(ot);for(;_e=Mt.nextNode();)Pc(_e,ot),zc(_e),so(_e.content)&&Sr(_e.content)}catch(Mt){throw Ee&&(Me(he),Ya(t.removed,Pt=>{Pt.element&&de(Pt.element)})),Mt}if(Ee)return Ya(t.removed,Mt=>{Mt.element&&de(Mt.element)}),Fe&&Do(he),he;if(He){if(Fe&&Do(V),Le)for(Be=R.call(V.ownerDocument);V.firstChild;)Be.appendChild(V.firstChild);else Be=V;return(xe.shadowroot||xe.shadowrootmode)&&(Be=H.call(r,Be,!0)),Be}let st=Re?V.outerHTML:V.innerHTML;return Re&&X["!doctype"]&&V.ownerDocument&&V.ownerDocument.doctype&&V.ownerDocument.doctype.name&&kt(R_,V.ownerDocument.doctype.name)&&(st="<!DOCTYPE "+V.ownerDocument.doctype.name+`>
798
- `+st),Fe&&(st=Zt(st)),T&&Ue?j(st):st},t.setConfig=function(){let he=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};la(he),Ge=!0,We=X,be=xe},t.clearConfig=function(){zt=null,Ge=!1,We=null,be=null,T=W,E=""},t.isValidAttribute=function(he,B,V){zt||la({});const se=Xe(he),_e=Xe(B);return Rc(se,_e,V)},t.addHook=function(he,B){typeof B=="function"&&Rt($,he)&&Lo($[he],B)},t.removeHook=function(he,B){if(Rt($,he)){if(B!==void 0){const V=v_($[he],B);return V===-1?void 0:y_($[he],V,1)[0]}return hd($[he])}},t.removeHooks=function(he){Rt($,he)&&($[he]=[])},t.removeAllHooks=function(){$=Ad()},t}var V_=Td();function Bd(e,{onEnd:t,rate:a=.9}={}){if(typeof window>"u"||typeof SpeechSynthesisUtterance>"u"||!("speechSynthesis"in window)){t?.();return}const r=window.speechSynthesis,n=()=>{r.cancel();const i=new SpeechSynthesisUtterance(e),s=r.getVoices().find(c=>c.lang.startsWith("ko"));s&&(i.voice=s),i.rate=a,i.onend=t?function(c){try{t()}catch{}}:null,r.speak(i)};r.getVoices().length>0?n():r.addEventListener("voiceschanged",n,{once:!0})}function Nd(){typeof window<"u"&&"speechSynthesis"in window&&window.speechSynthesis.cancel()}const G_=/^(?:[a-z]+:)?\/\//i;let Dd="";function q_(e){const t=String(e||"").trim();return t?t.replace(/\/+$/,""):""}function Ed(e){Dd=q_(e)}function Yn(){return Dd}function $o(e){const t=String(e||"").trim();if(!t)return"";if(G_.test(t)||t.startsWith("data:")||t.startsWith("blob:"))return t;const a=t.startsWith("/")?t:`/${t}`,r=Yn();return r?`${r}${a}`:a}const jd="__ihab_core_storage_resolvers__";function zo(){return globalThis[jd]??null}function Y_(e){globalThis[jd]=e}let Un=class extends Error{constructor(t){super(`
797
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function h_(e,t){return d_(e)||u_(e,t)||m_(e,t)||p_()}function m_(e,t){if(e){if(typeof e=="string")return cd(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?cd(e,t):void 0}}const dd=Object.entries,ud=Object.setPrototypeOf,b_=Object.isFrozen,g_=Object.getPrototypeOf,f_=Object.getOwnPropertyDescriptor;let bt=Object.freeze,vt=Object.seal,co=Object.create,pd=typeof Reflect<"u"&&Reflect,In=pd.apply,On=pd.construct;bt||(bt=function(t){return t}),vt||(vt=function(t){return t}),In||(In=function(t,a){for(var r=arguments.length,n=new Array(r>2?r-2:0),i=2;i<r;i++)n[i-2]=arguments[i];return t.apply(a,n)}),On||(On=function(t){for(var a=arguments.length,r=new Array(a>1?a-1:0),n=1;n<a;n++)r[n-1]=arguments[n];return new t(...r)});const Ya=pt(Array.prototype.forEach),v_=pt(Array.prototype.lastIndexOf),hd=pt(Array.prototype.pop),Lo=pt(Array.prototype.push),y_=pt(Array.prototype.splice),uo=Array.isArray,Mo=pt(String.prototype.toLowerCase),Fn=pt(String.prototype.toString),md=pt(String.prototype.match),Po=pt(String.prototype.replace),bd=pt(String.prototype.indexOf),x_=pt(String.prototype.trim),C_=pt(Number.prototype.toString),__=pt(Boolean.prototype.toString),gd=typeof BigInt>"u"?null:pt(BigInt.prototype.toString),fd=typeof Symbol>"u"?null:pt(Symbol.prototype.toString),Rt=pt(Object.prototype.hasOwnProperty),Ro=pt(Object.prototype.toString),kt=pt(RegExp.prototype.test),Ua=w_(TypeError);function pt(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var a=arguments.length,r=new Array(a>1?a-1:0),n=1;n<a;n++)r[n-1]=arguments[n];return In(e,t,r)}}function w_(e){return function(){for(var t=arguments.length,a=new Array(t),r=0;r<t;r++)a[r]=arguments[r];return On(e,a)}}function Ve(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Mo;if(ud&&ud(e,null),!uo(t))return e;let r=t.length;for(;r--;){let n=t[r];if(typeof n=="string"){const i=a(n);i!==n&&(b_(t)||(t[r]=i),n=i)}e[n]=!0}return e}function k_(e){for(let t=0;t<e.length;t++)Rt(e,t)||(e[t]=null);return e}function It(e){const t=co(null);for(const r of dd(e)){var a=h_(r,2);const n=a[0],i=a[1];Rt(e,n)&&(uo(i)?t[n]=k_(i):i&&typeof i=="object"&&i.constructor===Object?t[n]=It(i):t[n]=i)}return t}function S_(e){switch(typeof e){case"string":return e;case"number":return C_(e);case"boolean":return __(e);case"bigint":return gd?gd(e):"0";case"symbol":return fd?fd(e):"Symbol()";case"undefined":return Ro(e);case"function":case"object":{if(e===null)return Ro(e);const t=e,a=Xt(t,"toString");if(typeof a=="function"){const r=a(t);return typeof r=="string"?r:Ro(r)}return Ro(e)}default:return Ro(e)}}function Xt(e,t){for(;e!==null;){const r=f_(e,t);if(r){if(r.get)return pt(r.get);if(typeof r.value=="function")return pt(r.value)}e=g_(e)}function a(){return null}return a}function A_(e){try{return kt(e,""),!0}catch{return!1}}const vd=bt(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Wn=bt(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Hn=bt(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),T_=bt(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Vn=bt(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),B_=bt(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),yd=bt(["#text"]),xd=bt(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Gn=bt(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Cd=bt(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Ar=bt(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),N_=vt(/{{[\w\W]*|^[\w\W]*}}/g),D_=vt(/<%[\w\W]*|^[\w\W]*%>/g),E_=vt(/\${[\w\W]*/g),j_=vt(/^data-[\-\w.\u00B7-\uFFFF]+$/),L_=vt(/^aria-[\-\w]+$/),_d=vt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),M_=vt(/^(?:\w+script|data):/i),P_=vt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),R_=vt(/^html$/i),$_=vt(/^[a-z][.\w]*(-[.\w]+)+$/i),wd=vt(/<[/\w!]/g),kd=vt(/<[/\w]/g),z_=vt(/<\/no(script|embed|frames)/i),I_=vt(/\/>/i),Ot={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Sd=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],O_=bt(Ve({},Sd)),F_=(function(){const e={};return Ya(Sd,t=>{e[t]=vt(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),bt(e)})(),W_=function(){return typeof window>"u"?null:window},H_=function(t,a){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let r=null;const n="data-tt-policy-suffix";a&&a.hasAttribute(n)&&(r=a.getAttribute(n));const i="dompurify"+(r?"#"+r:"");try{return t.createPolicy(i,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+i+" could not be created."),null}},Ad=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},La=function(t,a,r,n){return Rt(t,a)&&uo(t[a])?Ve(n.base?It(n.base):{},t[a],n.transform):r},qn=function(t,a,r){const n=Rt(t,a)?t[a]:void 0;return n&&typeof n=="object"?It(n):r()};function Td(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:W_();const t=he=>Td(he);if(t.version="3.4.14",t.removed=[],!e||!e.document||e.document.nodeType!==Ot.document||!e.Element)return t.isSupported=!1,t;let a=e.document;const r=a,n=r.currentScript;e.DocumentFragment;const i=e.HTMLTemplateElement,s=e.Node,c=e.Element,u=e.NodeFilter,d=e.NamedNodeMap;d===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const m=e.DOMParser,h=e.trustedTypes,p=c.prototype,g=Xt(p,"cloneNode"),v=Xt(p,"remove"),b=Xt(p,"nextSibling"),y=Xt(p,"childNodes"),f=Xt(p,"parentNode"),x=Xt(p,"shadowRoot"),_=Xt(p,"attributes"),C=s&&s.prototype?Xt(s.prototype,"nodeType"):null,A=s&&s.prototype?Xt(s.prototype,"nodeName"):null,w=s&&s.prototype?Xt(s.prototype,"ownerDocument"):null,S=function(B){return C?C(B):B.nodeType},N=function(B){return A?A(B):B.nodeName};if(typeof i=="function"){const he=a.createElement("template");he.content&&he.content.ownerDocument&&(a=he.content.ownerDocument)}let T,E="",W,L=!1,k=0;const D=function(){if(k>0)throw Ua('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},j=function(B){D(),k++;try{return T.createHTML(B)}finally{k--}},F=function(B){D(),k++;try{return T.createScriptURL(B)}finally{k--}},ee=function(){return L||(W=H_(h,n),L=!0),W},Z=a,J=Z.implementation,M=Z.createNodeIterator,R=Z.createDocumentFragment,z=Z.getElementsByTagName,H=r.importNode;let $=Ad();t.isSupported=typeof dd=="function"&&typeof f=="function"&&J&&J.createHTMLDocument!==void 0;const q=N_,O=D_,G=E_,I=j_,ne=L_,X=M_,te=P_,pe=$_;let ae=_d,Y=null;const de=Ve({},[...vd,...Wn,...Hn,...Vn,...yd]);let fe=null;const Se=Ve({},[...xd,...Gn,...Cd,...Ar]);let Ae=Object.seal(co(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),P=null,oe=null;const re=Object.seal(co(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Ce=!0,De=!0,Ie=!1,Oe=!0,Fe=!1,Qe=!0,Re=!1,Ge=!1,We=null,be=null,at=!1,He=!1,Le=!1,Ue=!1,Dt=!0,Ke=!1;const Ye="user-content-";let ut=!0,je=!1,rt={},Je=null;const $e=Ve({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let Ze=null;const et=Ve({},["audio","video","img","source","image","track"]);let yt=null;const Et=Ve({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),it="http://www.w3.org/1998/Math/MathML",Ht="http://www.w3.org/2000/svg",mt="http://www.w3.org/1999/xhtml";let Vt=mt,ia=!1,Gt=null;const Ea=Ve({},[it,Ht,mt],Fn),sa=bt(["mi","mo","mn","ms","mtext"]);let Kt=Ve({},sa);const ja=bt(["annotation-xml"]);let jt=Ve({},ja);const Ga=Ve({},["title","style","font","a","script"]);let $t=null;const ya=["application/xhtml+xml","text/html"],qa="text/html";let Xe=null,zt=null;const wt=a.createElement("form"),xa=function(B){return B instanceof RegExp||B instanceof Function},la=function(){let B=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(zt&&zt===B)return;(!B||typeof B!="object")&&(B={}),B=It(B),$t=ya.indexOf(B.PARSER_MEDIA_TYPE)===-1?qa:B.PARSER_MEDIA_TYPE,Xe=$t==="application/xhtml+xml"?Fn:Mo,Y=La(B,"ALLOWED_TAGS",de,{transform:Xe}),fe=La(B,"ALLOWED_ATTR",Se,{transform:Xe}),Gt=La(B,"ALLOWED_NAMESPACES",Ea,{transform:Fn}),yt=La(B,"ADD_URI_SAFE_ATTR",Et,{transform:Xe,base:Et}),Ze=La(B,"ADD_DATA_URI_TAGS",et,{transform:Xe,base:et}),Je=La(B,"FORBID_CONTENTS",$e,{transform:Xe}),P=La(B,"FORBID_TAGS",It({}),{transform:Xe}),oe=La(B,"FORBID_ATTR",It({}),{transform:Xe}),rt=Rt(B,"USE_PROFILES")?B.USE_PROFILES&&typeof B.USE_PROFILES=="object"?It(B.USE_PROFILES):B.USE_PROFILES:!1,Ce=B.ALLOW_ARIA_ATTR!==!1,De=B.ALLOW_DATA_ATTR!==!1,Ie=B.ALLOW_UNKNOWN_PROTOCOLS||!1,Oe=B.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Fe=B.SAFE_FOR_TEMPLATES||!1,Qe=B.SAFE_FOR_XML!==!1,Re=B.WHOLE_DOCUMENT||!1,He=B.RETURN_DOM||!1,Le=B.RETURN_DOM_FRAGMENT||!1,Ue=B.RETURN_TRUSTED_TYPE||!1,at=B.FORCE_BODY||!1,Dt=B.SANITIZE_DOM!==!1,Ke=B.SANITIZE_NAMED_PROPS||!1,ut=B.KEEP_CONTENT!==!1,je=B.IN_PLACE||!1,ae=A_(B.ALLOWED_URI_REGEXP)?B.ALLOWED_URI_REGEXP:_d,Vt=typeof B.NAMESPACE=="string"?B.NAMESPACE:mt,Kt=qn(B,"MATHML_TEXT_INTEGRATION_POINTS",()=>Ve({},sa)),jt=qn(B,"HTML_INTEGRATION_POINTS",()=>Ve({},ja));const V=qn(B,"CUSTOM_ELEMENT_HANDLING",()=>co(null));if(Ae=co(null),Rt(V,"tagNameCheck")&&xa(V.tagNameCheck)&&(Ae.tagNameCheck=V.tagNameCheck),Rt(V,"attributeNameCheck")&&xa(V.attributeNameCheck)&&(Ae.attributeNameCheck=V.attributeNameCheck),Rt(V,"allowCustomizedBuiltInElements")&&typeof V.allowCustomizedBuiltInElements=="boolean"&&(Ae.allowCustomizedBuiltInElements=V.allowCustomizedBuiltInElements),vt(Ae),Fe&&(De=!1),Le&&(He=!0),rt&&(Y=Ve({},yd),fe=co(null),rt.html===!0&&(Ve(Y,vd),Ve(fe,xd)),rt.svg===!0&&(Ve(Y,Wn),Ve(fe,Gn),Ve(fe,Ar)),rt.svgFilters===!0&&(Ve(Y,Hn),Ve(fe,Gn),Ve(fe,Ar)),rt.mathMl===!0&&(Ve(Y,Vn),Ve(fe,Cd),Ve(fe,Ar))),re.tagCheck=null,re.attributeCheck=null,Rt(B,"ADD_TAGS")&&(typeof B.ADD_TAGS=="function"?re.tagCheck=B.ADD_TAGS:uo(B.ADD_TAGS)&&(Y===de&&(Y=It(Y)),Ve(Y,B.ADD_TAGS,Xe))),Rt(B,"ADD_ATTR")&&(typeof B.ADD_ATTR=="function"?re.attributeCheck=B.ADD_ATTR:uo(B.ADD_ATTR)&&(fe===Se&&(fe=It(fe)),Ve(fe,B.ADD_ATTR,Xe))),Rt(B,"ADD_FORBID_CONTENTS")&&uo(B.ADD_FORBID_CONTENTS)&&(Je===$e&&(Je=It(Je)),Ve(Je,B.ADD_FORBID_CONTENTS,Xe)),ut&&(Y["#text"]=!0),Re&&Ve(Y,["html","head","body"]),Y.table&&(Ve(Y,["tbody"]),delete P.tbody),B.TRUSTED_TYPES_POLICY){if(typeof B.TRUSTED_TYPES_POLICY.createHTML!="function")throw Ua('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof B.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Ua('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const le=T;T=B.TRUSTED_TYPES_POLICY;try{E=j("")}catch(_e){throw T=le,_e}}else B.TRUSTED_TYPES_POLICY===null?(T=void 0,E=""):(T===void 0&&(T=ee()),T&&typeof E=="string"&&(E=j("")));bt&&bt(B),zt=B},ie=Ve({},[...Wn,...Hn,...T_]),ge=Ve({},[...Vn,...B_]),ve=function(B,V,le){return V.namespaceURI===mt?B==="svg":V.namespaceURI===it?B==="svg"&&(le==="annotation-xml"||Kt[le]):!!ie[B]},U=function(B,V,le){return V.namespaceURI===mt?B==="math":V.namespaceURI===Ht?B==="math"&&jt[le]:!!ge[B]},se=function(B,V,le){return V.namespaceURI===Ht&&!jt[le]||V.namespaceURI===it&&!Kt[le]?!1:!ge[B]&&(Ga[B]||!ie[B])},ye=function(B){let V=f(B);(!V||!V.tagName)&&(V={namespaceURI:Vt,tagName:"template"});const le=Mo(B.tagName),_e=Mo(V.tagName);return Gt[B.namespaceURI]?B.namespaceURI===Ht?ve(le,V,_e):B.namespaceURI===it?U(le,V,_e):B.namespaceURI===mt?se(le,V,_e):!!($t==="application/xhtml+xml"&&Gt[B.namespaceURI]):!1},we=function(B){Lo(t.removed,{element:B});try{f(B).removeChild(B)}catch{if(v(B),!f(B))throw Ua("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},ke=function(B,V,le){try{B.removeAttributeNode(V)}catch{try{B.removeAttribute(le)}catch{}}},Me=function(B){ue(B);const V=y(B);if(V){const _e=[];Ya(V,Be=>{Lo(_e,Be)}),Ya(_e,Be=>{try{v(Be)}catch{}})}const le=_(B);if(le)for(let _e=le.length-1;_e>=0;--_e){const Be=le[_e],Ee=Be&&Be.name;typeof Ee=="string"&&ke(B,Be,Ee)}},nt=function(B,V,le){if(!le)try{le=V.getAttributeNode(B)}catch{le=null}Lo(t.removed,{attribute:le||null,from:V});try{le?V.removeAttributeNode(le):V.removeAttribute(B)}catch{try{V.removeAttribute(B)}catch{}}if(B==="is")if(He||Le)try{we(V)}catch{}else try{V.setAttribute(B,"")}catch{}},ct=function(B){const V=_(B);if(V)for(let le=V.length-1;le>=0;--le){const _e=V[le],Be=_e&&_e.name;typeof Be!="string"||fe[Xe(Be)]||ke(B,_e,Be)}},ue=function(B){const V=[B];for(;V.length>0;){const le=V.pop();S(le)===Ot.element&&ct(le);const Be=y(le);if(Be)for(let Ee=Be.length-1;Ee>=0;--Ee)V.push(Be[Ee])}},Te=function(B,V){return Qe?B==="patchsrc"?!0:B==="for"&&V!=="label"&&V!=="output":!1},tt=function(B){if(!Qe)return;const V=[B];for(;V.length>0;){const le=V.pop(),_e=S(le);if(_e===Ot.processingInstruction||_e===Ot.comment&&kt(kd,le.data)){try{v(le)}catch{}continue}if(_e===Ot.element){const Ee=le,ot=Xe(N(le));try{Ee.hasAttribute&&Ee.hasAttribute("patchsrc")&&Ee.removeAttribute("patchsrc"),Ee.hasAttribute&&Ee.hasAttribute("for")&&Te("for",ot)&&Ee.removeAttribute("for")}catch{}}const Be=y(le);if(Be)for(let Ee=Be.length-1;Ee>=0;--Ee)V.push(Be[Ee])}},xt=function(B){let V=null,le=null;if(at)B="<remove></remove>"+B;else{const Ee=md(B,/^[\r\n\t ]+/);le=Ee&&Ee[0]}$t==="application/xhtml+xml"&&Vt===mt&&(B='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+B+"</body></html>");const _e=T?j(B):B;if(Vt===mt)try{V=new m().parseFromString(_e,$t)}catch{}if(!V||!V.documentElement){V=J.createDocument(Vt,"template",null);try{V.documentElement.innerHTML=ia?E:_e}catch{}}const Be=V.body||V.documentElement;return B&&le&&Be.insertBefore(a.createTextNode(le),Be.childNodes[0]||null),Vt===mt?z.call(V,Re?"html":"body")[0]:Re?V.documentElement:Be},Ct=function(B){const V=w?w(B):B.ownerDocument;return M.call(V||B,B,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},Zt=function(B){return B=Po(B,q," "),B=Po(B,O," "),B=Po(B,G," "),B},Do=function(B){var V;B.normalize();const le=w?w(B):B.ownerDocument,_e=M.call(le||B,B,u.SHOW_TEXT|u.SHOW_COMMENT|u.SHOW_CDATA_SECTION|u.SHOW_PROCESSING_INSTRUCTION,null);let Be=_e.nextNode();for(;Be;)Be.data=Zt(Be.data),Be=_e.nextNode();const Ee=(V=B.querySelectorAll)===null||V===void 0?void 0:V.call(B,"template");Ee&&Ya(Ee,ot=>{so(ot.content)&&Do(ot.content)})},wr=function(B){const V=A?A(B):null;return typeof V!="string"||Xe(V)!=="form"?!1:typeof B.nodeName!="string"||typeof B.textContent!="string"||typeof B.removeChild!="function"||B.attributes!==_(B)||typeof B.removeAttribute!="function"||typeof B.setAttribute!="function"||typeof B.namespaceURI!="string"||typeof B.insertBefore!="function"||typeof B.hasChildNodes!="function"||B.nodeType!==C(B)||B.childNodes!==y(B)},so=function(B){if(!C||typeof B!="object"||B===null)return!1;try{return C(B)===Ot.documentFragment}catch{return!1}},Eo=function(B){if(!C||typeof B!="object"||B===null)return!1;try{return typeof C(B)=="number"}catch{return!1}};function ca(he,B,V){he.length!==0&&Ya(he,le=>{le.call(t,B,V,zt)})}const ug=function(B,V){return!!(Qe&&B.hasChildNodes()&&!Eo(B.firstElementChild)&&kt(wd,B.textContent)&&kt(wd,B.innerHTML)||Qe&&B.namespaceURI===mt&&O_[V]&&(Eo(B.firstElementChild)||typeof B.textContent=="string"&&kt(F_[V],B.textContent))||B.nodeType===Ot.processingInstruction||Qe&&B.nodeType===Ot.comment&&kt(kd,B.data))},kr=function(B,V){if(B instanceof RegExp)return kt(B,V);if(B instanceof Function){for(var le=arguments.length,_e=new Array(le>2?le-2:0),Be=2;Be<le;Be++)_e[Be-2]=arguments[Be];return!!B(V,..._e)}return!1},pg=function(B,V,le){if(!P[V]&&$c(V)&&kr(Ae.tagNameCheck,V))return!1;if(ut&&!Je[V]){const _e=f(B),Be=y(B);if(Be&&_e){const Ee=Be.length;for(let ot=Ee-1;ot>=0;--ot){const st=B===le?g(Be[ot],!0):Be[ot];_e.insertBefore(st,b(B))}}}return we(B),!0},Lc=function(B,V,le,_e){return B.length===0?V:V===le||V===_e?It(V):V},Mc=function(B,V){return B===V||f(B)!==null?!1:(je&&ue(B),!0)},Pc=function(B,V){if(ca($.beforeSanitizeElements,B,null),Mc(B,V))return!0;if(wr(B))return we(B),!0;const le=Xe(N(B));if(Y=Lc($.uponSanitizeElement,Y,de,We),ca($.uponSanitizeElement,B,{tagName:le,allowedTags:Y}),Mc(B,V))return!0;if(ug(B,le))return we(B),!0;if(P[le]||!(re.tagCheck instanceof Function&&re.tagCheck(le))&&!Y[le]){const Be=pg(B,le,V);return Be===!1&&ca($.afterSanitizeElements,B,null),Be}if(S(B)===Ot.element&&!ye(B)||(le==="noscript"||le==="noembed"||le==="noframes")&&kt(z_,B.innerHTML))return we(B),!0;if(Fe&&B.nodeType===Ot.text){const Be=Zt(B.textContent);B.textContent!==Be&&(Lo(t.removed,{element:B.cloneNode()}),B.textContent=Be)}return ca($.afterSanitizeElements,B,null),!1},Rc=function(B,V,le){if(oe[V]||Te(V,B)||Dt&&(V==="id"||V==="name")&&(le in a||le in wt))return!1;const _e=fe[V]||re.attributeCheck instanceof Function&&re.attributeCheck(V,B);return De&&kt(I,V)||Ce&&kt(ne,V)?!0:_e?yt[V]||kt(ae,Po(le,te,""))||(V==="src"||V==="xlink:href"||V==="href")&&B!=="script"&&bd(le,"data:")===0&&Ze[B]||Ie&&!kt(X,Po(le,te,""))?!0:!le:$c(B)&&kr(Ae.tagNameCheck,B)&&kr(Ae.attributeNameCheck,V,B)||V==="is"&&Ae.allowCustomizedBuiltInElements&&kr(Ae.tagNameCheck,le)},hg=Ve({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),$c=function(B){return!hg[Mo(B)]&&kt(pe,B)},mg=function(B,V,le,_e){if(T&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!le)switch(h.getAttributeType(B,V)){case"TrustedHTML":return j(_e);case"TrustedScriptURL":return F(_e)}return _e},bg=function(B,V,le,_e){try{le?B.setAttributeNS(le,V,_e):B.setAttribute(V,_e),wr(B)?we(B):hd(t.removed)}catch{nt(V,B)}},zc=function(B){ca($.beforeSanitizeAttributes,B,null);const V=B.attributes;if(!V||wr(B))return;fe=Lc($.uponSanitizeAttribute,fe,Se,be);const le={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:fe,forceKeepAttr:void 0};let _e=V.length;const Be=Xe(B.nodeName);for(;_e--;){const Ee=V[_e],ot=Ee.name,st=Ee.namespaceURI,Mt=Ee.value,Pt=Xe(ot),Rn=Mt;let Lt=ot==="value"?Rn:x_(Rn);if(le.attrName=Pt,le.attrValue=Lt,le.keepAttr=!0,le.forceKeepAttr=void 0,ca($.uponSanitizeAttribute,B,le),Lt=le.attrValue,Ke&&(Pt==="id"||Pt==="name")&&bd(Lt,Ye)!==0&&(nt(ot,B,Ee),Lt=Ye+Lt),Qe&&kt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Lt)){nt(ot,B,Ee);continue}if(Pt==="attributename"&&md(Lt,"href")){nt(ot,B,Ee);continue}if(!le.forceKeepAttr){if(!le.keepAttr){nt(ot,B,Ee);continue}if(!Oe&&kt(I_,Lt)){nt(ot,B,Ee);continue}if(Fe&&(Lt=Zt(Lt)),!Rc(Be,Pt,Lt)){nt(ot,B,Ee);continue}Lt=mg(Be,Pt,st,Lt),Lt!==Rn&&bg(B,ot,st,Lt)}}ca($.afterSanitizeAttributes,B,null)},Sr=function(B){let V=null;const le=Ct(B);for(ca($.beforeSanitizeShadowDOM,B,null);V=le.nextNode();)if(ca($.uponSanitizeShadowNode,V,null),Pc(V,B),zc(V),so(V.content)&&Sr(V.content),S(V)===Ot.element){const _e=x(V);so(_e)&&(Pn(_e),Sr(_e))}ca($.afterSanitizeShadowDOM,B,null)},Pn=function(B){const V=[{node:B,shadow:null}];for(;V.length>0;){const le=V.pop();if(le.shadow){Sr(le.shadow);continue}const _e=le.node,Ee=S(_e)===Ot.element,ot=y(_e);if(ot)for(let st=ot.length-1;st>=0;--st)V.push({node:ot[st],shadow:null});if(Ee){const st=A?A(_e):null;if(typeof st=="string"&&Xe(st)==="template"){const Mt=_e.content;so(Mt)&&V.push({node:Mt,shadow:null})}}if(Ee){const st=x(_e);so(st)&&V.push({node:null,shadow:st},{node:st,shadow:null})}}};return t.sanitize=function(he){let B=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},V=null,le=null,_e=null,Be=null;if(ia=!he,ia&&(he="<!-->"),typeof he!="string"&&!Eo(he)&&(he=S_(he),typeof he!="string"))throw Ua("dirty is not a string, aborting");if(!t.isSupported)return he;Ge?(Y=We,fe=be):la(B),($.uponSanitizeElement.length>0||$.uponSanitizeAttribute.length>0)&&(Y=It(Y)),$.uponSanitizeAttribute.length>0&&(fe=It(fe)),t.removed=[];const Ee=je&&typeof he!="string"&&Eo(he);if(Ee){tt(he);const Mt=N(he);if(typeof Mt=="string"){const Pt=Xe(Mt);if(!Y[Pt]||P[Pt])throw Me(he),Ua("root node is forbidden and cannot be sanitized in-place")}if(wr(he))throw Me(he),Ua("root node is clobbered and cannot be sanitized in-place");try{Pn(he)}catch(Pt){throw Me(he),Pt}}else if(Eo(he))V=xt("<!---->"),le=V.ownerDocument.importNode(he,!0),le.nodeType===Ot.element&&le.nodeName==="BODY"||le.nodeName==="HTML"?V=le:V.appendChild(le),Pn(le);else{if(!He&&!Fe&&!Re&&he.indexOf("<")===-1)return T&&Ue?j(he):he;if(V=xt(he),!V)return He?null:Ue?E:""}V&&at&&we(V.firstChild);const ot=Ee?he:V;try{const Mt=Ct(ot);for(;_e=Mt.nextNode();)Pc(_e,ot),zc(_e),so(_e.content)&&Sr(_e.content)}catch(Mt){throw Ee&&(Me(he),Ya(t.removed,Pt=>{Pt.element&&ue(Pt.element)})),Mt}if(Ee)return Ya(t.removed,Mt=>{Mt.element&&ue(Mt.element)}),Fe&&Do(he),he;if(He){if(Fe&&Do(V),Le)for(Be=R.call(V.ownerDocument);V.firstChild;)Be.appendChild(V.firstChild);else Be=V;return(fe.shadowroot||fe.shadowrootmode)&&(Be=H.call(r,Be,!0)),Be}let st=Re?V.outerHTML:V.innerHTML;return Re&&Y["!doctype"]&&V.ownerDocument&&V.ownerDocument.doctype&&V.ownerDocument.doctype.name&&kt(R_,V.ownerDocument.doctype.name)&&(st="<!DOCTYPE "+V.ownerDocument.doctype.name+`>
798
+ `+st),Fe&&(st=Zt(st)),T&&Ue?j(st):st},t.setConfig=function(){let he=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};la(he),Ge=!0,We=Y,be=fe},t.clearConfig=function(){zt=null,Ge=!1,We=null,be=null,T=W,E=""},t.isValidAttribute=function(he,B,V){zt||la({});const le=Xe(he),_e=Xe(B);return Rc(le,_e,V)},t.addHook=function(he,B){typeof B=="function"&&Rt($,he)&&Lo($[he],B)},t.removeHook=function(he,B){if(Rt($,he)){if(B!==void 0){const V=v_($[he],B);return V===-1?void 0:y_($[he],V,1)[0]}return hd($[he])}},t.removeHooks=function(he){Rt($,he)&&($[he]=[])},t.removeAllHooks=function(){$=Ad()},t}var V_=Td();function Bd(e,{onEnd:t,rate:a=.9}={}){if(typeof window>"u"||typeof SpeechSynthesisUtterance>"u"||!("speechSynthesis"in window)){t?.();return}const r=window.speechSynthesis,n=()=>{r.cancel();const i=new SpeechSynthesisUtterance(e),s=r.getVoices().find(c=>c.lang.startsWith("ko"));s&&(i.voice=s),i.rate=a,i.onend=t?function(c){try{t()}catch{}}:null,r.speak(i)};r.getVoices().length>0?n():r.addEventListener("voiceschanged",n,{once:!0})}function Nd(){typeof window<"u"&&"speechSynthesis"in window&&window.speechSynthesis.cancel()}const G_=/^(?:[a-z]+:)?\/\//i;let Dd="";function q_(e){const t=String(e||"").trim();return t?t.replace(/\/+$/,""):""}function Ed(e){Dd=q_(e)}function Yn(){return Dd}function $o(e){const t=String(e||"").trim();if(!t)return"";if(G_.test(t)||t.startsWith("data:")||t.startsWith("blob:"))return t;const a=t.startsWith("/")?t:`/${t}`,r=Yn();return r?`${r}${a}`:a}const jd="__ihab_core_storage_resolvers__";function zo(){return globalThis[jd]??null}function Y_(e){globalThis[jd]=e}let Un=class extends Error{constructor(t){super(`
799
799
  [ihabdevteam-core] ${t}() \uD638\uCD9C \uC2E4\uD328 \u2014 configureStorage()\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.
800
800
 
801
801
  \uC571 \uCD08\uAE30\uD654 \uC2DC\uC810(main.tsx \uB4F1)\uC5D0 \uC544\uB798\uC640 \uAC19\uC774 \uD55C \uBC88 \uD638\uCD9C\uD558\uC138\uC694:
@@ -814,22 +814,22 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
814
814
  \uC124\uCE58 \uBA85\uB839\uC5B4 (\uC2A4\uD1A0\uB9AC\uC9C0 SDK \uBBF8\uC124\uCE58 \uC2DC):
815
815
  npm install @supabase/supabase-js
816
816
  pnpm add @supabase/supabase-js
817
- `),this.name="StorageNotConfiguredError"}};function Kn(e){Y_(e)}function Tr(e,t){if(!e)return null;const a=zo();return a?.resolvePath?a.resolvePath(e,t):t?`${t}/${e}.mp3`:null}async function Zn(e){if(!e)return!1;const t=zo();if(!t)throw new Un("fileExists");if(t.exists)return t.exists(e);try{return await t.resolveUrl(e)!==null}catch{return!1}}async function Io(e){if(!e)return null;const t=zo();if(!t)throw new Un("getSignedOrPublicUrl");try{return await t.resolveUrl(e)}catch{return null}}async function Br(e){const t=zo();if(!t)throw new Un("downloadSound");return t.download(e)}function Xn(){return zo()?.noiseBaseUrl??"/sounds/noise"}const Qn="__ihab_core_tts_config__";function Ld(e){globalThis[Qn]=e}function Oo(){return globalThis[Qn]?.urlResolver??null}function Jn(){return globalThis[Qn]?.fallbackUrlResolver??null}const U_=new Map;function Md(){U_.clear()}const Pd="__ihab_core_pronunciation_resolver__";function Rd(e){globalThis[Pd]=e}function ei(){return globalThis[Pd]??null}let Fo=null;const $d=new WeakMap;function K_(){if(Fo)return Fo;try{const e=window.AudioContext||window.webkitAudioContext;return e?(Fo=new e,Fo):null}catch{return null}}function Wo(){try{Fo?.resume()}catch{}}function Ho(e){if(!e)return null;const t=$d.get(e);if(t)return t;const a=K_();if(!a)return null;try{const r=a.createMediaElementSource(e),n=a.createAnalyser();return n.fftSize=1024,n.smoothingTimeConstant=.6,r.connect(n),r.connect(a.destination),$d.set(e,n),n}catch{return null}}function ti(e,t){e.getFloatTimeDomainData(t);let a=0;for(let r=0;r<t.length;r++){const n=t[r];a+=n*n}return Math.sqrt(a/t.length)}const zd="__ihab_core_image_config__";function Id(e){globalThis[zd]=e}function Ma(){return globalThis[zd]??null}const Vo="word_image_existence_map_v1";let da=null;const Nr=new Map;function Go(){if(da)return da;try{const e=typeof localStorage<"u"?localStorage.getItem(Vo):null;da=e?JSON.parse(e):{}}catch{da={}}return da}let ai=null;function Z_(){ai||(ai=setTimeout(()=>{ai=null;try{typeof localStorage<"u"&&da&&localStorage.setItem(Vo,JSON.stringify(da))}catch{}},200))}function Dr(e,t){return`${e}_${t??1}`}async function qo(e,t){const a=Go(),r=Dr(e,t);if(r in a)return a[r];if(Nr.has(r))return Nr.get(r);const n=Ma();if(!n)return!1;const i=n(e,t);if(!i)return!1;const s=fetch(i,{method:"HEAD",signal:AbortSignal.timeout(8e3)}).then(c=>c.ok).catch(()=>!1).then(c=>(a[r]=c,Z_(),Nr.delete(r),c));return Nr.set(r,s),s}function oi(e,t){const a=Go(),r=Dr(e,t);return r in a?a[r]:void 0}async function Od(e,t={}){const{force:a=!1,concurrency:r=16,onProgress:n}=t,i=Go(),s=a?Array.from(new Set(e)):Array.from(new Set(e)).filter(u=>!(Dr(u)in i));let c=0;if(s.length>0){let u=0;const d=Array.from({length:Math.min(r,s.length)},async()=>{for(;u<s.length;){const m=u++,h=s[m],p=Dr(h);if(!a&&p in i){c++,n?.(c,s.length);continue}try{await qo(h)}catch{}c++,n?.(c,s.length)}});await Promise.all(d)}try{typeof localStorage<"u"&&da&&localStorage.setItem(Vo,JSON.stringify(da))}catch{}return{checked:s.length,cached:Object.keys(i).length,total:e.length}}function Er(){const e=Go(),t=Object.values(e);return t.length===0?null:{total:t.length,exists:t.filter(Boolean).length}}function Fd(e){const t=Go();Object.assign(t,e);try{typeof localStorage<"u"&&localStorage.setItem(Vo,JSON.stringify(t))}catch{}}function ri(){da={};try{typeof localStorage<"u"&&localStorage.removeItem(Vo)}catch{}}const qe=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],dt=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],gt=["","\u3131","\u3132","\u3133","\u3134","\u3135","\u3136","\u3137","\u3139","\u313A","\u313B","\u313C","\u313D","\u313E","\u313F","\u3140","\u3141","\u3142","\u3144","\u3145","\u3146","\u3147","\u3148","\u314A","\u314B","\u314C","\u314D","\u314E"];function Ne(e){if(!e)return null;const t=e.charCodeAt(0)-44032;return t<0||t>=11172?null:{cho:Math.floor(t/588),jung:Math.floor(t%588/28),jong:t%28}}function ni(){const e=new Map;return t=>{let a=e.get(t);return a||(a=[...t].map(r=>Ne(r)),e.set(t,a)),a}}function ua(e,t,a=0){return String.fromCharCode(44032+(e*21+t)*28+a)}function ii(e,t){if(!e||!t||e===t||e.length!==t.length)return"random";let a=0,r=null;for(let n=0;n<e.length;n++){const i=Ne(e[n]),s=Ne(t[n]);if(!i||!s)return"random";if(i.cho===s.cho&&i.jung===s.jung&&i.jong===s.jong)continue;a++;const c=i.cho!==s.cho,u=i.jung!==s.jung,d=i.jong!==s.jong;(c?1:0)+(u?1:0)+(d?1:0)>1?r="multi":c?r="cho":u?r="jung":r="jong"}return a!==1?"random":r==="cho"?"cho":r==="jung"?"jung":r==="jong"?"jong":"random"}function si(e){const t=Ne(e[0]||"");return t?qe[t.cho]:""}function li(e){return[...e].map(t=>{const a=Ne(t);return a?qe[a.cho]:t}).join("")}function ci(e){return!!e&&[...e].every(t=>qe.includes(t))}function Wd(e,t){return t?ci(t)?li(e).includes(t):e.toLowerCase().includes(t.toLowerCase()):!0}function po(e,t){if(!t)return!0;const a=[...t],r=c=>qe.includes(c),n=c=>dt.includes(c),i=a.map(c=>r(c)?"cho":n(c)?"jung":Ne(c)?"syl":"other");if(i.includes("other"))return e.includes(t);const s=[...e];for(let c=0;c+a.length<=s.length;c++){let u=!0;for(let d=0;d<a.length;d++){const m=s[c+d],h=i[d];if(h==="cho"){if(si(m)!==a[d]){u=!1;break}}else if(h==="jung"){const p=Ne(m);if(!p||dt[p.jung]!==a[d]){u=!1;break}}else{const p=Ne(a[d]);if(p&&p.jong===0){const g=Ne(m);if(!g||g.cho!==p.cho||g.jung!==p.jung){u=!1;break}}else if(m!==a[d]){u=!1;break}}}if(u)return!0}return!1}const ho={3:["\u3131","\u3145"],5:["\u3134","\u3148"],6:["\u3134","\u314E"],9:["\u3139","\u3131"],10:["\u3139","\u3141"],11:["\u3139","\u3142"],12:["\u3139","\u3145"],13:["\u3139","\u314C"],14:["\u3139","\u314D"],15:["\u3139","\u314E"],18:["\u3142","\u3145"]},Hd=Object.fromEntries(Object.entries(ho).map(([e,t])=>[t.join(""),gt[Number(e)]]));function X_(e,t){if(!e||!t)return!1;for(const a of e){const r=Ne(a);if(r){if(qe[r.cho]===t)return!0;if(r.jong>0){if(gt[r.jong]===t)return!0;const n=ho[r.jong];if(n&&n.includes(t))return!0}}}return!1}function Vd(e,t){if(!e||!t)return!1;for(const a of e){const r=Ne(a);if(r&&qe[r.cho]===t)return!0}return!1}function Gd(e,t){if(!e||!t)return!1;for(const a of e){const r=Ne(a);if(r&&dt[r.jung]===t)return!0}return!1}function qd(e,t){if(!e||!t)return!1;for(const a of e){const r=Ne(a);if(!r||r.jong<=0)continue;if(gt[r.jong]===t)return!0;const n=ho[r.jong];if(n&&n.includes(t))return!0}return!1}function mo(e){if(!e)return 0;let t=0;for(const a of e)Ne(a)&&t++;return t}function di(e){if(!e)return!1;let t=!1;for(const a of e){const r=Ne(a);if(r&&(t=!0,r.jong>0))return!1}return t}function Q_(e,t){if(e.jong<=0)return!1;if(t.includes(gt[e.jong]))return!0;const a=ho[e.jong];return!!a&&a.some(r=>t.includes(r))}function ui(e,t,a){if(!e)return!1;const r=[...e],n=i=>{const s=Ne(r[i]);if(!s||t.cho&&!t.cho.includes(qe[s.cho])||t.jung&&!t.jung.includes(dt[s.jung]))return!1;if(t.jongNone){if(s.jong>0)return!1}else if(t.jong&&!Q_(s,t.jong))return!1;return!0};if(a==="head")return n(0);if(a==="tail")return n(r.length-1);if(a==="mid"){for(let i=1;i<r.length-1;i++)if(n(i))return!0;return!1}for(let i=0;i<r.length;i++)if(n(i))return!0;return!1}function pi(e){return e.includes(",")||e.includes("_")}function Yd(e){if(e==="")return[{kind:"any"}];if(e.includes("_")){const t=[...e];if(t.length>4)return[{kind:"invalid"}];const a=t[0]??"_",r=t[1]??"_";let n=t.slice(2).join("");if(n.length===2){const i=Hd[n];if(!i)return[{kind:"invalid"}];n=i}return[{kind:"template",cho:a,jung:r,jong:n||"_"}]}return[...e].map(t=>Ne(t)?{kind:"syllable",ch:t}:qe.includes(t)?{kind:"cho",jamo:t}:dt.includes(t)?{kind:"jung",jamo:t}:{kind:"invalid"})}function J_(e,t){switch(t.kind){case"any":return!0;case"syllable":{const a=Ne(t.ch);if(!a)return e===t.ch;if(a.jong===0){const r=Ne(e);return!!r&&r.cho===a.cho&&r.jung===a.jung}return e===t.ch}case"cho":{const a=Ne(e);return!!a&&qe[a.cho]===t.jamo}case"jung":{const a=Ne(e);return!!a&&dt[a.jung]===t.jamo}case"template":{const a=Ne(e);return!(!a||t.cho!=="_"&&qe[a.cho]!==t.cho||t.jung!=="_"&&dt[a.jung]!==t.jung||t.jong!=="_"&&gt[a.jong]!==t.jong)}case"invalid":return!1}}function hi(e,t){const a=t.split(",").flatMap(n=>Yd(n.trim()));if(a.length===0)return!0;const r=[...e];if(r.length<a.length)return!1;for(let n=0;n+a.length<=r.length;n++)if(a.every((i,s)=>J_(r[n+s],i)))return!0;return!1}function Ud(e){const t=e.split(",").flatMap(i=>Yd(i.trim())),a=new Set,r=new Set,n=new Set;for(const i of t)switch(i.kind){case"cho":a.add(i.jamo);break;case"jung":r.add(i.jamo);break;case"template":i.cho!=="_"&&a.add(i.cho),i.jung!=="_"&&r.add(i.jung),i.jong!=="_"&&n.add(i.jong);break;case"syllable":{const s=Ne(i.ch);s&&(a.add(qe[s.cho]),r.add(dt[s.jung]),s.jong!==0&&n.add(gt[s.jong]));break}}return a.size===0&&r.size===0&&n.size===0?null:{cho:a.size?[...a]:null,jung:r.size?[...r]:null,jong:n.size?[...n]:null}}function ew(e){return!!Ne(e)||qe.includes(e)||dt.includes(e)}function Kd(e){const t=e.trim();if(!t)return{ok:!0};for(const a of t.split(",")){const r=a.trim();if(r!==""){if(r.includes("_")){const n=[...r];if(n.length>4)return{ok:!1};const i=n[0],s=n[1],c=n.slice(2).join(""),u=i===void 0||i==="_"||qe.includes(i),d=s===void 0||s==="_"||dt.includes(s),m=c===""||c==="_"||gt.filter(Boolean).includes(c)||!!Hd[c];if(u&&d&&m)continue;return{ok:!1}}if(![...r].every(ew))return{ok:!1}}}return{ok:!0}}const tw={cho:qe.length,jung:dt.length,jong:gt.length};function aw(e,t,a,r,n=1/0){if(!e||a<1)return[];const i=[...e].map(h=>Ne(h));if(i.some(h=>!h))return[];const s=i,c=s.length;if(a>c)return[];const u=tw[t],d=new Set,m=[];(function h(p,g){if(g.length===a){m.push([...g]);return}for(let v=p;v<c;v++)g.push(v),h(v+1,g),g.pop()})(0,[]);for(const h of m)if((function p(g,v){if(d.size>=n)return;if(g===h.length){const f=v.map(x=>ua(x.cho,x.jung,x.jong)).join("");f!==e&&r.has(f)&&d.add(f);return}const b=h[g],y=s[b][t];for(let f=0;f<u;f++){if(f===y)continue;const x=v.slice();if(x[b]={...v[b],[t]:f},p(g+1,x),d.size>=n)return}})(0,s),d.size>=n)break;return[...d]}function ow(e,t){if(!e||!t||e.length!==t.length)return-1;let a=0;for(let r=0;r<e.length;r++){const n=Ne(e[r]),i=Ne(t[r]);if(!n||!i)return-1;n.cho!==i.cho&&a++,n.jung!==i.jung&&a++,n.jong!==i.jong&&a++}return a}function Zd(e,t){const a=t.trim();if(!a||!/[^\s,_]/.test(a))return e;if(pi(a))return e.filter(s=>hi(s.word,a));const r=e.filter(s=>po(s.word,a)||po(s.pronunciation??"",a)),n=[...a].length,i=s=>!!s&&po(s.slice(0,n),a);return r.map(s=>({w:s,rank:i(s.word)||i(s.pronunciation??"")?0:1})).sort((s,c)=>s.rank-c.rank).map(s=>s.w)}const mi="word_pair_index_v2",bi="word_pair_index_sig_v2";let pa=null,Yo=null;function Xd(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(mi),t=localStorage.getItem(bi);return!e||!t?null:{index:JSON.parse(e),sig:t}}catch{return null}}function rw(e,t){try{if(typeof localStorage>"u")return;localStorage.setItem(mi,JSON.stringify(e)),localStorage.setItem(bi,t)}catch{}}function nw(e){const t=e.map(r=>`${r.word}|${r.pron??""}`).sort();let a=0;for(const r of t)for(let n=0;n<r.length;n++)a=(a<<5)-a+r.charCodeAt(n)|0;return`${t.length}-${a}`}async function iw(e,t){const a=new Set,r=[];for(const d of e){if(!d.word||a.has(d.word))continue;const m=d.pron||d.word,h=Array.from(m).map(Ne);h.some(p=>p===null)||h.length===Array.from(d.word).length&&(a.add(d.word),r.push({word:d.word,syls:h}))}const n={},i=r.length,s=new Map;for(const d of r){const m=d.syls.length;s.has(m)||s.set(m,[]),s.get(m).push(d)}let c=0;const u=["cho","jung","jong"];for(const d of s.values()){const m=d[0].syls.length;for(let h=0;h<m;h++)for(const p of u){const g=new Map;for(const v of d){let b="";for(let f=0;f<m;f++){f>0&&(b+="~");const x=v.syls[f];f===h?p==="cho"?b+=`*:${x.jung}:${x.jong}`:p==="jung"?b+=`${x.cho}:*:${x.jong}`:b+=`${x.cho}:${x.jung}:*`:b+=`${x.cho}:${x.jung}:${x.jong}`}let y=g.get(b);y||(y=[],g.set(b,y)),y.push(v)}for(const v of g.values())if(!(v.length<2))for(let b=0;b<v.length;b++){const y=v[b];for(let f=b+1;f<v.length;f++){const x=v[f];y.syls[h][p]!==x.syls[h][p]&&(n[y.word]||(n[y.word]={cho:[],jung:[],jong:[]}),n[x.word]||(n[x.word]={cho:[],jung:[],jong:[]}),n[y.word][p].push(x.word),n[x.word][p].push(y.word))}}}c+=d.length,t?.(c,i),await new Promise(h=>setTimeout(h,0))}return i>0&&t?.(i,i),n}async function Qd(e,t={}){const a=nw(e);if(!t.force){if(pa&&Yo===a)return pa;const n=Xd();if(n&&n.sig===a)return pa=n.index,Yo=a,pa}const r=await iw(e,t.onProgress);return pa=r,Yo=a,rw(r,a),r}function Ka(){if(pa)return pa;const e=Xd();return e?(pa=e.index,Yo=e.sig,pa):null}function gi(){pa=null,Yo=null;try{typeof localStorage<"u"&&(localStorage.removeItem(mi),localStorage.removeItem(bi))}catch{}}const fi={cho:qe,jung:dt,jong:gt},ft=e=>Array.isArray(e)?e.length>0:!!e;function Uo(e,t){if(e.length!==t.length)return!1;for(let a=0;a<e.length;a++){const r=e[a],n=t[a];if(!(!r||!n)&&(r.cho!==n.cho&&qe[r.cho]==="\u3147"!=(qe[n.cho]==="\u3147")||r.jong!==n.jong&&r.jong===0!=(n.jong===0)))return!0}return!1}function vi(e,t,a){const r=a.pronOf(e),n=a.decompOf,i=a.sameStructureOnly&&n?n(r):null,s=[];for(const c of t)c!==e&&(a.okSet&&!a.okSet.has(c)||a.pronOf(c)!==r&&(i&&n&&Uo(i,n(a.pronOf(c)))||s.push(c)));return s}function jr(e,t,a){const r=t?.[e];if(!r)return[];const n=a.kind?r[a.kind]??[]:[...r.cho??[],...r.jung??[],...r.jong??[]];return vi(e,n,a)}function yi(e,t,a,r,n,i,s){const c=["cho","jung","jong"].filter(p=>ft(e[p])),u={};for(const p of c){const g=e[p];u[p]=new Set(Array.isArray(g)?g:[g])}const d=n==="pron",m=new Map;for(const p of t){const g=a(i(p));if(g.some(f=>!f))continue;let v=g;if(!d&&(v=a(p),v.length!==g.length||v.some(f=>!f)))continue;const b=g.length,y=m.get(b);y?y.push({w:p,dPron:g,dPos:v}):m.set(b,[{w:p,dPron:g,dPos:v}])}const h=new Map;for(const[p,g]of m){const v=new Map,b=(y,f)=>{const x=y.dPos[f];return x!=null&&c.every(_=>u[_].has(fi[_][x[_]]))};for(const y of g){let f;if(s==="head")f=b(y,0)?0:-1;else if(s==="tail")f=b(y,p-1)?p-1:-1;else if(s==="mid"){f=-1;for(let _=1;_<p-1;_++)if(b(y,_)){f=_;break}}else f=y.dPos.findIndex(_=>_!=null&&c.every(C=>u[C].has(fi[C][_[C]])));if(f<0)continue;const x=v.get(f);x?x.push(y):v.set(f,[y])}for(const[y,f]of v){const x=new Set(c.map(A=>y+":"+A)),_=A=>{let w="";for(let S=0;S<p;S++){const D=A[S];for(const T of["cho","jung","jong"])w+=(x.has(S+":"+T)?"*":D[T])+"."}return w},C=new Map;for(const A of g){const w=_(A.dPron),S=C.get(w);S?S.push(A):C.set(w,[A])}for(const A of f){const w=C.get(_(A.dPron))??[],S=[];for(const D of w){if(D.w===A.w)continue;let T=!0;for(const E of c){const W=A.dPron[y][E],M=D.dPron[y][E];if(M===W){T=!1;break}if(d&&u[E].has(fi[E][M])){T=!1;break}}T&&(r&&Uo(A.dPron,D.dPron)||S.push(D.w))}h.set(A.w,S)}}}return h}const Lr=0,Jd=1,Za=2,xi=3,sw=4,Mr=5,Ci=6,Pr=7,lw=8,eu=9,Ko=10,cw=11,Zo=12,dw=13,Xo=14,Rr=15,$r=16,Qo=17,uw=18,ha=0,_a=1,pw=3,Xa=4,_i=5,wi=6,ma=7,St=8,tu=9,au=10,zr=11,ou=12,ki=13,Ir=15,Or=16,wa=17,ru=18,Si=21,nu=27,hw=20,mw={1:Lr,2:Jd,4:Za,7:xi,8:Mr,16:Ci,17:Pr,19:eu,20:Ko,22:Zo,23:Xo,24:Rr,25:$r,26:Qo},bw={[pw]:[_a,Ko],[_i]:[Xa,Zo],[tu]:[St,Lr],[au]:[St,Ci],[zr]:[St,Pr],[ou]:[St,Ko],[ki]:[St,$r],14:[St,Qo],[ru]:[wa,Ko]},gw={[wi]:Za,[Ir]:Mr},Ai={2:_a,24:_a,3:_a,9:_a,5:Xa,6:Xa,19:ma,20:ma,22:ma,23:ma,25:ma,27:ma,11:St,12:St,13:St,15:St,10:Or,14:wa,18:wa,26:wa},iu={[Lr]:Rr,[xi]:$r,[Pr]:Qo,[Zo]:Xo},su={[Lr]:Jd,[xi]:sw,[Pr]:lw,[eu]:Ko,[Zo]:dw},fw=new Set([_i,au,zr,ou,ki,Ir,ru]),vw=new Set(["\uBC1F"]);function lu(e){const t=(e??"").trim();if(!t)return"";const a=[...t],r=a.map(Ne);if(r.some(i=>i===null))return t;const n=r;for(let i=0;i<n.length;i++){const s=n[i],c=n[i+1],u=s.jong;if(!c){s.jong=Ai[s.jong]??s.jong;break}if(s.jong===ha)continue;if(c.cho===cw){if(c.jung===hw){if(s.jong===ma){s.jong=ha,c.cho=Zo;continue}if(s.jong===25){s.jong=ha,c.cho=Xo;continue}if(s.jong===ki){s.jong=St,c.cho=Xo;continue}}if(s.jong===nu){s.jong=ha;continue}const m=gw[s.jong];if(m!==void 0){s.jong=ha,c.cho=m;continue}const h=bw[s.jong];if(h){s.jong=h[0],c.cho=h[1];continue}const p=mw[s.jong];p!==void 0&&(s.jong=ha,c.cho=p);continue}if((s.jong===nu||s.jong===wi||s.jong===Ir)&&iu[c.cho]!==void 0){c.cho=iu[c.cho],s.jong=s.jong===wi?Xa:s.jong===Ir?St:ha;continue}if(c.cho===uw){if(s.jong===_i){s.jong=Xa,c.cho=Xo;continue}if(s.jong===tu){s.jong=St,c.cho=Rr;continue}if(s.jong===zr){s.jong=St,c.cho=Qo;continue}const m=Ai[s.jong]??s.jong;if(m===_a){s.jong=ha,c.cho=Rr;continue}if(m===ma){s.jong=ha,c.cho=$r;continue}if(m===wa){s.jong=ha,c.cho=Qo;continue}}let d=Ai[s.jong]??s.jong;u===zr&&vw.has(a[i])&&(d=wa),s.jong=d,su[c.cho]!==void 0&&(d===_a||d===ma||d===wa||fw.has(u))&&(c.cho=su[c.cho]),(c.cho===Za||c.cho===Ci)&&(s.jong===_a?s.jong=Si:s.jong===ma?s.jong=Xa:s.jong===wa&&(s.jong=Or)),c.cho===Mr?s.jong===Xa?s.jong=St:s.jong===Or||s.jong===Si?c.cho=Za:s.jong===_a?(s.jong=Si,c.cho=Za):s.jong===wa&&(s.jong=Or,c.cho=Za):s.jong===St&&c.cho===Za&&(c.cho=Mr)}return n.map(i=>ua(i.cho,i.jung,i.jong)).join("")}const yw={\u3131:"\u3131",\u3132:"\u3131",\u314B:"\u3131",\u3133:"\u3131",\u313A:"\u3131",\u3134:"\u3134",\u3135:"\u3134",\u3136:"\u3134",\u3137:"\u3137",\u3145:"\u3137",\u3146:"\u3137",\u3148:"\u3137",\u314A:"\u3137",\u314C:"\u3137",\u314E:"\u3137",\u3139:"\u3139",\u313C:"\u3139",\u313D:"\u3139",\u313E:"\u3139",\u3140:"\u3139",\u3141:"\u3141",\u313B:"\u3141",\u3142:"\u3142",\u314D:"\u3142",\u313F:"\u3142",\u3144:"\u3142",\u3147:"\u3147"},xw={\u314F:{nucleus:"\u314F"},\u3151:{glide:"j",nucleus:"\u314F"},\u3153:{nucleus:"\u3153"},\u3155:{glide:"j",nucleus:"\u3153"},\u3157:{nucleus:"\u3157"},\u315B:{glide:"j",nucleus:"\u3157"},\u315C:{nucleus:"\u315C"},\u3160:{glide:"j",nucleus:"\u315C"},\u3161:{nucleus:"\u3161"},\u3163:{nucleus:"\u3163"},\u3150:{nucleus:"\u3154/\u3150"},\u3152:{glide:"j",nucleus:"\u3154/\u3150"},\u3154:{nucleus:"\u3154/\u3150"},\u3156:{glide:"j",nucleus:"\u3154/\u3150"},\u3158:{glide:"w",nucleus:"\u314F"},\u3159:{glide:"w",nucleus:"\u3154/\u3150"},\u315A:{glide:"w",nucleus:"\u3154/\u3150"},\u315D:{glide:"w",nucleus:"\u3153"},\u315E:{glide:"w",nucleus:"\u3154/\u3150"},\u315F:{glide:"w",nucleus:"\u3163"},\u3162:{glide:"\u0270",nucleus:"\u3163"}};function Fr(e){return yw[e]??e}const bo=/[ㄱ-ㅎ]/,Cw=/[ㅏ-ㅣ]/;function Jo(e){for(let t=e.length-1;t>=0;t--){const a=e[t],r=a.charCodeAt(0);if(r>=44032&&r<=55203||bo.test(a)||Cw.test(a))return a}return null}function Ti(e){const t=Jo(e);if(!t)return"\uAC00";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":bo.test(t)?"\uC774":"\uAC00"}function Bi(e){return`${e}${Ti(e)}`}function Ni(e){const t=Jo(e);if(!t)return"\uB97C";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":bo.test(t)?"\uC744":"\uB97C"}function Di(e){return`${e}${Ni(e)}`}function Ei(e){const t=Jo(e);if(!t)return"\uB294";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC740":"\uB294":bo.test(t)?"\uC740":"\uB294"}function cu(e){return`${e}${Ei(e)}`}function ji(e){const t=Jo(e);if(!t)return"\uC640";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uACFC":"\uC640":bo.test(t)?"\uACFC":"\uC640"}function du(e){return`${e}${ji(e)}`}function Li(e){const t=Jo(e);if(!t)return"\uB85C";const a=t.charCodeAt(0);if(a>=44032&&a<=55203){const r=(a-44032)%28;return r===0||r===8?"\uB85C":"\uC73C\uB85C"}return t==="\u3139"?"\uB85C":bo.test(t)?"\uC73C\uB85C":"\uB85C"}function uu(e){return`${e}${Li(e)}`}function Mi(e,t,a){const r=e.slice(),[n]=r.splice(t,1);return r.splice(a,0,n),r}function ze(e,t=Math.random){const a=e.slice();for(let r=a.length-1;r>0;r--){const n=Math.floor(t()*(r+1));[a[r],a[n]]=[a[n],a[r]]}return a}function Qt(e,t,a=Math.random){return!Array.isArray(e)||e.length===0||t<=0?[]:t>=e.length?ze(e,a):ze(e,a).slice(0,t)}const go={SAME_SOUND_PICK:{difficulty:!0,choseong:!0,group:"discrimination"},SAME_OR_DIFF:{difficulty:!0,choseong:!0,group:"discrimination"},HEAR_AND_PICK_SAME:{difficulty:!0,choseong:!0,group:"discrimination"},HEAR_AND_PICK_INCLUDED:{difficulty:!0,choseong:!0,group:"discrimination"},STARTS_WITH_SAME_SOUND:{difficulty:!1,choseong:!0,group:"discrimination"},LISTEN_AND_REMEMBER_ORDER:{difficulty:!1,choseong:!0,group:"attention"},MERGE_2_SYLLABLES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_3_SYLLABLES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_2_PHONEMES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_3_PHONEMES:{difficulty:!1,choseong:!0,group:"synthesis"},DROP_1_FROM_2SYLL:{difficulty:!1,choseong:!0,group:"deletion"},DROP_1_FROM_3SYLL:{difficulty:!1,choseong:!0,group:"deletion"},DROP_PART_FROM_COMPOUND:{difficulty:!1,choseong:!0,group:"deletion"},DROP_FINAL_CONSONANT_FROM_1SYLL:{difficulty:!1,choseong:!0,group:"deletion"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{difficulty:!1,choseong:!0,group:"deletion"},CHANGE_1_SYLL_IN_2SYLL:{difficulty:!0,choseong:!0,group:"substitution"},CHANGE_1_SYLL_IN_3SYLL:{difficulty:!0,choseong:!0,group:"substitution"},CHANGE_1_PHONEME_IN_1SYLL:{difficulty:!1,choseong:!0,group:"substitution"},CHANGE_1_PHONEME_IN_2SYLL:{difficulty:!0,choseong:!0,group:"substitution"}};function _w(e){const t=e?go[e]?.group:void 0;return t==="synthesis"||t==="deletion"||t==="substitution"?t:null}const ww=qe.indexOf("\u3147"),Wr={DROP_FINAL_CONSONANT_FROM_1SYLL:{syllables:1,syllable:e=>e.jong>0},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{syllables:1,syllable:e=>e.jong===0&&e.cho!==ww},MERGE_2_SYLLABLES:{syllables:2,syllable:()=>!0},MERGE_3_SYLLABLES:{syllables:3,syllable:()=>!0},MERGE_2_PHONEMES:{syllables:1,syllable:e=>e.jong===0},MERGE_3_PHONEMES:{syllables:1,syllable:e=>e.jong>0}},kw=new Set([]);function pu(e){return e in Wr}function hu(e,t){const a=Wr[e];if(!a)return!0;const r=[...t];if(r.length!==a.syllables)return!1;const n=Ne(r[0]);return!!n&&a.syllable(n)}function mu(e){return kw.has(e)}function Sw(e){const t=e.charCodeAt((e.length||1)-1)||0;return t<44032||t>55203||(t-44032)%28===0?"\uC640":"\uACFC"}function Pi(e){const t=e.charCodeAt((e.length||1)-1)||0;return t<44032||t>55203||(t-44032)%28===0?"\uB97C":"\uC744"}function bu(e){const t=e.charCodeAt((e.length||1)-1)||0;if(t<44032||t>55203)return"\uB85C";const a=(t-44032)%28;return a===0||a===8?"\uB85C":"\uC73C\uB85C"}function gu(e){const t=e.charAt((e.length||1)-1),a=t.charCodeAt(0)||0;return a>=44032&&a<=55203?(a-44032)%28===0?"\uAC00":"\uC774":/[ㄱ-ㅎ]/.test(t)?"\uC774":"\uAC00"}const fu={\u3131:"\uAE30\uC5ED",\u3132:"\uC30D\uAE30\uC5ED",\u3134:"\uB2C8\uC740",\u3137:"\uB514\uADFF",\u3138:"\uC30D\uB514\uADFF",\u3139:"\uB9AC\uC744",\u3141:"\uBBF8\uC74C",\u3142:"\uBE44\uC74D",\u3143:"\uC30D\uBE44\uC74D",\u3145:"\uC2DC\uC637",\u3146:"\uC30D\uC2DC\uC637",\u3147:"\uC774\uC751",\u3148:"\uC9C0\uC752",\u3149:"\uC30D\uC9C0\uC752",\u314A:"\uCE58\uC753",\u314B:"\uD0A4\uC754",\u314C:"\uD2F0\uC755",\u314D:"\uD53C\uC756",\u314E:"\uD788\uC757",\u3133:"\uAE30\uC5ED\uC2DC\uC637",\u3135:"\uB2C8\uC740\uC9C0\uC752",\u3136:"\uB2C8\uC740\uD788\uC757",\u313A:"\uB9AC\uC744\uAE30\uC5ED",\u313B:"\uB9AC\uC744\uBBF8\uC74C",\u313C:"\uB9AC\uC744\uBE44\uC74D",\u313D:"\uB9AC\uC744\uC2DC\uC637",\u313E:"\uB9AC\uC744\uD2F0\uC755",\u313F:"\uB9AC\uC744\uD53C\uC756",\u3140:"\uB9AC\uC744\uD788\uC757",\u3144:"\uBE44\uC74D\uC2DC\uC637",\u314F:"\uC544",\u3150:"\uC560",\u3151:"\uC57C",\u3152:"\uC598",\u3153:"\uC5B4",\u3154:"\uC5D0",\u3155:"\uC5EC",\u3156:"\uC608",\u3157:"\uC624",\u3158:"\uC640",\u3159:"\uC65C",\u315A:"\uC678",\u315B:"\uC694",\u315C:"\uC6B0",\u315D:"\uC6CC",\u315E:"\uC6E8",\u315F:"\uC704",\u3160:"\uC720",\u3161:"\uC73C",\u3162:"\uC758",\u3163:"\uC774"};function vu(e){if([...e].length!==1)return[e];const t=Ne(e);if(!t)return[e];const a=[qe[t.cho],dt[t.jung]];return t.jong!==0&&a.push(gt[t.jong]),a}function Ri(e,t=!1){const a=e.filter(Boolean);if(a.length<2)return"";const r=c=>fu[c]??c,n=a.slice(0,-1).map(c=>`"${c}"${Sw(r(c))}`).join(" "),i=a[a.length-1],s=`"${i}"${Pi(r(i))}`;return`${n} ${s} \uD569\uCE58\uBA74 \uC5B4\uB5A4 ${t?"\uC18C\uB9AC":"\uB2E8\uC5B4"}\uAC00 \uB418\uB098\uC694?`}function Aw(e,t){return Ri(t,e==="MERGE_2_PHONEMES"||e==="MERGE_3_PHONEMES")}function Tw(e,t){const a=String(t?.word??t?.original??""),r=String(t?.changedFrom??""),n=String(t?.changedTo??"");return e==="CHANGE_1_PHONEME_IN_1SYLL"?`"${a}"${Pi(a)} "${n}"${bu(n)} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`:`"${a}"\uC5D0\uC11C "${r}"${Pi(r)} "${n}"${bu(n)} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`}function Bw(e,t){const a=String(t?.word??t?.original??t?.base??""),r=String(t?.dropped??"");if(e==="DROP_FINAL_CONSONANT_FROM_1SYLL")return`"${a}"\uC5D0\uC11C \uBC1B\uCE68\uC774 \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uB9D0\uC774 \uB418\uB098\uC694?`;if(e==="REMOVE_CONSONANT_AND_IDENTIFY_PHONEME"){const n=String(t?.missingConsonant??"");return`"${a}"\uC5D0\uC11C "${n}"${gu(n)} \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB418\uB098\uC694?`}return`"${a}"\uC5D0\uC11C "${r}"${gu(r)} \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uB9D0\uC774 \uB418\uB098\uC694?`}function yu(e,t,a){switch(_w(e)){case"synthesis":return Aw(e,a);case"substitution":return Tw(e,t);case"deletion":return Bw(e,t);default:return""}}function xu(e){return e.replace(/"([ㄱ-ㅣ])"(으로|와|과|을|를|이|가|은|는|로)?/g,(t,a,r)=>{const n=fu[a];if(!n)return t;if(!r)return`"${n}"`;const i=(n.charCodeAt(n.length-1)-44032)%28,s=i!==0;let c=r;return r==="\uC640"||r==="\uACFC"?c=s?"\uACFC":"\uC640":r==="\uC744"||r==="\uB97C"?c=s?"\uC744":"\uB97C":r==="\uC774"||r==="\uAC00"?c=s?"\uC774":"\uAC00":r==="\uC740"||r==="\uB294"?c=s?"\uC740":"\uB294":(r==="\uC73C\uB85C"||r==="\uB85C")&&(c=i===0||i===8?"\uB85C":"\uC73C\uB85C"),`"${n}"${c}`})}const Nw=e=>e==null?[]:Array.isArray(e)?e:[e];function $i(e){if([...e].length!==1)return"";const t=Ne(e);if(!t)return"";const a=Fr(gt[t.jong]),r=a===""?0:gt.indexOf(a);return ua(t.cho,t.jung,r<0?0:r)}function Hr(e,t){return t.get(e)||$i(e)||e}function er(e){return e?ft(e.cho)?"cho":ft(e.jung)?"jung":ft(e.jong)?"jong":null:null}function Pa(e,t){const a=(r,n)=>!ft(r)||Nw(r).includes(n);return a(t.cho,qe[e.cho])&&a(t.jung,dt[e.jung])&&a(t.jong,gt[e.jong])}function Qa(e,t,a){const r=[...e];if(a!=="pron")return r.map(i=>Ne(i));const n=[...t.get(e)||e];return n.length!==r.length?r.map(i=>Ne(i)):n.map(i=>Ne(i))}function Ja(e,t,a,r,n){const i=t==="cho"?qe:t==="jung"?dt:gt,s=e[t],c=[],u=new Set([Hr(a,n)]),d=ze(i.map((m,h)=>h).filter(m=>m!==s&&(t!=="cho"||i[m]!=="\u3147")&&(t!=="jong"||m!==0)));for(const m of d){if(c.length>=r)break;const h=t==="cho"?ua(m,e.jung,e.jong):t==="jung"?ua(e.cho,m,e.jong):ua(e.cho,e.jung,m),p=Hr(h,n);u.has(p)||(u.add(p),c.push(h))}return c}function zi(e,t,a,r,n,i=null){const s=[...e];if(s.length!==2)return null;const c=s.map(h=>Ne(h));if(c.some(h=>!h))return null;const u=Qa(e,a,r);if(u.some(h=>!h))return null;const d=er(t);let m=d&&t?u.map((h,p)=>Pa(h,t)?p:-1).filter(h=>h>=0):[0,1];if(i!=null&&(m=m.filter(h=>h!==i)),!m.length)return null;for(const h of ze(m)){const p=s[h];if(!n.has(p))continue;const g=Ja(c[h],d??"cho",p,40,a),v=[];for(const b of g)if(b!==p&&n.has(b)&&!v.includes(b)&&v.push(b),v.length>=2)break;if(!(v.length<2))return{question:e,distractors:[p,...v]}}return null}function Ii(e,t,a,r,n,i=null){const s=[...e];if(s.length!==3)return null;const c=s.map(h=>Ne(h));if(c.some(h=>!h))return null;const u=Qa(e,a,r);if(u.some(h=>!h))return null;const d=er(t),m=d&&t?u.map((h,p)=>Pa(h,t)?p:-1).filter(h=>h>=0):[0,1,2];if(!m.length)return null;for(const h of ze(m))for(const p of ze([0,1,2].filter(g=>g!==h&&(i==null||g===i)))){const g=[0,1,2].filter(x=>x!==p),v=g.map(x=>s[x]).join("");if(!n.has(v))continue;const b=g.indexOf(h),y=Ja(c[h],d??"cho",s[h],40,a),f=[];for(const x of y){const _=g.map(A=>s[A]);_[b]=x;const C=_.join("");if(C!==v&&n.has(C)&&!f.includes(C)&&f.push(C),f.length>=2)break}if(!(f.length<2))return{question:e,distractors:[v,...f]}}return null}function Oi(e,t,a,r,n,i=null){const s=[...e],c=s.length;if(c<2)return null;const u=[];for(let m=1;m<=c-1;m++)u.push({remain:s.slice(0,m).join(""),dropped:s.slice(m).join(""),droppedEnd:1}),u.push({remain:s.slice(c-m).join(""),dropped:s.slice(0,c-m).join(""),droppedEnd:0});const d=er(t);for(const{remain:m,dropped:h,droppedEnd:p}of ze(u)){if(i!=null&&p!==i||m===e||!n.has(m)||!n.has(h))continue;const g=[...m],v=g.map(f=>Ne(f));if(v.some(f=>!f))continue;const b=Qa(m,a,r);if(b.some(f=>!f))continue;const y=d&&t?b.map((f,x)=>Pa(f,t)?x:-1).filter(f=>f>=0):g.map((f,x)=>x);if(y.length)for(const f of ze(y)){const x=Ja(v[f],d??"cho",g[f],40,a),_=[];for(const C of x){const A=[...g];A[f]=C;const w=A.join("");if(w!==m&&n.has(w)&&!_.includes(w)&&_.push(w),_.length>=2)break}if(_.length>=2)return{question:e,distractors:[m,..._]}}}return null}function Fi(e,t,a,r,n,i=null){if([...e].length!==1)return null;const s=Ne(a.get(e)||e);if(!s||s.jong===0)return null;const c=ua(s.cho,s.jung,0),u=Ja({cho:s.cho,jung:s.jung,jong:0},"cho",c,2,a);return u.length<2?null:{question:e,distractors:[c,...u]}}const Wi=qe.indexOf("\u3147");function Hi(e,t,a,r,n,i=null){if([...e].length!==1)return null;const s=Ne(a.get(e)||e);if(!s||s.jong!==0||s.cho===Wi)return null;const c=ua(Wi,s.jung,0),u=Ja({cho:Wi,jung:s.jung,jong:0},"jung",c,2,a);return u.length<2?null:{question:e,distractors:[c,...u]}}function Vi(e){const t=new Map;for(const a of e){const r=[...a],n=r.length;if(!(n<2||n>3))for(let i=0;i<n;i++){let s=n+"|"+i+"|";for(let u=0;u<n;u++)s+=u===i?"*":r[u];const c=t.get(s);c?c.push(a):t.set(s,[a])}}return t}function Gi(e,t,a,r,n,i=null,s=null,c=2){const u=[...e],d=u.length;if(d<2||d>3)return null;const m=u.map(x=>Ne(x));if(m.some(x=>!x))return null;const h=Qa(e,a,r);if(h.some(x=>!x))return null;const p=x=>a.get(x)??x,g=p(e),v=!!t&&(ft(t.cho)||ft(t.jung)||ft(t.jong)),b=!!s&&(ft(s.cho)||ft(s.jung)||ft(s.jong)),y=x=>{let _=d+"|"+x+"|";for(let C=0;C<d;C++)_+=C===x?"*":u[C];return _};let f;if(i!=null){if(i>=d||v&&!Pa(h[i],t))return null;f=[i]}else v?f=h.map((x,_)=>Pa(x,t)?_:-1).filter(x=>x>=0):f=Array.from({length:d},(x,_)=>_);for(const x of ze(f)){const _=n.get(y(x))??[],C=[],A=[];for(const E of _){if(E===e)continue;const W=[...E].map(j=>Ne(j)),M=m[x],k=W[x];if(!M||!k)continue;let N=0;if(M.cho!==k.cho&&N++,M.jung!==k.jung&&N++,M.jong!==k.jong&&N++,!(N<c||p(E)===g))if(b){const j=Qa(E,a,r)[x];j&&Pa(j,s)?C.push(E):A.push(E)}else C.push(E)}if(!C.length)continue;const w=ze(C)[0],S=[],D=new Set([g,p(w)]),T=b?A:C.filter(E=>E!==w);for(const E of ze(T)){const W=p(E);if(!D.has(W)&&(D.add(W),S.push(E),S.length>=2))break}if(!b&&S.length<2)for(const E of ze(_)){if(E===e||E===w)continue;const W=p(E);if(!D.has(W)&&(D.add(W),S.push(E),S.length>=2))break}if(!(S.length<2))return{question:e,distractors:[w,...S]}}return null}function Vr(e,t="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958"){if(e instanceof Error)return e.message||t;if(typeof e=="string")return e||t;if(e&&typeof e=="object"){const a=e;for(const r of[a.message,a.error_description,a.error])if(typeof r=="string"&&r)return r}return t}const qi="\uB124\uD2B8\uC6CC\uD06C \uC5F0\uACB0\uC774 \uBD88\uC548\uC815\uD569\uB2C8\uB2E4. \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uD655\uC778\uD55C \uB4A4 \uB2E4\uC2DC \uC2DC\uB3C4\uD574 \uC8FC\uC138\uC694.";function Yi(e){return e?/failed to fetch|load failed|networkerror|network request failed|fetcherror/i.test(e):!1}function Cu(e){return Yi(e)?qi:e}function _u(e,t){return e==="id"?void 0:`${e}|${t?"asc":"desc"}`}function wu(e){const[t,a]=e.split("|");return{key:t,asc:a==="asc"}}function ku(e){let t=e==null?"":String(e);return/^[=+\-@\t\r]/.test(t)&&(t=" "+t),/[",\n\r]/.test(t)?`"${t.replaceAll('"','""')}"`:t}function Su(e,t){const a=new Blob(["\uFEFF"+t],{type:"text/csv;charset=utf-8"}),r=URL.createObjectURL(a),n=document.createElement("a");n.href=r,n.download=e,n.click(),URL.revokeObjectURL(r)}const Au="__ihab_core_word_pool__";function Dw(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("wordpool:update"))}function Tu(e,t){const a=new Map;for(const n of e)a.set(n.word,n);const r={entries:e,pairIndex:t??null,byWord:a};globalThis[Au]=r,Dw()}function fo(){return globalThis[Au]??null}const vo=globalThis;function Ui(e,t){const a=r=>{};try{const r=t();r&&typeof r.catch=="function"&&r.catch(a)}catch(r){a(r)}}function Bu(e){vo.__ihabTrainingTimeLogger=e}function Ki(e){Ui("time",()=>vo.__ihabTrainingTimeLogger?.(e))}function Nu(e){vo.__ihabTrainingCompletionLogger=e}function Zi(e){Ui("completion",()=>vo.__ihabTrainingCompletionLogger?.(e))}function Du(e){vo.__ihabCrosswordLogger=e}function Eu(e){Ui("crossword",()=>vo.__ihabCrosswordLogger?.(e))}function Jt(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function Xi(e){for(const t of["correct","isCorrect","heard","judgement"])if(typeof e[t]=="boolean")return e[t];return e.score===1?!0:e.score===0?!1:null}function Qi(e){return Array.isArray(e)?e.map((t,a)=>{const r=t??{};return{index:a,itemId:Jt(r.contextCode)??Jt(r.itemId)??Jt(r.itemCode)??Jt(r.id),question:Jt(r.question)??Jt(r.sentence)??Jt(r.word)??Jt(r.targetSyllable),answer:Jt(r.answer),selected:Jt(r.selectedText)??Jt(r.selected),correct:Xi(r)}}):[]}function ju(e){return e.filter(t=>t.correct===!1)}let Lu=null,Mu=null,Pu=null;function Ru(e){Lu=e}function $u(e){Mu=e}function zu(e){Pu=e}async function Iu(e,t){try{return await Lu?.(e,t)??null}catch{return null}}async function Ou(){try{return await Mu?.()??null}catch{return null}}async function Fu(e,t){try{return await Pu?.(e,t)??null}catch{return null}}const Ji=globalThis;function Wu(e){Ji.__ihabNoiseSettingsStore=e}async function es(){try{return await Ji.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function ts(e){const t=a=>{};try{const a=Ji.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(t)}catch(a){t(a)}}function tr(e){const t=new TextEncoder().encode(String(e).normalize("NFC"));let a="";return t.forEach(r=>{a+=r.toString(16).padStart(2,"0")}),a}const Hu=tr;function Vu(e,t){return`${e}/${tr(t)}.mp3`}function Gu(e={}){const t=e.storagePrefix??"audio-cache",a=e.voice??"ko-f",r=typeof e.speed=="number"?e.speed:1,n=e.filenameSanitizer??tr;return async function(i){const s=String(i||"").trim();if(!s)return"";const c=`${n(s)}_${a}.mp3`,u=`${t}/${c}`;try{if(await Zn(u)){const d=await Io(u);if(d)return d}}catch{}if(e.generator)try{const d=await e.generator(s,u,e);if(d)return d}catch{}try{const d=`/api/tts?word=${encodeURIComponent(s)}&voice=${encodeURIComponent(a)}&speed=${encodeURIComponent(String(r))}`;return await fetch(d,{method:"GET"}),`/audio-cache/${c}`}catch{return`/audio-cache/${c}`}}}async function as(e){if(typeof document<"u")try{const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="fixed",t.style.top="0",t.style.left="0",t.style.opacity="0",t.style.pointerEvents="none",document.body.appendChild(t),t.focus(),t.select(),t.setSelectionRange(0,e.length);const a=document.execCommand("copy");if(document.body.removeChild(t),a)return!0}catch{}try{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}return!1}const yo="Asia/Seoul";function qu(e){return new Date(e).toLocaleDateString("ko-KR",{timeZone:yo,year:"numeric",month:"short",day:"numeric"})}function Yu(e){return new Date(e).toLocaleString("ko-KR",{timeZone:yo,year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"})}function Uu(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US";return new Date(e).toLocaleDateString(a,{timeZone:yo,year:"numeric",month:"short",day:"numeric"})}function Ku(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US";return new Date(e).toLocaleString(a,{timeZone:yo,year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"})}function Zu(e){return new Date(e).toLocaleString("ko-KR",{timeZone:yo,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}function Xu(e){if(e==null||e==="")return"";const t=e instanceof Date?e:new Date(e);return isNaN(t.getTime())?"":new Intl.DateTimeFormat("en-GB",{timeZone:yo,hour:"2-digit",minute:"2-digit",hour12:!1}).format(t)}function Gr(){return ka(new Date)}function ka(e){if(e==null||e==="")return"";const t=e instanceof Date?e:new Date(e);return isNaN(t.getTime())?"":new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(t)}function qr(e,t){if(!e)return"";const a=new Date(e).getTime();if(Number.isNaN(a))return"";const r=Math.max(0,Math.floor((Date.now()-a)/1e3)),n=Math.floor(r/60),i=Math.floor(n/60),s=Math.floor(i/24),c=Math.floor(s/7),u=Math.floor(s/30),d=Math.floor(s/365);return n<1?t("store.time.justNow","\uBC29\uAE08 \uC804"):n<60?t("store.time.minutesAgo",{n}):i<24?t("store.time.hoursAgo",{n:i}):s<7?t("store.time.daysAgo",{n:s}):c<5?t("store.time.weeksAgo",{n:c}):s<365?t("store.time.monthsAgo",{n:Math.min(u,11)}):t("store.time.yearsAgo",{n:d})}function Yr(e,t={}){const{sep:a=".",pad:r=!0,trailingDot:n=!1,fallback:i="\u2014"}=t;if(!e)return i;const s=ka(e instanceof Date?e:String(e));if(!s)return i;const[c,u,d]=s.split("-"),m=r?u:String(Number(u)),h=r?d:String(Number(d));return`${c}${a}${m}${a}${h}${n?".":""}`}function Qu(e){const t=e.replace(/\D/g,"").slice(0,11);return t.startsWith("02")?t.length<=2?t:t.length<=6?`${t.slice(0,2)}-${t.slice(2)}`:`${t.slice(0,2)}-${t.slice(2,t.length-4)}-${t.slice(t.length-4)}`:t.length<=3?t:t.length<=7?`${t.slice(0,3)}-${t.slice(3)}`:`${t.slice(0,3)}-${t.slice(3,t.length-4)}-${t.slice(t.length-4)}`}function Ju(e){if(e){if(/^\d{4}\.\d{2}\.\d{2}$/.test(e))return e;if(/^\d{8}$/.test(e))return`${e.slice(0,4)}.${e.slice(4,6)}.${e.slice(6,8)}`;if(/^\d{4}-\d{2}-\d{2}$/.test(e))return e.replace(/-/g,".");if(/^\d{4}-\d{2}-\d{2}T/.test(e)){const t=new Date(e);return isNaN(t.getTime())?void 0:ka(t).replace(/-/g,".")}}}function ep(e){if(e)return/^\d{4}\.\d{2}\.\d{2}$/.test(e)?e.replace(/\./g,"-"):e}function ar(e){if(!e)return e;const t=e.trim();return/^[₩$]/.test(t)?t:/원\s*$/.test(t)?"\u20A9"+t.replace(/\s*원\s*$/,"").trim():t}function Ur(e,t){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const r=Number(a[1]),n=Number(a[2]),i=a[1].padStart(2,"0");return n===0?t("date.timeH",{h:r,hh:i,mm:a[2]}):t("date.timeHM",{h:r,hh:i,m:n,mm:a[2]})}function or(e){return(e??0).toLocaleString("ko-KR")}const Ew=[{key:"FOOD",label:"\uC74C\uC2DD",icon:"salad",color:"#FF8A65",subs:[{key:"TRKRFD",label:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD"},{key:"MDKRFD",label:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD"},{key:"WRLDFD",label:"\uC138\uACC4\uC758 \uC74C\uC2DD"},{key:"MTRFRT",label:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C"},{key:"GEFDKL",label:"\uC74C\uC2DD \uC0C1\uC2DD"}]},{key:"HLTH",label:"\uAC74\uAC15",icon:"heart",color:"#66BB6A",subs:[{key:"HTETHB",label:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00"},{key:"DISILL",label:"\uBCD1\uACFC \uC9C8\uD658"},{key:"EXCISE",label:"\uC6B4\uB3D9"},{key:"GEHTKL",label:"\uAC74\uAC15\uC0C1\uC2DD"}]},{key:"WETH",label:"\uB0A0\uC528",icon:"sun-medium",color:"#42A5F5",subs:[{key:"GESSKL",label:"\uACC4\uC808\uC0C1\uC2DD"},{key:"SNWRAN",label:"\uB208\uACFC \uBE44"},{key:"WTHFCT",label:"\uC77C\uAE30\uC608\uBCF4"},{key:"GEWTKL",label:"\uB0A0\uC528\uC0C1\uC2DD"}]},{key:"PRSN",label:"\uC778\uBB3C",icon:"user-round",color:"#AB47BC",subs:[{key:"JODYPS",label:"\uC870\uC120\uC2DC\uB300"},{key:"MDKRPS",label:"\uD55C\uAD6D \uADFC\uD604\uB300"},{key:"THKDPS",label:"\uC0BC\uAD6D\uC2DC\uB300"},{key:"WRLART",label:"\uC138\uACC4\uC758 \uC608\uC220\uAC00"},{key:"WRLPSN",label:"\uC138\uACC4\uC758 \uC778\uBB3C"}]},{key:"KRCT",label:"\uD55C\uAD6D\uBB38\uD654",icon:"bow-arrow",color:"#EC407A",subs:[{key:"KRLANG",label:"\uC6B0\uB9AC\uB9D0"},{key:"TRPLCT",label:"\uC804\uD1B5\uB180\uC774"},{key:"HERITG",label:"\uBB38\uD654\uC7AC"},{key:"EVTFES",label:"\uD589\uC0AC\uC640 \uCD95\uC81C"},{key:"GECTKL",label:"\uC0C1\uC2DD"}]},{key:"STRY",label:"\uC774\uC57C\uAE30",icon:"message-circle",color:"#8D6E63",subs:[{key:"FRYTAL",label:"\uB3D9\uD654"},{key:"AMZING",label:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30"},{key:"DAYSTR",label:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30"}]},{key:"LOCA",label:"\uC9C0\uC5ED",icon:"map-pin",color:"#26A69A",subs:[{key:"KRLDMK",label:"\uD55C\uAD6D\uC758 \uBA85\uC18C"},{key:"SELNMK",label:"\uC11C\uC6B8\uC758 \uBA85\uC18C"},{key:"WRDTRB",label:"\uC138\uACC4\uC5EC\uD589"},{key:"NAVIGT",label:"\uAE38 \uCC3E\uAE30"}]},{key:"SOAR",label:"\uC0AC\uD68C\uC640 \uC608\uC220",icon:"landmark",color:"#5C6BC0",subs:[{key:"KRSOCI",label:"\uD55C\uAD6D"},{key:"ECONEW",label:"\uACBD\uC81C\uC640 \uB274\uC2A4"},{key:"GENART",label:"\uC608\uC220"},{key:"GELFKL",label:"\uC0DD\uD65C \uC0C1\uC2DD"}]},{key:"NTSC",label:"\uC790\uC5F0\uACFC \uACFC\uD559",icon:"leaf",color:"#9CCC65",subs:[{key:"ANIMAL",label:"\uB3D9\uBB3C"},{key:"PLANTS",label:"\uC2DD\uBB3C"},{key:"ETHPLT",label:"\uC9C0\uAD6C"},{key:"TOLELC",label:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488"},{key:"GESCKL",label:"\uACFC\uD559\uC0C1\uC2DD"}]},{key:"SPRT",label:"\uC2A4\uD3EC\uCE20",icon:"trophy",color:"#FFCA28",subs:[{key:"INVDSP",label:"\uAC1C\uC778\uACBD\uAE30"},{key:"MARART",label:"\uACA9\uD22C\uAE30"},{key:"TEAMSP",label:"\uB2E8\uCCB4\uACBD\uAE30"},{key:"FOOTBL",label:"\uCD95\uAD6C"},{key:"GESPKL",label:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}]}],jw=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"party-popper",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828"},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30 + 4\uBB38\uC81C"},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30 \uC2EC\uD654 \uD6C8\uB828"},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC21C\uC11C \uBC30\uC5F4 \uD6C8\uB828"}];let os=null;function tp(e){os=e}function Kr(){return os?.topicTypes??Ew}function rs(){return os?.trainingTypes??jw}const ap="ihab_theme",Lw="light";function ns(){try{const e=localStorage.getItem(ap);if(e==="light"||e==="dark"||e==="auto")return e}catch{}return Lw}function is(e){try{document.documentElement.setAttribute("data-theme",e),localStorage.setItem(ap,e)}catch{}}function op(){is(ns())}const rp="ihab_font_scale",Mw="medium",Pw=["medium","large1","large2","large3"];function ss(){try{const e=localStorage.getItem(rp);if(Pw.includes(e))return e}catch{}return Mw}function ls(e){try{document.documentElement.setAttribute("data-font-scale",e),localStorage.setItem(rp,e)}catch{}}function np(){ls(ss())}const Ra=[],$a=[],za=[],Ia=[],rr={LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]},nr={LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]},Rw={LISTEN_IN_NOISE:3,SHORT_STORY:2,LONG_STORY:1,ORDERING_SENTENCE:2};let cs=null,ip=null,Oa=null;function ds({counts:e,forceRefresh:t}={}){const a=Object.assign({},Rw,e||{}),r=Gr(),n=ka(new Date(`${r}T00:00:00+09:00`).getTime()-864e5),i=JSON.stringify(a);if(!t&&ip===r&&cs===i&&Oa)return Object.assign(rr,Oa.today),Object.assign(nr,Oa.yesterday?.selection||{LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]}),{today:rr,yesterday:nr};const s={LISTEN_IN_NOISE:Qt(Ra,Math.max(0,Number(a.LISTEN_IN_NOISE)||0)),SHORT_STORY:Qt($a,Math.max(0,Number(a.SHORT_STORY)||0)),LONG_STORY:Qt(za,Math.max(0,Number(a.LONG_STORY)||0)),ORDERING_SENTENCE:Qt(Ia,Math.max(0,Number(a.ORDERING_SENTENCE)||0))};let c=null;return Oa&&cs===i&&Oa.yesterday&&Oa.yesterday.date===n&&(c=Oa.yesterday.selection),c||(c={LISTEN_IN_NOISE:Qt(Ra,Math.max(0,Number(a.LISTEN_IN_NOISE)||0)),SHORT_STORY:Qt($a,Math.max(0,Number(a.SHORT_STORY)||0)),LONG_STORY:Qt(za,Math.max(0,Number(a.LONG_STORY)||0)),ORDERING_SENTENCE:Qt(Ia,Math.max(0,Number(a.ORDERING_SENTENCE)||0))}),Object.assign(rr,s),Object.assign(nr,c),ip=r,cs=i,Oa={today:s,yesterday:{date:n,countsKey:i,selection:c}},{today:rr,yesterday:nr}}function sp(){return{today:rr,yesterday:nr}}function us(){return{LISTEN_IN_NOISE:Ra,SHORT_STORY:$a,LONG_STORY:za,ORDERING_SENTENCE:Ia}}let ps=!1,ir=null;async function $w(){try{const e={url:typeof document>"u"?require("url").pathToFileURL(__filename).href:Yt&&Yt.tagName.toUpperCase()==="SCRIPT"&&Yt.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}&&void 0||"/",t=await fetch(`${e}data/allTrainingData.json`);return t.ok?await t.json():null}catch{return null}}async function hs(){if(!ps)return ir||(ir=(async()=>{const e=await $w();if(!e){ir=null;try{window.dispatchEvent(new Event("speechear.data.error"))}catch{}return}try{for(const t of Object.keys(e||{})){const a=e[t]||[];for(const r of a){const n=r,i=String(n.training_type||t),s=String(n.category_main_code||n.category_main||n.category_0||""),c=String(n.category_sub_code||n.category_sub||n.category_1||""),u=Object.assign({},n,{training_type:i,category_0:s,category_1:c});i==="LISTEN_IN_NOISE"?Ra.push(u):i==="SHORT_STORY"?$a.push(u):i==="LONG_STORY"?za.push(u):i==="ORDERING_SENTENCE"&&Ia.push(u)}}}catch{ir=null;try{window.dispatchEvent(new Event("speechear.data.error"))}catch{}return}try{window.dispatchEvent(new Event("speechear.data.updated"))}catch{}try{ds()}catch{}ps=!0})(),ir)}function lp(){return ps}async function ms(e=3e3){const t=hs();return Promise.race([t,new Promise(a=>setTimeout(a,e))])}const Zr=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"party-popper",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uB2E4\uC218\uC758 \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC5EC\uB7EC\uAC1C\uC758 \uC9E7\uC740 \uBB38\uC7A5\uC744 \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uADF8 \uC21C\uC11C\uC5D0 \uB9DE\uAC8C \uBC30\uC5F4\uD569\uB2C8\uB2E4."}],cp=[{key:"FOOD",label:"\uC74C\uC2DD",icon:"salad",color:"#FF8A65",subs:[{key:"TRKRFD",label:" \uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD"},{key:"MDKRFD",label:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD"},{key:"WRLDFD",label:"\uC138\uACC4\uC758 \uC74C\uC2DD"},{key:"MTRFRT",label:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C"},{key:"GEFDKL",label:"\uC74C\uC2DD \uC0C1\uC2DD"}]},{key:"HLTH",label:"\uAC74\uAC15",icon:"heart",color:"#66BB6A",subs:[{key:"HTETHB",label:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00"},{key:"DISILL",label:"\uBCD1\uACFC \uC9C8\uD658"},{key:"EXCISE",label:"\uC6B4\uB3D9"},{key:"GEHTKL",label:"\uAC74\uC0C1\uC0C1\uC2DD"}]},{key:"WETH",label:"\uB0A0\uC528",icon:"sun-medium",color:"#42A5F5",subs:[{key:"GESSKL",label:"\uACC4\uC808\uC0C1\uC2DD"},{key:"SNWRAN",label:"\uB208\uACFC \uBE44"},{key:"WTHFCT",label:"\uC77C\uAE30\uC608\uBCF4"},{key:"GEWTKL",label:"\uB0A0\uC528\uC0C1\uC2DD"}]},{key:"PRSN",label:"\uC778\uBB3C",icon:"user-round",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#AB47BC",subs:[{key:"JODYPS",label:"\uC870\uC120\uC2DC\uB300"},{key:"MDKRPS",label:"\uD55C\uAD6D \uADFC\uD604\uB300"},{key:"THKDPS",label:"\uC0BC\uAD6D\uC2DC\uB300"},{key:"WRLART",label:"\uC138\uACC4\uC758 \uC608\uC220\uAC00"},{key:"WRLPSN",label:"\uC138\uACC4\uC758 \uC778\uBB3C"}]},{key:"KRCT",label:"\uD55C\uAD6D\uBB38\uD654",icon:"bow-arrow",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#EC407A",subs:[{key:"KRLANG",label:"\uC6B0\uB9AC\uB9D0"},{key:"TRPLCT",label:"\uC804\uD1B5\uB180\uC774"},{key:"HERITG",label:"\uBB38\uD654\uC7AC"},{key:"EVTFES",label:"\uD589\uC0AC\uC640 \uCD95\uC81C"},{key:"GECTKL",label:"\uC0C1\uC2DD"}]},{key:"STRY",label:"\uC774\uC57C\uAE30",icon:"message-circle",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#8D6E63",subs:[{key:"FRYTAL",label:"\uB3D9\uD654"},{key:"AMZING",label:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30"},{key:"DAYSTR",label:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30"}]},{key:"LOCA",label:"\uC9C0\uC5ED",icon:"map-pin",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#26A69A",subs:[{key:"KRLDMK",label:"\uD55C\uAD6D\uC758 \uBA85\uC18C"},{key:"SELNMK",label:"\uC11C\uC6B8\uC758 \uBA85\uC18C"},{key:"WRDTRB",label:"\uC138\uACC4\uC5EC\uD589"},{key:"NAVIGT",label:"\uAE38 \uCC3E\uAE30"}]},{key:"SOAR",label:"\uC0AC\uD68C\uC640 \uC608\uC220",icon:"landmark",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#5C6BC0",subs:[{key:"KRSOCI",label:"\uD55C\uAD6D"},{key:"ECONEW",label:"\uACBD\uC81C\uC640 \uB274\uC2A4"},{key:"GENART",label:"\uC608\uC220"},{key:"GELFKL",label:"\uC0DD\uD65C \uC0C1\uC2DD"}]},{key:"NTSC",label:"\uC790\uC5F0\uACFC \uACFC\uD559",icon:"leaf",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#9CCC65",subs:[{key:"ANIMAL",label:"\uB3D9\uBB3C"},{key:"PLANTS",label:"\uC2DD\uBB3C"},{key:"ETHPLT",label:"\uC9C0\uAD6C"},{key:"TOLELC",label:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488"},{key:"GESCKL",label:"\uACFC\uD559\uC0C1\uC2DD"}]},{key:"SPRT",label:"\uC2A4\uD3EC\uCE20",icon:"trophy",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#FFCA28",subs:[{key:"INVDSP",label:"\uAC1C\uC778\uACBD\uAE30"},{key:"MARART",label:"\uACA9\uD22C\uAE30"},{key:"TEAMSP",label:"\uB2E8\uCCB4\uACBD\uAE30"},{key:"FOOTBL",label:"\uCD95\uAD6C"},{key:"GESPKL",label:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}]}],bs={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function zw(e){return Zr.map(t=>{const a=bs[t.key];return a?{...t,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:t})}let Xr=null,dp=null,up=null;function Iw(){const e=fo();if(e&&e.entries.length>0){const t=Ka();if(Xr&&dp===e&&up===t)return Xr;const a=new Set,r=[];for(const n of e.entries)!n.word||a.has(n.word)||(a.add(n.word),r.push({w:n.word,s:n.syllables,p:t?.[n.word]?[...t[n.word].cho??[],...t[n.word].jung??[],...t[n.word].jong??[]]:[],pron:n.pronunciation||n.word,grade:n.grade}));return Xr=r,dp=e,up=t,Xr}return[]}const ea=new Proxy([],{get(e,t){const a=Iw(),r=a[t];return typeof r=="function"?r.bind(a):r}});function Qr(e){return e.length?e[Math.floor(Math.random()*e.length)]:void 0}function ta(e,t){if(t>=e.length)return ze(e);if(t===0)return[];const a=e.slice();for(let r=0;r<t;r++){const n=r+Math.floor(Math.random()*(a.length-r)),i=a[r];a[r]=a[n],a[n]=i}return a.slice(0,t)}let gs=null,pp=null;function eo(){const e=fo();if(gs&&pp===e)return gs;const t=new Map;for(const a of ea)a.w&&t.set(a.w,a.pron);return gs=t,pp=e,t}function Ft(e){return eo().get(e)||e}function fs(e,t,a=new Set){const r=[];for(const n of ze(e)){if(r.length>=t)break;const i=Ft(n);a.has(i)||(a.add(i),r.push(n))}return r}let Ow=0;function At(e){return`${e}-rt-${++Ow}`}function sr(e){const t=Er();if(!t||t.total===0){const r=new Set;for(const n of e)r.add(n);return r}const a=new Set;for(const r of e)oi(r)===!0&&a.add(r);return a}const Jr=new Map;let hp=null,mp=null;function lr(e){return e==null?"":Array.isArray(e)?e.slice().sort().join(","):e}function bp(e){const t=lr(e.choseong),a=e.composition,r=a?.syllable==null?"":Array.isArray(a.syllable)?a.syllable.slice().sort().join(","):String(a.syllable),n=a?`${lr(a.cho)}/${lr(a.jung)}/${lr(a.jong)}/${a.jongNone?"N":""}/${r}`:"",i=lr(e.grade);return`${e.difficulty??""}|${t}|${n}|${e.excludeNoImage?"1":"0"}|${e.count??""}|x${e.contrastCount??1}|${e.fullCount?"F":""}|s${e.sameStructureOnly===!1?"0":"1"}|v${e.phonemeView==="pron"?"p":"c"}|g${i}|t${e.targetSyllable??""}|c${e.choicesPerItem??""}`}async function Wt(e){const t=fo(),a=Ka();(t!==hp||a!==mp)&&(Jr.clear(),hp=t,mp=a);const r=bp(e);return Jr.has(r)||Jr.set(r,Ww(e)),Jr.get(r)}function Fw(e){if(!e)return null;const t=s=>s==null?null:Array.isArray(s)?s.length?s:null:[s],a=t(e.cho),r=t(e.jung),n=!!e.jongNone,i=n?null:t(e.jong);return a||r||i||n?n&&!a&&!r&&!i?s=>di(s):s=>ui(s,{cho:a,jung:r,jong:i,jongNone:n}):null}async function Ww(e){const{difficulty:t=null,choseong:a=null,composition:r=null,targetSyllable:n=null,excludeNoImage:i=!1}=e,s=e.grade&&e.grade.length>0?new Set(e.grade):null,c=e.sameStructureOnly??!0,u=e.phonemeView==="pron"?"pron":"char",d=Math.max(1,e.contrastCount??1),m=t==="cho"||t==="jung"||t==="jong",h=m&&d>=2,p=t==="count",g=a?new Set(Array.isArray(a)?a:[a]):null,v=r?.syllable!=null?new Set(Array.isArray(r.syllable)?r.syllable:[r.syllable]):null,b=r?[Fw(r),v?L=>v.has(mo(L)):null].filter(L=>L!=null):[],y=t==="random"||t===null,f=y||p,x=y||h||p;let _=ea.filter(L=>!L.w||s&&(!L.grade||!s.has(L.grade))?!1:x?!0:Array.isArray(L.p)&&L.p.length>0);g&&(_=_.filter(L=>{for(const R of g)if(X_(L.w,R))return!0;return!1})),b.length>0&&(_=_.filter(L=>{const R=u==="pron"?Ft(L.w):L.w;return b.every(O=>O(R))})),n&&(_=_.filter(L=>L.w[0]===n));let C;if(i){const L=new Set;for(const R of _)if(L.add(R.w),Array.isArray(R.p))for(const O of R.p)L.add(O);if(f)for(const R of ea)R.w&&L.add(R.w);C=sr(L)}else{const L=new Set;for(const R of _)if(L.add(R.w),Array.isArray(R.p))for(const O of R.p)L.add(O);if(f)for(const R of ea)R.w&&L.add(R.w);C=L}let A=null;if(h){const L=new Set;for(const R of ea)R.w&&L.add(R.w);A=i?sr(L):L}const w=_.filter(L=>C.has(L.w)),S=600,D=Array.from(C),T=D.length>S?ta(D,S):D,E=p&&r!=null&&(ft(r.cho)||ft(r.jung)||ft(r.jong)),W=2500,M=new Map;if(p&&!E&&d>=2){for(const L of D){const R=mo(L),O=M.get(R);O?O.push(L):M.set(R,[L])}for(const[L,R]of M)R.length>W&&M.set(L,ta(R,W))}const k=ni(),N=E?yi(r,D,k,c,u,Ft):null,j=500,F=1500,te=e.fullCount?w:t==="random"?w.length>j?ta(w,j):w:w.length>F?ta(w,F):w,Z=Ka(),ee=[];for(const L of te){let R;const O=Ft(L.w);if(h)R=aw(L.w,t,d,A,24).filter(H=>Ft(H)!==O);else if(p)E?R=(N.get(L.w)??[]).filter(H=>Ft(H)!==O):d<=1?R=jr(L.w,Z,{okSet:C,pronOf:Ft,decompOf:k,sameStructureOnly:!1}):R=(M.get(mo(L.w))??[]).filter(H=>{if(H===L.w||Ft(H)===O)return!1;const $=ow(L.w,H);return d>=5?$>=5:$===d});else if(y)R=T.filter(H=>H!==L.w&&H.length===L.w.length&&Ft(H)!==O);else{const H=t;R=jr(L.w,Z,{kind:H,okSet:C,pronOf:Ft,decompOf:k,sameStructureOnly:!1}),R.length===0&&(R=(T.length>30?ta(T,30):T).filter($=>$!==L.w&&ii(L.w,$)===t&&Ft($)!==O))}if(c&&R.length>0&&(m||p&&!E)){const H=k(Ft(L.w));R=R.filter($=>!Uo(H,k(Ft($))))}R.length!==0&&ee.push({word:L,usable:R})}return ee}async function gp(e,t){const{choicesPerItem:a=3,count:r=10}=t,n=a-1,i=(await Wt(t)).filter(c=>c.usable.length>=n),s=[];for(const c of ze(i)){if(s.length>=r)break;const u=fs(c.usable,n);if(u.length<n)continue;const d=ze([c.word.w,...u]);s.push({id:At(e+"-item"),index:s.length+1,word:c.word.w,syllables:c.word.s,choices:d,answerIndex:d.indexOf(c.word.w)})}return s}async function Hw(e){const{choicesPerItem:t=3,count:a=10}=e,r=t-1,n=await Wt({...e,difficulty:null});if(n.length<t)return[];const i=[],s=ze([...n]);for(const c of s){if(i.length>=a)break;const u=c.word.w,d=[...c.word.pron||u],m=Qr(d);if(!m)continue;const h=n.filter(v=>v.word.w!==u&&v.word.s===c.word.s&&!(v.word.pron||v.word.w).includes(m)&&v.word.pron!==c.word.pron);if(h.length<r)continue;const p=fs(h.map(v=>v.word.w),r);if(p.length<r)continue;const g=ze([u,...p]);i.push({id:At("HPI-item"),index:i.length+1,targetSyllable:m,word:u,choices:g,answerIndex:g.indexOf(u)})}return i}async function Vw(e){const{count:t=10}=e,a=(await Wt(e)).filter(r=>r.usable.length>=1);return Array.from({length:t},(r,n)=>{const i=Qr(a);if(!i)return null;const s=n%2===0;let c;if(s)c=[i.word.w,i.word.w];else{const u=Qr(i.usable);c=Math.random()<.5?[i.word.w,u]:[u,i.word.w]}return{id:At("SOD-item"),index:n+1,word:i.word.w,pair:c,same:s}}).filter(r=>!!r)}async function Gw(e){const{choicesPerItem:t=3,count:a=10}=e,r=t-1,n=await Wt({...e,difficulty:null});if(n.length<t+1)return[];const i=n.map(p=>p.word.w),s=new Map(n.map(p=>[p.word.w,p.word.pron])),c=p=>(s.get(p)||p)[0]??"",u={};for(const p of n){const g=c(p.word.w);g&&(u[g]||(u[g]=[]),u[g].push(p.word.w))}const d=Object.entries(u).filter(([,p])=>p.length>=2).map(([p])=>p);if(d.length===0)return[];const m=[],h=ze([...d]);for(let p=0;m.length<a&&p<a*4;p++){const g=h[p%h.length],v=u[g];if(v.length<2)continue;const b=ze([...v]),y=b[0],f=b[1];if(!y||!f||y===f||(s.get(y)||y)===(s.get(f)||f))continue;const x=s.get(f)||f,_=i.filter(w=>c(w)!==g&&w!==y&&w!==f&&w.length===f.length&&(s.get(w)||w)!==x);if(_.length<r)continue;const C=fs(_,r);if(C.length<r)continue;const A=ze([f,...C]);m.push({id:At("SWS-item"),index:m.length+1,sourceWord:y,targetSyllable:g,word:f,choices:A,answerIndex:A.indexOf(f)})}return m}function fp(e,t,a){return ta(e,t).map((r,n)=>{const i=Qr(r.usable)??"",s=[...r.word.w],c=[...i],u=s.findIndex((m,h)=>m!==c[h]),d=ze(r.usable.filter(m=>m&&m!==i)).slice(0,2);return{id:At(a),index:n+1,word:r.word.w,original:r.word.w,changed:i,changedFrom:u>=0?s[u]:"",changedTo:u>=0?c[u]:"",distractors:d}})}async function vp(e,t,a){const{count:r=10}=t,n=eo(),i=ea.filter(g=>g.w&&g.s===e),s=t.excludeNoImage?sr(i.map(g=>g.w)):null,c=s?i.filter(g=>s.has(g.w)):i,u=new Set(c.map(g=>g.w)),d=Vi(u),m=t.phonemeView??"char",h=t.composition??null,p=[];for(const g of ze(c)){if(p.length>=r)break;const v=Gi(g.w,h,n,m,d,null,null);if(!v)continue;const b=v.distractors[0],y=[...g.w],f=[...b],x=y.findIndex((_,C)=>_!==f[C]);p.push({id:At(a),index:p.length+1,word:g.w,original:g.w,changed:b,changedFrom:x>=0?y[x]:"",changedTo:x>=0?f[x]:"",distractors:v.distractors.slice(1)})}return p}async function qw(e){return vp(2,e,"CS2-item")}async function Yw(e){return vp(3,e,"CS3-item")}async function Uw(e){const t=(await Wt({...e,difficulty:"count",contrastCount:1})).filter(a=>a.word.s===1&&a.usable.length>=1);return fp(t,e.count??10,"CP1-item")}async function Kw(e){const t=e.difficulty&&e.difficulty!=="random"?e.difficulty:"count",a=(await Wt({...e,difficulty:t,contrastCount:1})).filter(r=>r.word.s===2&&r.usable.length>=1);return fp(a,e.count??10,"CP2-item")}async function Zw(e){const{count:t=10}=e,a=(await Wt({...e})).filter(r=>r.word.s===2);return ta(a,t).map((r,n)=>({id:At("M2S-item"),index:n+1,word:r.word.w,answer:r.word.w,parts:[...r.word.w]}))}async function Xw(e){const{count:t=10}=e,a=(await Wt({...e})).filter(r=>r.word.s===3);return ta(a,t).map((r,n)=>({id:At("M3S-item"),index:n+1,word:r.word.w,answer:r.word.w,parts:[...r.word.w]}))}async function Qw(e){const{count:t=10}=e,a=(await Wt({...e})).filter(c=>c.word.s===2),r=eo(),n=new Set(ea.map(c=>c.w)),i=e.phonemeView??"char",s=[];for(const c of ze(a)){if(s.length>=t)break;const u=zi(c.word.w,e.composition??null,r,i,n);if(!u)continue;const[d,...m]=u.distractors,h=[...c.word.w],p=h[0]===d?h[1]:h[0];s.push({id:At("D2-item"),index:s.length+1,original:c.word.w,word:c.word.w,dropped:p,missingResult:d,distractors:m})}return s}async function Jw(e){const{count:t=10}=e,a=(await Wt({...e})).filter(c=>c.word.s===3),r=eo(),n=new Set(ea.map(c=>c.w)),i=e.phonemeView??"char",s=[];for(const c of ze(a)){if(s.length>=t)break;const u=Ii(c.word.w,e.composition??null,r,i,n);if(!u)continue;const[d,...m]=u.distractors,h=[...c.word.w];let p="";for(let g=0;g<h.length;g++)if(h.filter((v,b)=>b!==g).join("")===d){p=h[g];break}s.push({id:At("D3-item"),index:s.length+1,original:c.word.w,word:c.word.w,dropped:p,missingResult:d,distractors:m})}return s}async function e4(e){const{count:t=10}=e,a=(await Wt({...e})).filter(c=>c.word.s>=2),r=eo(),n=new Set(ea.map(c=>c.w)),i=e.phonemeView??"char",s=[];for(const c of ze(a)){if(s.length>=t)break;const u=Oi(c.word.w,e.composition??null,r,i,n);if(!u)continue;const[d,...m]=u.distractors,h=c.word.w,p=h.startsWith(d)?h.slice(d.length):h.endsWith(d)?h.slice(0,h.length-d.length):"";s.push({id:At("DPC-item"),index:s.length+1,original:h,word:h,dropped:p,missingResult:d,distractors:m})}return s}async function t4(e){const{count:t=10}=e,a=(await Wt({...e})).map(r=>r.word.w);return a.length<3?[]:Array.from({length:t},(r,n)=>{const i=ta(a,3);return{id:At("LRO-item"),index:n+1,sequence:i,choices:ze(i)}})}function en(e,t,a){const r=ea.filter(s=>s.w&&s.s===e),n=t?sr(r.map(s=>s.w)):null,i=[];for(const s of r)if(!(n&&!n.has(s.w))){if(a){const c=Ne(s.w);if(!c||!a(c))continue}i.push(s)}return i}function a4(e){const t=en(1,e.excludeNoImage??!1,a=>a.jong===0);return ta(t,e.count??10).map((a,r)=>{const n=Ne(a.w);return{id:At("M2P-item"),index:r+1,parts:[qe[n.cho],dt[n.jung]],answer:a.w,word:a.w}})}function o4(e){const t=en(1,e.excludeNoImage??!1,a=>a.jong>0&&!ho[a.jong]);return ta(t,e.count??10).map((a,r)=>{const n=Ne(a.w);return{id:At("M3P-item"),index:r+1,parts:[qe[n.cho],dt[n.jung],gt[n.jong]],answer:a.w,word:a.w}})}function r4(e){const t=Wr.DROP_FINAL_CONSONANT_FROM_1SYLL,a=en(t.syllables,e.excludeNoImage??!1,t.syllable),r=eo(),n=[];for(const i of ze(a)){if(n.length>=(e.count??10))break;const s=Fi(i.w,null,r);if(!s)continue;const[c,...u]=s.distractors;n.push({id:At("DFC-item"),index:n.length+1,original:i.w,word:i.w,result:c,distractors:u})}return n}function n4(e){const t=Wr.REMOVE_CONSONANT_AND_IDENTIFY_PHONEME,a=en(t.syllables,e.excludeNoImage??!1,t.syllable),r=eo(),n=[];for(const i of ze(a)){if(n.length>=(e.count??10))break;const s=Hi(i.w,null,r);if(!s)continue;const c=Ne(r.get(i.w)||i.w);if(!c)continue;const[u,...d]=s.distractors;n.push({id:At("RCP-item"),index:n.length+1,base:i.w,word:i.w,missingConsonant:qe[c.cho],remaining:u,distractors:d})}return n}const tn=new Map;let yp=null,xp=null;async function Cp(e,t={}){const a=fo(),r=Ka();(a!==yp||r!==xp)&&(tn.clear(),yp=a,xp=r);const n=`${e}:${bp(t)}`;if(tn.has(n))return tn.get(n);const i=await s4(e,t);return tn.set(n,i),i}const i4={SAME_SOUND_PICK:e=>gp("SSP",e),HEAR_AND_PICK_SAME:e=>gp("HPS",e),HEAR_AND_PICK_INCLUDED:e=>Hw(e),SAME_OR_DIFF:e=>Vw(e),STARTS_WITH_SAME_SOUND:e=>Gw(e),LISTEN_AND_REMEMBER_ORDER:e=>t4(e),MERGE_2_SYLLABLES:e=>Zw(e),MERGE_3_SYLLABLES:e=>Xw(e),MERGE_2_PHONEMES:e=>a4(e),MERGE_3_PHONEMES:e=>o4(e),DROP_1_FROM_2SYLL:e=>Qw(e),DROP_1_FROM_3SYLL:e=>Jw(e),DROP_PART_FROM_COMPOUND:e=>e4(e),DROP_FINAL_CONSONANT_FROM_1SYLL:e=>r4(e),REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:e=>n4(e),CHANGE_1_SYLL_IN_2SYLL:e=>qw(e),CHANGE_1_SYLL_IN_3SYLL:e=>Yw(e),CHANGE_1_PHONEME_IN_1SYLL:e=>Uw(e),CHANGE_1_PHONEME_IN_2SYLL:e=>Kw(e)};async function s4(e,t={}){const a=i4[e];return a?await a(t):[]}async function l4(e){const t=[null,"count"],a=Object.keys(go);let r=0;for(const n of t)for(const i of a){const s=go[i];Cp(i,{difficulty:s.difficulty?n:null,choseong:null,count:10,excludeNoImage:e}).catch(()=>{}),++r%6===0&&await new Promise(c=>setTimeout(c,0))}}async function c4(e){return(await Wt({...e,fullCount:!0})).length}async function d4(e={}){const t=[];for(const c of ea)c.w&&t.push(c.w);const a=e.excludeNoImage?sr(t):t,r=new Set,n=new Set,i=new Set,s=new Set;for(const c of a){s.add(mo(c));for(const u of c){const d=Ne(u);if(d&&(qe[d.cho]!=="\u3147"&&r.add(qe[d.cho]),n.add(dt[d.jung]),d.jong>0)){i.add(gt[d.jong]);const m=ho[d.jong];m&&m.forEach(h=>i.add(h))}}}return{cho:r,jung:n,jong:i,syllable:s}}const _p={free:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:0,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},personal_standard:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:2,sentenceDataLevel:2,crossword:!0,crosswordMid:!0,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},mgr_free:{maxCustomers:5,visitWord:!0,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:1,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},none:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!1,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!1,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:0,sentenceDataLevel:0,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},lite_word:{maxCustomers:10,visitWord:!0,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:0,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!1},lite_sentence:{maxCustomers:10,visitWord:!1,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!1,wordTableSetting:!1,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!1,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:0,sentenceDataLevel:1,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!0},lite:{maxCustomers:10,visitWord:!0,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:1,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},standard:{maxCustomers:30,visitWord:!0,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:2,sentenceDataLevel:2,crossword:!0,crosswordMid:!0,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},pro:{maxCustomers:50,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!0,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:3,sentenceDataLevel:3,crossword:!0,crosswordMid:!0,crosswordHigh:!0,wordTrainingView:!0,sentenceTrainingView:!0},enterprise:{maxCustomers:1/0,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!0,managerCustomerSplit:!0,managerManagement:!0,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!0,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!0,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!0,wordDataLevel:3,sentenceDataLevel:3,crossword:!0,crosswordMid:!0,crosswordHigh:!0,wordTrainingView:!0,sentenceTrainingView:!0}},wp={none:0,free:1,personal_standard:3,mgr_free:4,lite_word:5,lite_sentence:5,lite:6,standard:7,pro:8,enterprise:9},kp={free:{sentenceTrainingDaily:2,wordTrainingDaily:2,gameDaily:1},personal_standard:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null},mgr_free:{sentenceTrainingDaily:2,wordTrainingDaily:2,gameDaily:1,trainingItemMax:5,customerMax:5,homeworkSendDaily:1},lite:{sentenceTrainingDaily:5,wordTrainingDaily:5,gameDaily:5,trainingItemMax:10,customerMax:10,homeworkSendDaily:10},standard:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:30,customerMax:30,homeworkSendDaily:30},pro:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:null,customerMax:50,homeworkSendDaily:50},enterprise:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:null,customerMax:null,homeworkSendDaily:null}};function Sp(e){const t=e.toLowerCase();return t.startsWith("manager_enterprise")?"enterprise":t.startsWith("manager_pro")?"pro":t.startsWith("manager_standard")?"standard":t.startsWith("manager_lite_word")?"lite_word":t.startsWith("manager_lite_sentence")?"lite_sentence":t.startsWith("manager_lite")||t.startsWith("mgr_lite")?"lite":t.startsWith("mgr_standard")?"standard":t.startsWith("mgr_pro")?"pro":t.startsWith("content_")||t.startsWith("speechear_")||t.startsWith("light_")||t==="light"?"personal_standard":"none"}const Ap=5,Tp=5;function Bp({rank:e,voteCount:t,quota:a=5}){return e<a&&t>0}const Np={selected:"ALREADY_SELECTED",added:"ALREADY_ADDED",rejected:"ALREADY_REJECTED"};var u4=Object.freeze({__proto__:null,CAPABILITY:go,CHOSEONG:qe,JONGSEONG:gt,JUNGSEONG:dt,LONG_STORIES:za,NETWORK_ERROR_MESSAGE:qi,NOISE_DATAS:Ra,ORDER_SETS:Ia,PLAN_FEATURES:_p,PLAN_LIMITS:kp,SHORT_STORIES:$a,TIER_RANK:wp,TOPIC_TYPES:cp,TRAINING_TYPES:Zr,TRAINING_TYPE_I18N_KEY:bs,WORD_SUGGESTION_ACCOUNT_LIMIT:Tp,WORD_SUGGESTION_EXISTING_ERROR:Np,WORD_SUGGESTION_WEEKLY_QUOTA:Ap,applyFontScale:ls,applyTheme:is,buildChangeWholeSyllableProblem:Gi,buildDropCompoundProblem:Oi,buildDropContrast3Problem:Ii,buildDropContrastProblem:zi,buildDropFinalConsonantProblem:Fi,buildMultiPartPosContrast:yi,buildPairIndex:Qd,buildRemoveConsonantProblem:Hi,buildSyllableMaskIndex:Vi,bulkSetImageExistence:Fd,cardQuestionTitle:yu,checkImageExists:qo,classifyPairDifficulty:ii,clearAudioExistsCache:Md,clearImageExistenceCache:ri,clearPairIndexCache:gi,composeSyllable:ua,computeDailySelection:ds,configureImageResolver:Id,configureNoiseSettingsStore:Wu,configurePronunciationResolver:Rd,configureStorage:Kn,configureTTS:Ld,configureTrainingCategories:tp,copyText:as,createDecompCache:ni,createTTSUrlResolver:Gu,dateToDb:ep,downloadCsvText:Su,downloadSound:Br,ensureTrainingDataLoaded:ms,escapeCsvField:ku,fileExists:Zn,filterContrastCandidates:vi,finalToPhoneme:Fr,firstChoseongOf:si,formatCount:or,formatDateKo:qu,formatDateLocale:Uu,formatDateLongKo:Yu,formatDateLongLocale:Ku,formatDatetimeKo:Zu,formatPhone:Qu,formatRelativeTime:qr,formatTimeHM:Ur,formatYmd:Yr,getAssetBaseUrl:Yn,getDailySelection:sp,getElementAnalyser:Ho,getErrorMessage:Vr,getImageExistenceStats:Er,getImageExistsCached:oi,getImageResolver:Ma,getNoiseBaseUrl:Xn,getPairIndex:Ka,getPlanTier:Sp,getPronunciationResolver:ei,getSavedFontScale:ss,getSavedTheme:ns,getSignedOrPublicUrl:Io,getTTSFallbackUrlResolver:Jn,getTTSUrlResolver:Oo,getTodayKst:Gr,getTopicTypes:Kr,getTrainingPools:us,getTrainingTypes:rs,getWordPool:fo,hasQuestionWordConstraint:pu,hasSel:ft,hasStructureContrast:Uo,initFontScale:np,initTheme:op,isAllChoseong:ci,isManualOnlyType:mu,isNetworkErrorMessage:Yi,isSyllablePattern:pi,isThisWeekPick:Bp,isTrainingDataLoaded:lp,isValidQuestionWord:hu,itemCorrectness:Xi,jamoToNamesForSpeech:xu,loadGameLeaderboard:Fu,loadMyGameRanks:Ou,loadNoiseSettings:es,loadTrainingData:hs,logCrossword:Eu,logTrainingCompletion:Zi,logTrainingTime:Ki,matchSyllables:Qa,matchesChoseongSearch:Wd,matchesSyllablePattern:hi,matchesWordQuery:po,mergeQuestionText:Ri,minimalPairDistractors:jr,normalizeDate:Ju,officialSoundPath:Vu,parseSortValue:wu,parseSyllable:Ne,patternToComposition:Ud,phonemePartsOf:vu,pickEuRo:Li,pickEulReul:Ni,pickEunNeun:Ei,pickIga:Ti,pickWaGwa:ji,prewarmImageCache:Od,primarySelPart:er,readLevel:ti,reorderArray:Mi,resolveAssetUrl:$o,resolveSoundPath:Tr,resumeAudioMeter:Wo,sample:Qt,saveNoiseSettings:ts,searchAndRankWords:Zd,setAssetBaseUrl:Ed,setCrosswordLogger:Du,setGameLeaderboardLoader:zu,setGameRanksLoader:$u,setGameScoreSubmitter:Ru,setTrainingCompletionLogger:Nu,setTrainingTimeLogger:Bu,setWordPool:Tu,shuffle:ze,sortToValue:_u,soundOf:Hr,speak:Bd,stopSpeaking:Nd,submitGameScore:Iu,syllMatchesComp:Pa,syllableContrasts:Ja,syllableLength:mo,syllablePron:$i,toBase64UrlSafe:Hu,toChoseong:li,toItemResults:Qi,toKstHm:Xu,toKstYmd:ka,toStandardPronunciation:lu,toStorageName:tr,toUserErrorMessage:Cu,validateSyllableSearchInput:Kd,withEuRo:uu,withEulReul:Di,withEunNeun:cu,withIga:Bi,withWaGwa:du,wordContainsChoseong:Vd,wordContainsJongseong:qd,wordContainsJungseong:Gd,wordHasNoCoda:di,wordHasSyllableMatching:ui,wrongItems:ju});function p4(e){return typeof window>"u"?"":V_.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use"],FORBID_ATTR:["xlink:href","href"]})}function h4(e){const[t,a]=l.useState(null),[r,n]=l.useState(null),[i,s]=l.useState(null),[c,u]=l.useState(null);return l.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),n(null),s(null);return}const d=e.split("/").pop();let m=e;d&&(e.startsWith("/")?m=$o(e):/^(Logo|Symbol)/i.test(d)?m=$o(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),m=e)),a(m)},[e]),l.useEffect(()=>{if(!t)return;let d=!1;async function m(){try{let h=await fetch(t);h.ok||(h=await fetch(t));const p=h.headers.get("content-type")||"";if(d)return;if(p.includes("svg")){n("mask");return}if(p.startsWith("image/")){n("img");return}const g=await fetch(t);if(!g.ok)throw new Error("not ok");const v=await g.text();if(d)return;if(/^\s*<svg[\s>]/i.test(v)){const b=p4(v);if(!b){n("none");return}s(b),n("inline");return}n("none")}catch{d||n("none")}}return m(),()=>{d=!0}},[t]),l.useEffect(()=>{let d=!1,m=null;return r==="mask"&&t&&fetch(t).then(h=>{if(!h.ok)throw new Error("fetch failed");return h.blob()}).then(h=>{d||(m=URL.createObjectURL(h),u(m))}).catch(()=>{d||n("img")}),()=>{d=!0,m&&URL.revokeObjectURL(m),u(null)}},[r,t]),{iconToUse:t,mode:r,svgText:i,blobUrl:c}}function Pe(e){const{icon:t,label:a,className:r,imgClassName:n,maskClassName:i,svgClassName:s,wrapperStyle:c,size:u}=e||{},d=r??"iconRenderer-icon",m=n??"iconRenderer-icon-image",h=i??"iconRenderer-icon-mask",p=s??"iconRenderer-icon-svg",g=typeof t=="string"?t:null,v=c_(g),{iconToUse:b,mode:y,svgText:f,blobUrl:x}=h4(g),_=(S,D={})=>o.jsx("span",{className:d,style:c,...D,children:S}),C=(S,D={})=>o.jsx("img",{src:S,alt:typeof a=="string"?a:a?String(a):"",className:m,...D});if(!t)return null;if(typeof t!="string")return _(t);if(t==="none")return _(o.jsx("span",{className:p,dangerouslySetInnerHTML:{__html:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true"></svg>'}}),{"aria-hidden":"true"});if(v)try{return _(l.createElement(v,{className:p,size:typeof u=="number"?u:20}),{"aria-hidden":"true"})}catch{}if(b&&b.endsWith(".svg")){if(y==="mask"){const S={"--icon-url":x?`url(${x})`:`url(${b})`};return _(o.jsx("span",{className:h,style:S}),{"aria-hidden":"true"})}return y==="img"?_(C(b,{onError:S=>{S.currentTarget.onerror=null,S.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):y==="inline"?_(o.jsx("span",{className:p,dangerouslySetInnerHTML:f?{__html:f}:void 0}),{"aria-hidden":"true"}):_(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return C($o(t),{style:c,onError:S=>{S.currentTarget.onerror=null,S.currentTarget.style.display="none"}});const A=typeof u=="number"?u:20,w=`<svg width="${A}" height="${A}" 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 _(o.jsx("span",{className:p,dangerouslySetInnerHTML:{__html:w}}),{"aria-hidden":"true"})}function Dp({icon:e,emoji:t,title:a,message:r,hint:n,action:i,compact:s,className:c}){return o.jsxs("div",{className:ye("empty-state",s&&"empty-state--compact",c),children:[t&&o.jsx("span",{className:"empty-state__emoji",children:t}),e&&o.jsx(Pe,{icon:e,className:"empty-state__icon"}),a&&o.jsx("p",{className:"empty-state__title body-2",children:a}),r&&o.jsx("p",{className:"empty-state__message body-3",children:r}),n&&o.jsx("p",{className:"empty-state__hint caption-1",children:n}),i&&o.jsxs("button",{className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:i.onClick,children:[i.icon&&o.jsx(Pe,{icon:i.icon,className:"button__icon"}),o.jsx("span",{className:"button__label button-1",children:i.label})]})]})}var m4=".ihabdevteam-core-scope .error-state__icon{color:var(--color-error)}";Q(m4);function Ep({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:n,className:i}){const{t:s}=me.useTranslation();return o.jsxs("div",{className:ye("empty-state","error-state",i),role:"alert",children:[o.jsx(Pe,{icon:a,className:"empty-state__icon error-state__icon"}),o.jsx("p",{className:"empty-state__message body-3",children:e??s("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&o.jsx("p",{className:"empty-state__hint caption-1",children:t}),r&&o.jsxs("button",{className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:r,children:[o.jsx(Pe,{icon:"rotate-cw",className:"button__icon"}),o.jsx("span",{className:"button__label button-1",children:n??s("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}var b4=".ihabdevteam-core-scope .action-card{--ac-color:var(--color-main);--ac-color-a10:var(--color-main-a10);aspect-ratio:1/1;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-l);box-shadow:var(--shadow-card);cursor:pointer;display:block;overflow:hidden;transition:transform .2s ease-out,box-shadow .2s ease-out,border-color .2s ease-out;width:100%}.ihabdevteam-core-scope .action-card--sub{--ac-color:var(--color-sub);--ac-color-a10:var(--color-sub-a10)}.ihabdevteam-core-scope .action-card:focus-visible{outline:none}.ihabdevteam-core-scope .action-card:not(.action-card--disabled):focus-visible,.ihabdevteam-core-scope .action-card:not(.action-card--disabled):hover{border-color:var(--ac-color);box-shadow:var(--shadow-panel);transform:translateY(-4px)}.ihabdevteam-core-scope .action-card--disabled{cursor:wait;opacity:.6}.ihabdevteam-core-scope .action-card__body{display:flex;flex-direction:column;gap:var(--spacing-m);height:100%;padding:var(--spacing-l)}.ihabdevteam-core-scope .action-card__chip{align-items:center;background:var(--ac-color-a10);border-radius:var(--radius-m);color:var(--ac-color);display:flex;height:64px;justify-content:center;width:64px}.ihabdevteam-core-scope .action-card__text{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .action-card__title{color:var(--color-text-primary);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight-bold);letter-spacing:var(--text-h2-spacing);line-height:var(--text-h2-line);margin:0}.ihabdevteam-core-scope .action-card__desc{color:var(--color-lightGray);font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight);line-height:var(--text-body-2-line);margin:0}.ihabdevteam-core-scope .action-card__cta{align-items:center;color:var(--ac-color);display:flex;font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight-bold);gap:var(--spacing-xs);justify-content:flex-end;line-height:var(--text-body-2-line);margin-top:auto;padding-right:var(--spacing-s);padding-top:var(--spacing-s)}.ihabdevteam-core-scope .action-card__arrow{display:flex;transition:transform .2s}.ihabdevteam-core-scope .action-card:not(.action-card--disabled):hover .action-card__arrow{transform:translateX(4px)}";Q(b4);function jp({icon:e,title:t,description:a,cta:r,tone:n="main",disabled:i=!1,onClick:s,className:c=""}){const u=()=>{i||s?.()};return o.jsx("section",{role:"button",tabIndex:i?-1:0,"aria-disabled":i||void 0,"aria-label":t,onClick:u,onKeyDown:d=>{(d.key==="Enter"||d.key===" ")&&(d.preventDefault(),u())},className:ye("action-card",`action-card--${n}`,i&&"action-card--disabled",c),children:o.jsxs("div",{className:"action-card__body",children:[o.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:o.jsx(Pe,{icon:e,size:34})}),o.jsxs("div",{className:"action-card__text",children:[o.jsx("h2",{className:"action-card__title",children:t}),o.jsx("p",{className:"action-card__desc",children:a})]}),o.jsxs("div",{className:"action-card__cta",children:[o.jsx("span",{children:r}),o.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:o.jsx(Pe,{icon:"arrow-right",size:18})})]})]})})}function Lp({as:e="div",className:t="",children:a,storage:r,...n}){r&&Kn({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});const i=ye("ihabdevteam-core-scope",t);return o.jsx(e,{className:i,...n,children:a})}var g4=".ihabdevteam-core-scope .notice-box{background:var(--color-darkWhite);border-radius:var(--radius-m);color:var(--color-gray);margin:0 auto var(--spacing-page);padding:var(--spacing-l);position:relative;text-align:left}.ihabdevteam-core-scope .notice-box ul{margin:0;padding:0 0 0 18px}.ihabdevteam-core-scope .notice-box__inner{border-radius:var(--radius-s);padding:12px 14px;text-align:left}.ihabdevteam-core-scope .notice-box__title{color:var(--color-darkGray);margin:0 0 10px}.ihabdevteam-core-scope .notice-box__body,.ihabdevteam-core-scope .notice-box__line{color:var(--color-deepGray)}.ihabdevteam-core-scope .notice-box--default{border-color:var(--color-whiteLine)}.ihabdevteam-core-scope .notice-box--dashed{background:var(--color-deepWhite);border:1px dashed var(--color-whiteLine)}.ihabdevteam-core-scope .notice-box--important{border:1px solid var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .notice-box__dismiss{background:none;border:none;border-radius:var(--radius-xs);color:var(--color-lightGray);cursor:pointer;font-size:18px;line-height:1;padding:2px 6px;position:absolute;right:10px;top:8px;transition:color .12s}.ihabdevteam-core-scope .notice-box__dismiss:hover{color:var(--color-gray)}@media (max-width:767px){.ihabdevteam-core-scope .notice-box,.ihabdevteam-core-scope .notice-box__inner{padding:var(--spacing-s)}}";Q(g4);function Mp({title:e="",lines:t=[],notices:a=null,children:r,variant:n="default",dismissible:i=!1,className:s=""}){const{t:c}=me.useTranslation(),[u,d]=l.useState(!1),m=l.useCallback(()=>d(!0),[]);if(u)return null;const h=`notice-box notice-box--${n} body-2 ${s}`.trim();if(a&&Array.isArray(a)&&a.length)return o.jsx("div",{className:h,role:"note",children:a.map((g,v)=>o.jsxs("div",{className:"notice-box__inner",children:[g.title?o.jsx("span",{className:"notice-box__title body-3",children:g.title}):null,o.jsx("div",{className:"notice-box__body",children:g.lines&&g.lines.length?o.jsx("div",{children:g.lines.map((b,y)=>o.jsx("span",{className:"notice-box__line body-3",children:b},y))}):g.children??null})]},v))});const p=e||t.length?o.jsxs("div",{className:"notice-box__inner",children:[e?o.jsx("span",{className:"notice-box__title body-1",children:e}):null,o.jsx("div",{className:"notice-box__body",children:t.length?o.jsx("ul",{children:t.map((g,v)=>o.jsx("li",{className:"notice-box__line",children:g},v))}):r})]}):o.jsx("div",{className:"notice-box__inner",children:r});return o.jsxs("div",{className:h,role:"note",children:[p,i&&o.jsx("button",{className:"notice-box__dismiss",onClick:m,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}var f4=".ihabdevteam-core-scope .button{align-items:center;background:var(--color-white);border:0;border:var(--button-border,0);box-sizing:border-box;color:inherit;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);padding:0 12px;transition:background-color .14s ease,color .14s ease,transform .1s ease,box-shadow .14s ease}.ihabdevteam-core-scope .button__icon,.ihabdevteam-core-scope .button__left,.ihabdevteam-core-scope .button__right{align-items:center;color:inherit;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .button--align-center .button__label,.ihabdevteam-core-scope .button--align-right .button__label{flex:1 1 auto;text-align:center}.ihabdevteam-core-scope .button__icon{height:24px;width:24px}.ihabdevteam-core-scope .button__icon--small{height:16px;width:16px}.ihabdevteam-core-scope .button__icon--medium{height:24px;width:24px}.ihabdevteam-core-scope .button__icon--large{height:36px;width:36px}.ihabdevteam-core-scope .button__center-group{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .button__center-group .button__label{display:inline-block;flex:0 1 auto;text-align:center}.ihabdevteam-core-scope .button__label{display:block;white-space:normal}.ihabdevteam-core-scope .button__label-text{align-items:center;display:inline-flex;justify-content:center;max-width:100%;vertical-align:middle;white-space:normal;word-break:break-word}.ihabdevteam-core-scope .button__label-text--has-sub{flex-direction:column;gap:3px}.ihabdevteam-core-scope .button__count{color:var(--color-main);font-weight:700;margin-left:4px}.ihabdevteam-core-scope .button--variant-main .button__count,.ihabdevteam-core-scope .is-selected .button__count,.ihabdevteam-core-scope [aria-pressed=true] .button__count{color:#fff}.ihabdevteam-core-scope .button__label:has(>.button__label-text+.button__label-text){gap:5px}.ihabdevteam-core-scope .button__sub-label-text{color:var(--button-subLabel-color,var(--color-gray));display:block}.ihabdevteam-core-scope .button__icon-img{display:block;height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.ihabdevteam-core-scope .button__icon-mask{background-color:currentColor;display:block;height:100%;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.ihabdevteam-core-scope .button__icon-svg{align-items:center;display:inline-flex;height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .button__icon-svg svg{display:block;height:100%;width:100%}.ihabdevteam-core-scope .button__icon-svg svg,.ihabdevteam-core-scope .button__icon-svg svg *{fill:currentColor;stroke:currentColor}.ihabdevteam-core-scope .button .button__label{color:currentColor;color:var(--button-text-color,currentColor);min-height:20px;min-width:20px}.ihabdevteam-core-scope .button .button__icon,.ihabdevteam-core-scope .button .button__left,.ihabdevteam-core-scope .button .button__right{color:currentColor;color:var(--button-icon-color,currentColor)}.ihabdevteam-core-scope .button--align-left{justify-content:flex-start}.ihabdevteam-core-scope .button--align-center{justify-content:center}.ihabdevteam-core-scope .button--align-right{justify-content:flex-end}.ihabdevteam-core-scope .button--align-left .button__label{align-items:center;display:inline-flex;flex:1 1 auto}.ihabdevteam-core-scope .button--align-left .button__label-text{justify-content:flex-start;text-align:left}.ihabdevteam-core-scope .button--align-center .button__label{align-items:center;display:flex;flex:1 1 auto;justify-content:center;text-align:center}.ihabdevteam-core-scope .button--align-right .button__label{flex:1 1 auto;text-align:right}.ihabdevteam-core-scope .button--align-grid{justify-content:center}.ihabdevteam-core-scope .button--align-grid .button__label{display:grid;flex:1 1 auto;grid-auto-columns:1fr;grid-auto-flow:column;text-align:center}.ihabdevteam-core-scope .button.button--no-bg{background:transparent;border-color:transparent}.ihabdevteam-core-scope .button--variant-danger{--button-text-color:var(--color-error);--button-icon-color:var(--color-error);--button-subLabel-color:var(--color-error);background:var(--color-deepWhite);border:var(--button-border,1px solid var(--color-error))}.ihabdevteam-core-scope .button--variant-danger:focus-visible,.ihabdevteam-core-scope .button--variant-danger:hover{--button-text-color:var(--color-error);--button-icon-color:var(--color-error);--button-subLabel-color:var(--color-error);background:var(--color-error-a10);border-color:var(--color-error)}.ihabdevteam-core-scope .button--variant-danger.is-selected,.ihabdevteam-core-scope .button--variant-danger[aria-pressed=true]{--button-text-color:#fff;--button-icon-color:#fff;--button-subLabel-color:#fff;background:var(--color-error);border-color:var(--color-error)}.ihabdevteam-core-scope .button--variant-default{--button-text-color:var(--color-darkGray);--button-icon-color:var(--color-lightGray);--button-subLabel-color:var(--color-gray);background:var(--color-deepWhite);border:var(--button-border,1px solid var(--color-whiteLine))}.ihabdevteam-core-scope .button--variant-default:focus-visible,.ihabdevteam-core-scope .button--variant-default:hover{--button-text-color:var(--color-black);--button-icon-color:var(--color-main);--button-subLabel-color:var(--color-black);background:var(--color-white);border-color:var(--color-main)}.ihabdevteam-core-scope .button--variant-default.is-selected,.ihabdevteam-core-scope .button--variant-default[aria-pressed=true]{--button-text-color:#fff;--button-icon-color:#fff;--button-subLabel-color:#fff;background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .button--variant-main{--button-subLabel-color:var(--color-white-a80);background:var(--color-main);border:var(--button-border,1px solid var(--color-main));color:#fff}.ihabdevteam-core-scope .button--variant-main:focus-visible,.ihabdevteam-core-scope .button--variant-main:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-sub);border-color:var(--color-sub);color:#fff}.ihabdevteam-core-scope .button--variant-main.is-selected,.ihabdevteam-core-scope .button--variant-main[aria-pressed=true]{--button-subLabel-color:var(--color-white-a80);background:var(--color-sub);color:#fff}.ihabdevteam-core-scope .button--variant-sub{--button-subLabel-color:var(--color-white-a80);background:var(--color-primary,var(--color-sub));color:#fff}.ihabdevteam-core-scope .button--variant-sub:focus-visible,.ihabdevteam-core-scope .button--variant-sub:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-uiAccent);color:#fff}.ihabdevteam-core-scope .button--variant-transparent-white{--button-subLabel-color:var(--color-white-a60);background:transparent;border:var(--button-border,1px solid var(--color-white-a80));color:#fbfdff}.ihabdevteam-core-scope .button--variant-transparent-white:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-white:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-white-a10);color:#fff}.ihabdevteam-core-scope .button--variant-transparent-white.is-selected,.ihabdevteam-core-scope .button--variant-transparent-white[aria-pressed=true]{--button-subLabel-color:var(--color-lightGray);background:var(--color-white);color:var(--color-main)}.ihabdevteam-core-scope .button--variant-transparent-gray{--button-subLabel-color:var(--color-gray-a60);background:transparent;border:var(--button-border,1px solid var(--color-gray-a80));color:var(--color-gray-a80)}.ihabdevteam-core-scope .button--variant-transparent-gray:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-gray:hover{--button-subLabel-color:var(--color-gray-a60);background:var(--color-gray-a10);color:var(--color-gray)}.ihabdevteam-core-scope .button--variant-transparent-lightGray{--button-subLabel-color:var(--color-gray-a60);background:transparent;border:var(--button-border,1px solid var(--color-lightGray-a80));color:var(--color-gray)}.ihabdevteam-core-scope .button--variant-transparent-lightGray:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-lightGray:hover{--button-subLabel-color:var(--color-gray-a60);background:var(--color-lightGray-a10);color:var(--color-deepGray)}.ihabdevteam-core-scope .button--variant-disabled{--button-subLabel-color:var(--color-disabled);background-color:transparent;border:var(--button-border,1px solid var(--color-whiteLine));color:var(--color-disabled)}.ihabdevteam-core-scope .button--variant-disabled .button__icon,.ihabdevteam-core-scope .button--variant-disabled .button__left,.ihabdevteam-core-scope .button--variant-disabled .button__right{color:var(--color-disabled)}.ihabdevteam-core-scope .button--variant-disabled-covered{background-color:var(--color-darkWhite);border:var(--button-border,1px solid var(--color-darkWhite));border-color:var(--color-whiteLine);color:transparent}.ihabdevteam-core-scope .button--variant-disabled-covered .button__icon,.ihabdevteam-core-scope .button--variant-disabled-covered .button__left,.ihabdevteam-core-scope .button--variant-disabled-covered .button__right{color:transparent}.ihabdevteam-core-scope .button--variant-disabled-faded,.ihabdevteam-core-scope .button--variant-disabled-invisibled{background:transparent}.ihabdevteam-core-scope .button--variant-disabled-faded .button__icon,.ihabdevteam-core-scope .button--variant-disabled-faded .button__left,.ihabdevteam-core-scope .button--variant-disabled-faded .button__right,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__icon,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__label,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__left,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__right{color:transparent}.ihabdevteam-core-scope .button:disabled,.ihabdevteam-core-scope .button[disabled]{cursor:default;pointer-events:none}.ihabdevteam-core-scope .button--shape-rounded{border-radius:8px!important;border-radius:var(--button-rounded-radius,8px)!important}.ihabdevteam-core-scope .button--shape-pill{border-radius:9999px!important}.ihabdevteam-core-scope .button72{--button-rounded-radius:18px;border-radius:36px;height:72px;justify-content:center}.ihabdevteam-core-scope .button72--bar{min-width:220px}.ihabdevteam-core-scope .button72--dot{padding:0;width:72px}.ihabdevteam-core-scope .button56{--button-rounded-radius:14px;border-radius:28px;height:56px;justify-content:center}.ihabdevteam-core-scope .button56--bar{min-width:190px}.ihabdevteam-core-scope .button56--dot{padding:0;width:56px}.ihabdevteam-core-scope .button52{--button-rounded-radius:13px;border-radius:26px;height:52px;justify-content:center}.ihabdevteam-core-scope .button52--bar{min-width:175px}.ihabdevteam-core-scope .button52--dot{padding:0;width:52px}.ihabdevteam-core-scope .button48{--button-rounded-radius:12px;border-radius:24px;height:48px;justify-content:center}.ihabdevteam-core-scope .button48--bar{min-width:160px}.ihabdevteam-core-scope .button48--dot{padding:0;width:48px}.ihabdevteam-core-scope .button40{--button-rounded-radius:10px;border-radius:20px;height:40px;justify-content:center}.ihabdevteam-core-scope .button40--bar{min-width:100px}.ihabdevteam-core-scope .button40--dot{padding:0;width:40px}.ihabdevteam-core-scope .button40 .button__icon,.ihabdevteam-core-scope .button40--bar .button__icon,.ihabdevteam-core-scope .button40--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button32{--button-rounded-radius:8px;border-radius:16px;height:32px;justify-content:center}.ihabdevteam-core-scope .button32--bar{min-width:72px}.ihabdevteam-core-scope .button32--dot{padding:0;width:32px}.ihabdevteam-core-scope .button32 .button__icon,.ihabdevteam-core-scope .button32--bar .button__icon,.ihabdevteam-core-scope .button32--dot .button__icon{height:18px;width:18px}.ihabdevteam-core-scope .button28{--button-rounded-radius:7px;border-radius:14px;height:28px;justify-content:center}.ihabdevteam-core-scope .button28--bar{min-width:60px}.ihabdevteam-core-scope .button28--dot{padding:0;width:28px}.ihabdevteam-core-scope .button28 .button__icon,.ihabdevteam-core-scope .button28--bar .button__icon,.ihabdevteam-core-scope .button28--dot .button__icon{height:16px;width:16px}.ihabdevteam-core-scope .button24{--button-rounded-radius:6px;border-radius:12px;height:24px;justify-content:center}.ihabdevteam-core-scope .button24--bar{min-width:48px}.ihabdevteam-core-scope .button24--dot{padding:0;width:24px}.ihabdevteam-core-scope .button24 .button__icon,.ihabdevteam-core-scope .button24--bar .button__icon,.ihabdevteam-core-scope .button24--dot .button__icon{height:14px;width:14px}.ihabdevteam-core-scope .button-keyboard{border-radius:12px;height:32px;justify-content:center}.ihabdevteam-core-scope .button-keyboard--bar{min-width:32px;padding:0 12px}.ihabdevteam-core-scope .button-keyboard--dot{padding:0;width:32px}.ihabdevteam-core-scope .button-word{border-radius:12px;height:72px;justify-content:center;padding:0 16px}.ihabdevteam-core-scope .button-word--bar{min-width:120px}.ihabdevteam-core-scope .button-word--dot{padding:0;width:72px}@media (max-width:1024px){.ihabdevteam-core-scope .button56{--button-rounded-radius:13px;border-radius:25px;height:50px}.ihabdevteam-core-scope .button56--bar{min-width:170px}.ihabdevteam-core-scope .button56--dot{width:50px}.ihabdevteam-core-scope .button48{--button-rounded-radius:11px;border-radius:22px;height:44px}.ihabdevteam-core-scope .button48--bar{min-width:140px}.ihabdevteam-core-scope .button48--dot{width:44px}.ihabdevteam-core-scope .button40{--button-rounded-radius:9px;border-radius:18px;height:36px}.ihabdevteam-core-scope .button40--bar{min-width:88px}.ihabdevteam-core-scope .button40--dot{width:36px}.ihabdevteam-core-scope .button32{--button-rounded-radius:8px;border-radius:15px;height:30px}.ihabdevteam-core-scope .button32--bar{min-width:64px}.ihabdevteam-core-scope .button32--dot{width:30px}.ihabdevteam-core-scope .button24--bar{min-width:44px}}@media (max-width:768px){.ihabdevteam-core-scope .button56{--button-rounded-radius:12px;border-radius:23px;height:46px}.ihabdevteam-core-scope .button56--bar{min-width:150px}.ihabdevteam-core-scope .button56--dot{width:46px}.ihabdevteam-core-scope .button56 .button__icon,.ihabdevteam-core-scope .button56--bar .button__icon,.ihabdevteam-core-scope .button56--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button48{--button-rounded-radius:10px;border-radius:20px;height:40px}.ihabdevteam-core-scope .button48--bar{min-width:120px}.ihabdevteam-core-scope .button48--dot{width:40px}.ihabdevteam-core-scope .button48 .button__icon,.ihabdevteam-core-scope .button48--bar .button__icon,.ihabdevteam-core-scope .button48--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button40{--button-rounded-radius:8px;border-radius:17px;height:34px}.ihabdevteam-core-scope .button40--bar{min-width:80px}.ihabdevteam-core-scope .button40--dot{width:34px}.ihabdevteam-core-scope .button32{--button-rounded-radius:7px;border-radius:14px;height:28px}.ihabdevteam-core-scope .button32--bar{min-width:60px}.ihabdevteam-core-scope .button32--dot{width:28px}.ihabdevteam-core-scope .button24--bar{min-width:40px}}";Q(f4);var v4=".ihabdevteam-core-scope .tooltip-content{animation:tooltip-pop .2s cubic-bezier(.2,.9,.2,1) both;background-color:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);box-sizing:border-box;pointer-events:auto;position:absolute;transform-origin:left center;white-space:normal;will-change:transform,opacity;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-content--bordered{border:1px solid var(--color-whiteLine)}.ihabdevteam-core-scope .tooltip-content.tooltip-description,.ihabdevteam-core-scope .tooltip-content.tooltip-info,.ihabdevteam-core-scope .tooltip-content.tooltip-training{background:transparent;box-shadow:none}.ihabdevteam-core-scope .tooltip-content__header{align-items:center;color:var(--color-gray);display:flex;height:40px;padding:0 2px 10px}.ihabdevteam-core-scope .tooltip-content.is-closing{opacity:0;transition:opacity .2s ease,transform .2s ease}.ihabdevteam-core-scope .tooltip-content[data-placement=top]{transform:translateY(-6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=bottom]{transform:translateY(6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=left]{transform:translateX(-6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=right]{transform:translateX(6px)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=top]{transform:translateY(-6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=bottom]{transform:translateY(6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=left]{transform:translateX(-6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=right]{transform:translateX(6px) scale(.98)}.ihabdevteam-core-scope .tooltip--hidden{display:none}@keyframes tooltip-pop{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tooltip-fade-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-6px) scale(.98)}}.ihabdevteam-core-scope .tooltip-backdrop{background:var(--color-popupBlock);inset:0;position:fixed;z-index:calc(var(--z-tooltip) - 1)}.ihabdevteam-core-scope .tooltip-portal{inset:0;position:fixed;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-content.is-mobile{left:50%!important;max-width:calc(100% - 40px)!important;top:50%!important;transform:translate(-50%,-50%)!important;visibility:visible!important;width:calc(100% - 40px)!important;z-index:var(--z-tooltip)!important}.ihabdevteam-core-scope .tooltip-content .tooltip-close{display:inline-flex;position:absolute;right:6px;top:6px;z-index:2}.ihabdevteam-core-scope .tooltip-content .tooltip-close .button{box-shadow:none}";Q(v4);function Sa(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:n=20,onClose:i,closeOnOutsideClick:s=!0,className:c="",role:u="dialog",ariaLabel:d="",children:m,backdrop:h=!1,isMobilePopup:p=!1,useBorder:g=!0,header:v}=e||{},b=l.useRef(null),[y,f]=l.useState({position:"fixed",left:0,top:-9999}),[x,_]=l.useState(!1),[C,A]=l.useState("bottom"),[w,S]=l.useState(!1),[D,T]=l.useState(!1),E=!t&&!a,W=l.useCallback((j=!1)=>{if(D&&p)return;const F=a?a.getBoundingClientRect():t;if(!F||!b.current)return;const te=b.current,{offsetWidth:Z,offsetHeight:ee}=te,L=window.innerWidth,R=window.innerHeight,O=L-F.right,H=F.left,$=F.top,q=R-F.bottom;let I=0,G=0,z="top";if($>=ee+r)z="top",G=F.top-r-ee,I=F.left+F.width/2-Z/2;else if(q>=ee+r)z="bottom",G=F.bottom+r,I=F.left+F.width/2-Z/2;else if(O>=Z+r)z="right",I=F.right+r,G=F.top+F.height/2-ee/2;else if(H>=Z+r)z="left",I=F.left-r-Z,G=F.top+F.height/2-ee/2;else{const pe=Math.max($,q,O,H);pe===$?(z="top",G=F.top-r-ee,I=F.left+F.width/2-Z/2):pe===q?(z="bottom",G=F.bottom+r,I=F.left+F.width/2-Z/2):pe===O?(z="right",I=F.right+r,G=F.top+F.height/2-ee/2):(z="left",I=F.left-r-Z,G=F.top+F.height/2-ee/2)}const Y=Number(n)||8;I=Math.min(Math.max(I,Y),L-Z-Y),G=Math.min(Math.max(G,Y),R-ee-Y);const J=Math.round(I),ue=Math.round(G);j&&b.current?(b.current.style.left=`${J}px`,b.current.style.top=`${ue}px`,b.current.dataset.placement=z):(A(z||C),f({position:"fixed",left:J,top:ue}),S(!0))},[D,p,a,t,r,n,C]);l.useLayoutEffect(()=>{if(E)return;if(D&&p){f({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),S(!0);return}W();const j=requestAnimationFrame(()=>W());return()=>cancelAnimationFrame(j)},[t,a,r,m,n,E,D,p,W]),l.useEffect(()=>{if(E||D&&p||!b.current||typeof ResizeObserver>"u")return;const j=new ResizeObserver(()=>{t&&W()});return j.observe(b.current),()=>j.disconnect()},[t,m,n,E,D,p,W]),l.useEffect(()=>{if(E||D&&p)return;const j=()=>W(!0);return window.addEventListener("resize",j),document.addEventListener("scroll",j,{passive:!0,capture:!0}),()=>{window.removeEventListener("resize",j),document.removeEventListener("scroll",j,{capture:!0})}},[t,r,m,n,E,D,p,W]),l.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const j=window.matchMedia("(max-width: 768px)"),F=()=>T(!!j.matches);F();try{j.addEventListener?j.addEventListener("change",F):j.addListener(F)}catch{try{j.addListener(F)}catch{}}return()=>{try{j.removeEventListener?j.removeEventListener("change",F):j.removeListener(F)}catch{}}},[]);const M=l.useRef(!1),k=l.useCallback((j=!1)=>{if(!(x||M.current)){if(M.current=!0,j){_(!0);try{i&&i()}catch{}return}_(!0),setTimeout(()=>{i&&i()},200)}},[x,i,_]);l.useEffect(()=>{const j=Z=>{const ee=b.current;if(!ee)return;const L=Z.target;if(L&&!ee.contains(L)){try{if(L.closest&&L.closest("[data-tooltip-ignore]"))return}catch{}s&&k(!0)}},F=Z=>{const ee=b.current;if(!ee)return;const L=Z.target;if(L&&!ee.contains(L)){try{if(L.closest&&L.closest("[data-tooltip-ignore]"))return}catch{}s&&k(!0)}},te=Z=>{if(Z.key==="Escape"){Z.stopPropagation(),k();return}if(Z.key==="Tab"){const ee=b.current;if(!ee)return;const L=ee.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(!L||L.length===0)return;const R=L[0],O=L[L.length-1],H=document.activeElement;Z.shiftKey?H===R&&(Z.preventDefault(),O.focus()):H===O&&(Z.preventDefault(),R.focus())}};return document.addEventListener("pointerdown",j,!0),document.addEventListener("click",F,!0),document.addEventListener("keydown",te),()=>{document.removeEventListener("pointerdown",j,!0),document.removeEventListener("click",F,!0),document.removeEventListener("keydown",te)}},[i,s,k]),l.useEffect(()=>{const j=()=>{k(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",j),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",j)}},[k]);const N=o.jsxs("div",{ref:b,className:`tooltip-content ${g?"tooltip-content--bordered":""} ${x?"is-closing":""} ${c} ${D&&p?"is-mobile":""}`,role:u,"aria-label":d||void 0,style:E?{}:{...y,visibility:w?"visible":"hidden"},tabIndex:-1,"data-placement":C,"data-left":E?"":y.left,"data-top":E?"":y.top,"data-anchor-left":t?Math.round(t.left):"","data-anchor-top":t?Math.round(t.top):"","data-anchor-width":t?Math.round(t.width):"","data-anchor-height":t?Math.round(t.height):"",children:[v!=null&&o.jsx("div",{className:"tooltip-content__header h5",children:v}),m]});if(E||typeof document>"u")return N;if(h||D&&p){const j=o.jsxs("div",{className:"tooltip-portal",children:[o.jsx("div",{className:"tooltip-backdrop",onClick:()=>{s&&k(!0)}}),N]});return qt.createPortal(j,document.body)}return qt.createPortal(N,document.body)}var y4='.ihabdevteam-core-scope .tooltip-info__content{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-main);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);color:var(--color-black);display:inline-flex;justify-content:center;line-height:1;overflow:hidden;padding:4px 12px;position:relative;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .tooltip-content.tooltip-info{pointer-events:none}.ihabdevteam-core-scope .tooltip-content.tooltip-info .tooltip-info__content{box-shadow:var(--shadow-tooltip)}.ihabdevteam-core-scope .tooltip-info[data-placement=bottom] .tooltip-info__content:after,.ihabdevteam-core-scope .tooltip-info[data-placement=top] .tooltip-info__content:after{content:"";height:0;margin:0;padding:0;position:absolute;width:0}';Q(y4);function aa(e){const{anchorRect:t,text:a,offset:r=8,onClose:n,className:i="",ariaLabel:s}=e||{};return a?o.jsx(Sa,{anchorRect:t,offset:r,onClose:n,closeOnOutsideClick:!1,className:`tooltip-info ${i}`,ariaLabel:s||a,children:o.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}var x4=".ihabdevteam-core-scope .tooltip-description__box{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);display:flex;flex-direction:column;gap:10px;max-width:640px;padding:16px 20px}.ihabdevteam-core-scope .tooltip-description__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .tooltip-description__items{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .tooltip-description__item{align-items:flex-start;color:var(--color-darkGray);display:flex;gap:var(--spacing-xs);margin:0}.ihabdevteam-core-scope .tooltip-description__index{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .tooltip-description__item--active{color:var(--color-main);font-weight:600}.ihabdevteam-core-scope .tooltip-description__item--active .tooltip-description__index{color:var(--color-main)}";Q(x4);function to(e){const{anchorRect:t,title:a,items:r,activeIndex:n=-1,showIndex:i=!0,onClose:s,offset:c=12}=e||{},u=Array.isArray(r)?r:r?[r]:[];return!u.length&&!a?null:o.jsx(Sa,{anchorRect:t,offset:c,onClose:s,closeOnOutsideClick:!0,useBorder:!1,className:"tooltip-description",children:o.jsxs("div",{className:"tooltip-description__box",children:[a&&o.jsx("span",{className:"tooltip-description__title body-2",children:a}),o.jsx("ol",{className:"tooltip-description__items",children:u.map((d,m)=>o.jsxs("li",{className:`tooltip-description__item body-3${m===n?" tooltip-description__item--active":""}`,children:[i&&u.length>1&&o.jsxs("span",{className:"tooltip-description__index button-1",children:[m+1,"."]}),o.jsx("span",{children:d})]},m))})]})})}function le(e){const{size:t=48,type:a,htmlType:r,href:n,target:i,rel:s,icon:c,rightIcon:u,label:d,count:m,subLabel:h,children:p,ariaLabel:g,variant:v="default",align:b="center",selected:y,toggleable:f=!1,disabled:x=!1,useLabel:_=!0,useBorder:C=!0,useBG:A=!0,useDisabledCovered:w=!1,useDisabledInvisible:S=!1,width:D,minWidth:T,onClick:E,onDisabledClick:W,showTooltipInfo:M=!1,tooltipInfoText:k=null,tooltipDescription:N=null,iconSize:j="medium",iconColor:F,shape:te="rounded",color:Z,className:ee,...L}=e,R=typeof t=="string"&&isNaN(Number(t))?t.toLowerCase():String(Number(t)||48),O=R.match(/^\d+$/)?`button${R}`:`button-${R}`,H=Number(t),$=!isNaN(H)&&H<40?"button-2":"button-1",q=d??p,I=x||!!L.disabled,G=I?w?"disabled-covered":S?"disabled-invisibled":"disabled":v,z=G?`button--variant-${G}`:"",Y=b?`button--align-${b}`:"",J=te?`button--shape-${te}`:"",ue=typeof F=="string"&&F.startsWith("--")?`var(${F})`:F,pe={...D?{width:typeof D=="number"?`${D}px`:D}:{},...T?{minWidth:typeof T=="number"?`${T}px`:T}:{},...C?{}:{"--button-border":I?"0":"1px solid transparent"},...ue?{"--button-icon-color":ue}:{},...Z?{"--color-main":Z}:{}},ae=_===!1?"":q,X=Array.isArray(ae)?ae.length>0:!!ae,ce=!!u,xe=a??(X||c||ce?"bar":"dot"),Se=`${O}--${xe}`,Ae=l.useRef(null),P=l.useRef(I),[oe,re]=l.useState(!!y),[Ce,De]=l.useState(!1),[Ie,Oe]=l.useState(null),Fe=l.useCallback(()=>De(!1),[]);l.useEffect(()=>{(M||N)&&I&&Ce&&(De(!1),Oe(null))},[I,M,N,Ce]),l.useEffect(()=>{typeof y=="boolean"&&re(y)},[y]),l.useEffect(()=>{if(P.current&&!I&&Ae.current){const $e=Ae.current;$e.blur(),$e.style.pointerEvents="none";const Ze=requestAnimationFrame(()=>{requestAnimationFrame(()=>{Ae.current&&(Ae.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(Ze)}P.current=I},[I]);const Qe=typeof y=="boolean"?!!y:oe,Re=f||typeof y=="boolean"?Qe?"true":"false":void 0,Ge=ye("button",O,Se,z,Y,J,Qe?"is-selected":null,A?null:"button--no-bg",ee),We=`button__icon button__icon--${j}`,be=Array.isArray(h)?h:h!==void 0?[h]:[],at=()=>{if(Array.isArray(ae))return ae.map((Ze,et)=>{const yt=be[et];return o.jsxs("span",{className:`button__label-text${yt!==void 0?" button__label-text--has-sub":""}`,children:[Ze,yt!==void 0&&o.jsx("span",{className:"button__sub-label-text caption-1",children:yt})]},et)});const $e=h!==void 0;return o.jsxs("span",{className:`button__label-text${$e?" button__label-text--has-sub":""}`,children:[ae,m!=null&&o.jsx("span",{className:"button__count",children:m}),$e&&o.jsx("span",{className:"button__sub-label-text caption-1",children:h})]})},He=$e=>{I||(typeof L.onMouseLeave=="function"&&L.onMouseLeave($e),typeof y!="boolean"&&re(!1),$e.currentTarget.blur())},Le=$e=>{if(I){W?.($e);return}typeof y!="boolean"&&f&&re(Ze=>!Ze),E?.($e)},Ue=l.useCallback(()=>{!I&&(M||N)&&(De(!0),Oe(Ae.current?.getBoundingClientRect()??null))},[I,M,N]),Dt=l.useCallback(()=>{(M||N)&&(De(!1),Oe(null))},[M,N]),Ke={...L};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.onFocus,delete Ke.onBlur,I&&(Object.keys(Ke).forEach($e=>{/^on[A-Z]/.test($e)&&typeof Ke[$e]=="function"&&delete Ke[$e]}),Ke["aria-disabled"]="true");const Ye=(typeof M=="string"?M:null)??(typeof k=="string"?k:null)??(typeof g=="string"?g:null)??(typeof q=="string"?q:null)??void 0,ut=typeof g=="string"?g:typeof q=="string"?q:Ye,je=($e,Ze)=>o.jsx(Pe,{icon:$e,label:Ze??ut,className:We,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),rt=()=>xe==="dot"?o.jsxs(o.Fragment,{children:[je(c),X&&o.jsx("span",{className:`button__label ${$}`,children:at()})]}):b==="center"&&c?o.jsxs(o.Fragment,{children:[o.jsxs("span",{className:"button__center-group",children:[o.jsx("span",{className:"button__left",children:je(c)}),X&&o.jsx("span",{className:`button__label ${$}`,children:at()})]}),ce&&o.jsx("span",{className:"button__right",children:je(u)})]}):o.jsxs(o.Fragment,{children:[c&&o.jsx("span",{className:"button__left",children:je(c,g??q)}),X&&o.jsx("span",{className:`button__label ${$}`,children:at()}),ce&&o.jsx("span",{className:"button__right",children:je(u)})]}),Je=!!n&&!I;return o.jsxs(o.Fragment,{children:[o.jsx(Je?"a":"button",{...Ke,ref:Ae,...Je?{href:n,target:i,rel:s??(i==="_blank"?"noreferrer":void 0)}:{type:r,disabled:I&&!W},className:Ge,"aria-pressed":Re,"aria-label":ut,"aria-disabled":Je&&I?!0:void 0,style:pe,onClick:Le,onMouseLeave:He,onPointerEnter:$e=>{Ue(),!I&&typeof L.onPointerEnter=="function"&&L.onPointerEnter($e)},onPointerLeave:$e=>{Dt(),!I&&typeof L.onPointerLeave=="function"&&L.onPointerLeave($e)},onFocus:$e=>{Ue(),!I&&typeof L.onFocus=="function"&&L.onFocus($e)},onBlur:$e=>{He($e),Dt(),!I&&typeof L.onBlur=="function"&&L.onBlur($e)},children:rt()}),Ce&&N?o.jsx(to,{anchorRect:Ie,title:N.title,items:N.items,onClose:Fe}):Ce&&Ye?o.jsx(aa,{anchorRect:Ie,text:Ye,onClose:Fe}):null]})}function lt(e,t,a){const r=l.useRef(null);return l.useLayoutEffect(()=>{const n=r.current?.parentElement??null;return t(n,e),()=>a(n)},[e,t,a]),r}var C4=".ihabdevteam-core-scope .promo-banner-bg{border-radius:inherit;inset:0;pointer-events:none;position:absolute}";Q(C4);var _4=".ihabdevteam-core-scope .promo-banner-bg-main{background:linear-gradient(45deg,var(--color-main),var(--color-sub))}";Q(_4);const xo={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},vs=new WeakMap;function ys(e){if(e)return vs.get(e)}function Tt(e,t){e&&(e.style.setProperty(xo.title,t.title),e.style.setProperty(xo.description,t.description),vs.set(e,t))}function Bt(e){e&&(e.style.removeProperty(xo.title),e.style.removeProperty(xo.description),vs.delete(e))}const xs={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Cs(){const e=lt(xs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}var w4=".ihabdevteam-core-scope .promo-banner-bg-soft{background:var(--color-main-a10)}";Q(w4);const _s={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function ws(){const e=lt(_s,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}var k4=".ihabdevteam-core-scope .promo-banner-bg-sub{background:var(--color-sub)}";Q(k4);const ks={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ss(){const e=lt(ks,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}var S4=".ihabdevteam-core-scope .promo-banner-bg-deep{background:linear-gradient(135deg,var(--color-darkMain),var(--color-darkSub))}";Q(S4);const As={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ts(){const e=lt(As,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}var A4=".ihabdevteam-core-scope .promo-banner-bg-soft-sub{background:var(--color-sub-a10)}";Q(A4);const Bs={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Ns(){const e=lt(Bs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}var T4=".ihabdevteam-core-scope .promo-banner-bg-warm{background:var(--color-warn)}";Q(T4);const Ds={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function Es(){const e=lt(Ds,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}var B4=".ihabdevteam-core-scope .promo-banner-bg-dark{background:var(--color-lightBlack)}";Q(B4);const js={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Ls(){const e=lt(js,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}var N4=".ihabdevteam-core-scope .promo-banner-bg-radial{background:radial-gradient(circle at 15% 20%,var(--color-main) 0,var(--color-sub) 100%)}";Q(N4);const Ms={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ps(){const e=lt(Ms,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}var D4=".ihabdevteam-core-scope .promo-banner-bg-diagonal{background-color:var(--color-lightMain);background-image:repeating-linear-gradient(45deg,var(--color-main-a10) 0,var(--color-main-a10) 10px,transparent 10px,transparent 20px)}";Q(D4);const Rs={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function $s(){const e=lt(Rs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}var E4=".ihabdevteam-core-scope .promo-banner-bg-dots{background-color:var(--color-lightSub);background-image:radial-gradient(var(--color-sub-a10) 2px,transparent 2px);background-size:14px 14px}";Q(E4);const zs={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Is(){const e=lt(zs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}var j4=".ihabdevteam-core-scope .promo-banner-bg-outline{background:var(--color-white);border:1px solid var(--color-whiteLine);box-sizing:border-box}.ihabdevteam-core-scope .promo-banner-bg-outline__dot{background:linear-gradient(45deg,var(--color-main),var(--color-sub));border-radius:50%;bottom:-40px;height:140px;opacity:.12;position:absolute;right:-40px;width:140px}";Q(j4);const Os={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function Fs(){const e=lt(Os,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:o.jsx("span",{className:"promo-banner-bg-outline__dot"})})}var L4=".ihabdevteam-core-scope .promo-banner-bg-success{background:var(--color-success)}";Q(L4);const Ws={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Hs(){const e=lt(Ws,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}var M4=".ihabdevteam-core-scope .promo-banner-bg-naver{background:linear-gradient(90deg,#03c75a 0,var(--color-main) 100%)}";Q(M4);const Vs={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function Gs(){const e=lt(Vs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}var P4=".ihabdevteam-core-scope .promo-banner-bg-instagram{background:linear-gradient(45deg,#f9ce34,#ee2a7b 50%,#6228d7)}";Q(P4);const qs={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Ys(){const e=lt(qs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const Pp=[{key:"main",label:"\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"soft",label:"\uC18C\uD504\uD2B8",textTone:"dark"},{key:"sub",label:"\uC11C\uBE0C \uCEEC\uB7EC",textTone:"light"},{key:"deep",label:"\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"softSub",label:"\uC18C\uD504\uD2B8 \uC11C\uBE0C",textTone:"dark"},{key:"warm",label:"\uC6DC(\uAC15\uC870)",textTone:"dark"},{key:"dark",label:"\uB2E4\uD06C",textTone:"light"},{key:"radial",label:"\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"diagonal",label:"\uB300\uAC01\uC120 \uD328\uD134",textTone:"dark"},{key:"dots",label:"\uB3C4\uD2B8 \uD328\uD134",textTone:"dark"},{key:"outline",label:"\uC544\uC6C3\uB77C\uC778",textTone:"dark"},{key:"success",label:"\uC131\uACF5/\uC644\uB8CC",textTone:"light"},{key:"naver",label:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4",textTone:"light"},{key:"instagram",label:"\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4",textTone:"light"}],Us={main:Cs,soft:ws,sub:Ss,deep:Ts,softSub:Ns,warm:Es,dark:Ls,radial:Ps,diagonal:$s,dots:Is,outline:Fs,success:Hs,naver:Gs,instagram:Ys};function an({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:n=.1,lineHeightRatio:i=1.4}={}){const s=y=>Math.max(a,Math.min(r,Number(y))),[c,u]=l.useState(()=>{try{const y=localStorage.getItem(e),f=y?Number(y):1;return Number.isFinite(f)?f:1}catch{return 1}});l.useEffect(()=>{try{localStorage.setItem(e,String(c))}catch{}},[e,c]);const d=y=>{u(typeof y=="function"?f=>s(y(f)):s(y))},m=()=>d(y=>+(y+n).toFixed(6)),h=()=>d(y=>+(y-n).toFixed(6)),p=c<r-Number.EPSILON,g=c>a+Number.EPSILON,v=Math.round(t*c),b=Math.round(v*i);return{scale:c,setScale:d,increase:m,decrease:h,canIncrease:p,canDecrease:g,fontSize:v,lineHeight:b}}const on=l.createContext(null);function R4(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}function oa(e){const t=l.useContext(on),a=i=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(i).matches,[r,n]=l.useState(a(e));return l.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const i=window.matchMedia(e),s=u=>n(u.matches),c=i;return c.addEventListener?c.addEventListener("change",s):c.addListener&&c.addListener(s),n(i.matches),()=>{c.removeEventListener?c.removeEventListener("change",s):c.removeListener&&c.removeListener(s)}},[e]),t&&typeof t.mobile=="boolean"&&R4(e)?t.mobile:r}function Ks(e){const t=l.useRef(e);return l.useEffect(()=>{t.current=e}),t}function cr(e,t){const a=Ks(t);l.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const Zs=" \xB7 ",Rp=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(Zs)?e.split(Zs).pop()??e:e})(),Xs=l.createContext(!1);function Qs(e){const t=l.useContext(Xs);l.useEffect(()=>{if(t||typeof e!="string"||!e)return;const a=document.title;return document.title=Rp?`${e}${Zs}${Rp}`:e,()=>{document.title=a}},[e,t])}function $p(){const{t:e}=me.useTranslation();return l.useCallback(t=>{if(!t)return"";const a=new Date(t).getTime();if(Number.isNaN(a))return"";const r=Math.floor((Date.now()-a)/864e5);return r<=0?e("myHomework.relativeDay.today","\uC624\uB298"):r===1?e("myHomework.relativeDay.yesterday","\uC5B4\uC81C"):e("myHomework.relativeDay.daysAgo",{n:r})},[e])}function zp(e){const[t,a]=l.useState({current:"",next:"",confirm:""}),[r,n]=l.useState(null),[i,s]=l.useState(!1),c=l.useRef(null);l.useEffect(()=>()=>{c.current!==null&&clearTimeout(c.current)},[]);const u=l.useCallback(()=>{a({current:"",next:"",confirm:""}),n(null)},[]),d=l.useCallback(async()=>{if(!t.current){n({type:"error",text:"\uD604\uC7AC \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694."});return}if(!t.next){n({type:"error",text:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694."});return}if(t.next!==t.confirm){n({type:"error",text:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."});return}s(!0);const m=e?await e(t.current,t.next):null;if(s(!1),m){n({type:"error",text:m});return}n({type:"success",text:"\uBE44\uBC00\uBC88\uD638\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4."}),a({current:"",next:"",confirm:""}),c.current!==null&&clearTimeout(c.current),c.current=setTimeout(()=>n(null),1500)},[t,e]);return{pw:t,setPw:a,pwMsg:r,setPwMsg:n,pwLoading:i,handleChangePw:d,reset:u}}const Js=[{id:"wordData",labelKey:"settings.cache.group.wordData.label",subKey:"settings.cache.group.wordData.sub",keys:["word_data_cache","word_data_version"]},{id:"pairIndex",labelKey:"settings.cache.group.pairIndex.label",subKey:"settings.cache.group.pairIndex.sub",keys:["word_pair_index_v2","word_pair_index_sig_v2"]},{id:"imageCache",labelKey:"settings.cache.group.imageCache.label",subKey:"settings.cache.group.imageCache.sub",keys:["word_image_existence_map_v1"]}];function el(e){return e.reduce((t,a)=>{try{const r=localStorage.getItem(a);return t+(r?new Blob([r]).size:0)}catch{return t}},0)}function Ip(e){return e===0?"0 B":e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(2)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}function Op(e){const{t}=me.useTranslation(),[a,r]=l.useState({}),[n,i]=l.useState(null),[s,c]=l.useState(null),[u,d]=l.useState(null),m=l.useCallback(()=>{const p={};Js.forEach(g=>{p[g.id]=el([...g.keys])}),r(p),typeof navigator<"u"&&navigator.storage?.estimate&&navigator.storage.estimate().then(g=>{d({usage:g.usage??0,quota:g.quota??0})}).catch(()=>{})},[]);l.useEffect(()=>{m()},[m]);const h=l.useCallback(async p=>{i(p);try{p==="wordData"?(localStorage.removeItem("word_data_cache"),localStorage.removeItem("word_data_version")):p==="pairIndex"?gi():p==="imageCache"&&ri(),m(),e?.(t("settings.cache.cleared","\uCE90\uC2DC\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."))}finally{i(null)}},[m,e,t]);return{cacheSizes:a,clearingId:n,confirmCacheId:s,setConfirmCacheId:c,storageEstimate:u,refreshCacheSizes:m,handleClearCache:h}}function Fp(e){const[t,a]=l.useState(null),[r,n]=l.useState(null),i=l.useCallback(()=>{const s=Ka();if(s){const u=Object.values(s),d=u.filter(m=>m.cho.length+m.jung.length+m.jong.length>0).length;a({matched:d,total:u.length})}else a(null);const c=Er();n(c?{exists:c.exists,total:c.total}:null)},[]);return l.useEffect(()=>{i();const s=setTimeout(i,1e3);return()=>clearTimeout(s)},[e?.length,i]),{pairStats:t,imgStats:r,setPairStats:a,setImgStats:n,refreshStats:i}}function Wp(e,t=[]){const[a,r]=l.useState(t),[n,i]=l.useState(null),[s,c]=l.useState(!1),[u,d]=l.useState(e),m=l.useRef(s);l.useEffect(()=>{m.current=s});const h=l.useRef(null);l.useEffect(()=>{if(m.current)return;const f=h.current;f!==null&&f.length===t.length&&f.every((x,_)=>x===t[_])||(h.current=t,r(t))},[t]);const p=l.useCallback(f=>{i(f),c(!1),d({...f})},[]),g=l.useCallback(()=>c(!0),[]),v=l.useCallback(()=>c(!1),[]),b=l.useCallback((f,x)=>{r(f),i(x),c(!1)},[]),y=l.useCallback(f=>{r(x=>x.filter(_=>_!==f)),i(null)},[]);return{list:a,setList:r,selected:n,setSelected:i,isEditing:s,setIsEditing:c,editForm:u,setEditForm:d,openDetail:p,startEditing:g,cancelEditing:v,commitEdit:b,remove:y}}const Co=()=>{const e=new Date;return{year:String(e.getFullYear()),month:String(e.getMonth()+1).padStart(2,"0"),day:String(e.getDate()).padStart(2,"0")}},$4={year:"",month:"",day:"",hour:"09",minute:"00",memo:""};function Hp(e=[]){const{list:t,setList:a,selected:r,setSelected:n,isEditing:i,setIsEditing:s,editForm:c,setEditForm:u,openDetail:d,commitEdit:m}=Wp($4,e),{year:h,month:p,day:g}=Co(),[v,b]=l.useState({year:h,month:p,day:g,hour:"09",minute:"00",memo:""});return{visitHistory:t,visitForm:v,setVisitForm:b,setVisit:y=>f=>b(x=>({...x,[y]:f})),selectedVisit:r,setSelectedVisit:n,isEditingVisit:i,setIsEditingVisit:s,editVisitForm:c,setEditVisitForm:u,openVisitDetail:d,handleVisitSave:y=>{a(C=>[v,...C]);const{year:f,month:x,day:_}=Co();b({year:f,month:x,day:_,hour:"09",minute:"00",memo:""}),y?.()},handleVisitEditSave:()=>{m(y=>y.map(f=>f===r?c:f),c)},addVisit:y=>{a(f=>[y,...f])},removeVisit:y=>{a(f=>f.filter(x=>x!==y))},revertVisitEdit:(y,f)=>{a(x=>x.map(_=>_===f?y:_)),n(x=>x===f?y:x)}}}const Vp=e=>`${e.year.padStart(4,"0")}-${e.month.padStart(2,"0")}-${e.day.padStart(2,"0")} ${e.hour.padStart(2,"0")}:${e.minute.padStart(2,"0")}`,rn=e=>[...e].sort((t,a)=>{const r=Vp(t),n=Vp(a);return r<n?-1:r>n?1:0}),z4={year:"",month:"",day:"",hour:"09",minute:"00",memo:""};function Gp(e,t=[]){const a=l.useMemo(()=>rn(t),[t]),{list:r,setList:n,selected:i,setSelected:s,isEditing:c,setIsEditing:u,editForm:d,setEditForm:m,openDetail:h,commitEdit:p,remove:g}=Wp(z4,a),[v,b]=l.useState([]),{year:y,month:f,day:x}=Co(),[_,C]=l.useState({year:y,month:f,day:x,hour:"09",minute:"00",memo:""}),A=N=>j=>C(F=>({...F,[N]:j})),w=N=>{n(Z=>rn([...Z,_]));const{year:j,month:F,day:te}=Co();C({year:j,month:F,day:te,hour:"09",minute:"00",memo:""}),N?.()},S=()=>{p(N=>rn(N.map(j=>j===i?d:j)),d)},D=l.useCallback(N=>{g(N)},[g]),T=l.useCallback(N=>{e({year:N.year,month:N.month,day:N.day,hour:N.hour,minute:N.minute,memo:N.memo}),g(N)},[e,g]),E=l.useCallback(N=>{n(j=>j.filter(F=>F!==N)),b(j=>[N,...j]),s(null)},[n,s]),W=l.useCallback(N=>{n(j=>rn([...j,N]))},[n]),M=l.useCallback(N=>{n(j=>j.filter(F=>F!==N))},[n]),k=l.useCallback((N,j)=>{n(F=>F.map(te=>te===j?N:te)),s(F=>F===j?N:F)},[n,s]);return{scheduleList:r,noShowList:v,addSchedule:W,removeSchedule:M,revertScheduleEdit:k,scheduleForm:_,setScheduleForm:C,setSchedule:A,selectedSchedule:i,setSelectedSchedule:s,isEditingSchedule:c,setIsEditingSchedule:u,editScheduleForm:d,setEditScheduleForm:m,openScheduleDetail:h,handleScheduleSave:w,handleScheduleEditSave:S,handleScheduleDelete:D,handleScheduleToVisit:T,handleScheduleNoVisit:E}}const tl=[{value:"10",label:"10\uAC1C\uC529 \uBCF4\uAE30"},{value:"25",label:"25\uAC1C\uC529 \uBCF4\uAE30"},{value:"50",label:"50\uAC1C\uC529 \uBCF4\uAE30"},{value:"100",label:"100\uAC1C\uC529 \uBCF4\uAE30"}];function qp(e){const[t,a]=l.useState(""),[r,n]=l.useState("25"),[i,s]=l.useState("all"),[c,u]=l.useState(1),d=l.useMemo(()=>e.filter(({item:g,status:v})=>!(t&&!g.memo.includes(t)||i!=="all"&&v!==i)),[e,t,i]),m=Math.max(1,Math.ceil(d.length/Number(r))),h=Math.min(c,m),p=l.useMemo(()=>d.slice((h-1)*Number(r),h*Number(r)),[d,h,r]);return{vapSearch:t,setVapSearch:a,vapPageSize:r,setVapPageSize:n,vapStatus:i,setVapStatus:s,vapPage:h,setVapPage:u,vapFiltered:d,vapTotal:m,vapPageItems:p}}function al(e,t){const{t:a}=me.useTranslation(),[r,n]=l.useState("25"),[i,s]=l.useState(1),[c,u]=l.useState(t);c!==t&&(u(t),i!==1&&s(1));const d=l.useMemo(()=>tl.map(g=>({...g,label:a("visits.showN",{n:g.value})})),[a]),m=l.useCallback(g=>{n(g),s(1)},[]),h=Math.max(1,Math.ceil(e.length/Number(r))),p=Math.min(i,h);return{pageRows:l.useMemo(()=>e.slice((p-1)*Number(r),p*Number(r)),[e,p,r]),pageSizeProps:{options:d,value:r,onChange:m},paginationProps:{page:p,total:h,onChange:s},setPage:s}}function ol(){const[e,t]=l.useState(null),a=l.useCallback(n=>{t(i=>i?.key===n?{key:n,asc:!i.asc}:{key:n,asc:!0})},[]),r=l.useCallback((n,i)=>({label:n,sortDir:e?.key===i?e.asc?"asc":"desc":null,onClick:()=>a(i)}),[e,a]);return{\uC815\uB82C:e,\uCE78:r}}function Yp(){const[e,t]=l.useState(!1),[a,r]=l.useState("\uC88C"),[n,i]=l.useState({\uC88C:null,\uC6B0:null}),[s,c]=l.useState({\uC88C:[],\uC6B0:[]}),[u,d]=l.useState(!1),[m,h]=l.useState("\uC88C"),p=l.useCallback(v=>{const b=v.direction;i(y=>({...y,[b]:v})),c(y=>({...y,[b]:[v,...y[b]]})),t(!1)},[]),g=l.useCallback(v=>{const b=v.direction;i(y=>({...y,[b]:v})),d(!1)},[]);return{showDevice:e,setShowDevice:t,deviceDirection:a,setDeviceDirection:r,devices:n,setDevices:i,deviceHistory:s,setDeviceHistory:c,showDeviceList:u,setShowDeviceList:d,listForSide:m,setListForSide:h,handleDeviceSubmit:p,handleSelectFromList:g}}const Nt="\uC804\uCCB4";function _o(){const[e,t]=l.useState(null),a=l.useCallback(i=>t(i.getBoundingClientRect()),[]),r=l.useCallback(()=>t(null),[]),n=l.useCallback(i=>{const s=i.getBoundingClientRect();t(c=>c?null:s)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:n}}function Up(e){const[t,a]=l.useState(null),[r,n]=l.useState(null),i=l.useRef(null);l.useEffect(()=>()=>{i.current&&clearTimeout(i.current)},[]);const s=l.useCallback((u,d)=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{a(u),n(d)},e)},[e]),c=l.useCallback(()=>{i.current&&clearTimeout(i.current),a(null),n(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:s,close:c}}function wo({title:e,items:t}){const{t:a}=me.useTranslation(),{anchorRect:r,openAt:n,close:i}=_o();return o.jsxs(o.Fragment,{children:[o.jsx(le,{size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:s=>n(s.currentTarget),onPointerLeave:i,onFocus:s=>n(s.currentTarget),onBlur:i}),r&&o.jsx(to,{title:e,items:t,showIndex:t.length>1,anchorRect:r,onClose:i})]})}function rl(){const{t:e}=me.useTranslation();return l.useMemo(()=>({difficulty:e("wordSearch.filter.difficulty","\uB4F1\uAE09"),syllables:e("wordSearch.filter.syllables","\uC74C\uC808 \uC218"),syllable5plus:e("wordSearch.filter.syllable5plus","5\uC74C\uC808 \uC774\uC0C1"),partOfSpeech:e("wordSearch.filter.partOfSpeech","\uD488\uC0AC"),wordType:e("wordSearch.filter.wordType","\uC720\uD615"),posMap:{[e("wordSearch.filter.pos.noun","\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)")]:["\uBA85","\uC218"],[e("wordSearch.filter.pos.verb","\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)")]:["\uB3D9","\uD615"],[e("wordSearch.filter.pos.modifier","\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)")]:["\uBD80","\uAD00"]},typeMap:{[e("wordSearch.filter.type.native","\uACE0\uC720\uC5B4")]:"\uACE0\uC720",[e("wordSearch.filter.type.sino","\uD55C\uC790\uC5B4")]:"\uD55C\uC790",[e("wordSearch.filter.type.foreign","\uC678\uB798\uC5B4")]:"\uC678\uB798",[e("wordSearch.filter.type.mixed","\uD63C\uC885\uC5B4")]:"\uD63C\uC885"}}),[e])}function nl(e,t,a){return{label:t.difficulty,items:[1,2,3,4].map(r=>e("wordSearch.filter.grade",{n:r})),multiple:!0,allOption:!0,allLabel:a?.allLabel,labelAction:a?.labelAction}}function il(e){return{label:e.partOfSpeech,items:Object.keys(e.posMap),multiple:!0,allOption:!0}}function sl(e){return{label:e.wordType,items:Object.keys(e.typeMap),multiple:!0,allOption:!0}}function Kp(e,t){return{label:t.syllables,items:[e("wordSearch.filter.syllable",{n:1}),e("wordSearch.filter.syllable",{n:2}),e("wordSearch.filter.syllable",{n:3}),e("wordSearch.filter.syllable",{n:4}),t.syllable5plus],multiple:!0,allOption:!0}}function Zp(e,t){const a=[e("wordPairs.filter.onlyHasImage","\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC")];return t?.includeStructure&&a.push(e("wordPairs.filter.onlySameStructure","\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC")),{label:e("wordPairs.filter.selectLabel","\uC120\uD0DD"),items:a,multiple:!0,labelAction:t?.labelAction}}function Xp(e,t){const{label:a,headValue:r,midValue:n,tailValue:i,includeMid:s=!0,headDisabled:c,midDisabled:u,tailDisabled:d,allOptionDisabled:m,groupLabel:h,labelAction:p}=t;return{label:a,...h?{groupLabel:h}:{},...p?{labelAction:p}:{},allOption:!0,allLabel:e("wordSearch.filter.positionAny",{defaultValue:"\uBB34\uAD00"}),...m?{allOptionDisabled:m}:{},items:[{value:r,displayLabel:e("wordSearch.filter.positionHead",{defaultValue:"\uC5B4\uB450"}),disabled:c},...s?[{value:n,displayLabel:e("wordSearch.filter.positionMid",{defaultValue:"\uC5B4\uC911"}),disabled:u}]:[],{value:i,displayLabel:e("wordSearch.filter.positionTail",{defaultValue:"\uC5B4\uB9D0"}),disabled:d}]}}function Qp(e,t,a){if(t===Nt){const{[a]:i,...s}=e;return s}const r=e[a]??[],n=r.includes(t)?r.filter(i=>i!==t):[...r,t];if(n.length===0){const{[a]:i,...s}=e;return s}return{...e,[a]:n}}Object.fromEntries(Object.entries(xw).map(([e,{nucleus:t}])=>[e,t]));const I4={\uACE0\uC720\uC5B4:"\uACE0\uC720",\uD55C\uC790\uC5B4:"\uD55C\uC790",\uC678\uB798\uC5B4:"\uC678\uB798",\uD63C\uC885\uC5B4:"\uD63C\uC885"},O4={"\uCCB4\uC5B8(\uBA85\uC0AC,\uC218\uC0AC)":["\uBA85","\uC218"],"\uC6A9\uC5B8(\uB3D9\uC0AC,\uD615\uC6A9\uC0AC)":["\uB3D9","\uD615"],"\uC218\uC2DD\uC5B8(\uBD80\uC0AC,\uAD00\uD615\uC0AC)":["\uBD80","\uAD00"]},F4={difficulty:"\uB09C\uC774\uB3C4 \uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218",syllable5plus:"5\uC74C\uC808 \uC774\uC0C1",partOfSpeech:"\uD488\uC0AC",wordType:"\uC720\uD615",posMap:O4,typeMap:I4};function W4(e,t,a=F4){const r=t[a.difficulty];if(r?.length&&!r.some(c=>e.grade===c.replace(/\D/g,"")))return!1;const n=t[a.syllables];if(n?.length){const c=e.syllables??0;if(!n.some(u=>u===a.syllable5plus?c>=5:c===parseInt(u)))return!1}const i=t[a.partOfSpeech];if(i?.length&&!i.flatMap(c=>a.posMap[c]??[c]).some(c=>(e.pos??"").includes(c)))return!1;const s=t[a.wordType];return!(s?.length&&!s.some(c=>e.wordType===a.typeMap[c]))}const Aa=(e,t)=>t.map(a=>({jamos:[a],tooltip:e})),_t=(e,t)=>({jamos:[...e],tooltip:t}),ll={cho:[Aa("\uC591\uC21C\uC74C",["\u3142","\u3143","\u314D","\u3141"]),Aa("\uCE58\uC870\uC74C",["\u3137","\u3138","\u314C","\u3134","\u3139"]),Aa("\uCE58\uC870\uC74C",["\u3145","\u3146"]),Aa("\uACBD\uAD6C\uAC1C\uC74C",["\u3148","\u3149","\u314A"]),Aa("\uC5F0\uAD6C\uAC1C\uC74C",["\u3131","\u3132","\u314B"]),Aa("\uC131\uBB38\uC74C",["\u314E"])],jung:[[_t("\u3163","\uC804\uC124 \uACE0\uBAA8\uC74C"),_t("\u315F","\uC804\uC124 \uACE0\uBAA8\uC74C \xB7 w\uD65C\uC74C"),_t("\u3162","\uC804\uC124 \uACE0\uBAA8\uC74C \xB7 \u0270\uD65C\uC74C")],[_t("\u3161","\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C")],[_t("\u315C","\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C"),_t("\u3160","\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C \xB7 j\uD65C\uC74C")],[_t("\u3154\u3150","\uC804\uC124 \uC911\uBAA8\uC74C"),_t("\u3156\u3152","\uC804\uC124 \uC911\uBAA8\uC74C \xB7 j\uD65C\uC74C"),_t("\u3159\u315A\u315E","\uC804\uC124 \uC911\uBAA8\uC74C \xB7 w\uD65C\uC74C")],[_t("\u3153","\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C"),_t("\u3155","\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C \xB7 j\uD65C\uC74C"),_t("\u315D","\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C \xB7 w\uD65C\uC74C")],[_t("\u3157","\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C"),_t("\u315B","\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C \xB7 j\uD65C\uC74C")],[_t("\u314F","\uC800\uBAA8\uC74C"),_t("\u3151","\uC800\uBAA8\uC74C \xB7 j\uD65C\uC74C"),_t("\u3158","\uC800\uBAA8\uC74C \xB7 w\uD65C\uC74C")]],jong:[Aa("\uC591\uC21C\uC74C",["\u3142","\u3141"]),Aa("\uCE58\uC870\uC74C",["\u3137","\u3134","\u3139"]),Aa("\uC5F0\uAD6C\uAC1C\uC74C",["\u3131","\u3147"])]},H4=[...qe],V4=[...dt],G4=gt.filter(e=>e!==""),ba=e=>e===ra?[]:Array.from(e),ra="__NO_CODA__",Jp=[1,2,3,4],na=5,q4=12,eh="SYL_",cl=e=>`${eh}${e}`,Y4=e=>Number(e.slice(eh.length));function nn(e){return e>=na?Array.from({length:q4-na+1},(t,a)=>na+a):[e]}const th={cho:H4,jung:V4,jong:G4},dl=e=>e.map(t=>t.map(({jamos:a,tooltip:r})=>({v:a.join(""),tooltip:r}))),ul={cho:dl(ll.cho),jung:dl(ll.jung),jong:dl(ll.jong)},ah={};ul.jung.flat().forEach(({v:e})=>{for(const t of ba(e))ah[t]=e});const U4=new Set(ul.cho.flat().map(e=>e.v));function pl(e,t){return e==="cho"?U4.has(t)?t:null:e==="jung"?ah[t]??t:Fr(t)}function hl(e,t,a){if(e==="jung"){const r=ba(t);return a&&r.includes(a)?a:r[0]??t}return t}function ml(e,t,a){const r=(n,i)=>i?n==="jong"&&i===ra?ra:t==="pron"?pl(n,i):hl(n,i,n==="jung"?a:null):null;return{...e,cho:r("cho",e.cho),jung:r("jung",e.jung),jong:r("jong",e.jong)}}const sn={cho:null,jung:null,jong:null,syllable:null},K4="wt_filter",oh=e=>`wt_filter_${e}`;function rh(e){try{const t=localStorage.getItem(oh(e))??localStorage.getItem(K4);if(t)return JSON.parse(t)}catch{}return null}function Z4(e){const t=e;return t?.composition?{cho:t.composition.cho??null,jung:t.composition.jung??null,jong:t.composition.jong??null,syllable:t.composition.syllable??null}:t?.choseong?{...sn,cho:t.choseong}:sn}function nh(e,t,a){const{t:r,i18n:n}=me.useTranslation(),[i]=l.useState(()=>a?.resetOnMount?null:rh(e)),s=i?.contrastCount,c=typeof s=="number"&&Number.isFinite(s)?s:1,[u,d]=l.useState(Math.min(5,Math.max(1,c))),[m,h]=l.useState(i?.phonemeView==="pron"?"pron":i?.phonemeView==="direct"?"direct":"char"),[p,g]=l.useState(()=>Z4(i)),v=l.useCallback(()=>t.requireSyllable?{cho:"\u3131",jung:"\u314F",jong:ra,syllable:t.fixedSyllable??null}:{cho:null,jung:null,jong:t.fixedNoCoda?ra:null,syllable:t.fixedSyllable??null},[t.requireSyllable,t.fixedSyllable,t.fixedNoCoda]);l.useEffect(()=>{!t.requireSyllable&&t.fixedSyllable==null&&!t.fixedNoCoda||g(P=>P.cho||P.jung||P.syllable!=null||P.jong?P:v())},[]);const b=l.useMemo(()=>ft(p.cho)||ft(p.jung)||ft(p.jong)?"count":"random",[p.cho,p.jung,p.jong]),y=l.useRef(m==="char"?p.jung:null);l.useEffect(()=>{m==="char"&&(y.current=p.jung)},[m,p.jung]);const[f,x]=l.useState(a?.resetOnMount?!!a?.defaultImageOnly:i?.excludeNoImage??!0),[_,C]=l.useState(a?.resetOnMount?!1:i?.sameStructureOnly??!0),[A,w]=l.useState(Array.isArray(i?.gradeFilter)?i.gradeFilter:[]),[S,D]=l.useState(Array.isArray(i?.posFilter)?i.posFilter:[]),[T,E]=l.useState(Array.isArray(i?.wordTypeFilter)?i.wordTypeFilter:[]),W=l.useRef(a?.resetKey);l.useEffect(()=>{W.current!==a?.resetKey&&(W.current=a?.resetKey,g(v()),x(!1),C(!1),w([]),D([]),E([]),d(1))},[a?.resetKey]);const M=rl(),[k,N]=l.useState({cho:new Set,jung:new Set,jong:new Set,syllable:new Set}),[j,F]=l.useState(!1),[te,Z]=l.useState(null),ee=1,L=Math.max(1,[p.cho,p.jung,p.jong].filter(Boolean).length);l.useEffect(()=>{u<L&&d(L)},[L,u]);const[R,O]=l.useState(e);l.useEffect(()=>{if(R!==e){if(!a?.resetOnMount){const P=rh(e),oe=typeof P?.contrastCount=="number"&&Number.isFinite(P.contrastCount)?P.contrastCount:1;d(Math.min(5,Math.max(1,oe))),g(P?.composition??v()),x(P?.excludeNoImage??!0),C(P?.sameStructureOnly??!0),h(P?.phonemeView==="pron"?"pron":"char"),w(Array.isArray(P?.gradeFilter)?P.gradeFilter:[]),D(Array.isArray(P?.posFilter)?P.posFilter:[]),E(Array.isArray(P?.wordTypeFilter)?P.wordTypeFilter:[])}O(e)}},[e,R,a?.resetOnMount]),l.useEffect(()=>{if(!a?.resetOnMount&&R===e)try{localStorage.setItem(oh(e),JSON.stringify({contrastCount:u,composition:p,excludeNoImage:f,sameStructureOnly:_,phonemeView:m,gradeFilter:A,posFilter:S,wordTypeFilter:T}))}catch{}},[a?.resetOnMount,e,R,u,p,f,_,m,A,S,T]);const[H,$]=l.useState(0);cr("wordpool:update",()=>$(P=>P+1));const q=l.useRef(n.language);l.useEffect(()=>{q.current!==n.language&&(q.current=n.language,$(P=>P+1))},[n.language]),l.useEffect(()=>{if(!t.choseong)return;let P=!1;return d4({difficulty:b,excludeNoImage:f}).then(oe=>{P||(N(oe),oe.cho.size+oe.jung.size+oe.jong.size>0&&F(!0))}).catch(()=>{P||N({cho:new Set,jung:new Set,jong:new Set,syllable:new Set})}),()=>{P=!0}},[t.choseong,b,f,H]),l.useEffect(()=>{let P=!1;const oe=p,re=oe.cho?ba(oe.cho):null,Ce=oe.jung?ba(oe.jung):null,De=oe.jong===ra,Ie=De?null:oe.jong?ba(oe.jong):null,Oe=oe.syllable!=null?nn(oe.syllable):null,Fe=!!(re||Ce||Ie||De||Oe);return c4({difficulty:t.difficulty?b:null,contrastCount:t.difficulty?u:1,composition:t.choseong&&Fe?{cho:re,jung:Ce,jong:Ie,jongNone:De,syllable:Oe}:null,excludeNoImage:f,sameStructureOnly:_,phonemeView:m==="pron"?"pron":"char",grade:A.length>0?A:null}).then(Qe=>{P||Z(Qe)}).catch(()=>{P||Z(null)}),()=>{P=!0}},[t.choseong,t.difficulty,b,u,p,m,f,_,H,A]),l.useEffect(()=>{j&&g(P=>{const oe={...P};let re=!1;return["cho","jung","jong"].forEach(Ce=>{const De=P[Ce];!De||De===ra||ba(De).some(Ie=>k[Ce].has(Ie))||(oe[Ce]=null,re=!0)}),P.syllable!=null&&t.fixedSyllable==null&&(P.syllable>=na?[...k.syllable].some(Ce=>Ce>=na)||(oe.syllable=null,re=!0):(!k.syllable.has(P.syllable)||P.syllable<ee)&&(oe.syllable=null,re=!0)),re?oe:P})},[k,j,ee,t.fixedSyllable]);const I=l.useMemo(()=>{const P=oe=>{const re=new Set;for(const Ce of th[oe])k[oe].has(Ce)&&re.add(Ce);return re};return{cho:P("cho"),jung:P("jung"),jong:P("jong")}},[k]),G=l.useMemo(()=>({exact:new Set(Jp.filter(P=>k.syllable.has(P))),min:[...k.syllable].some(P=>P>=na)}),[k]),z=l.useMemo(()=>({diffPhonemeCount:r("training.contrast.diffPhonemeCount",{defaultValue:"\uB2E4\uB978 \uC74C\uC18C\uC758 \uCD1D \uAC2F\uC218"}),composition:r("wordPairs.composition","\uC815\uB2F5 \uB2E8\uC5B4 \uAD6C\uC131"),syllableCount:r("wordPairs.syllableCount","\uC74C\uC808 \uC218"),onset:r("wordPairs.onset","\uCD08\uC131"),vowel:r("wordPairs.vowel","\uBAA8\uC74C"),coda:r("wordPairs.coda","\uC885\uC131"),phonemeGroup:r("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),trainOnset:r("training.filter.trainOnset",{defaultValue:"\uCD08\uC131"}),trainVowel:r("training.filter.trainVowel",{defaultValue:"\uBAA8\uC74C"}),trainCoda:r("training.filter.trainCoda",{defaultValue:"\uC885\uC131"}),random:r("training.filter.random","\uBB34\uC791\uC704"),exclude:r("wordSearch.filter.exclude","\uC81C\uC678"),selectLabel:r("training.filter.selectSection",{defaultValue:"\uC120\uD0DD"}),none:r("common.none","\uC5C6\uC74C"),noImage:r("wordSearch.filter.excludeNoImage","\uC774\uBBF8\uC9C0 \uC5C6\uC74C"),excludeImage:r("training.filter.excludeImage",{defaultValue:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC"}),sameStructure:r("training.filter.sameStructure",{defaultValue:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"}),noLimit:r("training.filter.noLimit",{defaultValue:"\uBB34\uAD00"}),codaExclude:r("training.filter.codaExclude",{defaultValue:"\uC81C\uC678"}),gradeLabel:r("training.filter.gradeLabel",{defaultValue:"\uB09C\uC774\uB3C4 \uB4F1\uAE09"})}),[r]),Y=l.useMemo(()=>({[z.trainOnset]:"cho",[z.trainVowel]:"jung",[z.trainCoda]:"jong"}),[z]),J=l.useCallback((P,oe)=>l.createElement(wo,{title:oe,items:P}),[]),ue=l.useMemo(()=>[r("training.filter.excludeImageInfo",{defaultValue:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC: \uB2E8\uC5B4 \uC911\uC5D0 \uC774\uBBF8\uC9C0\uAC00 \uC788\uB294 \uB2E8\uC5B4\uB9CC \uACB0\uACFC\uC5D0 \uBCF4\uC5EC\uC90D\uB2C8\uB2E4."}),r("training.filter.sameStructureInfo",{defaultValue:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC: \uC815\uB2F5\uACFC \uC624\uB2F5\uC758 \uC74C\uC808 \uAD6C\uC870(\uAE00\uC790 \uC218\xB7\uBC1B\uCE68 \uC720\uBB34 \uB4F1)\uAC00 \uAC19\uC740 \uACB0\uACFC\uB9CC \uB0A8\uACA8\uC694."})],[r]),pe=l.useMemo(()=>{const P=[];if(t.choseong){const oe={value:ra,displayLabel:z.codaExclude},re=t.fixedNoCoda===!0,Ce=(De,Ie)=>{const Oe=re&&De==="jong",Fe={label:Ie,groupLabel:z.phonemeGroup,allOption:!t.requireSyllable,allLabel:z.noLimit,allOptionDisabled:Oe};if(m==="pron"){const Re=ul[De].map(Ge=>Ge.map(({v:We,tooltip:be})=>{const at=ba(We),He=Oe||!at.some(Le=>k[De].has(Le));return at.length>1?{value:We,labels:at,tooltip:be,disabled:He}:{value:We,tooltip:be,disabled:He}}));return De==="jong"&&!t.requireCoda&&Re.unshift([oe]),{...Fe,groups:Re}}const Qe=th[De].map(Re=>!Oe&&I[De].has(Re)?Re:{value:Re,disabled:!0});return{...Fe,items:De==="jong"&&!t.requireCoda?[oe,...Qe]:Qe}};P.push(Ce("cho",z.trainOnset)),P.push(Ce("jung",z.trainVowel)),P.push(Ce("jong",z.trainCoda))}if(P.push({...nl(r,M,{labelAction:J([r("wordPairs.filter.difficultyInfo",{defaultValue:"\uAD6D\uB9BD\uAD6D\uC5B4\uC6D0\uC758 \uAE30\uCD08 \uC5B4\uD718 \uB4F1\uAE09\uC774 \uACB0\uACFC\uC5D0 \uBC18\uC601\uB429\uB2C8\uB2E4."})])}),label:z.gradeLabel}),t.partOfSpeech&&P.push(il(M)),t.wordType&&P.push(sl(M)),t.choseong||t.fixedSyllable!=null){const oe=t.fixedSyllable;P.push({label:z.syllableCount,items:[...Jp.map(re=>({value:cl(re),displayLabel:r("wordPairs.syllableN",{n:re,defaultValue:"{{n}}\uC74C\uC808"}),disabled:oe!=null?re!==oe:!G.exact.has(re)||re<ee})),{value:cl(na),displayLabel:r("wordPairs.syllableNPlus",{n:na,defaultValue:"{{n}}\uC74C\uC808 \uC774\uC0C1"}),disabled:oe!=null?na!==oe:!G.min}],allOption:!0,allOptionDisabled:oe!=null})}return t.choseong?P.push({label:z.exclude,displayLabel:z.selectLabel,multiple:!0,items:[z.excludeImage,z.sameStructure],labelAction:J(ue)}):P.push({label:z.exclude,displayLabel:z.selectLabel,multiple:!0,items:[z.excludeImage],labelAction:J([ue[0]])}),P},[t.choseong,t.partOfSpeech,t.wordType,t.requireSyllable,t.fixedSyllable,t.fixedNoCoda,t.requireCoda,ee,I,k,m,G,z,r,J,ue,M]),ae={...t.difficulty?{[z.diffPhonemeCount]:String(u)}:{},...(t.choseong||t.fixedSyllable!=null)&&p.syllable!=null?{[z.syllableCount]:cl(p.syllable)}:{},...t.choseong&&p.cho?{[z.trainOnset]:p.cho}:{},...t.choseong&&p.jung?{[z.trainVowel]:p.jung}:{},...t.choseong&&p.jong?{[z.trainCoda]:p.jong}:{},[z.exclude]:[...f?[z.excludeImage]:[],..._?[z.sameStructure]:[]],[z.gradeLabel]:A.map(P=>r("wordSearch.filter.grade",{n:Number(P),defaultValue:"{{n}}\uB4F1\uAE09"})),...t.partOfSpeech?{[M.partOfSpeech]:S}:{},...t.wordType?{[M.wordType]:T}:{}},X=l.useCallback((P,oe)=>{if(oe===z.diffPhonemeCount){const re=Number(P);re>=1&&d(re)}else if(oe===z.exclude)P===z.excludeImage?x(re=>!re):P===z.sameStructure&&C(re=>!re);else if(oe===z.syllableCount)g(re=>{if(!P||P===Nt)return{...re,syllable:null};const Ce=Y4(P);return{...re,syllable:re.syllable===Ce?null:Ce}});else if(oe===z.gradeLabel){if(!P||P===Nt){w([]);return}const re=P.replace(/\D/g,"");w(Ce=>Ce.includes(re)?Ce.filter(De=>De!==re):[...Ce,re])}else if(oe===M.partOfSpeech){if(!P||P===Nt){D([]);return}D(re=>re.includes(P)?re.filter(Ce=>Ce!==P):[...re,P])}else if(oe===M.wordType){if(!P||P===Nt){E([]);return}E(re=>re.includes(P)?re.filter(Ce=>Ce!==P):[...re,P])}else{const re=Y[oe];if(!re)return;g(Ce=>t.requireSyllable?P&&P!==Nt?{...Ce,[re]:P}:Ce:!P||P===Nt||Ce[re]===P?{...Ce,[re]:null}:{...Ce,[re]:P})}},[z,Y,M,t.requireSyllable]),ce=l.useCallback(P=>!t.partOfSpeech&&!t.wordType?!0:W4(P,{...t.partOfSpeech?{[M.partOfSpeech]:S}:{},...t.wordType?{[M.wordType]:T}:{}},M),[t.partOfSpeech,t.wordType,S,T,M]),xe=l.useCallback(P=>{P!==m&&(P!=="direct"&&m!=="direct"&&g(oe=>ml(oe,P,y.current)),h(P))},[m]),Se=l.useCallback(()=>({composition:p,contrastCount:u,excludeNoImage:f,sameStructureOnly:_,phonemeView:m,gradeFilter:A}),[p,u,f,_,m,A]),Ae=l.useCallback(P=>{g(P.composition),d(P.contrastCount),x(P.excludeNoImage),C(P.sameStructureOnly??!0),h(P.phonemeView),w(Array.isArray(P.gradeFilter)?P.gradeFilter:[])},[]);return{difficulty:b,contrastCount:u,composition:p,choseong:p.cho,excludeNoImage:f,sameStructureOnly:_,gradeFilter:A,posFilter:S,wordTypeFilter:T,matchesWordAttributes:ce,poolVersion:H,filterSections:pe,filterSelected:ae,handleFilterSelect:X,phonemeView:m,setPhonemeView:xe,phonemeGroupLabel:z.phonemeGroup,wordCount:te,getFilterSnapshot:Se,restoreFilterSnapshot:Ae}}function X4(e){const t=c=>c?ba(c):null,a=t(e.cho),r=t(e.jung),n=e.jong===ra,i=n?null:t(e.jong),s=e.syllable!=null?nn(e.syllable):null;return!a&&!r&&!i&&!n&&!s?null:{cho:a,jung:r,jong:i,jongNone:n,syllable:s}}function ih(e,t,a,r,n,i,s=!0,c="char",u=[]){const[d,m]=l.useState({}),[h,p]=l.useState(!1),{cho:g=null,jung:v=null,jong:b=null,syllable:y=null}=r??{},f=u.length>0?u.slice().sort().join(","):"";return l.useEffect(()=>{i>0&&l4(n).catch(()=>{})},[i,n]),l.useEffect(()=>{let x=!1;return p(!0),(async()=>{const _=X4({cho:g,jung:v,jong:b,syllable:y}),C=`${g??""}_${v??""}_${b??""}_${y??""}_${f}`,A={};await Promise.all(e.map(async w=>{const S=go[w.key];try{const D=await Cp(w.key,{difficulty:S.difficulty?t:null,contrastCount:S.difficulty?a:1,composition:S.choseong?_:null,count:5,excludeNoImage:n,sameStructureOnly:s,phonemeView:c,grade:u.length>0?u:null});D&&D.length>0?A[w.key]={id:`wt-${w.key}-${t}-${C}-${Date.now()}`,name:w.label,training_type:w.key,category_main_code:"WORD",iconColor:w.color,subTitle:w.subTitle,items:D,itemCount:D.length}:A[w.key]={id:`wt-${w.key}-empty`,name:w.label,training_type:w.key,category_main_code:"WORD",iconColor:w.color,subTitle:w.subTitle,items:[],itemCount:0,__empty:!0}}catch{A[w.key]=null}})),x||(m(A),p(!1))})(),()=>{x=!0}},[t,a,g,v,b,y,n,s,c,i,f]),{perTypeData:d,generating:h}}function Q4(e){let t=2166136261;for(let a=0;a<e.length;a++)t^=e.charCodeAt(a),t=Math.imul(t,16777619);return t>>>0}function J4(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let a=Math.imul(t^t>>>15,1|t);return a=a+Math.imul(a^a>>>7,61|a)^a,((a^a>>>14)>>>0)/4294967296}}const ln=Qt;function bl(e,t){const a=t?J4(Q4(t)):Math.random;return{LISTEN_IN_NOISE:ln(Ra,Math.max(0,e.LISTEN_IN_NOISE||0),a),SHORT_STORY:ln($a,Math.max(0,e.SHORT_STORY||0),a),LONG_STORY:ln(za,Math.max(0,e.LONG_STORY||0),a),ORDERING_SENTENCE:ln(Ia,Math.max(0,e.ORDERING_SENTENCE||0),a)}}function sh(e){return e?!!(e.LISTEN_IN_NOISE?.length||e.SHORT_STORY?.length||e.LONG_STORY?.length||e.ORDERING_SENTENCE?.length):!1}const e5={LISTEN_IN_NOISE:3,SHORT_STORY:2,LONG_STORY:1,ORDERING_SENTENCE:2};function lh(e=!1,t=e5,a){const r=ka(Date.now()),n=ka(Date.now()-864e5),i=`${a??""}|${r}`,s=`${a??""}|${n}`;return Ra.length>0||$a.length>0||za.length>0||Ia.length>0?{today:bl(t,i),yesterday:bl(t,s)}:{today:bl(t,i),yesterday:null}}function ch(e){const t=l.useRef({LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]}),a=l.useRef(null),[r,n]=l.useState(!1),[i,s]=l.useState(!1),[c,u]=l.useState(0),[d,m]=l.useState(!1);l.useEffect(()=>{let p=!1,g,v=0;const b=40,y=()=>{g!==void 0&&(clearInterval(g),g=void 0)};let f=!1;try{const C=new URLSearchParams(window.location.search),A=C.get("forceRefresh")||C.get("force");f=A==="1"||A==="true"}catch{}const x=C=>{t.current=C.today,a.current=C.yesterday,n(!0),m(!0),u(A=>A+1),p=!0,y()},_=async()=>{if(p)return;if(!f){const A=lh(!1,void 0,e);if(sh(A.today)){x(A);return}}try{await ms(3e3)}catch{}if(p)return;const C=lh(f,void 0,e);if(sh(C.today)){x(C);return}++v>=b&&(n(!0),m(!1),p=!0,y())};return _(),g=setInterval(_,250),()=>{p=!0,y()}},[e]);const h=l.useCallback(p=>{const g=i?a.current:t.current,v=i?t.current:a.current;return g?.[p]?.length?g[p]:v?.[p]?.length?v[p]:void 0},[i,c]);return{loaded:r,hasData:d,showYesterday:i,setShowYesterday:s,getTrainingPerType:h}}const ko=[];let cn=!1;function dh(e){if(e.key!=="Escape"||e.defaultPrevented)return;const t=ko[ko.length-1];t&&(e.stopPropagation(),t())}function gl(e){return ko.push(e),!cn&&typeof document<"u"&&(document.addEventListener("keydown",dh),cn=!0),()=>{const t=ko.lastIndexOf(e);t>=0&&ko.splice(t,1),ko.length===0&&cn&&typeof document<"u"&&(document.removeEventListener("keydown",dh),cn=!1)}}function uh(e,t=!0){const a=Ks(e);l.useEffect(()=>{if(t)return gl(()=>{a.current?.()})},[t,a])}const dn=(e,t)=>`${e}:${t??1}`,fl=new Map;function ph(e,t){const[a,r]=l.useState(0),n=e.map(i=>dn(i.word,i.homonum)).join("|");return l.useEffect(()=>{const i=(n?n.split("|"):[]).filter(u=>!fl.has(u));if(i.length===0)return;let s=!1;const c=Array.from(new Set(i.map(u=>u.slice(0,u.lastIndexOf(":")))));return t(c).then(u=>{if(!(s||u.length===0)){for(const d of u)d.Meaning&&fl.set(dn(d.Word,d.Homonum??void 0),d.Meaning);r(d=>d+1)}}),()=>{s=!0}},[n,t]),l.useMemo(()=>{const i=n?n.split("|"):[],s=new Map;for(const c of i){const u=fl.get(c);u!=null&&s.set(c,u)}return s},[n,a])}function hh(e,t,a){const r=Number.isFinite(t)&&t>=1?Math.floor(t):1,n=Math.max(1,Math.ceil(e.length/r)),i=Number.isFinite(a)?Math.min(Math.max(1,Math.floor(a)),n):1;return{pageItems:l.useMemo(()=>e.slice((i-1)*r,i*r),[e,i,r]),totalPages:n,curPage:i}}function un(e="warning"){const[t,a]=l.useState(""),[r,n]=l.useState(e),[i,s]=l.useState(0),c=l.useCallback((h,p)=>{n(p),a(h),s(g=>g+1)},[]),u=l.useCallback(h=>c(h,"warning"),[c]),d=l.useCallback(h=>c(h,"normal"),[c]),m=l.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:i,showToast:c,showWarning:u,showNormal:d,clearToast:m}}const dr={blue:"#60A5FA",green:"#4ADE80",amber:"#FBBF24",purple:"#A78BFA",pink:"#F472B6"},ur=dr.blue,pn=dr.green,pr=dr.amber,hn=dr.purple,t5=dr.pink,a5=[{key:"discrimination",label:"\uBCC0\uBCC4\uD6C8\uB828",disc:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0, \uB610\uB294 \uD2B9\uC815 \uC18C\uB9AC\uB97C \uAD6C\uBCC4\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"ear",types:[{key:"SAME_SOUND_PICK",label:"\uAC19\uC740 \uC18C\uB9AC \uACE0\uB974\uAE30",icon:"volume-2",color:ur,subTitle:"\uB4E4\uC740 \uC18C\uB9AC\uC640 \uAC19\uC740 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"SAME_OR_DIFF",label:"\uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0 \uB9DE\uD788\uAE30",icon:"diff",color:ur,subTitle:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0, \uB2E4\uB978\uC9C0 \uAD6C\uBD84\uD558\uC138\uC694."},{key:"HEAR_AND_PICK_SAME",label:"\uC77C\uCE58\uD558\uB294 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"headphones",color:ur,subTitle:"\uB4E4\uC740 \uC18C\uB9AC\uC758 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"HEAR_AND_PICK_INCLUDED",label:"\uD55C \uC74C\uC808 \uD3EC\uD568 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"scan-search",color:ur,subTitle:"\uB4E4\uC740 \uC74C\uC808\uC774 \uD3EC\uD568\uB41C \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"STARTS_WITH_SAME_SOUND",label:"\uCCAB \uC74C\uC808\uC774 \uAC19\uC740 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"play-circle",color:ur,subTitle:"\uB4E4\uC740 \uB2E8\uC5B4\uC640 \uAC19\uC740 \uC18C\uB9AC\uB85C \uC2DC\uC791\uD558\uB294 \uB2E8\uC5B4\uB97C \uACE0\uB974\uC138\uC694."}]},{key:"synthesis",label:"\uD569\uC131\uD6C8\uB828",disc:"\uB450 \uAC1C \uC774\uC0C1\uC758 \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uD569\uCCD0 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"git-merge",types:[{key:"MERGE_2_SYLLABLES",label:"\uC74C\uC808 2\uAC1C \uD569\uCE58\uAE30",icon:"link-2",color:pn,subTitle:"\uB450 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_3_SYLLABLES",label:"\uC74C\uC808 3\uAC1C \uD569\uCE58\uAE30",icon:"git-merge",color:pn,subTitle:"\uC138 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_2_PHONEMES",label:"\uC74C\uC18C 2\uAC1C \uD569\uCE58\uAE30",icon:"combine",color:pn,subTitle:"\uB450 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_3_PHONEMES",label:"\uC74C\uC18C 3\uAC1C \uD569\uCE58\uAE30",icon:"braces",color:pn,subTitle:"\uC138 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"}]},{key:"deletion",label:"\uD0C8\uB77D\uD6C8\uB828",disc:"\uB2E8\uC5B4\uC5D0\uC11C \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uC81C\uAC70\uD588\uC744 \uB54C \uB0A8\uB294 \uC18C\uB9AC\uB97C \uC778\uC2DD\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"scissors",types:[{key:"DROP_1_FROM_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C 1\uC74C\uC808 \uD0C8\uB77D",icon:"scissors",color:pr,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_1_FROM_3SYLL",label:"3\uC74C\uC808\uC5D0\uC11C 1\uC74C\uC808 \uD0C8\uB77D",icon:"minus-circle",color:pr,subTitle:"3\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_PART_FROM_COMPOUND",label:"\uD569\uC131\uC5B4\uC5D0\uC11C \uBD80\uBD84\uD0C8\uB77D",icon:"unlink",color:pr,subTitle:"\uD569\uC131\uC5B4\uC758 \uC77C\uBD80\uB97C \uBE7C\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_FINAL_CONSONANT_FROM_1SYLL",label:"1\uC74C\uC808\uC5D0\uC11C \uBC1B\uCE68 \uD0C8\uB77D",icon:"eraser",color:pr,subTitle:"\uBC1B\uCE68\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"REMOVE_CONSONANT_AND_IDENTIFY_PHONEME",label:"1\uC74C\uC808\uC5D0\uC11C \uC790\uC74C \uD0C8\uB77D",icon:"audio-lines",color:pr,subTitle:"\uC790\uC74C\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB0A8\uC744\uAE4C\uC694?"}]},{key:"substitution",label:"\uB300\uCE58\uD6C8\uB828",disc:"\uB2E8\uC5B4\uC758 \uC77C\uBD80 \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uBC14\uAFB8\uC5B4 \uC0C8\uB85C\uC6B4 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"replace",types:[{key:"CHANGE_1_SYLL_IN_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",icon:"replace",color:hn,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_SYLL_IN_3SYLL",label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",icon:"shuffle",color:hn,subTitle:"3\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_PHONEME_IN_1SYLL",label:"1\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC18C \uBC14\uAFB8\uAE30",icon:"arrow-right-left",color:hn,subTitle:"1\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_PHONEME_IN_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC18C \uBC14\uAFB8\uAE30",icon:"flip-horizontal",color:hn,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."}]},{key:"attention",label:"\uCCAD\uAC01\uC801\uC8FC\uC758\uB825\uD6C8\uB828",disc:"\uC5EC\uB7EC \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uC21C\uC11C\uB97C \uAE30\uC5B5\uD558\uB294 \uC8FC\uC758\uB825\uACFC \uB2E8\uAE30 \uAE30\uC5B5 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"list-ordered",types:[{key:"LISTEN_AND_REMEMBER_ORDER",label:"\uB4E3\uACE0 \uC21C\uC11C\uB300\uB85C \uAE30\uC5B5\uD558\uAE30",icon:"list-ordered",color:t5,subTitle:"\uC138 \uB2E8\uC5B4\uB97C \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694."}]}];function mh(){const{t:e}=me.useTranslation();return l.useMemo(()=>{const t=Object.fromEntries(zw(e).map(r=>[r.key,r.label])),a={...t};return a5.flatMap(r=>r.types).forEach(r=>{a[r.key]=e(`trainingType.${r.key}.label`,{defaultValue:r.label})}),{sentence:t,all:a}},[e])}var o5=Object.freeze({__proto__:null,CACHE_GROUPS:Js,DocumentTitleSuppressContext:Xs,EMPTY_COMPOSITION:sn,MediaQueryOverrideContext:on,NO_CODA:ra,SYLLABLE_MIN:na,VAP_PAGE_SIZE_OPTIONS:tl,buildGradeSection:nl,buildPartOfSpeechSection:il,buildPositionSection:Xp,buildSelectSection:Zp,buildSyllableSection:Kp,buildWordTypeSection:sl,charToPronValue:pl,convertComposition:ml,fmtBytes:Ip,lsBytes:el,meaningKey:dn,pronToCharValue:hl,syllableToFilter:nn,today:Co,toggleAttributeFilter:Qp,useCacheManagement:Op,useDailyTrainingSelection:ch,useDelayedHoverAnchor:Up,useDeviceManagement:Yp,useDocumentTitle:Qs,useEscToClose:uh,useFontScale:an,useHoverAnchor:_o,useMediaQuery:oa,usePagedList:hh,usePasswordChange:zp,useRelativeDay:$p,useTablePaging:al,useTableSort:ol,useToastState:un,useTrainingTypeLabels:mh,useVisitAllPanel:qp,useVisitHistory:Hp,useVisitSchedule:Gp,useWindowEvent:cr,useWordAttributeFilterKeys:rl,useWordDataStats:Fp,useWordMeanings:ph,useWordTrainingDataGeneration:ih,useWordTrainingFilter:nh,valueToJamos:ba}),r5=".ihabdevteam-core-scope .promo-banner{align-items:center;border-radius:var(--radius-s);box-sizing:border-box;display:flex;gap:var(--spacing-m);justify-content:space-between;overflow:hidden;position:relative;text-align:left}.ihabdevteam-core-scope .promo-banner--medium{min-height:120px;padding:20px 24px}.ihabdevteam-core-scope .promo-banner--small{padding:14px 16px}.ihabdevteam-core-scope .promo-banner__title{color:inherit;color:var(--promo-banner-bg-title,inherit)}.ihabdevteam-core-scope .promo-banner__description{color:inherit;color:var(--promo-banner-bg-description,inherit)}.ihabdevteam-core-scope .promo-banner__text{display:flex;flex-direction:column;justify-content:center;min-width:0;position:relative;z-index:1}.ihabdevteam-core-scope .promo-banner__description{margin-left:2px;margin-top:1px}.ihabdevteam-core-scope .promo-banner>.button{flex-shrink:0;position:relative;z-index:1}";Q(r5);function bh({title:e,description:t,actionLabel:a,onAction:r,bg:n,color:i,size:s="medium",actionVariant:c,titleColor:u,descriptionColor:d,className:m=""}){const h=n??i??"main",p=l.useRef(null),[g,v]=l.useState("main"),b=oa("(max-width: 767px)");l.useLayoutEffect(()=>{const x=p.current;x&&(u!==void 0&&x.style.setProperty("--promo-banner-bg-title",u),d!==void 0&&x.style.setProperty("--promo-banner-bg-description",d))},[u,d]),l.useLayoutEffect(()=>{const x=p.current;if(!x)return;const _=ys(x);v(_?.actionVariant??"main")},[h]);const y=ye("promo-banner",`promo-banner--${s}`,m),f=Us[h];return o.jsxs("div",{ref:p,className:y,role:"note",children:[o.jsx(f,{}),o.jsxs("div",{className:"promo-banner__text",children:[o.jsx("span",{className:`promo-banner__title ${s==="small"?"body-2":"h2"}`,children:e}),t&&o.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&o.jsx(le,{size:40,variant:c??g,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...b?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}var n5='.ihabdevteam-core-scope .top-banner{--top-banner-min-h:120px;display:flex;flex-direction:column;padding-bottom:var(--spacing-page);position:relative}.ihabdevteam-core-scope .top-banner__viewport{border-radius:var(--radius-m);min-height:var(--top-banner-min-h);overflow:hidden}.ihabdevteam-core-scope .top-banner__track{align-items:stretch;display:flex;min-height:var(--top-banner-min-h);transition:transform .4s ease}.ihabdevteam-core-scope .top-banner__slide{flex:0 0 100%;min-width:0}.ihabdevteam-core-scope .top-banner__slide>*{box-sizing:border-box;min-height:100%;width:100%}.ihabdevteam-core-scope .top-banner__dots{bottom:calc(var(--spacing-page) + 12px);display:flex;gap:6px;left:50%;position:absolute;transform:translateX(-50%)}.ihabdevteam-core-scope .top-banner__dot{background:var(--color-white-a30);border:none;border-radius:3px;cursor:pointer;height:6px;padding:0;position:relative;transition:width .25s ease,background-color .25s ease;width:6px}.ihabdevteam-core-scope .top-banner__dot:after{content:"";height:24px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:calc(100% + 6px)}.ihabdevteam-core-scope .top-banner__dot--active{background:var(--color-white);width:18px}.ihabdevteam-core-scope .top-banner__dots--dark .top-banner__dot{background:var(--color-lightGray-a80)}.ihabdevteam-core-scope .top-banner__dots--dark .top-banner__dot--active{background:var(--color-main)}';Q(n5);function gh({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":n}){const{t:i}=me.useTranslation(),s=n??i("topBanner.ariaLabel","\uBC30\uB108"),c=l.Children.toArray(e),u=c.length,[d,m]=l.useState(0),[h,p]=l.useState(!1),g=u>0?d%u:0;return l.useEffect(()=>{if(u<2||t<=0||h)return;const v=window.setInterval(()=>m(b=>(b+1)%u),t);return()=>window.clearInterval(v)},[u,t,h]),u===0?null:o.jsxs("section",{className:ye("top-banner",r),"aria-label":s,"aria-roledescription":"carousel",onMouseEnter:()=>p(!0),onMouseLeave:()=>p(!1),onFocus:()=>p(!0),onBlur:()=>p(!1),children:[o.jsx("div",{className:"top-banner__viewport",children:o.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${g*100}%)`},children:c.map((v,b)=>o.jsx("div",{className:"top-banner__slide","aria-hidden":b!==g,...b!==g?{inert:!0}:{},children:v},b))})}),u>1&&o.jsx("div",{className:`top-banner__dots${(a?.[g]??"light")==="dark"?" top-banner__dots--dark":""}`,children:c.map((v,b)=>o.jsx("button",{type:"button",className:`top-banner__dot${b===g?" top-banner__dot--active":""}`,"aria-label":i("topBanner.dotAriaLabel",{count:u,index:b+1,defaultValue:`${u}\uAC1C \uC911 ${b+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":b===g,onClick:()=>m(b)},b))})]})}var i5=".ihabdevteam-core-scope .accordion-item{background:transparent;border-radius:var(--radius-m)}.ihabdevteam-core-scope .accordion-item__header{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;cursor:pointer;display:flex;gap:var(--spacing-s);min-height:56px;outline:none;padding:0 20px;transition:background-color .2s ease,border-color .2s ease}.ihabdevteam-core-scope .accordion-item__header:hover{background:var(--color-deepWhite);border-color:var(--color-main)}.ihabdevteam-core-scope .accordion-item__header:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .accordion-item__avatar{align-items:center;display:inline-flex;flex:none}.ihabdevteam-core-scope .accordion-item__title{flex:1;text-align:left}.ihabdevteam-core-scope .accordion-item__chevron{align-items:center;display:inline-flex;flex:none}.ihabdevteam-core-scope .accordion-item__chevron-icon{align-items:center;color:var(--color-lightGray);display:inline-flex}.ihabdevteam-core-scope .accordion-item__chevron-image{height:18px;opacity:.7;transition:transform .18s ease;width:18px}.ihabdevteam-core-scope .accordion-item.accordion-item--open{background:var(--color-main-a10);border-radius:var(--radius-m);overflow:hidden}.ihabdevteam-core-scope .accordion-item.accordion-item--open .accordion-item__header{background:var(--color-white);border:1px solid var(--color-main)}.ihabdevteam-core-scope .accordion-item.accordion-item--open .accordion-item__chevron-image{transform:rotate(180deg)}.ihabdevteam-core-scope .accordion-item__body p{margin:0}.ihabdevteam-core-scope .accordion-item__body{background:transparent;box-sizing:border-box;color:var(--color-darkGray);max-width:100%;overflow-wrap:break-word;padding:40px 32px;text-align:left;word-break:break-word}.ihabdevteam-core-scope .accordion-group--s48 .accordion-item__header{min-height:48px}.ihabdevteam-core-scope .accordion-group--s56 .accordion-item__header{min-height:56px}.ihabdevteam-core-scope .accordion-group--s72 .accordion-item__header{min-height:72px}.ihabdevteam-core-scope .accordion-group--s48 .accordion-item,.ihabdevteam-core-scope .accordion-group--s48 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s48 .accordion-item__header{border-radius:12px}.ihabdevteam-core-scope .accordion-group--s56 .accordion-item,.ihabdevteam-core-scope .accordion-group--s56 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s56 .accordion-item__header{border-radius:14px}.ihabdevteam-core-scope .accordion-group--s72 .accordion-item,.ihabdevteam-core-scope .accordion-group--s72 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s72 .accordion-item__header{border-radius:18px}.ihabdevteam-core-scope .accordion-group,.ihabdevteam-core-scope .accordion-group>.accordion-item{box-sizing:border-box;display:block;width:100%}.ihabdevteam-core-scope .accordion-group>.accordion-item+.accordion-item{margin-top:var(--spacing-s)}";Q(i5);function s5({title:e,body:t,open:a=!1,onToggle:r,avatar:n,titleClassName:i="body-2",bodyClassName:s="body-2",className:c=""}){const{t:u}=me.useTranslation();return o.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${c}`.trim(),children:[o.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),r?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const m=d.currentTarget.closest('[role="list"]');if(!m)return;const h=Array.from(m.querySelectorAll("[data-accordion-header]")),p=h.indexOf(d.currentTarget);(d.key==="ArrowDown"?h[p+1]:h[p-1])?.focus()}},children:[n&&o.jsx("div",{className:"accordion-item__avatar",children:n}),o.jsx("div",{className:`accordion-item__title ${i}`,children:e}),o.jsx("div",{className:"accordion-item__chevron",children:o.jsx(Pe,{icon:a?"chevron-up":"chevron-down",label:a?u("accordion.collapse","\uC811\uAE30"):u("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&o.jsx("div",{className:`accordion-item__body ${s}`,children:typeof t=="string"?o.jsx("p",{children:t}):t})]})}function fh({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:n}){const[i,s]=l.useState(t);return o.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((c,u)=>o.jsx(s5,{title:c.title,body:c.body,avatar:c.avatar,open:u===i,onToggle:()=>s(u===i?-1:u),bodyClassName:n},u))})}var l5=".ihabdevteam-core-scope .bottom-nav{align-items:flex-start;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);bottom:0;display:none;height:calc(72px + env(safe-area-inset-bottom));left:0;padding:8px calc(10px + env(safe-area-inset-right)) env(safe-area-inset-bottom) calc(10px + env(safe-area-inset-left));position:fixed;right:0;z-index:var(--z-nav)}.ihabdevteam-core-scope .bottom-nav__left{align-items:center;display:flex;flex-shrink:0}.ihabdevteam-core-scope .bottom-nav__divider{align-self:flex-start;background:var(--color-whiteLine);border-radius:1px;flex-shrink:0;height:24px;margin:14px 0 0;width:1px}.ihabdevteam-core-scope .bottom-nav__items{align-items:center;display:flex;flex:1;gap:10px;justify-content:center;overflow:hidden}.ihabdevteam-core-scope .bottom-nav__right{align-items:center;display:flex;flex-shrink:0}@media (max-width:767px){.ihabdevteam-core-scope .bottom-nav{display:flex}}@media (min-width:768px){.ihabdevteam-core-scope .bottom-nav{display:none}}.ihabdevteam-core-scope .bottom-nav-item{align-items:center;background:transparent!important;border:none!important;border-radius:10px!important;color:var(--color-lightGray);cursor:pointer;display:flex!important;flex-direction:column;height:52px!important;justify-content:center;padding:0!important;transition:background .16s ease,color .16s ease!important;width:52px!important}.ihabdevteam-core-scope .bottom-nav-item:hover:not(.is-selected){background:var(--color-darkWhite)!important}.ihabdevteam-core-scope .bottom-nav-item.is-selected{animation:bottom-nav-active-bg .36s cubic-bezier(.4,0,.2,1) forwards;background-color:var(--color-sub)!important;box-shadow:0 6px 12px rgba(12,24,36,.06);color:#fff!important}.ihabdevteam-core-scope .bottom-nav-item.is-selected *{color:#fff!important}.ihabdevteam-core-scope .bottom-nav-item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .bottom-nav-item:disabled,.ihabdevteam-core-scope .bottom-nav-item[disabled]{opacity:.6;pointer-events:none}@keyframes bottom-nav-active-bg{0%{background-color:var(--color-sub)}to{background-color:var(--color-main)}}";Q(l5);var c5=".ihabdevteam-core-scope .badge{align-items:center;background:var(--badge-color,var(--color-main));border-radius:999px;box-shadow:none;box-shadow:var(--badge-shadow,none);color:#fff;color:var(--badge-on-color,#fff);display:inline-flex;gap:6px;justify-content:center;line-height:1;vertical-align:middle;white-space:nowrap}.ihabdevteam-core-scope .badge--small{font-size:12px;height:20px;padding:0 10px}.ihabdevteam-core-scope .badge--medium{font-size:14px;height:28px;padding:0 14px}.ihabdevteam-core-scope .badge--large{font-size:16px;height:32px;padding:0 18px}.ihabdevteam-core-scope .badge__icon{align-items:center;display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .badge--default{--badge-color:var(--color-lightGray);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--main{--badge-color:var(--color-main);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--sub{--badge-color:var(--color-sub);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--danger{--badge-color:var(--color-error);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--disabled{--badge-color:var(--color-disabled);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--like{--badge-color:var(--color-like);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--success{--badge-color:var(--color-success);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--warning{--badge-color:var(--color-warn);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--critical{--badge-color:#7c3aed;--badge-on-color:#fff}.ihabdevteam-core-scope .badge--outline{background:transparent;border:1px solid var(--badge-color);box-shadow:none;color:var(--badge-color)}.ihabdevteam-core-scope .badge--soft{background:color-mix(in srgb,var(--badge-color) 10%,transparent);box-shadow:none;color:var(--badge-color)}.ihabdevteam-core-scope .circle-badge{align-items:center;border:2px solid var(--color-pureWhite);border-radius:50%;box-sizing:border-box;display:inline-flex;flex-shrink:0;font-weight:700;justify-content:center;line-height:1;pointer-events:none;position:absolute;transition:background .12s,transform .12s;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:1}@keyframes circle-badge-pop{0%{opacity:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.ihabdevteam-core-scope .circle-badge--animate{animation:circle-badge-pop .24s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .circle-badge--animate{animation:none}}.ihabdevteam-core-scope .circle-badge--clickable{cursor:pointer;pointer-events:auto}.ihabdevteam-core-scope .circle-badge--clickable:hover{transform:scale(1.12)}.ihabdevteam-core-scope .circle-badge--top-right{right:-6px;top:-6px}.ihabdevteam-core-scope .circle-badge--top-left{left:-6px;top:-6px}.ihabdevteam-core-scope .circle-badge--inline{border:none;position:static}.ihabdevteam-core-scope .circle-badge--24{border-width:1px;font-size:11px;height:24px;width:24px}.ihabdevteam-core-scope .circle-badge--32{border-width:2px;font-size:14px;height:32px;width:32px}.ihabdevteam-core-scope .circle-badge--40{border-width:2px;font-size:16px;height:40px;width:40px}.ihabdevteam-core-scope .circle-badge--check,.ihabdevteam-core-scope .circle-badge--number{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .circle-badge--remove{background:var(--color-error);color:#fff}.ihabdevteam-core-scope .circle-badge--minus{background:var(--color-lightGray);color:#fff}.ihabdevteam-core-scope .circle-badge--24 svg{height:11px;width:11px}.ihabdevteam-core-scope .circle-badge--32 svg{height:15px;width:15px}.ihabdevteam-core-scope .circle-badge--40 svg{height:19px;width:19px}";Q(c5);function d5(){return o.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:o.jsx("polyline",{points:"2,6 5,9 10,3"})})}function u5(){return o.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[o.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),o.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function p5(){return o.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:o.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function ht(e){const{type:t="bar",size:a,className:r="","aria-label":n}=e;if(t==="dot"){const{icon:_,number:C,position:A="top-right",onClick:w,animate:S=!1}=e,D=C!==void 0?"number":_??"check",T=typeof a=="number"?a:32,E=ye("circle-badge",`circle-badge--${D}`,`circle-badge--${A}`,`circle-badge--${T}`,S?"circle-badge--animate":"",w?"circle-badge--clickable":"",r),W=C!==void 0?`${C}\uBC88\uC9F8 \uC120\uD0DD`:{check:"\uC120\uD0DD\uB428",remove:"\uC81C\uAC70",minus:"\uC81C\uC678"}[_??"check"];return o.jsxs("span",{className:E,onClick:w,onKeyDown:w?M=>{M.key!=="Enter"&&M.key!==" "||(M.preventDefault(),M.currentTarget.click())}:void 0,"aria-label":n??W,role:w?"button":void 0,tabIndex:w?0:void 0,children:[C!==void 0&&C,C===void 0&&_==="check"&&o.jsx(d5,{}),C===void 0&&_==="remove"&&o.jsx(u5,{}),C===void 0&&_==="minus"&&o.jsx(p5,{})]})}const{label:i,children:s,variant:c="default",fill:u="filled",minWidth:d,iconLeft:m,iconRight:h,color:p}=e,g=typeof a=="number"?"medium":a??"medium",v={small:"caption-2b",medium:"body-3b",large:"body-2b"}[g]??"body-2b",b={small:12,medium:14,large:16}[g]??14,y=ye("badge",`badge--${c}`,`badge--${g}`,u!=="filled"?`badge--${u}`:"",v,r),f=p?.startsWith("--")?`var(${p})`:p,x=d!==void 0||f?{...d!==void 0?{minWidth:typeof d=="number"?`${d}px`:d}:{},...f?{"--badge-color":f}:{}}:void 0;return o.jsxs("span",{className:y,style:x,children:[m&&o.jsx(Pe,{icon:m,size:b,className:"badge__icon"}),i??s,h&&o.jsx(Pe,{icon:h,size:b,className:"badge__icon"})]})}var h5=".ihabdevteam-core-scope .tooltip-menu{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:160px;padding:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-menu__header{align-items:center;border-bottom:1px solid var(--color-darkWhite);display:flex;gap:var(--spacing-xs);height:52px;padding:8px 12px}.ihabdevteam-core-scope .tooltip-menu__title{font-weight:600}.ihabdevteam-core-scope .tooltip-menu__columns{display:flex;gap:var(--spacing-s);padding:4px}.ihabdevteam-core-scope .tooltip-menu__column{display:flex;flex:1;flex-direction:column;gap:var(--spacing-xs);min-width:0}.ihabdevteam-core-scope .tooltip-menu__column-title{color:var(--color-lightGray);margin-bottom:4px}.ihabdevteam-core-scope .tooltip-menu__items{display:flex;flex-direction:column;gap:var(--spacing-l)}.ihabdevteam-core-scope .tooltip-menu--small{gap:2px;min-width:140px}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__items{gap:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__columns{gap:var(--spacing-xs);padding:2px}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__header{height:44px;padding:6px 10px}.ihabdevteam-core-scope .tooltip-menu__item{width:100%}.ihabdevteam-core-scope .tooltip-menu__item-icon{align-items:center;display:inline-flex;height:24px;justify-content:center;width:24px}.ihabdevteam-core-scope .tooltip-menu__label{flex:1}.ihabdevteam-core-scope .tooltip-menu__chev{align-items:center;display:inline-flex;justify-content:center;width:20px}@media (max-width:600px){.ihabdevteam-core-scope .tooltip-menu__columns{flex-direction:column}}";Q(h5);function hr({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:n}=me.useTranslation(),i=r==="small"?40:48,[s,c]=l.useState([{title:null,columns:e}]),u=s[s.length-1];l.useEffect(()=>{c(v=>{try{if(!Array.isArray(v)||v.length===0)return[{title:null,columns:e}];const b=v.slice(),y=b[0]&&typeof b[0].title<"u"?b[0].title:null;return b[0]={title:y,columns:e},b}catch{return[{title:null,columns:e}]}})},[e]);const d=l.useCallback(()=>c(v=>v.length>1?v.slice(0,v.length-1):v),[]),m=l.useRef(null),h=l.useRef(null),p=s.length;l.useEffect(()=>{h.current||(h.current=document.activeElement);let v=0,b=0;const y=()=>{const f=m.current?.querySelector("button:not([disabled])");if(f&&f.offsetParent){f.focus({preventScroll:!0});return}b++<20&&(v=requestAnimationFrame(y))};return v=requestAnimationFrame(y),()=>cancelAnimationFrame(v)},[p]),l.useEffect(()=>()=>{h.current?.focus?.({preventScroll:!0})},[]);const g=l.useCallback(v=>{if(v){if(Array.isArray(v.children)&&v.children.length){c(b=>[...b,{title:v.label||null,columns:[{title:null,items:v.children||[]}]}]);return}try{typeof v.onClick=="function"&&v.onClick()}catch{}try{v&&v.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t]);return o.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(s.length>1||u.title)&&o.jsxs("div",{className:"tooltip-menu__header",children:[s.length>1?o.jsx(le,{size:i,type:"dot",icon:"chevron-left",ariaLabel:n("common.back","\uB4A4\uB85C"),onClick:d,variant:"transparent-gray",useBorder:!1}):null,o.jsx("div",{className:"tooltip-menu__title button-1",children:u.title})]}),o.jsx("div",{className:"tooltip-menu__columns",ref:m,children:u.columns&&u.columns.map((v,b)=>o.jsxs("div",{className:"tooltip-menu__column",children:[v.title?o.jsx("div",{className:"tooltip-menu__column-title body-3",children:v.title}):null,o.jsx("div",{className:"tooltip-menu__items",children:(v.items||[]).map((y,f)=>o.jsx(le,{className:"tooltip-menu__item",size:i,type:y.label?"bar":"dot",icon:y.selected?"check":y.icon||"none",rightIcon:Array.isArray(y.children)&&y.children.length?"chevron-right":y.badgeCount?o.jsx(ht,{type:"dot",position:"inline",number:Math.min(y.badgeCount,99),size:24,"aria-label":`${y.badgeCount}`}):void 0,label:y.label,ariaLabel:y.label,onClick:()=>g(y),selected:y.selected,disabled:y.disabled,showTooltipInfo:y.tooltip||!1,useBorder:!1,align:"left"},f))})]},b))})]})}function So({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[n,i]=l.useState(!1),[s,c]=l.useState({}),u=l.useRef(null),d=l.useRef(null),m=l.useCallback(()=>{u.current&&c(e(u.current.getBoundingClientRect()))},[e]);l.useEffect(()=>{if(!n)return;m();const g=f=>{const x=f.target;r&&x.closest?.(r)||u.current?.contains(x)||d.current?.contains(x)||i(!1)};document.addEventListener("mousedown",g);const v=f=>{d.current?.contains(f.target)||(t==="reposition"?m():t==="close"&&i(!1))};t!=="ignore"&&window.addEventListener("scroll",v,!0);const b=()=>{a==="reposition"?m():a==="close"&&i(!1)};a!=="ignore"&&window.addEventListener("resize",b);const y=f=>{f.key==="Escape"&&i(!1)};return document.addEventListener("keydown",y),()=>{document.removeEventListener("mousedown",g),t!=="ignore"&&window.removeEventListener("scroll",v,!0),a!=="ignore"&&window.removeEventListener("resize",b),document.removeEventListener("keydown",y)}},[n,m,t,a,r]);const h=l.useCallback(()=>i(g=>!g),[]),p=l.useCallback(()=>i(!1),[]);return{open:n,setOpen:i,toggle:h,close:p,style:s,triggerRef:u,menuRef:d}}const m5=52,vh=10;function vl({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:n,moreItems:i=[]}){const{t:s}=me.useTranslation(),c=r==="manager"?"malgwi":"manager",u=r==="manager"?"arrow-left":"arrow-right",d=r==="manager"?s("nav.modeLabelMalgwi","\uB9D0\uADC0"):s("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),m=l.useRef(null),[h,p]=l.useState(0),g=e.length;l.useEffect(()=>{const N=m.current;if(!N||(p(N.clientWidth),typeof ResizeObserver>"u"))return;const j=new ResizeObserver(F=>p(F[0].contentRect.width));return j.observe(N),()=>j.disconnect()},[]);const v=h>0?Math.floor((h+vh)/(m5+vh)):g,b=h>0&&v<g,y=b?v:g,f=e.slice(0,y),x=e.slice(y),_=b||i.length>0,C=l.useCallback(N=>({position:"fixed",bottom:window.innerHeight-N.top+8,right:window.innerWidth-N.right,zIndex:1e4}),[]),{open:A,toggle:w,close:S,style:D,triggerRef:T,menuRef:E}=So({computeStyle:C,onScroll:"ignore",onResize:"ignore"}),W=l.useCallback(()=>n?.(c),[n,c]),M=l.useMemo(()=>x.find(N=>N.key===t)??i.find(N=>N.selected||N.key&&N.key===t),[x,t,i]),k=l.useMemo(()=>[{items:[...x.map(N=>({label:N.label,icon:N.icon,selected:N.key===t,closeOnSelect:!0,onClick:()=>{N.key&&a&&a(N.key),S()}})),...i.map(N=>({label:N.label,icon:N.icon,badgeCount:N.badgeCount,selected:N.selected??(!!N.key&&N.key===t),closeOnSelect:!0,onClick:()=>{N.onClick?.(),S()}}))]}],[x,i,t,a,S]);return o.jsxs("nav",{className:"bottom-nav","aria-label":s("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[n&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"bottom-nav__left",children:o.jsx(le,{size:52,type:"dot",icon:u,ariaLabel:d,className:"bottom-nav-item",onClick:W})}),o.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),o.jsx("div",{className:"bottom-nav__items",ref:m,children:f.map(N=>o.jsx(le,{size:52,type:"dot",icon:N.icon,ariaLabel:N.label,selected:N.key===t,disabled:N.state==="disabled",className:"bottom-nav-item",onClick:()=>N.key&&a?.(N.key)},N.key))}),_&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),o.jsx("div",{className:"bottom-nav__right",children:o.jsxs("div",{ref:T,children:[o.jsx(le,{size:52,type:"dot",icon:M?.icon??"ellipsis",ariaLabel:M?.label??s("nav.more","\uB354\uBCF4\uAE30"),selected:!!M,className:"bottom-nav-item",onClick:w}),A&&qt.createPortal(o.jsx("div",{className:"tooltip-content",style:D,ref:E,children:o.jsx(hr,{columns:k,onClose:S})}),document.body)]})})]})]})}var b5=".ihabdevteam-core-scope .side-nav__menu{-webkit-overflow-scrolling:touch;background-clip:padding-box;border-right:1px solid transparent;display:flex;flex:1;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0 0 0 12px;scrollbar-color:var(--color-darkWhite) transparent;scrollbar-gutter:stable;scrollbar-width:thin}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar-track{background:transparent}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar-thumb{background:var(--color-darkWhite);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar-thumb:hover{background:var(--color-lightGray,var(--color-lightGray))}.ihabdevteam-core-scope .side-nav__menu-list{display:flex;flex:1 0 auto;flex-direction:column;gap:4px;overflow:visible;padding:4px 0}.ihabdevteam-core-scope .side-nav__notification-wrap{align-self:flex-start;display:inline-flex;position:relative}.ihabdevteam-core-scope .side-nav__footer{align-items:left;display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-s);margin-top:var(--spacing-s);padding:0 0 var(--spacing-s) 0}.ihabdevteam-core-scope .side-nav__separator{background:var(--color-whiteLine);height:1px;margin:0 var(--spacing-s) var(--spacing-xs)}.ihabdevteam-core-scope .side-nav__separator--short{margin:4px var(--spacing-m);width:var(--spacing-xl)}@media (max-width:767px){.ihabdevteam-core-scope .side-nav__footer,.ihabdevteam-core-scope .side-nav__menu{display:none}}.ihabdevteam-core-scope .side-nav__item{align-items:center;background:transparent;border:none;border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;flex-shrink:0;font-family:var(--font-family);gap:var(--spacing-s);height:52px;justify-content:flex-start;padding:0 var(--spacing-m);text-align:left;width:100%}@keyframes ihabCoreSnSweep{0%{background-position:100% 0}to{background-position:0 0}}@keyframes ihabCoreSnIconBounce{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.ihabdevteam-core-scope .side-nav__item.active{animation:ihabCoreSnSweep 1s cubic-bezier(.4,0,.2,1) forwards;background:linear-gradient(90deg,var(--color-main) 50%,var(--color-sub) 100%);background-position:0 0;background-size:200% 100%;box-shadow:var(--shadow-button);color:#fff}.ihabdevteam-core-scope .side-nav__item.active .side-nav__icon{animation:ihabCoreSnIconBounce .48s cubic-bezier(.4,0,.2,1) forwards;color:#fff}.ihabdevteam-core-scope .side-nav__icon{align-items:center;color:var(--color-lightGray);display:inline-flex;height:24px;justify-content:center;width:24px}.ihabdevteam-core-scope .side-nav__item.active .circle-badge{background:var(--color-pureWhite);color:var(--color-main)}.ihabdevteam-core-scope .side-nav__item .circle-badge--inline{border:1px solid var(--color-pureWhite)}.ihabdevteam-core-scope .side-nav__icon-wrap{display:inline-flex;flex:0 0 24px;position:relative}.ihabdevteam-core-scope .side-nav__icon{flex:0 0 24px}.ihabdevteam-core-scope .side-nav__icon img{display:block;height:20px;-o-object-fit:contain;object-fit:contain;width:20px}.ihabdevteam-core-scope .side-nav__icon-image{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:20px;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:20px}.ihabdevteam-core-scope .side-nav__item .side-nav__icon img{filter:brightness(0) saturate(0) opacity(.45);transition:filter .16s ease,opacity .16s ease}.ihabdevteam-core-scope .side-nav__item.active .side-nav__icon img{filter:brightness(0) invert(1)}.ihabdevteam-core-scope .side-nav__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .side-nav__item{transition:background-color .16s ease,color .16s ease,transform 80ms ease}.ihabdevteam-core-scope .side-nav__item:focus-visible:not(.active),.ihabdevteam-core-scope .side-nav__item:focus:not(.active),.ihabdevteam-core-scope .side-nav__item:hover:not(.active){background:var(--color-darkWhite)}.ihabdevteam-core-scope .side-nav__item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .side-nav__item.disabled,.ihabdevteam-core-scope .side-nav__item.disabled:focus,.ihabdevteam-core-scope .side-nav__item.disabled:hover{background:transparent;color:var(--color-lightGray);cursor:default;opacity:.6;pointer-events:none;transform:none}.ihabdevteam-core-scope .side-nav__item.disabled .side-nav__icon{color:var(--color-lightGray)}.ihabdevteam-core-scope .side-nav__item.disabled .side-nav__icon img{filter:none;opacity:.8}.ihabdevteam-core-scope .side-nav__item--child{height:40px;padding-left:30px}.ihabdevteam-core-scope .side-nav__item--child .side-nav__icon{height:20px;width:20px}.ihabdevteam-core-scope .side-nav__item--child .side-nav__label{font-weight:400}";Q(b5);function g5(e){const{t}=me.useTranslation(),{activeKey:a,unreadCount:r,onDebug:n,onNotification:i,onSetting:s,onHelp:c,onAccount:u}=e||{},d="default";return o.jsxs("div",{className:"side-nav__footer",children:[n&&o.jsx(le,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:n,selected:a==="debug"}),o.jsxs("span",{className:"side-nav__notification-wrap",children:[o.jsx(le,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"bell",ariaLabel:t("nav.notifications","\uC54C\uB9BC"),onClick:i,selected:a==="notifications"}),!!r&&o.jsx(ht,{type:"dot",number:Math.min(r,99),size:24})]}),o.jsx(le,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:s,selected:a==="settings"}),o.jsx(le,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:c,selected:a==="help"}),o.jsx(le,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:u,selected:a==="account"})]})}function yh(e){const{item:t,itemKey:a,label:r,icon:n,active:i,onClick:s,style:c,state:u,labelStyle:d}=e||{},m=t?.key??a??"",h=t?.label??r??"",p=t?.icon??n??"",g=t?.badge??0,v=o.jsx("span",{className:"side-nav__icon-wrap",children:o.jsx(Pe,{icon:p,label:typeof h=="string"?h:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),b=u==="disabled",y=`side-nav__item ${i?"active":""} ${u||""} ${b?"disabled":""} ${t?.child?"side-nav__item--child":""}`,f=l.useCallback(x=>{if(!b){try{x.currentTarget.blur()}catch{}s?.(m,x.currentTarget)}},[b,m,s]);return o.jsxs("button",{className:y,onClick:f,"aria-label":typeof h=="string"?h:void 0,style:c,"aria-disabled":b,children:[v,o.jsx("span",{className:"side-nav__label button-1 f",style:d,children:h}),g>0&&o.jsx(ht,{type:"dot",position:"inline",number:Math.min(g,99),size:24,"aria-label":`${g}`}),u==="loading"&&o.jsx("span",{className:"side-nav__spinner","aria-label":"loading"})]})}function yl(e){const{t}=me.useTranslation(),{items:a=[],activeKey:r,onChange:n,unreadCount:i,onDebug:s,onNotification:c,onAccount:u,onSetting:d,onHelp:m,appMode:h,onAppModeChange:p}=e||{},g=l.useCallback(()=>p?.(h==="malgwi"?"manager":"malgwi"),[p,h]);return o.jsxs("nav",{"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[o.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(v=>!v.section&&(v.key||v.label)).map((v,b)=>o.jsxs(l.Fragment,{children:[v.divider&&o.jsx("div",{className:"side-nav__separator"}),o.jsx(yh,{item:v,active:v.key===r,state:v.disabled?"disabled":void 0,onClick:(y,f)=>{if(v.disabled)return;if(v.href){window.open(v.href,"_blank","noopener,noreferrer");try{f?.blur()}catch{}return}n?.(v.key);try{const _=document.querySelector(".content-area");_?_.scrollTop=0:window.scrollTo({top:0})}catch{}try{f?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const x=document.querySelector(".header");if(x&&!(typeof x.matches=="function"&&x.matches(":hover"))){x.classList.add("header--force-collapsed");const _=()=>{x.classList.remove("header--force-collapsed"),x.removeEventListener("mouseenter",_)};x.addEventListener("mouseenter",_)}}})]},v.key??`side-nav__item-${b}`)),p&&o.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),p&&o.jsx(yh,{item:{key:"__mode-switch__",label:h==="malgwi"?t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"):t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"),icon:h==="malgwi"?"arrow-right":"arrow-left"},onClick:g})]}),o.jsx(g5,{activeKey:r,unreadCount:i,onDebug:s,onNotification:c,onAccount:u,onSetting:d,onHelp:m})]})}var xl='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2080_3066)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="black"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="black"/>%0A<path d="M46.4288 17.8571H25.0002C15.138 17.8571 7.14307 25.852 7.14307 35.7143V57.1428C7.14307 67.0051 15.138 75 25.0002 75H46.4288C56.291 75 64.2859 67.0051 64.2859 57.1428V35.7143C64.2859 25.852 56.291 17.8571 46.4288 17.8571Z" fill="%234DCDC0"/>%0A<path d="M34.8607 50.7393C25.8285 60.6821 10.6142 61.6678 0.385667 53.1643C-0.0821902 52.775 -0.13219 52.0678 0.278524 51.6178L16.3535 33.925L34.8607 50.7393Z" fill="%234DCDC0"/>%0A<path d="M53.5714 25H32.1428C22.2821 25 14.2856 32.9964 14.2856 42.8571V64.2857C14.2856 74.1464 22.2821 82.1429 32.1428 82.1429H48.2535C49.2178 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7214 51.8928 85.6321C62.8392 84.675 71.4285 75.4821 71.4285 64.2857V42.8571C71.4285 32.9964 63.4321 25 53.5714 25Z" fill="%234DCDC0"/>%0A<path d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23499CDF"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="white"/>%0A<path d="M36.0715 57.1429C35.0287 57.1429 33.9822 56.875 33.0358 56.3286C32.1822 55.8357 31.8894 54.7429 32.3858 53.8893C32.8787 53.0357 33.9715 52.7429 34.8251 53.2393C35.8037 53.8036 37.043 53.6429 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3536 40.4322 35.9107 37.5072 35.7286C36.5215 35.6679 35.5715 35.8464 34.693 36.2679C33.8037 36.6929 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0429C34.5751 32.3714 36.1537 32.0679 37.7322 32.1643C42.4894 32.4607 46.3072 36.4286 46.4251 41.1964C46.4822 43.5286 45.6715 45.7786 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9357C41.8965 53.2464 41.3037 54.4357 40.368 55.375C39.2001 56.5429 37.6465 57.15 36.0751 57.15L36.0715 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2080_3066">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Cl='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7374)">%0A<path d="M237.151 26.0393V72.7214H216.65V26.0393H237.151ZM234.408 70.0464V28.7179H219.254V70.0464H234.408ZM261.495 76.3607H258.819V48.9679H247.575V75.4679H244.899V23.9821H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3607Z" fill="black"/>%0A<path d="M299.722 69.2571C302.076 68.775 304.031 68.1464 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.789 72.0357C297.435 72.4929 295.045 72.7214 292.623 72.7214H272.257V25.6964H275V69.975H292.623C294.998 69.975 297.364 69.7357 299.722 69.2536V69.2571ZM311.69 76.4321V23.6393H314.433V76.3643L311.69 76.4321Z" fill="black"/>%0A<path d="M340.556 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.329 62.2643 333.632 65.925C330.935 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.33 63.1107C334.617 59.3572 336.354 54.5179 337.542 48.5893C338.73 42.6643 339.369 36.0393 339.461 28.7143H324.992V26.0357H356.602V28.7143H342.201C342.155 35.9 341.605 42.3072 340.556 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="black"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="black"/>%0A<path d="M181.886 47.8714V57.275C179.097 58.5571 174.73 59.1964 168.791 59.1964H168.174V76.3607H158.299V59.1964H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8714H181.886ZM148.971 34.2786V24.875H177.634V47.05H167.76V34.2821H148.971V34.2786ZM194.64 76.3607H184.765V23.6393H194.64V76.3643V76.3607Z" fill="black"/>%0A<path d="M48.1549 17.8571H26.7511C16.9002 17.8571 8.91455 25.852 8.91455 35.7143V57.1428C8.91455 67.0051 16.9002 75 26.7511 75H48.1549C58.0058 75 65.9915 67.0051 65.9915 57.1428V35.7143C65.9915 25.852 58.0058 17.8571 48.1549 17.8571Z" fill="%234DCDC0"/>%0A<path d="M36.6007 50.7393C27.579 60.6821 12.3823 61.6678 2.1655 53.1643C1.69818 52.775 1.64824 52.0678 2.05848 51.6178L18.1149 33.925L36.6007 50.7393Z" fill="%234DCDC0"/>%0A<path d="M55.2897 25H33.8859C24.0365 25 16.0493 32.9964 16.0493 42.8571V64.2857C16.0493 74.1464 24.0365 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7214 53.6131 85.6321C64.5469 84.675 73.1262 75.4821 73.1262 64.2857V42.8571C73.1262 32.9964 65.139 25 55.2897 25Z" fill="%234DCDC0"/>%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23499CDF"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="white"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7374">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',f5='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65214)">%0A<path d="M57.1427 17.8571H35.7141C25.8518 17.8571 17.8569 25.852 17.8569 35.7143V57.1428C17.8569 67.0051 25.8518 75 35.7141 75H57.1427C67.0049 75 74.9998 67.0051 74.9998 57.1428V35.7143C74.9998 25.852 67.0049 17.8571 57.1427 17.8571Z" fill="%234DCDC0"/>%0A<path d="M45.575 50.7393C36.5429 60.6821 21.3286 61.6678 11.1 53.1643C10.6322 52.775 10.5822 52.0678 10.9929 51.6178L27.0679 33.925L45.575 50.7393Z" fill="%234DCDC0"/>%0A<path d="M64.2857 25H42.8571C32.9964 25 25 32.9964 25 42.8571V64.2857C25 74.1464 32.9964 82.1429 42.8571 82.1429H58.9679C59.9321 82.1429 60.7143 82.925 60.7143 83.8893C60.7143 84.9107 61.5893 85.7214 62.6071 85.6321C73.5536 84.675 82.1429 75.4821 82.1429 64.2857V42.8571C82.1429 32.9964 74.1464 25 64.2857 25Z" fill="%234DCDC0"/>%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23499CDF"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="white"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2359 35.6679 46.2859 35.8464 45.4073 36.2679C44.5145 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2002 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2175_65214">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',v5='.ihabdevteam-core-scope .header{background:var(--color-deepWhite);border-left:1px solid var(--color-whiteLine);border-right:1px solid var(--color-whiteLine);bottom:0;box-sizing:content-box;display:flex;flex-direction:column;isolation:isolate;left:0;overflow:visible;overscroll-behavior:none;position:fixed;top:0;z-index:var(--z-sidebar)}.ihabdevteam-core-scope .header__menu-button{background:transparent;border:none;display:none}.ihabdevteam-core-scope .header__bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);bottom:0;display:flex;height:56px;justify-content:center;left:0;padding:0;padding-bottom:calc(var(--spacing-content) + env(safe-area-inset-bottom));position:fixed;right:0}.ihabdevteam-core-scope .header__category-button{background:transparent;border:none}.ihabdevteam-core-scope .header:before{background:linear-gradient(160deg,var(--color-main) 0,var(--color-sub) 100%);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .2s ease;z-index:-1}.ihabdevteam-core-scope .header--manager{border-right-color:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .header--manager:before{opacity:1}.ihabdevteam-core-scope .header--manager .side-nav__separator{background:hsla(0,0%,100%,.25)}.ihabdevteam-core-scope .header--manager .side-nav__icon,.ihabdevteam-core-scope .header--manager .side-nav__item{color:var(--color-deepWhite)}.ihabdevteam-core-scope .header--manager .side-nav__item:focus:not(.active),.ihabdevteam-core-scope .header--manager .side-nav__item:hover:not(.active){background:hsla(0,0%,100%,.15);color:#fff}.ihabdevteam-core-scope .header--manager .side-nav__item:focus:not(.active) .side-nav__icon,.ihabdevteam-core-scope .header--manager .side-nav__item:hover:not(.active) .side-nav__icon{color:#fff}.ihabdevteam-core-scope .header--manager .side-nav__item.active{animation:ihabCoreSnSweep 1s cubic-bezier(.4,0,.2,1) forwards;background:linear-gradient(90deg,var(--color-pureWhite) 50%,color-mix(in srgb,var(--color-main) 50%,#fff) 100%);background-position:0 0;background-size:200% 100%;box-shadow:var(--shadow-card);color:var(--color-darkGray)}.ihabdevteam-core-scope .header--manager .side-nav__item.active .side-nav__icon{animation:ihabCoreSnIconBounce .48s cubic-bezier(.4,0,.2,1) forwards;color:var(--color-lightGray)}.ihabdevteam-core-scope .header--manager .side-nav__item.active .side-nav__icon img{filter:none;opacity:1}.ihabdevteam-core-scope .header--manager .side-nav__footer [role=button],.ihabdevteam-core-scope .header--manager .side-nav__footer button{color:hsla(0,0%,100%,.55)}.ihabdevteam-core-scope .header--manager .side-nav__mode-switch{background:transparent;border-color:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .header--manager .side-nav__mode-switch:hover{background:hsla(0,0%,100%,.12);border-color:hsla(0,0%,100%,.35)}.ihabdevteam-core-scope .header--manager .side-nav__mode-switch-label{color:hsla(0,0%,100%,.7)}.ihabdevteam-core-scope .header--manager .side-nav__mode-switch-arrow{color:hsla(0,0%,100%,.35)}@media (min-width:1024px){.ihabdevteam-core-scope .header{width:220px}.ihabdevteam-core-scope .header__bottom,.ihabdevteam-core-scope .header__menu-button{display:none}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .header__branding{height:80px}.ihabdevteam-core-scope .header .side-nav__menu{padding:0 10px;transition:padding .18s ease}.ihabdevteam-core-scope .header .side-nav__item{border-radius:var(--radius-card);gap:0;padding:0 14px;transition:padding .18s ease,gap .18s ease}.ihabdevteam-core-scope .header:focus-within .side-nav__menu,.ihabdevteam-core-scope .header:hover .side-nav__menu{padding:0 10px}.ihabdevteam-core-scope .header:focus-within .side-nav__item,.ihabdevteam-core-scope .header:hover .side-nav__item{gap:10px;padding:0 16px}.ihabdevteam-core-scope .header .side-nav__label{display:inline-block;max-width:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateX(-6px);transition:max-width .18s ease,opacity .18s ease,transform .18s ease;white-space:nowrap}.ihabdevteam-core-scope .header{overflow:visible;transition:width .18s ease;width:72px}.ihabdevteam-core-scope .header:focus-within,.ihabdevteam-core-scope .header:hover{width:220px}.ihabdevteam-core-scope .header:focus-within .side-nav__label,.ihabdevteam-core-scope .header:hover .side-nav__label{max-width:200px;opacity:1;pointer-events:auto;transform:translateX(0)}.ihabdevteam-core-scope .header.header--force-collapsed{width:72px}.ihabdevteam-core-scope .header.header--force-collapsed .side-nav__label{max-width:0;opacity:0;pointer-events:none;transform:translateX(-6px)}.ihabdevteam-core-scope .header.header--force-collapsed:hover{width:72px}}@media (max-width:767px){.ihabdevteam-core-scope .header{align-items:center;border-bottom:1px solid var(--color-whiteLine);border-left:none;border-right:none;flex-direction:row;height:64px;justify-content:space-between;left:0;position:fixed;right:0;top:0;width:100%}.ihabdevteam-core-scope .header__top{align-items:center;display:flex;flex:1}.ihabdevteam-core-scope .header__branding{height:auto}.ihabdevteam-core-scope .header__menu-button{display:inline-flex}.ihabdevteam-core-scope .header__bi{align-items:center;display:flex;gap:var(--spacing-xs);padding:0 calc(12px + env(safe-area-inset-right)) 0 calc(12px + env(safe-area-inset-left));width:100%}.ihabdevteam-core-scope .header__bi .header__menu-button{margin-left:auto}.ihabdevteam-core-scope .header__bottom{display:none}}.ihabdevteam-core-scope .brand-identity__root{align-items:center;display:flex;height:100px;justify-content:center}.ihabdevteam-core-scope .brand-identity__image{height:48px;-o-object-fit:contain;object-fit:contain;width:auto}@media (min-width:1024px){.ihabdevteam-core-scope .brand-identity__root{height:100px}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .brand-identity__root{height:100px}}@media (max-width:767px){.ihabdevteam-core-scope .brand-identity__root{height:64px;padding:10px}.ihabdevteam-core-scope .brand-identity__image{height:40px}}';Q(v5);function _l({appMode:e}){const{t}=me.useTranslation(),a=e==="manager",r=a?Cl:xl,n=f5,i=oa("(min-width: 768px) and (max-width: 1023px)");return o.jsx("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:i?o.jsx("img",{src:n,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image"}):o.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"})})}function wl({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:n,unreadCount:i,onDebug:s,onNotification:c,onAccount:u,onSetting:d,onHelp:m,appMode:h,onAppModeChange:p}){const{t:g}=me.useTranslation(),v=oa("(max-width: 767px)"),b=l.useMemo(()=>{const D=[];return s&&D.push({key:"debug",icon:"terminal",label:g("nav.debug","\uB514\uBC84\uADF8"),onClick:s}),c&&D.push({key:"notifications",icon:"bell",label:g("nav.notifications","\uC54C\uB9BC"),badgeCount:i,onClick:c}),d&&D.push({key:"settings",icon:"settings",label:g("nav.settings","\uC124\uC815"),onClick:d}),m&&D.push({key:"help",icon:"message-circle-question-mark",label:g("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:m}),u&&D.push({key:"account",icon:"user-round",label:g("nav.account","\uACC4\uC815"),onClick:u}),D},[g,s,c,d,m,u,i]),y=l.useCallback(D=>({position:"fixed",top:D.bottom+8,right:Math.max(8,window.innerWidth-D.right),zIndex:1e4}),[]),{open:f,toggle:x,close:_,style:C,triggerRef:A,menuRef:w}=So({computeStyle:y,onScroll:"ignore",onResize:"ignore"}),S=l.useMemo(()=>[{items:b.map(D=>({label:D.label,icon:D.icon,badgeCount:D.badgeCount,selected:D.selected??(!!D.key&&D.key===e),closeOnSelect:!0,onClick:()=>{D.onClick?.(),_()}}))}],[b,e,_]);return o.jsxs("aside",{className:`header${h==="manager"?" header--manager":""}`,children:[o.jsxs("div",{className:"header__bi",children:[o.jsx(_l,{appMode:h}),o.jsxs("div",{className:"header__menu-button",ref:A,children:[o.jsx(le,{size:48,type:"dot",shape:"pill",variant:"default",icon:"menu",ariaLabel:g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:x}),f&&qt.createPortal(o.jsx("div",{className:"tooltip-content",style:C,ref:w,children:o.jsx(hr,{columns:S,onClose:_})}),document.body)]})]}),o.jsx(yl,{items:a,activeKey:e??void 0,onChange:t,unreadCount:i,onDebug:s,onNotification:c,onAccount:u,onSetting:d,onHelp:m,appMode:h,onAppModeChange:p}),v&&o.jsx(vl,{items:a,activeKey:e??void 0,onChange:t,appMode:h,onAppModeChange:p})]})}const xh=wl;var y5='.ihabdevteam-core-scope .payment-plan__card{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;display:flex;flex:1 1 340px;flex-direction:column;gap:28px;max-width:360px;min-width:min(340px,100%);padding:20px;position:relative;text-align:left;transition:box-shadow .2s ease,transform .2s ease;width:100%}.ihabdevteam-core-scope .payment-plan__card:hover{box-shadow:var(--shadow-dropdown);transform:translateY(-4px)}.ihabdevteam-core-scope .payment-plan__card-badge{position:absolute;right:32px;top:32px}.ihabdevteam-core-scope .payment-plan__pricing-card{cursor:pointer;display:flex;justify-content:center}.ihabdevteam-core-scope .payment-plan__title{color:var(--color-black);display:flex;flex-direction:column;margin:0}.ihabdevteam-core-scope .payment-plan__quote{color:var(--color-sub);margin:0 0 4px;min-height:1.4em}.ihabdevteam-core-scope .payment-plan__title-heading{margin:0}.ihabdevteam-core-scope .payment-plan__subtitle{color:var(--color-gray);line-height:1.5;margin:8px 0 0;text-align:left}.ihabdevteam-core-scope .payment-plan__box,.ihabdevteam-core-scope .payment-plan__box-title{display:block}.ihabdevteam-core-scope .payment-plan__box-list{color:var(--color-lightGray);padding-left:18px}.ihabdevteam-core-scope .payment-plan__box-list li{margin-bottom:4px}.ihabdevteam-core-scope .payment-plan__contact-button{width:100%}.ihabdevteam-core-scope .payment-plan__feature-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:12px 0 0;padding:0}.ihabdevteam-core-scope .payment-plan__feature-item{align-items:center;color:var(--color-darkGray);display:flex;gap:10px;line-height:1.45}.ihabdevteam-core-scope .payment-plan__feature-check{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center}.ihabdevteam-core-scope .payment-plan__card-pricing{display:flex;flex-direction:column;gap:6px;margin-top:auto;text-align:left;width:100%}.ihabdevteam-core-scope .payment-plan__pricing-list{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .payment-plan__pricing-row{grid-row-gap:4px;align-items:center;background:var(--plan-color,var(--color-darkWhite));border:1px solid transparent;border-radius:var(--radius-s);box-sizing:border-box;color:#fff;cursor:pointer;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:14px 18px;row-gap:4px;transition:filter .15s ease,transform .15s ease,box-shadow .15s ease;width:100%}.ihabdevteam-core-scope .payment-plan__pricing-row--static{cursor:default;pointer-events:none}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight{background:var(--color-white);border:1px solid var(--plan-color,var(--color-main));color:var(--color-darkGray)}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-current,.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-row-price{color:var(--plan-color,var(--color-main))}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-original{color:var(--color-lightGray)}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-badge{color:var(--plan-color,var(--color-main))}.ihabdevteam-core-scope .payment-plan__pricing-row:hover{box-shadow:var(--shadow-dropdown);filter:brightness(1.04);transform:translateY(-2px)}.ihabdevteam-core-scope .payment-plan__pricing-row-title{display:contents}.ihabdevteam-core-scope .payment-plan__pricing-row-label{grid-column:1;grid-row:1;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-badge{color:hsla(0,0%,100%,.9);grid-column:2;grid-row:1;margin:0;text-align:right;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-row-price{align-items:center;color:#fff;display:flex;gap:var(--spacing-xs);grid-column:1/-1;grid-row:2;justify-content:flex-end;margin:0;text-align:right}.ihabdevteam-core-scope .payment-plan__pricing-original{color:var(--color-white-a80);margin:0;text-decoration:line-through;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-current{color:#fff;margin:0;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-symbol{font-weight:600;margin-right:2px}.ihabdevteam-core-scope .payment-plan__list{grid-gap:var(--spacing-l);align-items:stretch;display:grid;gap:var(--spacing-l);grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),360px));justify-content:center;margin:0 auto var(--spacing-page);width:100%}.ihabdevteam-core-scope .payment-plan__list>.payment-plan__card{align-self:stretch}.ihabdevteam-core-scope .payment-plan__card-content,.ihabdevteam-core-scope .payment-plan__card-inner{min-height:0}.ihabdevteam-core-scope .payment-plan__card.recommended{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .payment-plan__recommended-badge{background:var(--color-main);border-radius:var(--radius-m);color:#fff;font-weight:700;left:50%;padding:4px 14px;position:absolute;top:-12px;transform:translateX(-50%);white-space:nowrap}.ihabdevteam-core-scope .payment-plan__name{font-weight:800;margin:0 0 8px}.ihabdevteam-core-scope .payment-plan__price{font-weight:800;margin:0 0 4px}.ihabdevteam-core-scope .payment-plan__period{color:var(--color-gray);display:inline}.ihabdevteam-core-scope .payment-plan__features{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:20px 0;padding:0}.ihabdevteam-core-scope .payment-plan__feature{align-items:center;color:var(--color-darkGray);display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .payment-plan__feature:before{color:var(--color-success);content:"\u2713";font-weight:700}.ihabdevteam-core-scope .payment-plan__button{border:none;border-radius:var(--radius-card);cursor:pointer;font-weight:700;padding:14px;transition:all .12s;width:100%}.ihabdevteam-core-scope .payment-plan__button--primary{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .payment-plan__button--primary:hover{background:var(--color-infoLink)}.ihabdevteam-core-scope .payment-plan__button--outline{background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);color:var(--color-darkGray)}.ihabdevteam-core-scope .payment-plan__button--outline:hover{border-color:var(--color-main);color:var(--color-main)}@media (max-width:767px){.ihabdevteam-core-scope .payment-plan__list{align-items:center;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .payment-plan__list>.payment-plan__card{align-self:center;flex:none;max-width:360px;width:100%}}';Q(y5);function Ch(e){if(!(e==null||e===""))return ar(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}function x5(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function C5(e){if(e.durationDays&&e.durationDays>0){const n=e.durationDays;return n%365===0?`${n/365}\uB144`:`${n}\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*$/);return r?r[1].replace(/\s+/g,""):a||"\uC774\uC6A9\uAD8C"}function _5(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 kl(e){return{type:e.type??x5(e),plan:C5(e),label:e.label,price:Ch(e.price),originalPrice:Ch(e.originalPrice),discountLabel:e.discountLabel}}var w5='.ihabdevteam-core-scope .pass-card-frame{container-type:inline-size;height:188px;max-width:100%;width:300px}.ihabdevteam-core-scope .pass-card{border-radius:16px;box-sizing:border-box;display:flex;flex-direction:column;height:188px;overflow:hidden;padding:var(--spacing-l);position:relative;width:300px}.ihabdevteam-core-scope .pass-card-frame>.pass-card{aspect-ratio:auto;border-radius:5.33cqw;height:100%;padding:6.67cqw;width:100%}.ihabdevteam-core-scope .pass-card--clickable{cursor:pointer}@media (max-width:360px){.ihabdevteam-core-scope .pass-card,.ihabdevteam-core-scope .pass-card-frame{max-width:300px;width:100%}}.ihabdevteam-core-scope .pass-card--active{box-shadow:0 4px 16px rgba(0,0,0,.08)}.ihabdevteam-core-scope .pass-card--pending{box-shadow:0 2px 8px rgba(0,0,0,.05)}.ihabdevteam-core-scope .pass-card--expired{--color-main:var(--color-disabled);--color-sub:var(--color-whiteLine);--pass-card-expired-shape:var(--color-whiteLine);box-shadow:none}.ihabdevteam-core-scope [data-theme=dark] .pass-card--expired{--pass-card-expired-shape:hsla(0,0%,100%,.18)}@media (prefers-color-scheme:dark){.ihabdevteam-core-scope :root:not([data-theme=light]):not([data-theme=dark]) .pass-card--expired{--pass-card-expired-shape:hsla(0,0%,100%,.18)}}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg{background:var(--color-darkWhite)}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg__symbol{background:var(--pass-card-expired-shape)}.ihabdevteam-core-scope .pass-card--expired .pass-card__copyright,.ihabdevteam-core-scope .pass-card--expired .pass-card__plan,.ihabdevteam-core-scope .pass-card--expired .pass-card__price-area,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage-percent,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage-remaining{color:var(--color-gray)}.ihabdevteam-core-scope .pass-card.pass-card--expired:after{box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.5),inset -1px -1px 0 color-mix(in srgb,var(--color-gray) 10%,transparent)}.ihabdevteam-core-scope .pass-card:after{border-radius:inherit;box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.5),inset -1px -1px 0 rgba(73,156,223,.2);content:"";inset:0;pointer-events:none;position:absolute;z-index:2}.ihabdevteam-core-scope .pass-card__top{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;margin-top:-1.67cqw;position:relative;z-index:1}.ihabdevteam-core-scope .pass-card__top-left{align-items:flex-start;display:flex;flex-direction:column;gap:0}.ihabdevteam-core-scope .pass-card__logo{height:10.67cqw;-o-object-fit:contain;object-fit:contain;width:auto}.ihabdevteam-core-scope .pass-card__plan{color:var(--pass-card-text,var(--color-pureBlack));display:flex;flex-direction:column;gap:0;margin-top:-.67cqw;position:relative;text-align:left;z-index:1}.ihabdevteam-core-scope .pass-card__plan .h0{font-size:13.33cqw;line-height:1.3}.ihabdevteam-core-scope .pass-card .pass-card__plan-number{font-size:17.33cqw;letter-spacing:-1cqw;line-height:1}.ihabdevteam-core-scope .pass-card__plan .h5b{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__plan-unit{margin-left:.67cqw;position:relative;top:-.67cqw}.ihabdevteam-core-scope .pass-card__plan-suffix{margin-left:.67cqw;margin-top:0}.ihabdevteam-core-scope .pass-card .pass-card__copyright{color:var(--pass-card-text,var(--color-black));font-size:3.67cqw;line-height:1.36;margin:auto 0 0;position:relative;text-align:left;z-index:1}.ihabdevteam-core-scope .pass-card__price-area{align-items:flex-end;bottom:4.67cqw;display:flex;flex-direction:column;gap:0;position:absolute;right:6.67cqw;z-index:1}.ihabdevteam-core-scope .pass-card__price-area .h1{font-size:10.67cqw;line-height:1.375}.ihabdevteam-core-scope .pass-card__price-area .h5{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__usage{align-items:flex-end;bottom:4.67cqw;color:var(--pass-card-text,var(--color-black));display:flex;flex-direction:column;gap:0;position:absolute;right:6.67cqw;z-index:1}.ihabdevteam-core-scope .pass-card__usage-percent{align-items:baseline;display:inline-flex;font-size:3.67cqw;gap:0;line-height:1.36;opacity:.9}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-remaining{font-size:5cqw;line-height:1.53;opacity:.9}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-value{font-size:10.67cqw;line-height:1.2}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-symbol{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__discount{color:var(--pass-card-text,var(--color-pureBlack));font-size:4.67cqw;line-height:1.2;text-align:right;white-space:pre-line}.ihabdevteam-core-scope .pass-card__price{align-items:baseline;color:var(--pass-card-text,var(--color-pureBlack));display:inline-flex;gap:2cqw;text-align:right}.ihabdevteam-core-scope .pass-card__price-original{color:color-mix(in srgb,var(--pass-card-text,var(--color-pureBlack)) 75%,transparent);font-size:4.67cqw;line-height:1.57;text-decoration:line-through;text-decoration-thickness:1px}';Q(w5);var k5='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7326)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23FAFAFA"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23FAFAFA"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23FAFAFA"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23FAFAFA"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7326">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',S5='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 200 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="200" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M96.43,48.35v-24.1h30.62v24.1h-30.62ZM142.98,69.15v7.21h-44.76v-15.72h34.46v-2.13h-34.6v-7.21h44.35v15.72h-34.33v2.13h34.88,0ZM106.25,32.56v7.41h11.05v-7.41h-11.05ZM148.33,40.39h-5.9v9.06h-9.89v-25.81h9.89v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M185.54,47.87v9.4c-2.79,1.28-7.16,1.92-13.11,1.92h-.62v17.16h-9.89v-17.16h-12.22v-9.4h22.86c5.86,0,10.18-.64,12.98-1.92h0ZM152.59,34.28v-9.4h28.7v22.17h-9.89v-12.77h-18.81ZM198.31,76.36h-9.89V23.64h9.89v52.73h0Z"/>%0A <path class="st1" d="M46.43,17.86h-21.43c-9.86,0-17.86,7.99-17.86,17.86v21.43c0,9.86,7.99,17.86,17.86,17.86h21.43c9.86,0,17.86-7.99,17.86-17.86v-21.43c0-9.86-7.99-17.86-17.86-17.86Z"/>%0A <path class="st1" d="M34.86,50.74c-9.03,9.94-24.25,10.93-34.48,2.42-.47-.39-.52-1.1-.11-1.55l16.07-17.69,18.51,16.81Z"/>%0A <path class="st1" d="M53.57,25h-21.43c-9.86,0-17.86,8-17.86,17.86v21.43c0,9.86,8,17.86,17.86,17.86h16.11c.96,0,1.75.78,1.75,1.75,0,1.02.88,1.83,1.89,1.74,10.95-.96,19.54-10.15,19.54-21.35v-21.43c0-9.86-8-17.86-17.86-17.86Z"/>%0A <path class="st2" d="M25,25c-5.92,0-10.71,4.8-10.71,10.71v28.57c0,3.09.79,6,2.17,8.54,2.54,1.39,5.45,2.17,8.54,2.17h28.57c5.92,0,10.71-4.8,10.71-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.54-1.39-5.45-2.17-8.54-2.17h-28.57Z"/>%0A <path class="st3" d="M25.36,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M36.07,57.14c-1.04,0-2.09-.27-3.04-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.59-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.33-4.44,2.91-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.35-5.56-.99-.06-1.94.12-2.81.54-.89.43-1.96.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.76.3,8.58,4.26,8.69,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',A5='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7325)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23111111"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23111111"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23111111"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23111111"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23111111"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7325">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',T5='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7395)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23FAFAFA"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23FAFAFA"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23FAFAFA"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23FAFAFA"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23FAFAFA"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7395">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',B5='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 371 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="371" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M237.15,26.04v46.68h-20.5V26.04h20.5ZM234.41,70.05V28.72h-15.15v41.33h15.15ZM261.49,76.36h-2.68v-27.39h-11.24v26.5h-2.68V23.98h2.68v22.31h11.24v-22.65h2.68v52.73h0Z"/>%0A <path class="st3" d="M299.72,69.26c2.35-.48,4.31-1.11,5.86-1.89v2.75c-1.51.82-3.44,1.46-5.79,1.92-2.35.46-4.74.69-7.17.69h-20.37V25.7h2.74v44.28h17.62c2.38,0,4.74-.24,7.1-.72h0ZM311.69,76.43V23.64h2.74v52.73l-2.74.07Z"/>%0A <path class="st3" d="M340.56,47.94l17.62,22.52-2.13,1.65-16.18-20.94c-1.46,6.18-3.54,11.1-6.24,14.76-2.7,3.66-5.9,5.93-9.6,6.8v-2.75c3.25-.82,6.01-3.11,8.3-6.86,2.29-3.75,4.02-8.59,5.21-14.52,1.19-5.92,1.83-12.55,1.92-19.87h-14.47v-2.68h31.61v2.68h-14.4c-.05,7.19-.6,13.59-1.64,19.22h0ZM369.22,76.36h-2.74v-28.9h-14.06v-2.68h14.06v-21.14h2.74v52.73Z"/>%0A <path class="st3" d="M92.88,48.35v-24.1h30.58v24.1h-30.58ZM139.37,69.15v7.21h-44.71v-15.72h34.42v-2.13h-34.56v-7.21h44.3v15.72h-34.28v2.13h34.83,0ZM102.68,32.56v7.41h11.04v-7.41h-11.04ZM144.72,40.39h-5.9v9.06h-9.88v-25.81h9.88v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M181.89,47.87v9.4c-2.79,1.28-7.16,1.92-13.1,1.92h-.62v17.16h-9.88v-17.16h-12.2v-9.4h22.83c5.85,0,10.17-.64,12.96-1.92h0ZM148.97,34.28v-9.4h28.66v22.17h-9.87v-12.77h-18.79ZM194.64,76.36h-9.88V23.64h9.88v52.73h0Z"/>%0A <path class="st1" d="M48.15,17.86h-21.4c-9.85,0-17.84,7.99-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h21.4c9.85,0,17.84-7.99,17.84-17.86v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st1" d="M36.6,50.74c-9.02,9.94-24.22,10.93-34.44,2.42-.47-.39-.52-1.1-.11-1.55l16.06-17.69,18.49,16.81Z"/>%0A <path class="st1" d="M55.29,25h-21.4c-9.85,0-17.84,8-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h16.09c.96,0,1.74.78,1.74,1.75,0,1.02.87,1.83,1.89,1.74,10.93-.96,19.51-10.15,19.51-21.35v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st2" d="M26.75,25c-5.91,0-10.7,4.8-10.7,10.71v28.57c0,3.09.79,6,2.17,8.54,2.53,1.39,5.44,2.17,8.53,2.17h28.54c5.91,0,10.7-4.8,10.7-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.53-1.39-5.44-2.17-8.53-2.17h-28.54Z"/>%0A <path class="st3" d="M27.11,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M37.81,57.14c-1.04,0-2.09-.27-3.03-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.58-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.32-4.44,2.9-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.34-5.56-.99-.06-1.93.12-2.81.54-.89.43-1.95.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.75.3,8.57,4.26,8.68,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',N5='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7394)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23111111"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23111111"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23111111"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23111111"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23111111"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23111111"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23111111"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7394">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',D5=".ihabdevteam-core-scope .pass-card-bg{border-radius:inherit;inset:0;overflow:hidden;pointer-events:none;position:absolute}:where(.ihabdevteam-core-scope){--pass-card-symbol-opacity:1}.ihabdevteam-core-scope .pass-card-bg__symbol{background:var(--symbol-url) center /contain no-repeat;height:48px;-webkit-mask:var(--symbol-url) center /contain no-repeat;mask:var(--symbol-url) center /contain no-repeat;position:absolute;right:12px;top:12px;width:48px}";Q(D5);var E5=".ihabdevteam-core-scope .pass-card-bg-two-circle{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg-two-circle__c1,.ihabdevteam-core-scope .pass-card-bg-two-circle__c3{border-radius:50%;opacity:.75;opacity:var(--pass-card-symbol-opacity,.75);position:absolute}.ihabdevteam-core-scope .pass-card-bg-two-circle__c1{background:var(--color-main);height:340px;right:-150px;top:-140px;width:340px}.ihabdevteam-core-scope .pass-card-bg-two-circle__c3{background:var(--color-sub);bottom:-90px;height:220px;right:-50px;width:220px}.ihabdevteam-core-scope .pass-card-bg-two-circle__symbol{background:var(--color-darkWhite)}";Q(E5);var _h='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7305)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7179 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7179 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7305">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Fa={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},Sl=new WeakMap;function j5(e){if(e)return Sl.get(e)}function ga(e,t){e&&(e.style.setProperty(Fa.text,t.text),e.style.setProperty(Fa.sub,t.sub),t.copyrightColor&&e.style.setProperty(Fa.copyright,t.copyrightColor),Sl.set(e,t))}function fa(e){e&&(e.style.removeProperty(Fa.text),e.style.removeProperty(Fa.sub),e.style.removeProperty(Fa.copyright),Sl.delete(e))}const Al={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function Tl(e={}){const t=lt(Al,ga,fa);return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg-two-circle__c1"}),o.jsx("div",{className:"pass-card-bg-two-circle__c3"}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${_h}")`}})]})}const wh="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464Z";var L5=".ihabdevteam-core-scope .pass-card-bg-sound-move{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg-sound-move__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";Q(L5);var mr='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65181)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="url(%23paint0_linear_2175_65181)"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2175_65181" x1="29.6392" y1="29.6393" x2="75.2535" y2="75.2536" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2175_65181">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const M5={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},P5=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function kh(e={}){const t=lt(M5,ga,fa),a="var(--color-main)",r=270,n=170;return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[o.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:P5.map(({scale:i,opacity:s},c)=>o.jsx("g",{transform:`translate(${r} ${n}) scale(${i}) translate(-50 -50)`,opacity:s,children:o.jsx("path",{d:wh,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}var R5=".ihabdevteam-core-scope .pass-card-bg-sound-move-v1{background:linear-gradient(135deg,var(--color-main),var(--color-sub))}.ihabdevteam-core-scope .pass-card-bg-sound-move-v1__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";Q(R5);const $5={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},z5=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function I5(e={}){const t=lt($5,ga,fa),a="#ffffff",r=270,n=170;return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[o.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:z5.map(({scale:i,opacity:s},c)=>o.jsx("g",{transform:`translate(${r} ${n}) scale(${i}) translate(-50 -50)`,opacity:s,children:o.jsx("path",{d:wh,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${_h}")`}})]})}var O5=".ihabdevteam-core-scope .pass-card-bg-talk{align-items:center;background:var(--color-pureWhite);display:flex;justify-content:center}.ihabdevteam-core-scope .pass-card-bg-talk__shape{height:76px;position:absolute;width:76px}.ihabdevteam-core-scope .pass-card-bg-talk__shape--left{background:var(--color-main);border-radius:42px 42px 42px 4px;transform:translateX(-18px)}.ihabdevteam-core-scope .pass-card-bg-talk__shape--right{background:var(--color-sub);border-radius:50%;opacity:.7;transform:translateX(18px)}";Q(O5);const F5={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function W5(e={}){const t=lt(F5,ga,fa);return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),o.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}const H5={Logo_speechear_kr:{"":xl,_white:k5,_textWhite:S5,_black:A5},Logo_speechearManager_kr:{"":Cl,_white:T5,_textWhite:B5,_black:N5}};function V5(e,t){if(e)return H5[e]?.[t??""]??void 0}const G5={speechear:xl,manager:Cl},q5={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},Sh=10;function Y5(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 n=Math.floor(e/60);return n>0?t("passCard.remainingMinute",{n}):t("passCard.remainingSecond",{n:Math.floor(e)})}function U5(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),n=a==="\uC624\uD508\uD2B9\uAC00"||a===Ca.t("passCard.specialLabel");return r?o.jsx(W5,{}):n?o.jsx(I5,{}):o.jsx(kh,{})}return o.jsx(Tl,{})}function Bl({product:e,showPrice:t=!1,plan:a,type:r,endDate:n,remainingSeconds:i,state:s="active",bg:c,bgOnly:u=!1,textColor:d,subColor:m,copyrightColor:h,logoSrc:p,label:g,price:v,originalPrice:b,discountLabel:y,onUse:f,onRefund:x,onDelete:_}){const{t:C}=me.useTranslation(),A=e?kl(e):void 0,w=r??A?.type??"speechear",S=a??A?.plan??"\uC774\uC6A9\uAD8C",D=g??A?.label,T=v??(t?A?.price:void 0),E=b??(t?A?.originalPrice:void 0),W=y??A?.discountLabel,M=l.useMemo(()=>{if(T)return null;const X=e?.durationDays??_5(e?.code);if(!X||X<=0)return null;const ce=X*86400;let xe;if(i!=null)xe=i;else if((s==="active"||s==="expired")&&n){const Ae=new Date(n).getTime();if(Number.isNaN(Ae))return null;const P=new Date;P.setHours(0,0,0,0);const oe=new Date(Ae);oe.setHours(0,0,0,0);const re=Math.round((oe.getTime()-P.getTime())/864e5);xe=Math.max(0,re)*86400}else s==="expired"?xe=0:xe=ce;const Se=Math.max(0,Math.min(100,Math.floor(Math.min(xe,ce)/ce*100)));return s==="pending"&&Se>=100?null:{percent:Se,remainingLabel:Y5(xe,C)}},[T,s,n,i,e?.durationDays,e?.code,C]),k=l.useRef(null),[N,j]=l.useState({}),[F,te]=l.useState(null),Z=!!(f||x||_),ee=l.useRef(!1),L=l.useRef(void 0),[R,O]=l.useState(p);l.useLayoutEffect(()=>{O(p)},[p]),l.useLayoutEffect(()=>{const X=k.current;X&&(d!==void 0&&X.style.setProperty("--pass-card-text",d),m!==void 0&&X.style.setProperty("--pass-card-sub",m),h!==void 0&&X.style.setProperty("--pass-card-copyright",h))},[d,m,h]),l.useLayoutEffect(()=>{const X=k.current;if(!X)return;const ce=j5(X);if(!p){const xe=q5[w],Se=s==="expired"?"_black":ce?.logoColor??"",Ae=V5(xe,Se);O(Ae)}},[c,p,w,s]);const H=X=>{const ce=k.current;if(!ce)return null;const{left:xe,top:Se,width:Ae,height:P}=ce.getBoundingClientRect(),oe=(X.clientX-xe)/Ae-.5;return{rotateX:-((X.clientY-Se)/P-.5)*Sh,rotateY:oe*Sh}},$=(X,ce)=>{const xe=ce*-.7,Se=X*.7+10,Ae=20+(Math.abs(X)+Math.abs(ce))*.4;return`${xe}px ${Se}px ${Ae}px rgba(0, 0, 0, 0.18)`},q=l.useCallback(X=>{ee.current=!0,clearTimeout(L.current),L.current=setTimeout(()=>{ee.current=!1},200);const ce=H(X);ce&&j({transform:`perspective(800px) rotateX(${ce.rotateX}deg) rotateY(${ce.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:$(ce.rotateX,ce.rotateY),transition:"transform 0.25s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.25s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),I=l.useCallback(X=>{const ce=H(X);if(!ce)return;const xe=ee.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";j({transform:`perspective(800px) rotateX(${ce.rotateX}deg) rotateY(${ce.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:$(ce.rotateX,ce.rotateY),transition:xe})},[]),G=l.useCallback(()=>{clearTimeout(L.current),ee.current=!1,j({transform:"perspective(800px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)",boxShadow:"0px 4px 16px rgba(0, 0, 0, 0.08)",transition:"transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.5s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),z=l.useCallback(()=>te(null),[]),Y=l.useMemo(()=>{const X=S.replace("\uC774\uC6A9\uAD8C","").trim(),ce=X.match(/^(.*?)(일|년)$/);return ce?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"h0 pass-card__plan-number",children:ce[1]}),o.jsx("span",{className:"h5b pass-card__plan-unit",children:ce[2]==="\uB144"?C("passCard.unitYear","\uB144"):C("passCard.unitDay","\uC77C")})]}):o.jsx("span",{className:"h0",children:X})},[S,C]),J=l.useMemo(()=>{const X=ar(T);if(!X)return null;const ce=X.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!ce)return o.jsx("span",{className:"h1",children:X});const[,xe,Se,Ae]=ce;return o.jsxs(o.Fragment,{children:[xe&&o.jsx("span",{className:"h5 pass-card__price-symbol",children:xe}),o.jsx("span",{className:"h1 pass-card__price-amount",children:Se}),Ae.trim()&&o.jsx("span",{className:"h5 pass-card__price-symbol",children:Ae.trim()})]})},[T]),ue=l.useCallback(()=>{Z&&te(X=>{if(X)return null;const ce=k.current?.getBoundingClientRect();if(!ce)return null;const xe=50;return{left:ce.left,right:ce.right,width:ce.width,height:ce.height,x:ce.x,y:ce.y+xe,top:ce.top+xe,bottom:ce.bottom+xe}})},[Z]),pe=l.useCallback(X=>{Z&&(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),ue())},[Z,ue]),ae=[{items:[...f?[{label:C("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{f(),te(null)},closeOnSelect:!0}]:[],...x?[{label:C("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{x(),te(null)},closeOnSelect:!0}]:[],..._?[{label:C("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{_(),te(null)},closeOnSelect:!0}]:[]]}];return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"pass-card-frame",children:o.jsxs("div",{ref:k,className:`pass-card pass-card--${s}${Z?" pass-card--clickable":""}`,style:N,onMouseEnter:q,onMouseMove:I,onMouseLeave:G,onClick:ue,onKeyDown:Z?pe:void 0,role:Z?"button":void 0,tabIndex:Z?0:void 0,children:[c??U5(w,S,D),!u&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"pass-card__top",children:o.jsxs("div",{className:"pass-card__top-left",children:[o.jsx("img",{src:R??G5[w],className:"pass-card__logo",alt:w==="manager"?C("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):C("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),o.jsxs("div",{className:"pass-card__plan",children:[o.jsx("div",{children:Y}),o.jsx("span",{className:"h5b pass-card__plan-suffix",children:D?C("passCard.labeledPlan",{label:D}):C("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),T?o.jsxs("div",{className:"pass-card__price-area",children:[W&&o.jsx("span",{className:"pass-card__discount body-3",children:W}),o.jsxs("div",{className:"pass-card__price",children:[E&&o.jsx("span",{className:"pass-card__price-original body-3",children:ar(E)}),J]})]}):M?o.jsxs("div",{className:"pass-card__usage",children:[o.jsx("span",{className:"h5b pass-card__usage-remaining",children:M.remainingLabel}),o.jsxs("span",{className:"pass-card__usage-percent",children:[o.jsx("span",{className:"h1 pass-card__usage-value",children:M.percent}),o.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):o.jsx("div",{className:"pass-card__copyright caption-2",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),F&&o.jsx(Sa,{anchorRect:F,onClose:z,children:o.jsx(hr,{columns:ae,onClose:z,size:"small"})})]})}var K5=".ihabdevteam-core-scope .pass-card-bg-sound-line{background:linear-gradient(60deg,var(--color-pureWhite) 0,color-mix(in srgb,var(--color-sub) 15%,var(--color-pureWhite)) 100%)}.ihabdevteam-core-scope .pass-card-bg-sound-line__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";Q(K5);const Z5={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function X5(e={}){const t=`passcard-sound-line-grad-${l.useId()}`,a=lt(Z5,ga,fa);return o.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[o.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:[o.jsx("defs",{children:o.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[o.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),o.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),o.jsx("g",{transform:"translate(25, 45)",children:o.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"})})]}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}var Q5=".ihabdevteam-core-scope .pass-card-bg-talk-v1{align-items:center;background:var(--color-pureWhite);display:flex;justify-content:center}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape{height:76px;position:absolute;width:76px}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape--left{background:linear-gradient(70deg,var(--color-main),var(--color-sub));border-radius:999px;height:92px;transform:translateX(0) rotate(120deg);width:180px}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape--right{background:var(--color-sub);border-radius:50%;height:60px;opacity:1;transform:translate(38px,12px);width:60px}";Q(Q5);const J5={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function e3(e={}){const t=lt(J5,ga,fa);return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),o.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}function t3(e,t){if(e){if(t==="manager_pro")return o.jsx(e3,{});if(t==="manager_standard")return o.jsx(X5,{});if(t==="manager_lite")return o.jsx(kh,{})}}function a3(e){const t=ar(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,n,i]=a;return o.jsxs(o.Fragment,{children:[r&&o.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),n,i.trim()&&o.jsx("span",{className:"payment-plan__pricing-symbol h4",children:i.trim()})]})}function Ah(e){const{t}=me.useTranslation(),{plan:a,onSelect:r,period:n="monthly",ownedCodes:i}=e||{},s=f=>!!f&&!!i?.includes(f),c=(a.tiers||[]).some(f=>/오픈\s*특가/.test(f.label??"")&&s(f.code)),u=f=>{const x=f.prices?f.prices[n]:f.price;return x?(a.tiers||[]).some(_=>!!_.badge&&_.originals?.[n]===x):!1},d=a.colorToken?`var(--color-${a.colorToken})`:"var(--color-gray)",m=t("payment.plan.freePrice","\uBB34\uB8CC"),h=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),p=f=>f.prices?f.prices[n]:f.price,g=(a.tiers||[]).length>0&&(a.tiers||[]).every(f=>{const x=p(f);return x==="\uBB34\uB8CC"||x===m||x==="0\uC6D0"}),v=(a.tiers||[]).length>0&&(a.tiers||[]).every(f=>{const x=p(f);return x==="\uBB38\uC758"||x===h}),b=a.group==="org",y=b?"manager":"speechear";return o.jsxs("div",{className:"payment-plan__card",style:{borderColor:d,"--plan-color":d},children:[a.cardBadge&&o.jsx("div",{className:"payment-plan__card-badge",children:o.jsx(ht,{label:a.cardBadge,variant:"main",size:"medium",fill:"soft"})}),o.jsxs("div",{className:"payment-plan__title",children:[o.jsx("p",{className:"payment-plan__quote body-3b",style:{color:d},children:a.quote||"\xA0"}),o.jsx("h3",{className:"payment-plan__title-heading h1",children:a.tier??a.title}),o.jsx("p",{className:"payment-plan__subtitle body-3",children:a.subtitle})]}),o.jsxs("div",{className:"payment-plan__box",children:[o.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),o.jsx("ul",{className:"payment-plan__feature-list",children:(a.recommendedFor||[]).map((f,x)=>o.jsxs("li",{className:"payment-plan__feature-item body-3",children:[o.jsx(Pe,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:d}}),f]},x))})]}),o.jsxs("div",{className:"payment-plan__box",children:[o.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),o.jsx("ul",{className:"payment-plan__feature-list",children:(a.features||[]).map((f,x)=>o.jsxs("li",{className:"payment-plan__feature-item body-3",children:[o.jsx(Pe,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:d}}),f]},x))})]}),o.jsx("div",{className:"payment-plan__card-pricing",children:g?null:v?o.jsx(le,{className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>a.tiers?.[0]&&r?.({...a.tiers[0],productId:a.id,productTitle:a.title})}):o.jsx(o.Fragment,{children:o.jsx("div",{className:"payment-plan__pricing-list",children:(a.tiers||[]).map(f=>{const x=f.label||"\uC774\uC6A9\uAD8C",_=/오픈\s*특가/.test(x),C=_||f.openPromo===!0,A=x.replace(/^오픈\s*특가\s*/,"")||"\uC774\uC6A9\uAD8C",w=f.prices?f.prices[n]:f.price,S=f.badge?C?`\uC624\uD508 \uD2B9\uAC00
818
- ${f.badge}`:f.badge:void 0;if(_&&s(f.code))return null;if(!f.badge&&!c)return u(f)?null:o.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${f.highlight?" payment-plan__pricing-row--highlight":""}`,children:[o.jsx("div",{className:"payment-plan__pricing-row-title",children:o.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:f.label})}),o.jsx("div",{className:"payment-plan__pricing-row-price",children:o.jsx("span",{className:"payment-plan__pricing-current h1",children:a3(w)})})]},f.id);const D=a.tier??(b?a.title:void 0),T=o.jsx(Bl,{showPrice:!0,product:{type:y,code:f.code,name:A,label:D,price:w,originalPrice:f.originals?.[n]??void 0,discountLabel:S},bg:t3(b,a.id)}),E=()=>r?.({...f,productId:a.id,productTitle:a.title,preview:T});return o.jsx("div",{className:"payment-plan__pricing-card",onClick:E,onKeyDown:r?W=>{W.target===W.currentTarget&&(W.key==="Enter"||W.key===" ")&&(W.preventDefault(),E())}:void 0,role:r?"button":void 0,tabIndex:r?0:void 0,children:T},f.id)})})})})]})}function Th({variant:e="default"}){return o.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),o.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),o.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var o3=".ihabdevteam-core-scope .pass-card-bg-ihab{background:var(--color-white)}.ihabdevteam-core-scope .pass-card-bg-ihab__symbol{bottom:-24px;height:140px;-o-object-fit:contain;object-fit:contain;opacity:.06;position:absolute;right:-24px;width:140px}.ihabdevteam-core-scope .pass-card-bg-ihab__symbol-top{transform:translate(-48px) rotate(-90deg);transform-origin:top right;width:126.72px}";Q(o3);var Nl='data:image/svg+xml,<svg width="264" height="100" viewBox="0 0 264 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2079_3030)">%0A<path d="M60.9019 24.7464C54.4446 18.2821 45.5257 14.2857 35.6757 14.2857C25.8256 14.2857 23.2106 24.5964 16.7569 31.0607C10.2996 37.5214 0 40.1857 0 50C0 59.8143 3.99211 68.7893 10.4494 75.2536C16.9067 81.7178 25.8256 85.7143 35.6757 85.7143C45.5257 85.7143 54.4446 81.7178 60.9019 75.2536C67.3592 68.7893 71.3513 59.8607 71.3513 50C71.3513 40.1393 67.3592 31.2107 60.9019 24.7464ZM48.2906 62.6286C45.0619 65.8607 40.6025 67.8571 35.6757 67.8571C30.7489 67.8571 26.2894 65.8571 23.0608 62.6286C19.8321 59.3964 17.8378 54.9321 17.8378 50C17.8378 45.0678 19.8357 40.6036 23.0608 37.3714C26.2894 34.1393 30.7489 32.1428 35.6757 32.1428C40.6025 32.1428 45.0619 34.1428 48.2906 37.3714C51.5192 40.6036 53.5135 45.0678 53.5135 50C53.5135 54.9321 51.5157 59.3964 48.2906 62.6286Z" fill="url(%23paint0_linear_2079_3030)"/>%0A<path d="M106.735 74.8322H93.6274V24.8322H106.735V74.8322Z" fill="%23111111"/>%0A<path d="M113.495 24.8322H126.602V44.5143H145.022V24.8322H158.197V74.8322H145.022V55.15H126.602V74.8322H113.495V24.8322Z" fill="%23111111"/>%0A<path d="M163.027 74.8322L179.652 24.8322H197.519L214.076 74.8322H199.934L196.969 65.025H180.205L177.241 74.8322H163.031H163.027ZM193.933 55.0786L188.76 38.2964H188.346L183.241 55.0786H193.933Z" fill="%23111111"/>%0A<path d="M218.906 24.8322H240.29C251.674 24.8322 257.675 29.7357 257.675 37.4C257.675 42.925 253.743 47.1393 248.085 48.3107V48.7929C254.364 49 259.605 53.6286 259.605 60.7393C259.605 68.8893 252.983 74.8286 242.081 74.8286H218.902V24.8322H218.906ZM244.157 40.1643C244.157 36.9857 241.674 35.1929 238.085 35.1929H232.013V45.1393H237.878C241.535 45.1393 244.157 43.3429 244.157 40.1679V40.1643ZM245.741 59.0857C245.741 55.425 243.119 53.3536 238.913 53.3536H232.013V64.2643H238.706C243.397 64.2643 245.741 62.4679 245.741 59.0857Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2079_3030" x1="15.337" y1="29.6393" x2="60.9512" y2="75.2042" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2079_3030">%0A<rect width="264" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Dl={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function Bh(){const e=lt(Dl,ga,fa);return o.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${Nl}")`}})})}var r3=".ihabdevteam-core-scope .pass-card-bg-left-color-grid{background:var(--color-white)}.ihabdevteam-core-scope .pass-card-bg-left-color-grid__bar{background:linear-gradient(120deg,var(--color-main),var(--color-sub));border-radius:16px 0 0 16px;height:100%;left:0;position:absolute;top:0;width:76%}.ihabdevteam-core-scope .pass-card-bg-left-color-grid__grid{--grid-line:rgba(73,156,223,.06);background-image:linear-gradient(rgba(73,156,223,.06) 1px,transparent 0),linear-gradient(90deg,rgba(73,156,223,.06) 1px,transparent 0);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:24px 24px;inset:0;position:absolute}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg-left-color-grid__grid{--grid-line:transparent}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg-left-color-grid__bar{background:var(--pass-card-expired-shape)}";Q(r3);const El={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function Nh(e={}){const t=lt(El,ga,fa);return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),o.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}var n3=".ihabdevteam-core-scope .sound-compass{align-items:center;display:flex;flex-direction:column;width:100%}.ihabdevteam-core-scope .sound-compass__status{color:var(--color-lightGray);font-size:13px;letter-spacing:-.01em;margin-bottom:12px}.ihabdevteam-core-scope .sound-compass__svg{left:0;overflow:visible;position:absolute;top:0}.ihabdevteam-core-scope .sound-compass__speaker-btn{--scb-idle-bg:var(--color-deepWhite);--scb-idle-border:var(--color-whiteLine);--scb-idle-fg:var(--color-lightGray);--scb-active-bg:var(--color-main);--scb-active-border:var(--color-main);--scb-active-fg:#fff;--scb-played-bg:var(--color-sub);--scb-played-border:var(--color-sub);--scb-played-fg:#fff;--scb-wrong-bg:#ef4444;--scb-wrong-border:#ef4444;--scb-wrong-fg:#fff;all:unset;align-items:center;border-radius:50%;border-style:solid;border-width:1px;box-sizing:border-box;display:flex;flex-direction:column;gap:1px;justify-content:center;position:relative;transition:background-color .15s,border-color .15s,color .15s;z-index:1}.ihabdevteam-core-scope .sound-compass__speaker-btn--idle{background:var(--scb-idle-bg);border-color:var(--scb-idle-border);color:var(--scb-idle-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--active{background:var(--scb-active-bg);border-color:var(--scb-active-border);color:var(--scb-active-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--correct,.ihabdevteam-core-scope .sound-compass__speaker-btn--played{background:var(--scb-played-bg);border-color:var(--scb-played-border);color:var(--scb-played-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--wrong{background:var(--scb-wrong-bg);border-color:var(--scb-wrong-border);color:var(--scb-wrong-fg)}.ihabdevteam-core-scope .sound-compass__speaker-number{color:inherit;font-weight:700;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .sound-compass__compass-wrap{flex-shrink:0;margin-bottom:24px;overflow:visible;position:relative}.ihabdevteam-core-scope .sound-compass__center{align-items:center;background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:50%;color:var(--color-lightGray);display:flex;justify-content:center;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}@keyframes sound-compass-pulse{0%{opacity:0;transform:scale(.95)}8%{opacity:.45;transform:scale(1.05)}to{opacity:0;transform:scale(2.8)}}.ihabdevteam-core-scope .sound-compass__pulse{animation:sound-compass-pulse 1s cubic-bezier(.33,1,.68,1) infinite;background:var(--color-main);border-radius:50%;height:40px;left:0;pointer-events:none;position:absolute;top:0;width:40px}.ihabdevteam-core-scope .sound-compass__speaker-pos{position:absolute}";Q(n3);const jl=(e,t,a)=>e+(t-e)*a;function Dh({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:r=null,playedIds:n,selectedId:i=null,answerId:s=null,showFeedback:c=!1,clickable:u=!1,onSelectSpeaker:d,buttonSize:m=40,showIcon:h=!0}){const p=Math.max(0,Math.min(1,a)),g=t/2,v=110/300,b=.18,y=$=>t*(v+($-1)*b),f=$=>{const q=y($.row??1),I=$.angleDeg*Math.PI/180;return{x:g+q*Math.cos(I),y:g+q*Math.sin(I)}},x=Math.max(...e.map($=>$.row??1),1),_=t*.08,C=t*.1,A=t*.24,w=t-2*_,S=t-C-A,D=t-A/2,T=l.useMemo(()=>[...new Set(e.map($=>$.deg))].sort(($,q)=>$-q),[e]),E=T.length,W=Math.max(68,E>1?w/(E-1):0),M=l.useMemo(()=>new Map(T.map(($,q)=>[$,q])),[T]),k=$=>{const q=M.get($.deg)??0,I=g+(q-(E-1)/2)*W,G=x>1?Math.min(68,S/(x-1)):0,z=G*(x-1),Y=C+(S-z)/2,J=x===1?C+S*.4:Y+(x-($.row??1))*G;return{x:I,y:J}},N=$=>{const q=f($),I=k($);return{x:jl(q.x,I.x,p),y:jl(q.y,I.y,p)}},j={x:g,y:jl(g,D,p)},F=Math.round(m*1.2),te=Math.round(Math.max(16,Math.min(80,m*.7))),Z=[],ee=new Map;for(const $ of e){const q=$.row??1;ee.has(q)||ee.set(q,[]),ee.get(q).push($)}for(const[$,q]of ee.entries()){if(q.length<2)continue;const I=[...q].sort((ae,X)=>ae.deg-X.deg),G=I.map(ae=>N(ae)),z=I.map(ae=>ae.deg),Y=z[z.length-1]-z[0],J=Y/(z.length-1),ue=360-Y,pe=I.length>=3&&J>0&&ue<=J*1.5;Z.push({key:`arc-${$}`,d:`M ${G[0].x} ${G[0].y} `+G.slice(1).map(ae=>`L ${ae.x} ${ae.y}`).join(" ")+(pe?` L ${G[0].x} ${G[0].y}`:"")})}const L=l.useMemo(()=>new Set(n??[]),[n]),R=$=>{if(r===$.id)return"active";if(c){if($.id===s)return"correct";if($.id===i&&i!==s)return"wrong"}return L.has($.id)?"played":"idle"},O=$=>r===$.id||c&&$.id===s,H=($,q)=>{switch($){case"played":case"correct":return o.jsx(Gc,{size:q});case"wrong":return o.jsx(ad,{size:q});default:return o.jsx(td,{size:q})}};return o.jsx("div",{className:"sound-compass",children:o.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[o.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[p===0&&e.map($=>{const{x:q,y:I}=N($);return o.jsx("line",{x1:j.x,y1:j.y,x2:q,y2:I,stroke:"#dde3ec",strokeWidth:"1"},$.id)}),Z.map($=>o.jsx("path",{d:$.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},$.key))]}),o.jsx("div",{className:"sound-compass__center",style:{width:F,height:F,left:j.x,top:j.y},children:o.jsx(ed,{size:te,color:"currentColor",strokeWidth:1.5})}),e.map(($,q)=>{const{x:I,y:G}=N($),z=R($),Y=O($),J={pointerEvents:u?"auto":"none",cursor:u?"pointer":"default",zIndex:z!=="idle"?10:1},ue=m,pe=Math.round(Math.max(10,Math.min(56,ue*.38))),ae=Math.round(Math.max(7,Math.min(18,ue*.2))),X=Math.round(Math.max(10,Math.min(56,ue*.4)));return o.jsxs("div",{className:"sound-compass__speaker-pos",style:{...J,left:I-ue/2,top:G-ue/2},onClick:()=>u&&d?.($.id),children:[Y&&o.jsx("div",{className:"sound-compass__pulse",style:{width:ue,height:ue}}),o.jsxs("button",{type:"button",tabIndex:-1,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${z}`,style:{width:ue,height:ue},"aria-label":$.label,children:[h&&H(z,pe),o.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:h?ae:X},children:q+1})]})]},$.id)})]})})}function Eh(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:n,playMs:i=1100,feedbackMs:s=1500}={}){const[c,u]=l.useState([]),[d,m]=l.useState(0),[h,p]=l.useState("idle"),[g,v]=l.useState(null),[b,y]=l.useState([]),[f,x]=l.useState(null),[_,C]=l.useState(0),A=l.useRef(0),w=l.useCallback(L=>{A.current=typeof L=="function"?L(A.current):L,C(A.current)},[]),S=l.useRef(r),D=l.useRef(n);l.useEffect(()=>{S.current=r,D.current=n},[r,n]);const T=l.useRef([]),E=()=>{T.current.forEach(clearTimeout),T.current=[]},W=(L,R)=>{T.current.push(setTimeout(R,L))};l.useEffect(()=>()=>E(),[]);const M=c[d]?.id??null,k=l.useCallback(()=>{E(),p("playing"),y([]),x(null),w(0);let L=0;e.forEach((R,O)=>{W(L,()=>{m(O),v(R.id),S.current?.(R)}),W(L+1e3,()=>{v(null),y(H=>[...H,R.id])}),L+=1300}),W(L,()=>{p("done"),D.current?.({score:0,total:e.length})})},[e,w]),N=l.useCallback((L,R)=>{if(R>=L.length){p("done"),D.current?.({score:A.current,total:L.length});return}m(R),x(null),p("playing"),v(L[R].id),S.current?.(L[R]),W(i,()=>{v(null),p("waiting")})},[i]),j=l.useCallback(()=>{E();const L=ze(e);u(L),w(0),y([]),N(L,0)},[e,N,w]),F=l.useCallback(()=>{t==="playback"?(u(e),k()):j()},[t,e,k,j]),te=l.useCallback(()=>{E(),p("idle"),v(null),y([]),x(null),m(0),w(0),u([])},[w]);l.useEffect(()=>{a?F():te()},[t,e.length,a]);const Z=l.useCallback(L=>{h!=="waiting"||t==="playback"||(x(L),L===c[d]?.id&&w(R=>R+1),t==="exam"?(p("playing"),W(400,()=>N(c,d+1))):(p("feedback"),W(s,()=>N(c,d+1))))},[h,t,c,d,N,s,w]),ee=t==="playback"?e.length:c.length;return{bind:{activeSpeakerId:g,playedIds:b,selectedId:f,answerId:M,showFeedback:h==="feedback",clickable:h==="waiting",onSelectSpeaker:Z},index:d,total:ee,score:_,phase:h,done:h==="done",start:F,reset:te}}function jh({children:e,position:t="top-left",size:a=24,className:r=""}){return o.jsx("span",{className:ye("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${t}`,r),children:e})}var i3=".ihabdevteam-core-scope .shortcut-badge{align-items:center;display:inline-flex;gap:4px;pointer-events:none;z-index:10}.ihabdevteam-core-scope .shortcut-badge--top-left{left:0;position:absolute;top:0;transform:translate(-25%,-25%)}.ihabdevteam-core-scope .shortcut-badge--top-right{position:absolute;right:0;top:0;transform:translate(25%,-25%)}.ihabdevteam-core-scope .shortcut-badge--bottom-left{bottom:0;left:0;position:absolute;transform:translate(-25%,25%)}.ihabdevteam-core-scope .shortcut-badge--bottom-right{bottom:0;position:absolute;right:0;transform:translate(25%,25%)}.ihabdevteam-core-scope .shortcut-badge__group{align-items:center;display:inline-flex;gap:4px}.ihabdevteam-core-scope .shortcut-badge__plus{color:var(--color-lightGray);font-size:11px;line-height:1}.ihabdevteam-core-scope .shortcut-badge__key{align-items:center;background:var(--color-lightBlack);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-white);display:inline-flex;font-family:inherit;font-size:11px;font-weight:400;justify-content:center;line-height:1;min-height:24px;min-width:24px;padding:0 5px;white-space:nowrap}";Q(i3);function Lh({keys:e,anchor:t="top-right",className:a=""}){const r=Array.isArray(e)?e:[e];return o.jsx("span",{className:ye("shortcut-badge",`shortcut-badge--${t}`,a),children:r.map((n,i)=>o.jsxs("span",{className:"shortcut-badge__group",children:[i>0&&o.jsx("span",{className:"shortcut-badge__plus",children:"+"}),o.jsx("kbd",{className:"shortcut-badge__key",children:n})]},`${n}-${i}`))})}var s3=".ihabdevteam-core-scope .divider--horizontal{align-items:center;border:none;border-top:1px solid var(--color-whiteLine);display:flex;width:100%}.ihabdevteam-core-scope .divider--vertical{border:none;border-left:1px solid var(--color-whiteLine);display:inline-block;height:1em;vertical-align:middle;width:1px}.ihabdevteam-core-scope .divider--labeled{border-top:none;gap:var(--spacing-s)}.ihabdevteam-core-scope .divider__line{background:var(--color-whiteLine);flex:1 1 auto;height:1px}.ihabdevteam-core-scope .divider__label{color:var(--color-gray);flex:0 0 auto;white-space:nowrap}";Q(s3);function Mh({orientation:e="horizontal",label:t,className:a=""}){const r=ye("divider",`divider--${e}`,t&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?o.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):t?o.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[o.jsx("span",{className:"divider__line"}),o.jsx("span",{className:"divider__label caption-1",children:t}),o.jsx("span",{className:"divider__line"})]}):o.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}var l3='.ihabdevteam-core-scope .radio{align-items:center;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .radio input{height:0;opacity:0;position:absolute;width:0}.ihabdevteam-core-scope .radio__dot{background:var(--color-pureWhite);border:1.5px solid var(--color-whiteLine);border-radius:50%;display:inline-block;flex-shrink:0;height:20px;position:relative;transition:border-color .15s,background .15s;width:20px}.ihabdevteam-core-scope .radio__dot:before{background:var(--color-pureWhite);border-radius:50%;content:"";inset:4px;position:absolute;transform:scale(0);transition:transform .15s}.ihabdevteam-core-scope .radio input:checked+.radio__dot{background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .radio input:checked+.radio__dot:before{transform:scale(1)}.ihabdevteam-core-scope .radio:not(.radio--disabled):hover .radio__dot{border-color:var(--color-main)}.ihabdevteam-core-scope .radio input:focus-visible+.radio__dot{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .radio__label{color:var(--color-black)}.ihabdevteam-core-scope .radio--disabled{cursor:not-allowed;opacity:.45}';Q(l3);function Ll({checked:e,onChange:t,name:a,value:r,disabled:n=!1,label:i,className:s=""}){const c=l.useId();return o.jsxs("label",{className:`radio${n?" radio--disabled":""} ${s}`.trim(),htmlFor:c,children:[o.jsx("input",{id:c,type:"radio",name:a,value:r,checked:e,disabled:n,onChange:u=>t?.(u.target.checked)}),o.jsx("span",{className:"radio__dot"}),i&&o.jsx("span",{className:"radio__label body-2",children:i})]})}var c3=".ihabdevteam-core-scope .radio-group{display:flex}.ihabdevteam-core-scope .radio-group--vertical{flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .radio-group--horizontal{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-l)}";Q(c3);function Ph({options:e,value:t,onChange:a,name:r,disabled:n=!1,direction:i="vertical",className:s=""}){const c=l.useId(),u=r??`radio-group-${c}`;return o.jsx("div",{className:`radio-group radio-group--${i} ${s}`.trim(),role:"radiogroup",children:e.map(d=>o.jsx(Ll,{name:u,value:d.value,checked:t===d.value,disabled:n||d.disabled,label:d.label,onChange:m=>{m&&a?.(d.value)}},d.value))})}var d3=".ihabdevteam-core-scope .alert{align-items:flex-start;background:color-mix(in srgb,var(--alert-color) 10%,transparent);border:1px solid color-mix(in srgb,var(--alert-color) 25%,transparent);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-s);padding:var(--spacing-m)}.ihabdevteam-core-scope .alert__icon{align-items:center;color:var(--alert-color);display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .alert__body{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.ihabdevteam-core-scope .alert__header{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .alert__message--indented{margin-left:calc(20px + var(--spacing-xs))}.ihabdevteam-core-scope .alert__title{color:var(--color-black)}.ihabdevteam-core-scope .alert__message{color:var(--color-darkGray)}.ihabdevteam-core-scope .alert__dismiss{align-items:center;background:transparent;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:18px;height:20px;justify-content:center;line-height:1;padding:0;width:20px}.ihabdevteam-core-scope .alert__dismiss:hover{color:var(--color-darkGray)}.ihabdevteam-core-scope .alert--info{--alert-color:var(--color-main)}.ihabdevteam-core-scope .alert--success{--alert-color:var(--color-success)}.ihabdevteam-core-scope .alert--warning{--alert-color:var(--color-warn)}.ihabdevteam-core-scope .alert--danger{--alert-color:var(--color-error)}";Q(d3);const u3={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function Rh({tone:e="info",title:t,message:a,children:r,dismissible:n=!1,onDismiss:i,className:s=""}){const{t:c}=me.useTranslation(),[u,d]=l.useState(!1),m=l.useCallback(()=>{d(!0),i?.()},[i]);if(u)return null;const h=ye("alert",`alert--${e}`,s),p=!!t,g=!!(a||r);return o.jsxs("div",{className:h,role:"alert",children:[o.jsxs("div",{className:"alert__body",children:[o.jsxs("div",{className:"alert__header",children:[o.jsx(Pe,{icon:u3[e],size:20,className:"alert__icon"}),p&&o.jsx("span",{className:"alert__title body-2",children:t}),!p&&g&&o.jsx("div",{className:"alert__message body-3",children:a??r})]}),p&&g&&o.jsx("div",{className:"alert__message alert__message--indented body-3",children:a??r})]}),n&&o.jsx("button",{type:"button",className:"alert__dismiss",onClick:m,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}var p3=".ihabdevteam-core-scope .search-summary{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);box-shadow:var(--shadow-card);box-sizing:border-box;color:var(--color-gray);display:inline-flex;gap:var(--spacing-xs);max-width:100%;padding:30px 20px;text-align:left}.ihabdevteam-core-scope .search-summary__icon{color:currentColor;display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .search-summary__text{min-width:0;overflow-wrap:anywhere;word-break:keep-all}.ihabdevteam-core-scope .search-summary__em{color:var(--color-main)}.ihabdevteam-core-scope .search-summary--ready{background:var(--color-white);color:var(--color-deepGray)}.ihabdevteam-core-scope .search-summary--ready .search-summary__em{color:var(--color-main)}.ihabdevteam-core-scope .search-summary--guide{background:var(--color-deepWhite);color:var(--color-gray)}.ihabdevteam-core-scope .search-summary--error{background:var(--color-white);color:var(--color-error)}.ihabdevteam-core-scope .search-summary--error .search-summary__em{color:var(--color-error)}";Q(p3);const h3={ready:"search",guide:"info",error:"circle-alert"};function m3(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const r=[];let n=0,i=0;for(const s of a){const c=e.indexOf(s,n);c<0||(c>n&&r.push(e.slice(n,c)),r.push(o.jsx("strong",{className:"search-summary__em body-2",children:s},i++)),n=c+s.length)}return n<e.length&&r.push(e.slice(n)),r}function $h({status:e="guide",label:t,children:a,emphasis:r,icon:n,className:i=""}){const s=n===!1?null:n??h3[e],c=ye("search-summary",`search-summary--${e}`,i),u=t??a,d=typeof u=="string"&&r&&r.length>0?m3(u,r):u;return o.jsxs("div",{className:c,role:"status","aria-live":"polite",children:[s!=null&&o.jsx(Pe,{icon:s,size:18,className:"search-summary__icon"}),o.jsx("span",{className:"search-summary__text body-2",children:d})]})}var b3=".ihabdevteam-core-scope .tabs{display:flex;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .tabs__list{border-bottom:1px solid var(--color-whiteLine);display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .tabs__tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-gray);cursor:pointer;padding:0 var(--spacing-xs);transition:color .15s,border-color .15s;white-space:nowrap}.ihabdevteam-core-scope .tabs__list--32 .tabs__tab{height:32px}.ihabdevteam-core-scope .tabs__list--40 .tabs__tab{height:40px}.ihabdevteam-core-scope .tabs__list--48 .tabs__tab{height:48px}.ihabdevteam-core-scope .tabs__tab:hover:not(:disabled){color:var(--color-darkGray)}.ihabdevteam-core-scope .tabs__tab:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .tabs__tab--active{border-bottom-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .tabs__tab:disabled{color:var(--color-disabled);cursor:not-allowed}.ihabdevteam-core-scope .tabs__panel{outline:none}.ihabdevteam-core-scope .tabs__panel:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}";Q(b3);function zh({items:e=[],value:t,onChange:a,className:r="",size:n=40}){const{t:i}=me.useTranslation(),s=l.useRef(null),c=t??e[0]?.key,u=()=>Array.from(s.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),d=(p,g=u())=>{if(g.length===0)return;const v=(p%g.length+g.length)%g.length;g[v]?.focus(),g[v]?.click()},m=p=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(p.key))return;p.preventDefault();const g=u(),v=g.indexOf(p.currentTarget);p.key==="ArrowRight"||p.key==="ArrowDown"?d(v+1,g):p.key==="ArrowLeft"||p.key==="ArrowUp"?d(v-1,g):p.key==="Home"?d(0,g):d(g.length-1,g)},h=e.find(p=>p.key===c);return o.jsxs("div",{className:`tabs ${r}`.trim(),children:[o.jsx("div",{ref:s,className:`tabs__list tabs__list--${n}`,role:"tablist","aria-label":i("tabs.ariaLabel","\uD0ED"),children:e.map(p=>o.jsx("button",{id:`tabs__tab-${p.key}`,type:"button",role:"tab","aria-selected":p.key===c,"aria-controls":`tabs__panel-${p.key}`,disabled:p.disabled,tabIndex:p.key===c?0:-1,className:`tabs__tab body-2${p.key===c?" tabs__tab--active":""}`,onClick:()=>a?.(p.key),onKeyDown:m,children:p.label},p.key))}),h&&o.jsx("div",{id:`tabs__panel-${h.key}`,role:"tabpanel","aria-labelledby":`tabs__tab-${h.key}`,tabIndex:0,className:"tabs__panel",children:h.panel},h.key)]})}var g3=".ihabdevteam-core-scope .avatar{align-items:center;background:var(--color-lightGray-a10);color:var(--color-gray);display:inline-flex;flex-shrink:0;height:var(--avatar-size);justify-content:center;overflow:hidden;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--avatar-size)}.ihabdevteam-core-scope .avatar--circle{border-radius:50%}.ihabdevteam-core-scope .avatar--rounded-square{border-radius:var(--radius-card)}.ihabdevteam-core-scope .avatar--xs{--avatar-size:24px}.ihabdevteam-core-scope .avatar--sm{--avatar-size:32px}.ihabdevteam-core-scope .avatar--md{--avatar-size:40px}.ihabdevteam-core-scope .avatar--lg{--avatar-size:56px}.ihabdevteam-core-scope .avatar--xl{--avatar-size:80px}.ihabdevteam-core-scope .avatar__image{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.ihabdevteam-core-scope .avatar__initials{font-size:calc(var(--avatar-size)*.4);font-weight:600;line-height:1}.ihabdevteam-core-scope .avatar__icon{align-items:center;display:inline-flex;justify-content:center}";Q(g3);const f3={xs:12,sm:16,md:20,lg:28,xl:36};function v3(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 Ih({src:e,name:t,size:a="md",shape:r="circle",className:n=""}){const{t:i}=me.useTranslation(),[s,c]=l.useState(!1),u=t?v3(t):"",d=!!e&&!s,m=!d&&!!u,h=t||i("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return o.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${n}`.trim(),role:"img","aria-label":h,children:[d&&o.jsx("img",{className:"avatar__image",src:e,alt:h,onError:()=>c(!0)}),!d&&m&&o.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:u}),!d&&!m&&o.jsx(Pe,{icon:"user-round",size:f3[a],className:"avatar__icon"})]})}var y3=".ihabdevteam-core-scope .file-upload{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .file-upload__dropzone{align-items:center;background:var(--color-deepWhite);border:1px dashed var(--color-whiteLine);border-radius:var(--radius-card);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-xs);justify-content:center;padding:var(--spacing-xl);position:relative;transition:border-color .15s,background .15s}.ihabdevteam-core-scope .file-upload__dropzone:hover:not(.file-upload__dropzone--disabled){border-color:var(--color-main)}.ihabdevteam-core-scope .file-upload__dropzone:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .file-upload__dropzone--dragging{background:var(--color-main-a10);border-color:var(--color-main)}.ihabdevteam-core-scope .file-upload__dropzone--disabled{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .file-upload__icon{color:var(--color-gray)}.ihabdevteam-core-scope .file-upload__prompt{color:var(--color-gray);text-align:center}.ihabdevteam-core-scope .file-upload__browse-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-pureWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);color:var(--color-main);cursor:pointer;padding:var(--spacing-xs) var(--spacing-m)}.ihabdevteam-core-scope .file-upload__browse-button:disabled{color:var(--color-disabled);cursor:not-allowed}.ihabdevteam-core-scope .file-upload__input{height:1px;opacity:0;overflow:hidden;pointer-events:none;position:absolute;width:1px}.ihabdevteam-core-scope .file-upload__list{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .file-upload__list-item{align-items:center;background:var(--color-deepWhite);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-s);justify-content:space-between;padding:var(--spacing-xs) var(--spacing-s)}.ihabdevteam-core-scope .file-upload__file-name{color:var(--color-darkGray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .file-upload__remove-button{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center}.ihabdevteam-core-scope .file-upload__remove-button:hover{color:var(--color-error)}";Q(y3);function x3(e,t){if(!t)return!0;const a=t.split(",").map(i=>i.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),n=e.type.toLowerCase();return a.some(i=>{const s=i.toLowerCase();return s.startsWith(".")?r.endsWith(s):s.endsWith("/*")?n.startsWith(s.slice(0,-1)):n===s})}function Oh({onFilesSelected:e,accept:t,multiple:a=!1,disabled:r=!1,showFileList:n=!0,files:i,onRemove:s,className:c=""}){const{t:u}=me.useTranslation(),d=l.useRef(null),[m,h]=l.useState(!1),[p,g]=l.useState([]),v=i??p,b=w=>{if(!w||w.length===0)return;const S=Array.from(w).filter(T=>x3(T,t));if(S.length===0)return;const D=a?S:S.slice(0,1);if(i===void 0){const T=a?[...v,...D]:D;g(T),e?.(T)}else e?.(D)},y=w=>{w.preventDefault(),!r&&h(!0)},f=w=>{w.preventDefault(),h(!1)},x=w=>{w.preventDefault(),h(!1),!r&&b(w.dataTransfer.files)},_=w=>{b(w.target.files),w.target.value=""},C=()=>{r||d.current?.click()},A=w=>{if(s){s(w);return}if(i===void 0){const S=v.filter((D,T)=>T!==w);g(S),e?.(S)}};return o.jsxs("div",{className:`file-upload ${c}`.trim(),children:[o.jsxs("div",{className:ye("file-upload__dropzone",m&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:C,onKeyDown:w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),C())},onDragOver:y,onDragLeave:f,onDrop:x,children:[o.jsx(Pe,{icon:"upload",size:24,className:"file-upload__icon"}),o.jsx("span",{className:"file-upload__prompt body-2",children:u("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),o.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:w=>{w.stopPropagation(),C()},children:u("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),o.jsx("input",{ref:d,type:"file",className:"file-upload__input",accept:t,multiple:a,disabled:r,onChange:_,tabIndex:-1})]}),n&&v.length>0&&o.jsx("ul",{className:"file-upload__list",children:v.map((w,S)=>o.jsxs("li",{className:"file-upload__list-item body-3",children:[o.jsx("span",{className:"file-upload__file-name body-3",children:w.name}),o.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":u("fileUpload.removeAriaLabel",{name:w.name}),onClick:()=>A(S),children:o.jsx(Pe,{icon:"x",size:14})})]},`${w.name}-${S}`))})]})}var C3=".ihabdevteam-core-scope .breadcrumb{align-items:center;display:inline-flex}.ihabdevteam-core-scope .breadcrumb__list{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .breadcrumb__item{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .breadcrumb__link{align-items:center;background:none;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;justify-content:center;margin:0;min-height:24px;min-width:24px;padding:0}.ihabdevteam-core-scope .breadcrumb__link:hover{color:var(--color-main);text-decoration:underline}.ihabdevteam-core-scope .breadcrumb__link:focus-visible{border-radius:var(--radius-xs);outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .breadcrumb__current{color:var(--color-darkGray)}.ihabdevteam-core-scope .breadcrumb__separator{align-items:center;color:var(--color-disabled);display:inline-flex;flex-shrink:0}";Q(C3);function Fh({items:e,className:t=""}){return o.jsx("nav",{className:`breadcrumb ${t}`.trim(),"aria-label":"breadcrumb",children:o.jsx("ol",{className:"breadcrumb__list",children:e.map((a,r)=>{const n=r===e.length-1;return o.jsxs("li",{className:"breadcrumb__item",children:[n?o.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:a.label}):o.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:a.onClick,children:a.label}),!n&&o.jsx(Pe,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},r)})})})}var _3=".ihabdevteam-core-scope .rating{--rating-color:var(--color-warn);--rating-empty-color:var(--color-whiteLine);align-items:center;display:inline-flex;gap:2px}.ihabdevteam-core-scope .rating__item{align-items:center;background:none;border:none;display:inline-flex;justify-content:center;line-height:0;margin:0;padding:0}.ihabdevteam-core-scope .rating__item--interactive{cursor:pointer}.ihabdevteam-core-scope .rating__item--interactive:focus-visible{border-radius:var(--radius-xs);outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .rating--readOnly .rating__item{cursor:default}.ihabdevteam-core-scope .rating__star-wrap{display:inline-flex;line-height:0;position:relative}.ihabdevteam-core-scope .rating__star--empty{color:var(--rating-empty-color)}.ihabdevteam-core-scope .rating__star--empty svg{fill:var(--rating-empty-color)}.ihabdevteam-core-scope .rating__star-fill{display:inline-flex;height:100%;left:0;overflow:hidden;position:absolute;top:0;white-space:nowrap;width:100%}.ihabdevteam-core-scope .rating__star-fill--half{width:50%}.ihabdevteam-core-scope .rating__star--filled{color:var(--rating-color)}.ihabdevteam-core-scope .rating__star--filled svg{fill:var(--rating-color)}";Q(_3);const w3={small:14,medium:20,large:28};function Wh({value:e,onChange:t,max:a=5,readOnly:r=!1,size:n="medium",ariaLabel:i,className:s=""}){const{t:c}=me.useTranslation(),u=r||!t,[d,m]=l.useState(null),h=d??e,p=w3[n],g=y=>{u||t?.(y)},v=y=>{u||m(y)},b=()=>{u||m(null)};return o.jsx("div",{className:`rating rating--${n}${u?" rating--readOnly":""} ${s}`.trim(),role:u?"img":"radiogroup","aria-label":u?c("rating.valueLabel",{value:e,max:a}):i??c("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:b,children:Array.from({length:a},(y,f)=>{const x=f+1,_=Math.max(0,Math.min(1,h-f)),C=_>0&&_<1,A=o.jsxs("span",{className:"rating__star-wrap",children:[o.jsx(Pe,{icon:"star",size:p,className:"rating__star rating__star--empty"}),_>0&&o.jsx("span",{className:`rating__star-fill${C?" rating__star-fill--half":""}`,children:o.jsx(Pe,{icon:"star",size:p,className:"rating__star rating__star--filled"})})]});return u?o.jsx("span",{className:"rating__item","aria-hidden":"true",children:A},x):o.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":e===x,"aria-label":c("rating.starLabel",{n:x}),onClick:()=>g(x),onMouseEnter:()=>v(x),children:A},x)})})}var k3=".ihabdevteam-core-scope .color-picker{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.ihabdevteam-core-scope .color-picker__swatch{align-items:center;border:none;cursor:pointer;display:inline-flex;justify-content:center;padding:0;position:relative;transition:transform .12s,box-shadow .12s}.ihabdevteam-core-scope .color-picker__swatch--32{border-radius:8px;height:32px;width:32px}.ihabdevteam-core-scope .color-picker__swatch--40{border-radius:10px;height:40px;width:40px}.ihabdevteam-core-scope .color-picker__swatch--48{border-radius:12px;height:48px;width:48px}.ihabdevteam-core-scope .color-picker__swatch:hover{transform:scale(1.08)}.ihabdevteam-core-scope .color-picker__swatch:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .color-picker__check{color:#fff}.ihabdevteam-core-scope .color-picker__check svg{display:block}";Q(k3);const S3=20,A3=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function Hh({value:e,onChange:t,palette:a=A3,size:r=40,className:n=""}){const{t:i}=me.useTranslation();return o.jsx("div",{className:`color-picker ${n}`.trim(),role:"group",children:a.map(s=>{const c=e?.toLowerCase()===s.toLowerCase();return o.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:s},onClick:()=>t(s),"aria-pressed":c,"aria-label":c?`${s} ${i("colorPicker.selected","\uC120\uD0DD\uB428")}`:s,children:c&&o.jsx(Pe,{icon:"check",size:S3,className:"color-picker__check"})},s)})})}var T3=".ihabdevteam-core-scope .count-tile{background:var(--color-deepWhite);border:1px solid var(--color-darkWhite);border-radius:16px;box-sizing:border-box;flex-shrink:0;height:72px;padding:12px;position:relative;transition:border-color .15s,background .15s;width:72px}.ihabdevteam-core-scope .count-tile__icon{color:var(--color-main);left:12px;position:absolute;top:12px}.ihabdevteam-core-scope .count-tile__count{bottom:12px;color:var(--color-darkGray);line-height:1;position:absolute;right:12px}.ihabdevteam-core-scope .count-tile--clickable{cursor:pointer}.ihabdevteam-core-scope .count-tile--clickable:hover{background:var(--color-white)}@media (max-width:767px){.ihabdevteam-core-scope .count-tile{border-radius:14px;height:60px;padding:10px;width:60px}.ihabdevteam-core-scope .count-tile__icon{left:8px;top:8px}.ihabdevteam-core-scope .count-tile__count{bottom:8px;right:8px}}";Q(T3);function Vh({icon:e,count:t,title:a,className:r="",onClick:n,onMouseEnter:i,onMouseLeave:s}){const c=ye("count-tile",n&&"count-tile--clickable",r);return o.jsxs("div",{className:c,onClick:n,onKeyDown:n?u=>{u.key!=="Enter"&&u.key!==" "||(u.preventDefault(),u.currentTarget.click())}:void 0,onMouseEnter:i,onMouseLeave:s,role:n?"button":"img",tabIndex:n?0:void 0,"aria-label":a?`${a} ${t}`:String(t),children:[o.jsx(Pe,{icon:e,size:20,className:"count-tile__icon"}),o.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]})}var B3=".ihabdevteam-core-scope .dialog{align-items:center;background:rgba(16,24,32,.6);display:flex;inset:0;justify-content:center;padding:32px;position:fixed;z-index:2200;z-index:var(--z-modal,2200)}@supports (color:rgb(0 0 0/0)) and (top:var(--f )){.ihabdevteam-core-scope .dialog{background:var(--color-popupBlock,rgba(16,24,32,.6))}}.ihabdevteam-core-scope .dialog__surface{background:#fff;background:var(--color-pureWhite,#fff);border-radius:20px;border-radius:var(--radius-dialog,20px);box-shadow:var(--shadow-popup);max-height:calc(100vh - 64px);outline:none;overflow:auto;position:relative;width:100%}.ihabdevteam-core-scope .dialog__surface--sm{max-width:420px}.ihabdevteam-core-scope .dialog__surface--md{max-width:640px}.ihabdevteam-core-scope .dialog__surface--lg{max-width:1000px}.ihabdevteam-core-scope .dialog__surface--full{background:none;box-shadow:none;max-width:1000px;overflow:visible}.ihabdevteam-core-scope .dialog__header{padding:24px 24px 0}.ihabdevteam-core-scope .dialog__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .dialog__close{align-items:center;background:none;border:0;border-radius:999px;border-radius:var(--radius-full,999px);color:var(--color-gray);cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:12px;top:12px;transition:background .15s ease,color .15s ease;width:40px}.ihabdevteam-core-scope .dialog__close:hover{background:var(--color-darkWhite);color:var(--color-black)}.ihabdevteam-core-scope .dialog__close>svg{height:20px;width:20px}.ihabdevteam-core-scope .dialog__surface--full .dialog__close{background:hsla(0,0%,100%,.1);color:var(--color-pureWhite);right:0;top:-48px}.ihabdevteam-core-scope .dialog__surface--full .dialog__close:hover{background:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .dialog__body{padding:24px}.ihabdevteam-core-scope .dialog__surface--full .dialog__body{padding:0}@media (max-width:639px){.ihabdevteam-core-scope .dialog{padding:16px}.ihabdevteam-core-scope .dialog__body{padding:20px}}";Q(B3);function N3(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:o.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function Gh({open:e,onClose:t,ariaLabel:a,title:r,children:n,size:i="md",closeOnBackdrop:s=!0,closeOnEscape:c=!0,showClose:u=!0,className:d,contentClassName:m}){const{t:h}=me.useTranslation(),p=l.useId(),g=l.useRef(null),v=l.useRef(null),b=l.useCallback(()=>t(),[t]);return l.useEffect(()=>{if(!e){v.current?.focus(),v.current=null;return}v.current=document.activeElement;const{overflow:y}=document.body.style;document.body.style.overflow="hidden",g.current?.focus();const f=c?gl(b):void 0;return()=>{f?.(),document.body.style.overflow=y}},[e,c,b]),!e||typeof document>"u"?null:qt.createPortal(o.jsx("div",{className:ye("dialog",d),onClick:s?b:void 0,children:o.jsxs("div",{ref:g,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?p:void 0,tabIndex:-1,className:ye("dialog__surface",`dialog__surface--${i}`,m),onClick:y=>y.stopPropagation(),children:[r?o.jsx("div",{className:"dialog__header",children:o.jsx("h2",{id:p,className:"dialog__title h4b",children:r})}):null,u?o.jsx("button",{type:"button",className:"dialog__close","aria-label":h("common.close","\uB2EB\uAE30"),onClick:b,children:o.jsx(N3,{})}):null,o.jsx("div",{className:"dialog__body",children:n})]})}),document.body)}var D3=".ihabdevteam-core-scope .board{width:100%}.ihabdevteam-core-scope .board__head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--spacing-m);justify-content:space-between;margin-bottom:var(--spacing-m)}.ihabdevteam-core-scope .board__title{color:var(--color-text-primary);font-size:var(--text-body-2-size);font-weight:500;line-height:var(--text-body-2-line);margin:0}.ihabdevteam-core-scope .board__toolbar{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .board__table{border-collapse:collapse;border-top:1px solid var(--color-text-primary);text-align:left;width:100%}.ihabdevteam-core-scope .board__caption{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .board__th{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--text-body-3-size);font-weight:500;line-height:var(--text-body-3-line);padding:14px 0}.ihabdevteam-core-scope .board__row{border-bottom:1px solid var(--color-border);transition:background .15s ease;transition:background var(--duration-fast,.15s) var(--ease-out,ease)}.ihabdevteam-core-scope .board__row:hover{background:var(--color-surface-raised)}.ihabdevteam-core-scope .board__td{color:var(--color-text-primary);font-size:var(--text-body-3-size);line-height:var(--text-body-3-line);padding:var(--spacing-m) 0}.ihabdevteam-core-scope .board__cell--left{text-align:left}.ihabdevteam-core-scope .board__cell--center{text-align:center}.ihabdevteam-core-scope .board__cell--right{text-align:right}.ihabdevteam-core-scope .board__state{color:var(--color-text-secondary);font-size:var(--text-body-3-size);padding:56px 0;text-align:center}";Q(D3);function qh({columns:e,rows:t,rowKey:a,title:r,toolbar:n,empty:i="\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",loading:s,caption:c,className:u=""}){const d=!s&&t.length===0;return o.jsxs("div",{className:ye("board",u),children:[r||n?o.jsxs("div",{className:"board__head",children:[r?o.jsx("h2",{className:"board__title",children:r}):o.jsx("span",{}),n?o.jsx("div",{className:"board__toolbar",children:n}):null]}):null,o.jsxs("table",{className:"board__table",children:[c?o.jsx("caption",{className:"board__caption",children:c}):null,o.jsx("thead",{children:o.jsx("tr",{children:e.map(m=>o.jsx("th",{scope:"col",className:ye("board__th",`board__cell--${m.headerAlign??m.align??"left"}`),style:m.width?{width:m.width}:void 0,children:m.header},m.key))})}),o.jsx("tbody",{children:s?o.jsx("tr",{children:o.jsx("td",{className:"board__state",colSpan:e.length,children:s})}):d?o.jsx("tr",{children:o.jsx("td",{className:"board__state",colSpan:e.length,children:i})}):t.map((m,h)=>o.jsx("tr",{className:"board__row",children:e.map(p=>o.jsx("td",{className:ye("board__td",`board__cell--${p.align??"left"}`),children:p.render(m,h)},p.key))},a(m,h)))})]})]})}var E3=".ihabdevteam-core-scope .person-card{display:flex;flex-direction:column}.ihabdevteam-core-scope .person-card__photo{background:var(--color-surface-raised);border-radius:var(--radius-full);flex-shrink:0;margin-inline:auto;max-width:100%;overflow:hidden}.ihabdevteam-core-scope .person-card__photo>*,.ihabdevteam-core-scope .person-card__photo>img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.ihabdevteam-core-scope .person-card__name{color:var(--color-text-primary);font-size:var(--text-h4-size);font-weight:var(--text-h4-weight-bold);line-height:var(--text-h4-line);margin-top:var(--spacing-xl);text-align:center}.ihabdevteam-core-scope .person-card__role{color:var(--color-darkGray);font-size:var(--text-body-3-size);font-weight:var(--text-body-3-weight);line-height:var(--text-body-3-line);margin-top:6px;text-align:center}.ihabdevteam-core-scope .person-card__credentials{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:var(--spacing-xl) auto 0;max-width:100%;padding:0;text-align:left;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .person-card__credentials>li{color:var(--color-darkGray);font-size:var(--text-body-3-size);line-height:var(--text-body-3-line)}@media (max-width:767px){.ihabdevteam-core-scope .person-card__credentials,.ihabdevteam-core-scope .person-card__name{margin-top:var(--spacing-l)}}";Q(E3);function Yh({name:e,role:t,photo:a,media:r,credentials:n,size:i=190,className:s=""}){return o.jsxs("div",{className:ye("person-card",s),children:[o.jsx("div",{className:"person-card__photo",style:{width:i,height:i},children:r??(a?o.jsx("img",{src:a,alt:t?`${e} ${t}`:e}):null)}),o.jsx("h3",{className:"person-card__name",children:e}),t?o.jsx("p",{className:"person-card__role",children:t}):null,n?.length?o.jsx("ul",{className:"person-card__credentials",children:n.map(c=>o.jsx("li",{children:c},c))}):null]})}var j3=".ihabdevteam-core-scope .timeline{display:flex;flex-direction:column;gap:56px}.ihabdevteam-core-scope .timeline__title{color:var(--color-text-primary);font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);letter-spacing:var(--text-h1-spacing);line-height:var(--text-h1-line);margin:0}.ihabdevteam-core-scope .timeline__rows{border-top:1px solid var(--color-border);list-style:none;margin:var(--spacing-m) 0 0;padding:0}.ihabdevteam-core-scope .timeline__row{border-bottom:1px solid var(--color-border);display:flex;gap:40px;padding:var(--spacing-l) 0}.ihabdevteam-core-scope .timeline__label{color:var(--color-text-primary);flex-shrink:0;font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight-bold);line-height:var(--text-body-2-line);padding-top:1px;width:28px}.ihabdevteam-core-scope .timeline__items{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .timeline__items>p{color:var(--color-text-primary);font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight);line-height:var(--text-body-2-line);margin:0}@media (max-width:767px){.ihabdevteam-core-scope .timeline{gap:40px}.ihabdevteam-core-scope .timeline__row{gap:var(--spacing-xl)}}";Q(j3);function Uh({groups:e,className:t=""}){return o.jsx("div",{className:ye("timeline",t),children:e.map(a=>o.jsxs("section",{className:"timeline__group",children:[o.jsx("h3",{className:"timeline__title",children:a.title}),o.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,n)=>o.jsxs("li",{className:"timeline__row",children:[r.label?o.jsx("span",{className:"timeline__label",children:r.label}):null,o.jsx("div",{className:"timeline__items",children:r.items.map((i,s)=>o.jsx("p",{children:i},s))})]},`${r.label??""}-${n}`))})]},a.title))})}var L3=".ihabdevteam-core-scope .publication-card{background:var(--color-surface-raised);border-radius:var(--radius-m);box-sizing:border-box;display:flex;flex-direction:column;padding:36px var(--spacing-xl) 32px;position:relative}.ihabdevteam-core-scope .publication-card__badge{height:88px;pointer-events:none;position:absolute;right:var(--spacing-xl);top:0}.ihabdevteam-core-scope .publication-card__badge>*,.ihabdevteam-core-scope .publication-card__badge>img{height:100%;width:auto}.ihabdevteam-core-scope .publication-card__title{color:var(--color-text-primary);font-size:var(--text-h4-size);font-weight:var(--text-h4-weight-bold);line-height:var(--text-h4-line);margin:0;padding-right:96px;position:relative;z-index:1}.ihabdevteam-core-scope .publication-card__kind{color:var(--color-darkGray);font-size:var(--text-body-3-size);font-weight:var(--text-body-3-weight);line-height:var(--text-body-3-line);margin:var(--spacing-m) 0 0}.ihabdevteam-core-scope .publication-card__body{color:var(--color-darkGray);font-size:var(--text-caption-1-size);line-height:1.65;margin:var(--spacing-m) 0 0}@media (max-width:767px){.ihabdevteam-core-scope .publication-card{padding:32px var(--spacing-l) 28px}.ihabdevteam-core-scope .publication-card__kind{margin-top:var(--spacing-m)}}.ihabdevteam-core-scope .publication-card__footer{margin-top:auto;padding-top:var(--spacing-l)}";Q(L3);function Kh({title:e,kind:t,body:a,badge:r,badgeSrc:n,footer:i,width:s,className:c=""}){const u=r??(n?o.jsx("img",{src:n,alt:""}):null);return o.jsxs("div",{className:ye("publication-card",c),style:s?{width:s,flexShrink:0}:void 0,children:[u?o.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:u}):null,o.jsx("h3",{className:"publication-card__title",children:e}),t?o.jsx("p",{className:"publication-card__kind",children:t}):null,o.jsx("p",{className:"publication-card__body",children:a}),i?o.jsx("div",{className:"publication-card__footer",children:i}):null]})}var M3="@keyframes splash-logo{0%{opacity:0;transform:scale(.92)}18%{opacity:1;transform:scale(1)}75%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.04)}}.ihabdevteam-core-scope .splash-logo{align-items:center;background:var(--color-pureWhite);display:flex;inset:0;justify-content:center;position:absolute;z-index:1000;z-index:var(--z-modal,1000)}.ihabdevteam-core-scope .splash-logo__image{animation:splash-logo 3s cubic-bezier(.4,0,.2,1) forwards;animation:splash-logo var(--splash-logo-duration,3s) cubic-bezier(.4,0,.2,1) forwards;height:80px;height:var(--splash-logo-height,80px);width:auto}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .splash-logo__image{animation:none;opacity:1}}";Q(M3);function Zh({logo:e,alt:t,onDone:a,durationMs:r=3e3}){const n=Ks(a);return l.useEffect(()=>{if(!n.current)return;const i=setTimeout(()=>n.current?.(),r);return()=>clearTimeout(i)},[r,n]),o.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:o.jsx("img",{src:e,alt:t,className:"splash-logo__image"})})}var P3='.ihabdevteam-core-scope .section-header{text-align:center}.ihabdevteam-core-scope .section-header__eyebrow{align-items:center;display:flex;font-size:var(--text-caption-1-size);font-weight:600;gap:10px;justify-content:center;letter-spacing:.18em;line-height:var(--text-caption-1-line);margin:0}.ihabdevteam-core-scope .section-header__index{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.6}.ihabdevteam-core-scope .section-header__rule{background:currentColor;height:1px;opacity:.3;width:24px}.ihabdevteam-core-scope .section-header__title{font-family:inherit;font-family:var(--font-display,inherit);font-size:clamp(2rem,1.35rem + 2.1vw,2.9rem);font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:0}.ihabdevteam-core-scope .section-header__eyebrow+.section-header__title{margin-top:var(--spacing-xl)}.ihabdevteam-core-scope .section-header__description{font-size:var(--text-body-2-size);line-height:1.9;margin-top:var(--spacing-m)}.ihabdevteam-core-scope .section-header--dark .section-header__eyebrow{color:var(--color-main)}.ihabdevteam-core-scope .section-header--dark .section-header__title{color:var(--color-text-primary)}.ihabdevteam-core-scope .section-header--dark .section-header__description{color:var(--color-darkGray)}.ihabdevteam-core-scope .section-header--light .section-header__eyebrow{color:hsla(0,0%,100%,.85)}.ihabdevteam-core-scope .section-header--light .section-header__title{color:var(--color-pureWhite)}.ihabdevteam-core-scope .section-header--light .section-header__description{color:hsla(0,0%,100%,.85)}';Q(P3);function Xh({eyebrow:e,eyebrowIndex:t,title:a,description:r,level:n=2,tone:i="dark",className:s=""}){const c=n===1?"h1":"h2";return o.jsxs("div",{className:ye("section-header",`section-header--${i}`,s),children:[e?o.jsxs("p",{className:"section-header__eyebrow",children:[t?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"section-header__index",children:t}),o.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?o.jsx(c,{className:"section-header__title",children:a}):null,r?o.jsx("div",{className:"section-header__description",children:r}):null]})}var R3=".ihabdevteam-core-scope .company-meta{align-items:center;color:var(--color-gray);display:flex;flex-direction:column;font-size:var(--text-caption-1-size);gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .company-meta__item{align-items:center;display:flex}.ihabdevteam-core-scope .company-meta__divider{color:var(--color-whiteLine);display:none;padding-inline:var(--spacing-m)}@media (min-width:640px){.ihabdevteam-core-scope .company-meta{flex-direction:row;gap:0}.ihabdevteam-core-scope .company-meta__divider{display:inline}}";Q(R3);function Qh({items:e,className:t=""}){return o.jsx("ul",{className:ye("company-meta",t),children:e.map((a,r)=>o.jsxs("li",{className:"company-meta__item",children:[r>0?o.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function Ml({value:e,onChange:t,suggestions:a,openOnFocus:r=!1}){const n=l.useId(),[i,s]=l.useState(!1),[c,u]=l.useState(-1),d=l.useRef(null),m=l.useMemo(()=>{if(!a.length)return[];const b=e??"";return b?a.filter(y=>y.toLowerCase().includes(b.toLowerCase())):r?a:[]},[a,e,r]);l.useEffect(()=>{i||u(-1)},[i]),l.useEffect(()=>()=>{d.current&&clearTimeout(d.current)},[]);const h=l.useCallback(b=>{t?.(b),s(!1)},[t]),p=l.useCallback(()=>s(!0),[]),g=l.useCallback(()=>{d.current=setTimeout(()=>s(!1),120)},[]),v=l.useCallback(b=>{b.key==="ArrowDown"?(b.preventDefault(),s(!0),u(y=>Math.min(m.length-1,y+1))):b.key==="ArrowUp"?(b.preventDefault(),u(y=>Math.max(-1,y-1))):b.key==="Enter"?c>=0&&!b.nativeEvent.isComposing&&h(m[c]):b.key==="Escape"&&i&&(b.preventDefault(),s(!1))},[m,c,i,h]);return{listId:n,open:i,activeIdx:c,filtered:m,handleFocus:p,handleBlur:g,handleKeyDown:v,handleSelect:h}}var $3=".ihabdevteam-core-scope .text-field{box-sizing:border-box;display:inline-flex;flex-direction:column;gap:6px;position:relative}.ihabdevteam-core-scope .text-field--full-width{display:flex;width:100%}.ihabdevteam-core-scope .text-field__label{align-items:center;color:var(--color-darkGray);display:flex;gap:4px}.ihabdevteam-core-scope .text-field__required{color:var(--color-main);line-height:1}.ihabdevteam-core-scope .text-field__wrap{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:12px;box-sizing:border-box;display:flex;overflow:hidden;position:relative;transition:border-color .12s,background .12s,box-shadow .12s}.ihabdevteam-core-scope .text-field--s32 .text-field__wrap{border-radius:8px}.ihabdevteam-core-scope .text-field--s40 .text-field__wrap{border-radius:10px}.ihabdevteam-core-scope .text-field--s48 .text-field__wrap{border-radius:12px}.ihabdevteam-core-scope .text-field--s64 .text-field__wrap{border-radius:14px}.ihabdevteam-core-scope .text-field__wrap:focus-within{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10)}.ihabdevteam-core-scope .text-field--error .text-field__wrap{border-color:var(--color-error)}.ihabdevteam-core-scope .text-field--error .text-field__wrap:focus-within{box-shadow:0 0 0 3px var(--color-error-a10)}.ihabdevteam-core-scope .text-field--disabled .text-field__wrap{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .text-field--readonly .text-field__input{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .text-field--readonly .text-field__wrap{border-color:var(--color-darkWhite)}.ihabdevteam-core-scope .text-field__input{background:transparent;border:none;box-sizing:border-box;color:var(--color-darkGray);flex:1;margin:0;min-width:0;outline:none;padding:0 12px}.ihabdevteam-core-scope .text-field__input::-moz-placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .text-field__input::placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .text-field__input:disabled{cursor:not-allowed}.ihabdevteam-core-scope .text-field__input[readonly]{cursor:default}.ihabdevteam-core-scope .text-field__input--textarea{align-self:stretch;line-height:1.6;min-height:80px;padding:10px 12px;resize:vertical}.ihabdevteam-core-scope .text-field__input--auto{align-self:stretch;line-height:1.5;overflow:hidden;padding:0 12px;resize:none}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__wrap,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__wrap{align-items:flex-start}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__clear,.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__icon,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__clear,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__icon{margin-top:var(--spacing-s)}.ihabdevteam-core-scope .text-field--s32 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:30px}.ihabdevteam-core-scope .text-field--s40 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:38px}.ihabdevteam-core-scope .text-field--s48 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:46px}.ihabdevteam-core-scope .text-field--s64 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:62px;line-height:normal}.ihabdevteam-core-scope .text-field--display .text-field__input{font-weight:700;text-align:center}.ihabdevteam-core-scope .text-field--display .text-field__input::-moz-placeholder{color:transparent}.ihabdevteam-core-scope .text-field--display .text-field__input::placeholder{color:transparent}.ihabdevteam-core-scope .text-field--display .text-field__placeholder{align-items:center;color:var(--color-lightGray);display:flex;font-weight:400;inset:0;justify-content:center;pointer-events:none;position:absolute}.ihabdevteam-core-scope .text-field--display .text-field__input:not(:-moz-placeholder)~.text-field__placeholder{display:none}.ihabdevteam-core-scope .text-field--display .text-field__input:not(:placeholder-shown)~.text-field__placeholder{display:none}.ihabdevteam-core-scope .text-field--display.text-field--s48 .text-field__input{font-size:22px}.ihabdevteam-core-scope .text-field--display.text-field--s48 .text-field__placeholder{font-size:15px}.ihabdevteam-core-scope .text-field--display.text-field--s64 .text-field__input{font-size:28px;letter-spacing:-.3px}.ihabdevteam-core-scope .text-field--display.text-field--s64 .text-field__placeholder{font-size:16px}.ihabdevteam-core-scope .text-field--s32 .text-field__input--auto{height:30px;min-height:30px;padding-bottom:3px;padding-top:3px}.ihabdevteam-core-scope .text-field--s40 .text-field__input--auto{height:38px;min-height:38px;padding-bottom:7px;padding-top:7px}.ihabdevteam-core-scope .text-field--s48 .text-field__input--auto{height:46px;min-height:46px;padding-bottom:11px;padding-top:11px}.ihabdevteam-core-scope .text-field__icon{align-items:center;color:var(--color-lightGray);display:inline-flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .text-field__icon--left{margin-left:var(--spacing-s)}.ihabdevteam-core-scope .text-field__icon--right{margin-right:var(--spacing-s)}.ihabdevteam-core-scope .text-field__icon-svg{display:block}.ihabdevteam-core-scope .text-field--has-left-icon .text-field__input{padding-left:6px}.ihabdevteam-core-scope .text-field--has-right-icon .text-field__input{padding-right:6px}.ihabdevteam-core-scope .text-field--s32 .text-field__icon{height:16px;width:16px}.ihabdevteam-core-scope .text-field--s32 .text-field__input{font-size:14px;line-height:22px}.ihabdevteam-core-scope .text-field__clear{flex-shrink:0;margin-right:10px}.ihabdevteam-core-scope .text-field__suggestions{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);box-shadow:var(--shadow-dropdown);left:0;margin-top:var(--spacing-xs);max-height:220px;overflow:auto;padding:4px 0;position:absolute;right:0;top:100%;z-index:var(--z-dropdown)}.ihabdevteam-core-scope .text-field__suggestion{color:var(--color-darkGray);cursor:pointer;padding:8px 12px}.ihabdevteam-core-scope .text-field__suggestion.is-active,.ihabdevteam-core-scope .text-field__suggestion:hover{background:var(--color-deepWhite);color:var(--color-main)}.ihabdevteam-core-scope .text-field__footer{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .text-field__helper{color:var(--color-lightGray);flex:1}.ihabdevteam-core-scope .text-field--error .text-field__helper{color:var(--color-error)}.ihabdevteam-core-scope .text-field__count{color:var(--color-gray);flex-shrink:0;margin-right:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ihabdevteam-core-scope .text-field--has-right-icon .text-field__count,.ihabdevteam-core-scope .text-field:has(.text-field__clear) .text-field__count{margin-right:8px}.ihabdevteam-core-scope .text-field__count--over{color:var(--color-error)}.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__count{bottom:6px;margin:0;pointer-events:none;position:absolute;right:20px}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__count{align-self:flex-end;margin-bottom:var(--spacing-s)}";Q($3);function Wa(e){const{value:t,defaultValue:a,name:r,inputRef:n,onChange:i,label:s,ariaLabel:c,required:u,placeholder:d,type:m="text",disabled:h=!1,readOnly:p=!1,error:g,helperText:v,maxLength:b,size:y=48,variant:f="input",fullWidth:x=!1,newline:_=!1,multiline:C=!1,rows:A=3,leftIcon:w,rightIcon:S,clearable:D=!1,list:T,showCount:E=!0,className:W="",onFocus:M,onBlur:k,onKeyDown:N,onEnter:j,inputMode:F,autoComplete:te,autoFocus:Z,suggestions:ee,openOnFocus:L=!1}=e,{t:R}=me.useTranslation(),O=l.useId(),H=`tf-${O}`,$=`tf-helper-${O}`,q=l.useRef(null),I=Ml({value:t??"",onChange:i,suggestions:ee??[],openOnFocus:L}),G=l.useCallback(P=>{q.current=P,typeof n=="function"?n(P):n&&(n.current=P)},[n]),z=t!==void 0,Y=z&&m==="password",J=(t??"").length;l.useEffect(()=>{const P=q.current;if(!Y||!P)return;const oe=t??"";P.value!==oe&&(P.value=oe)},[Y,t]),l.useEffect(()=>{if(!_||!q.current)return;const P=q.current;P.style.height="",P.scrollHeight>P.clientHeight&&(P.style.height=`${P.scrollHeight}px`)},[t,_]);const ue=b!=null&&J>b,pe=y===32?16:20,ae=ye("text-field",`text-field--s${y}`,f==="display"?"text-field--display":"",x?"text-field--full-width":"",h?"text-field--disabled":"",p?"text-field--readonly":"",g?"text-field--error":"",w?"text-field--has-left-icon":"",S||D?"text-field--has-right-icon":"",W),X={id:H,...Y?{}:z?{value:t}:{defaultValue:a},ref:G,placeholder:d,name:r,disabled:h,readOnly:p,autoFocus:Z,tabIndex:p?-1:void 0,maxLength:b,list:T,inputMode:F,autoComplete:te,"aria-label":!s&&c?c:void 0,"aria-required":u,"aria-invalid":!!g,"aria-describedby":v||g?$:void 0,role:ee?"combobox":void 0,"aria-autocomplete":ee?"list":void 0,"aria-haspopup":ee?"listbox":void 0,"aria-expanded":ee?I.open:void 0,"aria-controls":ee?I.listId:void 0,"aria-activedescendant":ee&&I.activeIdx>=0?`${I.listId}-option-${I.activeIdx}`:void 0,onChange:P=>i?.(P.target.value),onFocus:(P=>{M?.(P),ee&&I.handleFocus()}),onBlur:(P=>{k?.(P),ee&&I.handleBlur()}),onKeyDown:(P=>{j&&P.key==="Enter"&&!P.nativeEvent.isComposing&&(P.preventDefault(),j()),N?.(P),ee&&I.handleKeyDown(P)})},ce=D&&!h&&!p&&J>0,xe=()=>_?o.jsx("textarea",{...X,className:"text-field__input text-field__input--auto body-2",rows:1}):C?o.jsx("textarea",{...X,className:"text-field__input text-field__input--textarea body-2",rows:A}):o.jsx("input",{...X,type:m,className:"text-field__input body-2"}),Se=f==="display"&&!_&&!C&&!!d,Ae=()=>o.jsxs(o.Fragment,{children:[xe(),Se&&o.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:d})]});return o.jsxs("div",{className:ae,children:[s&&o.jsxs("label",{htmlFor:H,className:"text-field__label caption-1",children:[s,u&&o.jsx("span",{className:"text-field__required",children:"*"})]}),o.jsxs("div",{className:"text-field__wrap",children:[w&&o.jsx("span",{className:"text-field__icon text-field__icon--left",children:o.jsx(Pe,{icon:w,label:"",className:"",svgClassName:"text-field__icon-svg",size:pe})}),Ae(),b!=null&&E&&o.jsxs("span",{className:`text-field__count caption-2${ue?" text-field__count--over":""}`,children:[J,"/",b]}),ce&&o.jsx(le,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:R("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:P=>{P.preventDefault()},onClick:()=>i?.(""),tabIndex:-1}),S&&!ce&&o.jsx("span",{className:"text-field__icon text-field__icon--right",children:o.jsx(Pe,{icon:S,label:"",className:"",svgClassName:"text-field__icon-svg",size:pe})})]}),ee&&I.open&&I.filtered.length>0&&o.jsx("ul",{id:I.listId,className:"text-field__suggestions",role:"listbox",children:I.filtered.map((P,oe)=>o.jsx("li",{id:`${I.listId}-option-${oe}`,role:"option","aria-selected":oe===I.activeIdx,className:`text-field__suggestion body-2${oe===I.activeIdx?" is-active":""}`,onMouseDown:re=>re.preventDefault(),onClick:()=>{I.handleSelect(P),q.current?.focus()},children:P},`${P}-${oe}`))}),(v||g)&&o.jsx("div",{className:"text-field__footer",children:o.jsx("span",{id:$,className:"text-field__helper caption-1",role:g?"alert":void 0,children:g||v})})]})}var z3=".ihabdevteam-core-scope .dropdown{display:inline-block;position:relative}.ihabdevteam-core-scope .dropdown--block{display:block;width:100%}.ihabdevteam-core-scope .dropdown--block .dropdown__trigger{min-width:0}.ihabdevteam-core-scope .dropdown--s40 .dropdown__trigger{border-radius:10px;height:40px}.ihabdevteam-core-scope .dropdown--s48 .dropdown__trigger{border-radius:12px;height:48px}.ihabdevteam-core-scope .dropdown__trigger{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:12px;box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;font-family:var(--font-family);gap:var(--spacing-xs);height:48px;justify-content:space-between;min-width:120px;padding:0 12px;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s;white-space:nowrap;width:100%}.ihabdevteam-core-scope .dropdown__trigger:hover:not(:disabled){border-color:var(--color-main)}.ihabdevteam-core-scope .dropdown__trigger:focus-visible{border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10);outline:none}.ihabdevteam-core-scope .dropdown__trigger:disabled{background:var(--color-deepWhite);cursor:default;opacity:.5}.ihabdevteam-core-scope .dropdown--open .dropdown__trigger{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10)}.ihabdevteam-core-scope .dropdown--error .dropdown__trigger{border:1px solid var(--color-error)}.ihabdevteam-core-scope .dropdown--error .dropdown__trigger:hover:not(:disabled),.ihabdevteam-core-scope .dropdown--error.dropdown--open .dropdown__trigger{border-color:var(--color-error);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-error) 15%,transparent)}.ihabdevteam-core-scope .dropdown__trigger-label{flex:1;overflow:hidden;text-overflow:ellipsis}.ihabdevteam-core-scope .dropdown__trigger-label--placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .dropdown__chevron{color:var(--color-gray);flex-shrink:0;height:16px;transition:transform .2s;width:16px}.ihabdevteam-core-scope .dropdown--open .dropdown__chevron{transform:rotate(180deg)}.ihabdevteam-core-scope .dropdown__menu{animation:dropdown-appear .12s ease;background:var(--color-white);border:1.5px solid var(--color-whiteLine);border-radius:var(--radius-card);box-shadow:var(--shadow-dropdown);box-sizing:border-box;max-height:260px;overflow-y:auto;overscroll-behavior-y:contain;padding:6px}.ihabdevteam-core-scope .dropdown__menu--up{bottom:calc(100% + 6px);top:auto}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ihabdevteam-core-scope .dropdown__option{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;font-family:var(--font-family);gap:var(--spacing-xs);padding:9px 12px;text-align:left;transition:background .1s,color .1s;white-space:nowrap;width:100%}.ihabdevteam-core-scope .dropdown__option:hover{background:var(--color-deepWhite)}.ihabdevteam-core-scope .dropdown__option--active{background:var(--color-main-a10);color:var(--color-main)}.ihabdevteam-core-scope .dropdown__option--disabled{cursor:default;opacity:.4;pointer-events:none}.ihabdevteam-core-scope .dropdown__option-check{align-items:center;color:var(--color-main);display:flex;flex-shrink:0;height:14px;justify-content:center;width:14px}.ihabdevteam-core-scope .dropdown__option-check svg{height:14px;width:14px}.ihabdevteam-core-scope .dropdown__divider{background:var(--color-darkWhite);height:1px;margin:4px 0}";Q(z3);function Ut({options:e,value:t,onChange:a,placeholder:r,disabled:n=!1,block:i=!1,size:s=48,error:c=!1,className:u="",ariaLabel:d}){const{t:m}=me.useTranslation(),h=r??m("dropdown.placeholder","\uC120\uD0DD"),p=l.useId(),g=l.useRef(null),v=l.useCallback(k=>{const N=window.innerHeight-k.bottom<260&&k.top>260;return{position:"fixed",left:k.left,minWidth:k.width,...N?{bottom:window.innerHeight-k.top+6}:{top:k.bottom+6},zIndex:9999}},[]),{open:b,setOpen:y,toggle:f,style:x,triggerRef:_,menuRef:C}=So({computeStyle:v}),[A,w]=l.useState(-1),S=l.useCallback(()=>w(-1),[]),D=e.find(k=>k.value===t);l.useEffect(()=>{if(b){const k=e.findIndex(N=>N.value===t);w(k>=0?k:0),requestAnimationFrame(()=>{const N=C.current;if(!N)return;const j=N.querySelectorAll(".dropdown__option")[k];j&&(N.scrollTop=Math.max(0,j.offsetTop-N.clientHeight/2+j.clientHeight/2))})}},[b,e,t,C]);const T=l.useCallback(()=>{n||f()},[n,f]),E=l.useCallback(k=>{k.disabled||(a?.(k.value),y(!1))},[a,y]),W=l.useCallback(k=>{if(!n){if(!b){(k.key==="Enter"||k.key===" "||k.key==="ArrowDown")&&(k.preventDefault(),y(!0));return}if(k.key==="Escape"){k.preventDefault(),y(!1);return}k.key==="ArrowDown"?(k.preventDefault(),w(N=>{let j=N+1;for(;j<e.length&&e[j].disabled;)j++;return j<e.length?j:N})):k.key==="ArrowUp"?(k.preventDefault(),w(N=>{let j=N-1;for(;j>=0&&e[j].disabled;)j--;return j>=0?j:N})):k.key==="Enter"&&A>=0&&(k.preventDefault(),E(e[A]))}},[n,b,e,A,E,y]),M=b?o.jsx("div",{ref:C,id:p,className:"dropdown__menu",role:"listbox",style:x,onMouseLeave:S,children:e.map((k,N)=>o.jsxs("button",{id:`${p}-option-${N}`,type:"button",role:"option","aria-selected":k.value===t,className:ye("dropdown__option body-2",k.value===t?"dropdown__option--active":"",N===A?"dropdown__option--active":"",k.disabled?"dropdown__option--disabled":""),onMouseDown:j=>j.preventDefault(),onClick:()=>E(k),onMouseEnter:()=>w(N),disabled:k.disabled,children:[o.jsx("span",{className:"dropdown__option-check",children:k.value===t&&o.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:o.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),k.label]},k.value))}):null;return o.jsxs("div",{ref:g,className:ye("dropdown",`dropdown--s${s}`,b?"dropdown--open":"",i?"dropdown--block":"",c?"dropdown--error":"",u),onKeyDown:W,children:[o.jsxs("button",{ref:_,type:"button",className:"dropdown__trigger","aria-haspopup":"listbox","aria-expanded":b,"aria-controls":b?p:void 0,"aria-activedescendant":b&&A>=0?`${p}-option-${A}`:void 0,"aria-label":d,"aria-invalid":c||void 0,disabled:n,onClick:T,children:[o.jsx("span",{className:`dropdown__trigger-label body-2${D?"":" dropdown__trigger-label--placeholder"}`,children:D?D.label:h}),o.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:o.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&qt.createPortal(M,g.current?.closest(".ihabdevteam-core-scope")??document.body)]})}var I3=".ihabdevteam-core-scope .pagination{align-items:center;display:flex;gap:4px}.ihabdevteam-core-scope .pagination__info{color:var(--color-darkGray);font-weight:600;min-width:48px;text-align:center}";Q(I3);function br({page:e,totalPages:t,onChange:a,prevLabel:r,nextLabel:n,className:i=""}){const{t:s}=me.useTranslation(),c=r??s("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),u=n??s("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=()=>a(Math.max(1,e-1)),m=()=>a(Math.min(t,e+1));return o.jsxs("div",{className:ye("pagination",i),children:[o.jsx(le,{size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:c,disabled:e<=1,onClick:d}),o.jsxs("span",{className:"pagination__info body-3",children:[e," / ",t]}),o.jsx(le,{size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:u,disabled:e>=t,onClick:m})]})}var O3=".ihabdevteam-core-scope .segmented-control{background:var(--color-darkWhite);display:inline-flex;flex-shrink:0;flex-wrap:wrap;gap:var(--spacing-xs);overflow:hidden;padding:4px}.ihabdevteam-core-scope .segmented-control--pill{border-radius:999px}.ihabdevteam-core-scope .segmented-control--rounded{border-radius:12px}.ihabdevteam-core-scope .segmented-control .button{min-width:96px}.ihabdevteam-core-scope .segmented-control--32 .button{min-width:64px}.ihabdevteam-core-scope .segmented-control--40 .button{min-width:80px}.ihabdevteam-core-scope .segmented-control--48 .button{min-width:96px}.ihabdevteam-core-scope .segmented-control--no-bg{background:transparent;padding:0}.ihabdevteam-core-scope .segmented-control--full{display:flex;flex-wrap:nowrap;width:100%}.ihabdevteam-core-scope .segmented-control--full .button{flex:1 1 0;min-width:0}@media (max-width:767px){.ihabdevteam-core-scope .segmented-control{flex-shrink:1;min-width:0}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(4):last-child){border-radius:14px;display:grid;grid-template-columns:repeat(2,1fr);width:100%}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(4):last-child)>.button{justify-content:center;width:100%}.ihabdevteam-core-scope .segmented-control--pill:has(>.button:nth-child(5)){border-radius:14px}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(5)){justify-content:center}}";Q(O3);function Ha(e){const{t}=me.useTranslation(),{options:a=[],value:r=a[0]?.key,onChange:n=h=>{},className:i="",size:s=48,shape:c="pill",useBG:u=!0,fullWidth:d=!1,ariaLabel:m}=e||{};return o.jsx("div",{className:ye("segmented-control",`segmented-control--${c}`,`segmented-control--${s}`,d&&"segmented-control--full",!u&&"segmented-control--no-bg",i),role:"radiogroup","aria-label":m??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(h=>o.jsx(le,{role:"radio","aria-checked":h.key===r,label:h.label,count:h.count,disabled:h.disabled,className:h.key===r?"is-selected":"",onClick:()=>{h.disabled||n(h.key)},size:s,shape:c,useBorder:!1,useBG:!1},h.key))})}var F3=".ihabdevteam-core-scope .toolbar{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-s);min-height:64px;padding-bottom:8px;padding-top:8px;width:100%}.ihabdevteam-core-scope .toolbar__row{display:contents}.ihabdevteam-core-scope .toolbar__row-end{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s);justify-content:flex-end;margin-left:auto}.ihabdevteam-core-scope .toolbar__count{color:var(--color-gray);flex-shrink:0;margin:0;white-space:nowrap}.ihabdevteam-core-scope .toolbar .toolbar__search{flex-shrink:0;min-width:200px}@media (max-width:767px){.ihabdevteam-core-scope .toolbar{align-items:stretch;flex-direction:column;flex-wrap:wrap;padding-bottom:12px;padding-top:12px}.ihabdevteam-core-scope .toolbar__row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s)}.ihabdevteam-core-scope .toolbar .toolbar__search{flex:1;min-width:150px}}.ihabdevteam-core-scope .toolbar__count-highlight{color:var(--color-main)}.ihabdevteam-core-scope .toolbar__divider{align-self:stretch;height:auto;margin:8px 0}@media (max-width:767px){.ihabdevteam-core-scope .toolbar__divider{display:none}}";Q(F3);function mn({count:e,search:t,segment:a,filters:r,pageSize:n,pagination:i,actions:s,className:c}){const{t:u}=me.useTranslation(),d=e!=null&&o.jsxs("p",{className:"toolbar__count body-1",children:[e.prefix??u("common.totalPrefix","\uCD1D "),o.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),m=!!(t||r?.length||n||i||s);return o.jsxs("div",{className:ye("toolbar",c),children:[o.jsxs("div",{className:"toolbar__row",children:[d,a&&(Array.isArray(a)?a:[a]).map((h,p)=>o.jsx(Ha,{size:40,...h},h.ariaLabel??p))]}),m&&o.jsx("div",{className:"toolbar__row",children:o.jsxs("div",{className:"toolbar__row-end",children:[t&&o.jsx(Wa,{className:"toolbar__search",size:40,value:t.value,onChange:t.onChange,placeholder:t.placeholder??u("common.search","\uAC80\uC0C9"),ariaLabel:t.placeholder??u("common.search","\uAC80\uC0C9"),clearable:!0}),r?.map((h,p)=>o.jsx(Ut,{size:40,options:h.options,value:h.value,onChange:h.onChange,ariaLabel:h.ariaLabel},p)),n&&o.jsx(Ut,{size:40,options:n.options,value:n.value,onChange:n.onChange,ariaLabel:n.ariaLabel??u("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),i&&o.jsx(br,{page:i.page,totalPages:i.total,onChange:i.onChange,prevLabel:i.prevLabel,nextLabel:i.nextLabel}),s]})})]})}var W3=".ihabdevteam-core-scope .code-box{background:#eff8ff;background:var(--color-code-bg,#eff8ff);border:1px solid rgba(4,34,51,.06);border-radius:10px;color:#042233;color:var(--color-code-text,#042233);margin:0;overflow:hidden;padding:16px 20px}.ihabdevteam-core-scope .code-box__header{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:40px}.ihabdevteam-core-scope .code-box__title{align-items:center;color:rgba(4,34,51,.75);display:flex;letter-spacing:.02em}.ihabdevteam-core-scope .code-box__copy{flex-shrink:0}.ihabdevteam-core-scope .code-box__inner{background:transparent;color:#042233;color:var(--color-code-text,#042233);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Roboto Mono,Courier New,monospace;font-size:13px;line-height:1.6;margin:0;overflow-wrap:anywhere;overflow-x:auto;padding:8px 0 0;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-box__inner code{display:block;font-family:inherit;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-box--small .code-box__inner{font-size:12px}.ihabdevteam-core-scope .code-token{overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-token.keyword{color:#6b46ff;font-weight:600}.ihabdevteam-core-scope .code-token.string{color:#0a9d58}.ihabdevteam-core-scope .code-token.comment{color:#6b7280;font-style:italic}.ihabdevteam-core-scope .code-token.command{color:#0b78d1}.ihabdevteam-core-scope .code-token.number{color:#d97706}.ihabdevteam-core-scope .code-token.operator{color:#dc2626}.ihabdevteam-core-scope .code-token.identifier,.ihabdevteam-core-scope .code-token.punctuation{color:#042233;color:var(--color-code-text,#042233)}";Q(W3);function Jh(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(Jh).join(""):""}function H3(e){let t=e.replace(/\r\n/g,`
817
+ `),this.name="StorageNotConfiguredError"}};function Kn(e){Y_(e)}function Tr(e,t){if(!e)return null;const a=zo();return a?.resolvePath?a.resolvePath(e,t):t?`${t}/${e}.mp3`:null}async function Zn(e){if(!e)return!1;const t=zo();if(!t)throw new Un("fileExists");if(t.exists)return t.exists(e);try{return await t.resolveUrl(e)!==null}catch{return!1}}async function Io(e){if(!e)return null;const t=zo();if(!t)throw new Un("getSignedOrPublicUrl");try{return await t.resolveUrl(e)}catch{return null}}async function Br(e){const t=zo();if(!t)throw new Un("downloadSound");return t.download(e)}function Xn(){return zo()?.noiseBaseUrl??"/sounds/noise"}const Qn="__ihab_core_tts_config__";function Ld(e){globalThis[Qn]=e}function Oo(){return globalThis[Qn]?.urlResolver??null}function Jn(){return globalThis[Qn]?.fallbackUrlResolver??null}const U_=new Map;function Md(){U_.clear()}const Pd="__ihab_core_pronunciation_resolver__";function Rd(e){globalThis[Pd]=e}function ei(){return globalThis[Pd]??null}let Fo=null;const $d=new WeakMap;function K_(){if(Fo)return Fo;try{const e=window.AudioContext||window.webkitAudioContext;return e?(Fo=new e,Fo):null}catch{return null}}function Wo(){try{Fo?.resume()}catch{}}function Ho(e){if(!e)return null;const t=$d.get(e);if(t)return t;const a=K_();if(!a)return null;try{const r=a.createMediaElementSource(e),n=a.createAnalyser();return n.fftSize=1024,n.smoothingTimeConstant=.6,r.connect(n),r.connect(a.destination),$d.set(e,n),n}catch{return null}}function ti(e,t){e.getFloatTimeDomainData(t);let a=0;for(let r=0;r<t.length;r++){const n=t[r];a+=n*n}return Math.sqrt(a/t.length)}const zd="__ihab_core_image_config__";function Id(e){globalThis[zd]=e}function Ma(){return globalThis[zd]??null}const Vo="word_image_existence_map_v1";let da=null;const Nr=new Map;function Go(){if(da)return da;try{const e=typeof localStorage<"u"?localStorage.getItem(Vo):null;da=e?JSON.parse(e):{}}catch{da={}}return da}let ai=null;function Z_(){ai||(ai=setTimeout(()=>{ai=null;try{typeof localStorage<"u"&&da&&localStorage.setItem(Vo,JSON.stringify(da))}catch{}},200))}function Dr(e,t){return`${e}_${t??1}`}async function qo(e,t){const a=Go(),r=Dr(e,t);if(r in a)return a[r];if(Nr.has(r))return Nr.get(r);const n=Ma();if(!n)return!1;const i=n(e,t);if(!i)return!1;const s=fetch(i,{method:"HEAD",signal:AbortSignal.timeout(8e3)}).then(c=>c.ok).catch(()=>!1).then(c=>(a[r]=c,Z_(),Nr.delete(r),c));return Nr.set(r,s),s}function oi(e,t){const a=Go(),r=Dr(e,t);return r in a?a[r]:void 0}async function Od(e,t={}){const{force:a=!1,concurrency:r=16,onProgress:n}=t,i=Go(),s=a?Array.from(new Set(e)):Array.from(new Set(e)).filter(u=>!(Dr(u)in i));let c=0;if(s.length>0){let u=0;const d=Array.from({length:Math.min(r,s.length)},async()=>{for(;u<s.length;){const m=u++,h=s[m],p=Dr(h);if(!a&&p in i){c++,n?.(c,s.length);continue}try{await qo(h)}catch{}c++,n?.(c,s.length)}});await Promise.all(d)}try{typeof localStorage<"u"&&da&&localStorage.setItem(Vo,JSON.stringify(da))}catch{}return{checked:s.length,cached:Object.keys(i).length,total:e.length}}function Er(){const e=Go(),t=Object.values(e);return t.length===0?null:{total:t.length,exists:t.filter(Boolean).length}}function Fd(e){const t=Go();Object.assign(t,e);try{typeof localStorage<"u"&&localStorage.setItem(Vo,JSON.stringify(t))}catch{}}function ri(){da={};try{typeof localStorage<"u"&&localStorage.removeItem(Vo)}catch{}}const qe=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],dt=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],gt=["","\u3131","\u3132","\u3133","\u3134","\u3135","\u3136","\u3137","\u3139","\u313A","\u313B","\u313C","\u313D","\u313E","\u313F","\u3140","\u3141","\u3142","\u3144","\u3145","\u3146","\u3147","\u3148","\u314A","\u314B","\u314C","\u314D","\u314E"];function Ne(e){if(!e)return null;const t=e.charCodeAt(0)-44032;return t<0||t>=11172?null:{cho:Math.floor(t/588),jung:Math.floor(t%588/28),jong:t%28}}function ni(){const e=new Map;return t=>{let a=e.get(t);return a||(a=[...t].map(r=>Ne(r)),e.set(t,a)),a}}function ua(e,t,a=0){return String.fromCharCode(44032+(e*21+t)*28+a)}function ii(e,t){if(!e||!t||e===t||e.length!==t.length)return"random";let a=0,r=null;for(let n=0;n<e.length;n++){const i=Ne(e[n]),s=Ne(t[n]);if(!i||!s)return"random";if(i.cho===s.cho&&i.jung===s.jung&&i.jong===s.jong)continue;a++;const c=i.cho!==s.cho,u=i.jung!==s.jung,d=i.jong!==s.jong;(c?1:0)+(u?1:0)+(d?1:0)>1?r="multi":c?r="cho":u?r="jung":r="jong"}return a!==1?"random":r==="cho"?"cho":r==="jung"?"jung":r==="jong"?"jong":"random"}function si(e){const t=Ne(e[0]||"");return t?qe[t.cho]:""}function li(e){return[...e].map(t=>{const a=Ne(t);return a?qe[a.cho]:t}).join("")}function ci(e){return!!e&&[...e].every(t=>qe.includes(t))}function Wd(e,t){return t?ci(t)?li(e).includes(t):e.toLowerCase().includes(t.toLowerCase()):!0}function po(e,t){if(!t)return!0;const a=[...t],r=c=>qe.includes(c),n=c=>dt.includes(c),i=a.map(c=>r(c)?"cho":n(c)?"jung":Ne(c)?"syl":"other");if(i.includes("other"))return e.includes(t);const s=[...e];for(let c=0;c+a.length<=s.length;c++){let u=!0;for(let d=0;d<a.length;d++){const m=s[c+d],h=i[d];if(h==="cho"){if(si(m)!==a[d]){u=!1;break}}else if(h==="jung"){const p=Ne(m);if(!p||dt[p.jung]!==a[d]){u=!1;break}}else{const p=Ne(a[d]);if(p&&p.jong===0){const g=Ne(m);if(!g||g.cho!==p.cho||g.jung!==p.jung){u=!1;break}}else if(m!==a[d]){u=!1;break}}}if(u)return!0}return!1}const ho={3:["\u3131","\u3145"],5:["\u3134","\u3148"],6:["\u3134","\u314E"],9:["\u3139","\u3131"],10:["\u3139","\u3141"],11:["\u3139","\u3142"],12:["\u3139","\u3145"],13:["\u3139","\u314C"],14:["\u3139","\u314D"],15:["\u3139","\u314E"],18:["\u3142","\u3145"]},Hd=Object.fromEntries(Object.entries(ho).map(([e,t])=>[t.join(""),gt[Number(e)]]));function X_(e,t){if(!e||!t)return!1;for(const a of e){const r=Ne(a);if(r){if(qe[r.cho]===t)return!0;if(r.jong>0){if(gt[r.jong]===t)return!0;const n=ho[r.jong];if(n&&n.includes(t))return!0}}}return!1}function Vd(e,t){if(!e||!t)return!1;for(const a of e){const r=Ne(a);if(r&&qe[r.cho]===t)return!0}return!1}function Gd(e,t){if(!e||!t)return!1;for(const a of e){const r=Ne(a);if(r&&dt[r.jung]===t)return!0}return!1}function qd(e,t){if(!e||!t)return!1;for(const a of e){const r=Ne(a);if(!r||r.jong<=0)continue;if(gt[r.jong]===t)return!0;const n=ho[r.jong];if(n&&n.includes(t))return!0}return!1}function mo(e){if(!e)return 0;let t=0;for(const a of e)Ne(a)&&t++;return t}function di(e){if(!e)return!1;let t=!1;for(const a of e){const r=Ne(a);if(r&&(t=!0,r.jong>0))return!1}return t}function Q_(e,t){if(e.jong<=0)return!1;if(t.includes(gt[e.jong]))return!0;const a=ho[e.jong];return!!a&&a.some(r=>t.includes(r))}function ui(e,t,a){if(!e)return!1;const r=[...e],n=i=>{const s=Ne(r[i]);if(!s||t.cho&&!t.cho.includes(qe[s.cho])||t.jung&&!t.jung.includes(dt[s.jung]))return!1;if(t.jongNone){if(s.jong>0)return!1}else if(t.jong&&!Q_(s,t.jong))return!1;return!0};if(a==="head")return n(0);if(a==="tail")return n(r.length-1);if(a==="mid"){for(let i=1;i<r.length-1;i++)if(n(i))return!0;return!1}for(let i=0;i<r.length;i++)if(n(i))return!0;return!1}function pi(e){return e.includes(",")||e.includes("_")}function Yd(e){if(e==="")return[{kind:"any"}];if(e.includes("_")){const t=[...e];if(t.length>4)return[{kind:"invalid"}];const a=t[0]??"_",r=t[1]??"_";let n=t.slice(2).join("");if(n.length===2){const i=Hd[n];if(!i)return[{kind:"invalid"}];n=i}return[{kind:"template",cho:a,jung:r,jong:n||"_"}]}return[...e].map(t=>Ne(t)?{kind:"syllable",ch:t}:qe.includes(t)?{kind:"cho",jamo:t}:dt.includes(t)?{kind:"jung",jamo:t}:{kind:"invalid"})}function J_(e,t){switch(t.kind){case"any":return!0;case"syllable":{const a=Ne(t.ch);if(!a)return e===t.ch;if(a.jong===0){const r=Ne(e);return!!r&&r.cho===a.cho&&r.jung===a.jung}return e===t.ch}case"cho":{const a=Ne(e);return!!a&&qe[a.cho]===t.jamo}case"jung":{const a=Ne(e);return!!a&&dt[a.jung]===t.jamo}case"template":{const a=Ne(e);return!(!a||t.cho!=="_"&&qe[a.cho]!==t.cho||t.jung!=="_"&&dt[a.jung]!==t.jung||t.jong!=="_"&&gt[a.jong]!==t.jong)}case"invalid":return!1}}function hi(e,t){const a=t.split(",").flatMap(n=>Yd(n.trim()));if(a.length===0)return!0;const r=[...e];if(r.length<a.length)return!1;for(let n=0;n+a.length<=r.length;n++)if(a.every((i,s)=>J_(r[n+s],i)))return!0;return!1}function Ud(e){const t=e.split(",").flatMap(i=>Yd(i.trim())),a=new Set,r=new Set,n=new Set;for(const i of t)switch(i.kind){case"cho":a.add(i.jamo);break;case"jung":r.add(i.jamo);break;case"template":i.cho!=="_"&&a.add(i.cho),i.jung!=="_"&&r.add(i.jung),i.jong!=="_"&&n.add(i.jong);break;case"syllable":{const s=Ne(i.ch);s&&(a.add(qe[s.cho]),r.add(dt[s.jung]),s.jong!==0&&n.add(gt[s.jong]));break}}return a.size===0&&r.size===0&&n.size===0?null:{cho:a.size?[...a]:null,jung:r.size?[...r]:null,jong:n.size?[...n]:null}}function ew(e){return!!Ne(e)||qe.includes(e)||dt.includes(e)}function Kd(e){const t=e.trim();if(!t)return{ok:!0};for(const a of t.split(",")){const r=a.trim();if(r!==""){if(r.includes("_")){const n=[...r];if(n.length>4)return{ok:!1};const i=n[0],s=n[1],c=n.slice(2).join(""),u=i===void 0||i==="_"||qe.includes(i),d=s===void 0||s==="_"||dt.includes(s),m=c===""||c==="_"||gt.filter(Boolean).includes(c)||!!Hd[c];if(u&&d&&m)continue;return{ok:!1}}if(![...r].every(ew))return{ok:!1}}}return{ok:!0}}const tw={cho:qe.length,jung:dt.length,jong:gt.length};function aw(e,t,a,r,n=1/0){if(!e||a<1)return[];const i=[...e].map(h=>Ne(h));if(i.some(h=>!h))return[];const s=i,c=s.length;if(a>c)return[];const u=tw[t],d=new Set,m=[];(function h(p,g){if(g.length===a){m.push([...g]);return}for(let v=p;v<c;v++)g.push(v),h(v+1,g),g.pop()})(0,[]);for(const h of m)if((function p(g,v){if(d.size>=n)return;if(g===h.length){const f=v.map(x=>ua(x.cho,x.jung,x.jong)).join("");f!==e&&r.has(f)&&d.add(f);return}const b=h[g],y=s[b][t];for(let f=0;f<u;f++){if(f===y)continue;const x=v.slice();if(x[b]={...v[b],[t]:f},p(g+1,x),d.size>=n)return}})(0,s),d.size>=n)break;return[...d]}function ow(e,t){if(!e||!t||e.length!==t.length)return-1;let a=0;for(let r=0;r<e.length;r++){const n=Ne(e[r]),i=Ne(t[r]);if(!n||!i)return-1;n.cho!==i.cho&&a++,n.jung!==i.jung&&a++,n.jong!==i.jong&&a++}return a}function Zd(e,t){const a=t.trim();if(!a||!/[^\s,_]/.test(a))return e;if(pi(a))return e.filter(s=>hi(s.word,a));const r=e.filter(s=>po(s.word,a)||po(s.pronunciation??"",a)),n=[...a].length,i=s=>!!s&&po(s.slice(0,n),a);return r.map(s=>({w:s,rank:i(s.word)||i(s.pronunciation??"")?0:1})).sort((s,c)=>s.rank-c.rank).map(s=>s.w)}const mi="word_pair_index_v2",bi="word_pair_index_sig_v2";let pa=null,Yo=null;function Xd(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(mi),t=localStorage.getItem(bi);return!e||!t?null:{index:JSON.parse(e),sig:t}}catch{return null}}function rw(e,t){try{if(typeof localStorage>"u")return;localStorage.setItem(mi,JSON.stringify(e)),localStorage.setItem(bi,t)}catch{}}function nw(e){const t=e.map(r=>`${r.word}|${r.pron??""}`).sort();let a=0;for(const r of t)for(let n=0;n<r.length;n++)a=(a<<5)-a+r.charCodeAt(n)|0;return`${t.length}-${a}`}async function iw(e,t){const a=new Set,r=[];for(const d of e){if(!d.word||a.has(d.word))continue;const m=d.pron||d.word,h=Array.from(m).map(Ne);h.some(p=>p===null)||h.length===Array.from(d.word).length&&(a.add(d.word),r.push({word:d.word,syls:h}))}const n={},i=r.length,s=new Map;for(const d of r){const m=d.syls.length;s.has(m)||s.set(m,[]),s.get(m).push(d)}let c=0;const u=["cho","jung","jong"];for(const d of s.values()){const m=d[0].syls.length;for(let h=0;h<m;h++)for(const p of u){const g=new Map;for(const v of d){let b="";for(let f=0;f<m;f++){f>0&&(b+="~");const x=v.syls[f];f===h?p==="cho"?b+=`*:${x.jung}:${x.jong}`:p==="jung"?b+=`${x.cho}:*:${x.jong}`:b+=`${x.cho}:${x.jung}:*`:b+=`${x.cho}:${x.jung}:${x.jong}`}let y=g.get(b);y||(y=[],g.set(b,y)),y.push(v)}for(const v of g.values())if(!(v.length<2))for(let b=0;b<v.length;b++){const y=v[b];for(let f=b+1;f<v.length;f++){const x=v[f];y.syls[h][p]!==x.syls[h][p]&&(n[y.word]||(n[y.word]={cho:[],jung:[],jong:[]}),n[x.word]||(n[x.word]={cho:[],jung:[],jong:[]}),n[y.word][p].push(x.word),n[x.word][p].push(y.word))}}}c+=d.length,t?.(c,i),await new Promise(h=>setTimeout(h,0))}return i>0&&t?.(i,i),n}async function Qd(e,t={}){const a=nw(e);if(!t.force){if(pa&&Yo===a)return pa;const n=Xd();if(n&&n.sig===a)return pa=n.index,Yo=a,pa}const r=await iw(e,t.onProgress);return pa=r,Yo=a,rw(r,a),r}function Ka(){if(pa)return pa;const e=Xd();return e?(pa=e.index,Yo=e.sig,pa):null}function gi(){pa=null,Yo=null;try{typeof localStorage<"u"&&(localStorage.removeItem(mi),localStorage.removeItem(bi))}catch{}}const fi={cho:qe,jung:dt,jong:gt},ft=e=>Array.isArray(e)?e.length>0:!!e;function Uo(e,t){if(e.length!==t.length)return!1;for(let a=0;a<e.length;a++){const r=e[a],n=t[a];if(!(!r||!n)&&(r.cho!==n.cho&&qe[r.cho]==="\u3147"!=(qe[n.cho]==="\u3147")||r.jong!==n.jong&&r.jong===0!=(n.jong===0)))return!0}return!1}function vi(e,t,a){const r=a.pronOf(e),n=a.decompOf,i=a.sameStructureOnly&&n?n(r):null,s=[];for(const c of t)c!==e&&(a.okSet&&!a.okSet.has(c)||a.pronOf(c)!==r&&(i&&n&&Uo(i,n(a.pronOf(c)))||s.push(c)));return s}function jr(e,t,a){const r=t?.[e];if(!r)return[];const n=a.kind?r[a.kind]??[]:[...r.cho??[],...r.jung??[],...r.jong??[]];return vi(e,n,a)}function yi(e,t,a,r,n,i,s){const c=["cho","jung","jong"].filter(p=>ft(e[p])),u={};for(const p of c){const g=e[p];u[p]=new Set(Array.isArray(g)?g:[g])}const d=n==="pron",m=new Map;for(const p of t){const g=a(i(p));if(g.some(f=>!f))continue;let v=g;if(!d&&(v=a(p),v.length!==g.length||v.some(f=>!f)))continue;const b=g.length,y=m.get(b);y?y.push({w:p,dPron:g,dPos:v}):m.set(b,[{w:p,dPron:g,dPos:v}])}const h=new Map;for(const[p,g]of m){const v=new Map,b=(y,f)=>{const x=y.dPos[f];return x!=null&&c.every(_=>u[_].has(fi[_][x[_]]))};for(const y of g){let f;if(s==="head")f=b(y,0)?0:-1;else if(s==="tail")f=b(y,p-1)?p-1:-1;else if(s==="mid"){f=-1;for(let _=1;_<p-1;_++)if(b(y,_)){f=_;break}}else f=y.dPos.findIndex(_=>_!=null&&c.every(C=>u[C].has(fi[C][_[C]])));if(f<0)continue;const x=v.get(f);x?x.push(y):v.set(f,[y])}for(const[y,f]of v){const x=new Set(c.map(A=>y+":"+A)),_=A=>{let w="";for(let S=0;S<p;S++){const N=A[S];for(const T of["cho","jung","jong"])w+=(x.has(S+":"+T)?"*":N[T])+"."}return w},C=new Map;for(const A of g){const w=_(A.dPron),S=C.get(w);S?S.push(A):C.set(w,[A])}for(const A of f){const w=C.get(_(A.dPron))??[],S=[];for(const N of w){if(N.w===A.w)continue;let T=!0;for(const E of c){const W=A.dPron[y][E],L=N.dPron[y][E];if(L===W){T=!1;break}if(d&&u[E].has(fi[E][L])){T=!1;break}}T&&(r&&Uo(A.dPron,N.dPron)||S.push(N.w))}h.set(A.w,S)}}}return h}const Lr=0,Jd=1,Za=2,xi=3,sw=4,Mr=5,Ci=6,Pr=7,lw=8,eu=9,Ko=10,cw=11,Zo=12,dw=13,Xo=14,Rr=15,$r=16,Qo=17,uw=18,ha=0,_a=1,pw=3,Xa=4,_i=5,wi=6,ma=7,St=8,tu=9,au=10,zr=11,ou=12,ki=13,Ir=15,Or=16,wa=17,ru=18,Si=21,nu=27,hw=20,mw={1:Lr,2:Jd,4:Za,7:xi,8:Mr,16:Ci,17:Pr,19:eu,20:Ko,22:Zo,23:Xo,24:Rr,25:$r,26:Qo},bw={[pw]:[_a,Ko],[_i]:[Xa,Zo],[tu]:[St,Lr],[au]:[St,Ci],[zr]:[St,Pr],[ou]:[St,Ko],[ki]:[St,$r],14:[St,Qo],[ru]:[wa,Ko]},gw={[wi]:Za,[Ir]:Mr},Ai={2:_a,24:_a,3:_a,9:_a,5:Xa,6:Xa,19:ma,20:ma,22:ma,23:ma,25:ma,27:ma,11:St,12:St,13:St,15:St,10:Or,14:wa,18:wa,26:wa},iu={[Lr]:Rr,[xi]:$r,[Pr]:Qo,[Zo]:Xo},su={[Lr]:Jd,[xi]:sw,[Pr]:lw,[eu]:Ko,[Zo]:dw},fw=new Set([_i,au,zr,ou,ki,Ir,ru]),vw=new Set(["\uBC1F"]);function lu(e){const t=(e??"").trim();if(!t)return"";const a=[...t],r=a.map(Ne);if(r.some(i=>i===null))return t;const n=r;for(let i=0;i<n.length;i++){const s=n[i],c=n[i+1],u=s.jong;if(!c){s.jong=Ai[s.jong]??s.jong;break}if(s.jong===ha)continue;if(c.cho===cw){if(c.jung===hw){if(s.jong===ma){s.jong=ha,c.cho=Zo;continue}if(s.jong===25){s.jong=ha,c.cho=Xo;continue}if(s.jong===ki){s.jong=St,c.cho=Xo;continue}}if(s.jong===nu){s.jong=ha;continue}const m=gw[s.jong];if(m!==void 0){s.jong=ha,c.cho=m;continue}const h=bw[s.jong];if(h){s.jong=h[0],c.cho=h[1];continue}const p=mw[s.jong];p!==void 0&&(s.jong=ha,c.cho=p);continue}if((s.jong===nu||s.jong===wi||s.jong===Ir)&&iu[c.cho]!==void 0){c.cho=iu[c.cho],s.jong=s.jong===wi?Xa:s.jong===Ir?St:ha;continue}if(c.cho===uw){if(s.jong===_i){s.jong=Xa,c.cho=Xo;continue}if(s.jong===tu){s.jong=St,c.cho=Rr;continue}if(s.jong===zr){s.jong=St,c.cho=Qo;continue}const m=Ai[s.jong]??s.jong;if(m===_a){s.jong=ha,c.cho=Rr;continue}if(m===ma){s.jong=ha,c.cho=$r;continue}if(m===wa){s.jong=ha,c.cho=Qo;continue}}let d=Ai[s.jong]??s.jong;u===zr&&vw.has(a[i])&&(d=wa),s.jong=d,su[c.cho]!==void 0&&(d===_a||d===ma||d===wa||fw.has(u))&&(c.cho=su[c.cho]),(c.cho===Za||c.cho===Ci)&&(s.jong===_a?s.jong=Si:s.jong===ma?s.jong=Xa:s.jong===wa&&(s.jong=Or)),c.cho===Mr?s.jong===Xa?s.jong=St:s.jong===Or||s.jong===Si?c.cho=Za:s.jong===_a?(s.jong=Si,c.cho=Za):s.jong===wa&&(s.jong=Or,c.cho=Za):s.jong===St&&c.cho===Za&&(c.cho=Mr)}return n.map(i=>ua(i.cho,i.jung,i.jong)).join("")}const yw={\u3131:"\u3131",\u3132:"\u3131",\u314B:"\u3131",\u3133:"\u3131",\u313A:"\u3131",\u3134:"\u3134",\u3135:"\u3134",\u3136:"\u3134",\u3137:"\u3137",\u3145:"\u3137",\u3146:"\u3137",\u3148:"\u3137",\u314A:"\u3137",\u314C:"\u3137",\u314E:"\u3137",\u3139:"\u3139",\u313C:"\u3139",\u313D:"\u3139",\u313E:"\u3139",\u3140:"\u3139",\u3141:"\u3141",\u313B:"\u3141",\u3142:"\u3142",\u314D:"\u3142",\u313F:"\u3142",\u3144:"\u3142",\u3147:"\u3147"},xw={\u314F:{nucleus:"\u314F"},\u3151:{glide:"j",nucleus:"\u314F"},\u3153:{nucleus:"\u3153"},\u3155:{glide:"j",nucleus:"\u3153"},\u3157:{nucleus:"\u3157"},\u315B:{glide:"j",nucleus:"\u3157"},\u315C:{nucleus:"\u315C"},\u3160:{glide:"j",nucleus:"\u315C"},\u3161:{nucleus:"\u3161"},\u3163:{nucleus:"\u3163"},\u3150:{nucleus:"\u3154/\u3150"},\u3152:{glide:"j",nucleus:"\u3154/\u3150"},\u3154:{nucleus:"\u3154/\u3150"},\u3156:{glide:"j",nucleus:"\u3154/\u3150"},\u3158:{glide:"w",nucleus:"\u314F"},\u3159:{glide:"w",nucleus:"\u3154/\u3150"},\u315A:{glide:"w",nucleus:"\u3154/\u3150"},\u315D:{glide:"w",nucleus:"\u3153"},\u315E:{glide:"w",nucleus:"\u3154/\u3150"},\u315F:{glide:"w",nucleus:"\u3163"},\u3162:{glide:"\u0270",nucleus:"\u3163"}};function Fr(e){return yw[e]??e}const bo=/[ㄱ-ㅎ]/,Cw=/[ㅏ-ㅣ]/;function Jo(e){for(let t=e.length-1;t>=0;t--){const a=e[t],r=a.charCodeAt(0);if(r>=44032&&r<=55203||bo.test(a)||Cw.test(a))return a}return null}function Ti(e){const t=Jo(e);if(!t)return"\uAC00";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":bo.test(t)?"\uC774":"\uAC00"}function Bi(e){return`${e}${Ti(e)}`}function Ni(e){const t=Jo(e);if(!t)return"\uB97C";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":bo.test(t)?"\uC744":"\uB97C"}function Di(e){return`${e}${Ni(e)}`}function Ei(e){const t=Jo(e);if(!t)return"\uB294";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC740":"\uB294":bo.test(t)?"\uC740":"\uB294"}function cu(e){return`${e}${Ei(e)}`}function ji(e){const t=Jo(e);if(!t)return"\uC640";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uACFC":"\uC640":bo.test(t)?"\uACFC":"\uC640"}function du(e){return`${e}${ji(e)}`}function Li(e){const t=Jo(e);if(!t)return"\uB85C";const a=t.charCodeAt(0);if(a>=44032&&a<=55203){const r=(a-44032)%28;return r===0||r===8?"\uB85C":"\uC73C\uB85C"}return t==="\u3139"?"\uB85C":bo.test(t)?"\uC73C\uB85C":"\uB85C"}function uu(e){return`${e}${Li(e)}`}function Mi(e,t,a){const r=e.slice(),[n]=r.splice(t,1);return r.splice(a,0,n),r}function ze(e,t=Math.random){const a=e.slice();for(let r=a.length-1;r>0;r--){const n=Math.floor(t()*(r+1));[a[r],a[n]]=[a[n],a[r]]}return a}function Qt(e,t,a=Math.random){return!Array.isArray(e)||e.length===0||t<=0?[]:t>=e.length?ze(e,a):ze(e,a).slice(0,t)}const go={SAME_SOUND_PICK:{difficulty:!0,choseong:!0,group:"discrimination"},SAME_OR_DIFF:{difficulty:!0,choseong:!0,group:"discrimination"},HEAR_AND_PICK_SAME:{difficulty:!0,choseong:!0,group:"discrimination"},HEAR_AND_PICK_INCLUDED:{difficulty:!0,choseong:!0,group:"discrimination"},STARTS_WITH_SAME_SOUND:{difficulty:!1,choseong:!0,group:"discrimination"},LISTEN_AND_REMEMBER_ORDER:{difficulty:!1,choseong:!0,group:"attention"},MERGE_2_SYLLABLES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_3_SYLLABLES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_2_PHONEMES:{difficulty:!1,choseong:!0,group:"synthesis"},MERGE_3_PHONEMES:{difficulty:!1,choseong:!0,group:"synthesis"},DROP_1_FROM_2SYLL:{difficulty:!1,choseong:!0,group:"deletion"},DROP_1_FROM_3SYLL:{difficulty:!1,choseong:!0,group:"deletion"},DROP_PART_FROM_COMPOUND:{difficulty:!1,choseong:!0,group:"deletion"},DROP_FINAL_CONSONANT_FROM_1SYLL:{difficulty:!1,choseong:!0,group:"deletion"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{difficulty:!1,choseong:!0,group:"deletion"},CHANGE_1_SYLL_IN_2SYLL:{difficulty:!0,choseong:!0,group:"substitution"},CHANGE_1_SYLL_IN_3SYLL:{difficulty:!0,choseong:!0,group:"substitution"},CHANGE_1_PHONEME_IN_1SYLL:{difficulty:!1,choseong:!0,group:"substitution"},CHANGE_1_PHONEME_IN_2SYLL:{difficulty:!0,choseong:!0,group:"substitution"}};function _w(e){const t=e?go[e]?.group:void 0;return t==="synthesis"||t==="deletion"||t==="substitution"?t:null}const ww=qe.indexOf("\u3147"),Wr={DROP_FINAL_CONSONANT_FROM_1SYLL:{syllables:1,syllable:e=>e.jong>0},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{syllables:1,syllable:e=>e.jong===0&&e.cho!==ww},MERGE_2_SYLLABLES:{syllables:2,syllable:()=>!0},MERGE_3_SYLLABLES:{syllables:3,syllable:()=>!0},MERGE_2_PHONEMES:{syllables:1,syllable:e=>e.jong===0},MERGE_3_PHONEMES:{syllables:1,syllable:e=>e.jong>0}},kw=new Set([]);function pu(e){return e in Wr}function hu(e,t){const a=Wr[e];if(!a)return!0;const r=[...t];if(r.length!==a.syllables)return!1;const n=Ne(r[0]);return!!n&&a.syllable(n)}function mu(e){return kw.has(e)}function Sw(e){const t=e.charCodeAt((e.length||1)-1)||0;return t<44032||t>55203||(t-44032)%28===0?"\uC640":"\uACFC"}function Pi(e){const t=e.charCodeAt((e.length||1)-1)||0;return t<44032||t>55203||(t-44032)%28===0?"\uB97C":"\uC744"}function bu(e){const t=e.charCodeAt((e.length||1)-1)||0;if(t<44032||t>55203)return"\uB85C";const a=(t-44032)%28;return a===0||a===8?"\uB85C":"\uC73C\uB85C"}function gu(e){const t=e.charAt((e.length||1)-1),a=t.charCodeAt(0)||0;return a>=44032&&a<=55203?(a-44032)%28===0?"\uAC00":"\uC774":/[ㄱ-ㅎ]/.test(t)?"\uC774":"\uAC00"}const fu={\u3131:"\uAE30\uC5ED",\u3132:"\uC30D\uAE30\uC5ED",\u3134:"\uB2C8\uC740",\u3137:"\uB514\uADFF",\u3138:"\uC30D\uB514\uADFF",\u3139:"\uB9AC\uC744",\u3141:"\uBBF8\uC74C",\u3142:"\uBE44\uC74D",\u3143:"\uC30D\uBE44\uC74D",\u3145:"\uC2DC\uC637",\u3146:"\uC30D\uC2DC\uC637",\u3147:"\uC774\uC751",\u3148:"\uC9C0\uC752",\u3149:"\uC30D\uC9C0\uC752",\u314A:"\uCE58\uC753",\u314B:"\uD0A4\uC754",\u314C:"\uD2F0\uC755",\u314D:"\uD53C\uC756",\u314E:"\uD788\uC757",\u3133:"\uAE30\uC5ED\uC2DC\uC637",\u3135:"\uB2C8\uC740\uC9C0\uC752",\u3136:"\uB2C8\uC740\uD788\uC757",\u313A:"\uB9AC\uC744\uAE30\uC5ED",\u313B:"\uB9AC\uC744\uBBF8\uC74C",\u313C:"\uB9AC\uC744\uBE44\uC74D",\u313D:"\uB9AC\uC744\uC2DC\uC637",\u313E:"\uB9AC\uC744\uD2F0\uC755",\u313F:"\uB9AC\uC744\uD53C\uC756",\u3140:"\uB9AC\uC744\uD788\uC757",\u3144:"\uBE44\uC74D\uC2DC\uC637",\u314F:"\uC544",\u3150:"\uC560",\u3151:"\uC57C",\u3152:"\uC598",\u3153:"\uC5B4",\u3154:"\uC5D0",\u3155:"\uC5EC",\u3156:"\uC608",\u3157:"\uC624",\u3158:"\uC640",\u3159:"\uC65C",\u315A:"\uC678",\u315B:"\uC694",\u315C:"\uC6B0",\u315D:"\uC6CC",\u315E:"\uC6E8",\u315F:"\uC704",\u3160:"\uC720",\u3161:"\uC73C",\u3162:"\uC758",\u3163:"\uC774"};function vu(e){if([...e].length!==1)return[e];const t=Ne(e);if(!t)return[e];const a=[qe[t.cho],dt[t.jung]];return t.jong!==0&&a.push(gt[t.jong]),a}function Ri(e,t=!1){const a=e.filter(Boolean);if(a.length<2)return"";const r=c=>fu[c]??c,n=a.slice(0,-1).map(c=>`"${c}"${Sw(r(c))}`).join(" "),i=a[a.length-1],s=`"${i}"${Pi(r(i))}`;return`${n} ${s} \uD569\uCE58\uBA74 \uC5B4\uB5A4 ${t?"\uC18C\uB9AC":"\uB2E8\uC5B4"}\uAC00 \uB418\uB098\uC694?`}function Aw(e,t){return Ri(t,e==="MERGE_2_PHONEMES"||e==="MERGE_3_PHONEMES")}function Tw(e,t){const a=String(t?.word??t?.original??""),r=String(t?.changedFrom??""),n=String(t?.changedTo??"");return e==="CHANGE_1_PHONEME_IN_1SYLL"?`"${a}"${Pi(a)} "${n}"${bu(n)} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`:`"${a}"\uC5D0\uC11C "${r}"${Pi(r)} "${n}"${bu(n)} \uBC14\uAFB8\uBA74 \uBB34\uC5C7\uC774 \uB418\uB098\uC694?`}function Bw(e,t){const a=String(t?.word??t?.original??t?.base??""),r=String(t?.dropped??"");if(e==="DROP_FINAL_CONSONANT_FROM_1SYLL")return`"${a}"\uC5D0\uC11C \uBC1B\uCE68\uC774 \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uB9D0\uC774 \uB418\uB098\uC694?`;if(e==="REMOVE_CONSONANT_AND_IDENTIFY_PHONEME"){const n=String(t?.missingConsonant??"");return`"${a}"\uC5D0\uC11C "${n}"${gu(n)} \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB418\uB098\uC694?`}return`"${a}"\uC5D0\uC11C "${r}"${gu(r)} \uC5C6\uC5B4\uC9C0\uBA74 \uC5B4\uB5A4 \uB9D0\uC774 \uB418\uB098\uC694?`}function yu(e,t,a){switch(_w(e)){case"synthesis":return Aw(e,a);case"substitution":return Tw(e,t);case"deletion":return Bw(e,t);default:return""}}function xu(e){return e.replace(/"([ㄱ-ㅣ])"(으로|와|과|을|를|이|가|은|는|로)?/g,(t,a,r)=>{const n=fu[a];if(!n)return t;if(!r)return`"${n}"`;const i=(n.charCodeAt(n.length-1)-44032)%28,s=i!==0;let c=r;return r==="\uC640"||r==="\uACFC"?c=s?"\uACFC":"\uC640":r==="\uC744"||r==="\uB97C"?c=s?"\uC744":"\uB97C":r==="\uC774"||r==="\uAC00"?c=s?"\uC774":"\uAC00":r==="\uC740"||r==="\uB294"?c=s?"\uC740":"\uB294":(r==="\uC73C\uB85C"||r==="\uB85C")&&(c=i===0||i===8?"\uB85C":"\uC73C\uB85C"),`"${n}"${c}`})}const Nw=e=>e==null?[]:Array.isArray(e)?e:[e];function $i(e){if([...e].length!==1)return"";const t=Ne(e);if(!t)return"";const a=Fr(gt[t.jong]),r=a===""?0:gt.indexOf(a);return ua(t.cho,t.jung,r<0?0:r)}function Hr(e,t){return t.get(e)||$i(e)||e}function er(e){return e?ft(e.cho)?"cho":ft(e.jung)?"jung":ft(e.jong)?"jong":null:null}function Pa(e,t){const a=(r,n)=>!ft(r)||Nw(r).includes(n);return a(t.cho,qe[e.cho])&&a(t.jung,dt[e.jung])&&a(t.jong,gt[e.jong])}function Qa(e,t,a){const r=[...e];if(a!=="pron")return r.map(i=>Ne(i));const n=[...t.get(e)||e];return n.length!==r.length?r.map(i=>Ne(i)):n.map(i=>Ne(i))}function Ja(e,t,a,r,n){const i=t==="cho"?qe:t==="jung"?dt:gt,s=e[t],c=[],u=new Set([Hr(a,n)]),d=ze(i.map((m,h)=>h).filter(m=>m!==s&&(t!=="cho"||i[m]!=="\u3147")&&(t!=="jong"||m!==0)));for(const m of d){if(c.length>=r)break;const h=t==="cho"?ua(m,e.jung,e.jong):t==="jung"?ua(e.cho,m,e.jong):ua(e.cho,e.jung,m),p=Hr(h,n);u.has(p)||(u.add(p),c.push(h))}return c}function zi(e,t,a,r,n,i=null){const s=[...e];if(s.length!==2)return null;const c=s.map(h=>Ne(h));if(c.some(h=>!h))return null;const u=Qa(e,a,r);if(u.some(h=>!h))return null;const d=er(t);let m=d&&t?u.map((h,p)=>Pa(h,t)?p:-1).filter(h=>h>=0):[0,1];if(i!=null&&(m=m.filter(h=>h!==i)),!m.length)return null;for(const h of ze(m)){const p=s[h];if(!n.has(p))continue;const g=Ja(c[h],d??"cho",p,40,a),v=[];for(const b of g)if(b!==p&&n.has(b)&&!v.includes(b)&&v.push(b),v.length>=2)break;if(!(v.length<2))return{question:e,distractors:[p,...v]}}return null}function Ii(e,t,a,r,n,i=null){const s=[...e];if(s.length!==3)return null;const c=s.map(h=>Ne(h));if(c.some(h=>!h))return null;const u=Qa(e,a,r);if(u.some(h=>!h))return null;const d=er(t),m=d&&t?u.map((h,p)=>Pa(h,t)?p:-1).filter(h=>h>=0):[0,1,2];if(!m.length)return null;for(const h of ze(m))for(const p of ze([0,1,2].filter(g=>g!==h&&(i==null||g===i)))){const g=[0,1,2].filter(x=>x!==p),v=g.map(x=>s[x]).join("");if(!n.has(v))continue;const b=g.indexOf(h),y=Ja(c[h],d??"cho",s[h],40,a),f=[];for(const x of y){const _=g.map(A=>s[A]);_[b]=x;const C=_.join("");if(C!==v&&n.has(C)&&!f.includes(C)&&f.push(C),f.length>=2)break}if(!(f.length<2))return{question:e,distractors:[v,...f]}}return null}function Oi(e,t,a,r,n,i=null){const s=[...e],c=s.length;if(c<2)return null;const u=[];for(let m=1;m<=c-1;m++)u.push({remain:s.slice(0,m).join(""),dropped:s.slice(m).join(""),droppedEnd:1}),u.push({remain:s.slice(c-m).join(""),dropped:s.slice(0,c-m).join(""),droppedEnd:0});const d=er(t);for(const{remain:m,dropped:h,droppedEnd:p}of ze(u)){if(i!=null&&p!==i||m===e||!n.has(m)||!n.has(h))continue;const g=[...m],v=g.map(f=>Ne(f));if(v.some(f=>!f))continue;const b=Qa(m,a,r);if(b.some(f=>!f))continue;const y=d&&t?b.map((f,x)=>Pa(f,t)?x:-1).filter(f=>f>=0):g.map((f,x)=>x);if(y.length)for(const f of ze(y)){const x=Ja(v[f],d??"cho",g[f],40,a),_=[];for(const C of x){const A=[...g];A[f]=C;const w=A.join("");if(w!==m&&n.has(w)&&!_.includes(w)&&_.push(w),_.length>=2)break}if(_.length>=2)return{question:e,distractors:[m,..._]}}}return null}function Fi(e,t,a,r,n,i=null){if([...e].length!==1)return null;const s=Ne(a.get(e)||e);if(!s||s.jong===0)return null;const c=ua(s.cho,s.jung,0),u=Ja({cho:s.cho,jung:s.jung,jong:0},"cho",c,2,a);return u.length<2?null:{question:e,distractors:[c,...u]}}const Wi=qe.indexOf("\u3147");function Hi(e,t,a,r,n,i=null){if([...e].length!==1)return null;const s=Ne(a.get(e)||e);if(!s||s.jong!==0||s.cho===Wi)return null;const c=ua(Wi,s.jung,0),u=Ja({cho:Wi,jung:s.jung,jong:0},"jung",c,2,a);return u.length<2?null:{question:e,distractors:[c,...u]}}function Vi(e){const t=new Map;for(const a of e){const r=[...a],n=r.length;if(!(n<2||n>3))for(let i=0;i<n;i++){let s=n+"|"+i+"|";for(let u=0;u<n;u++)s+=u===i?"*":r[u];const c=t.get(s);c?c.push(a):t.set(s,[a])}}return t}function Gi(e,t,a,r,n,i=null,s=null,c=2){const u=[...e],d=u.length;if(d<2||d>3)return null;const m=u.map(x=>Ne(x));if(m.some(x=>!x))return null;const h=Qa(e,a,r);if(h.some(x=>!x))return null;const p=x=>a.get(x)??x,g=p(e),v=!!t&&(ft(t.cho)||ft(t.jung)||ft(t.jong)),b=!!s&&(ft(s.cho)||ft(s.jung)||ft(s.jong)),y=x=>{let _=d+"|"+x+"|";for(let C=0;C<d;C++)_+=C===x?"*":u[C];return _};let f;if(i!=null){if(i>=d||v&&!Pa(h[i],t))return null;f=[i]}else v?f=h.map((x,_)=>Pa(x,t)?_:-1).filter(x=>x>=0):f=Array.from({length:d},(x,_)=>_);for(const x of ze(f)){const _=n.get(y(x))??[],C=[],A=[];for(const E of _){if(E===e)continue;const W=[...E].map(j=>Ne(j)),L=m[x],k=W[x];if(!L||!k)continue;let D=0;if(L.cho!==k.cho&&D++,L.jung!==k.jung&&D++,L.jong!==k.jong&&D++,!(D<c||p(E)===g))if(b){const j=Qa(E,a,r)[x];j&&Pa(j,s)?C.push(E):A.push(E)}else C.push(E)}if(!C.length)continue;const w=ze(C)[0],S=[],N=new Set([g,p(w)]),T=b?A:C.filter(E=>E!==w);for(const E of ze(T)){const W=p(E);if(!N.has(W)&&(N.add(W),S.push(E),S.length>=2))break}if(!b&&S.length<2)for(const E of ze(_)){if(E===e||E===w)continue;const W=p(E);if(!N.has(W)&&(N.add(W),S.push(E),S.length>=2))break}if(!(S.length<2))return{question:e,distractors:[w,...S]}}return null}function Vr(e,t="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958"){if(e instanceof Error)return e.message||t;if(typeof e=="string")return e||t;if(e&&typeof e=="object"){const a=e;for(const r of[a.message,a.error_description,a.error])if(typeof r=="string"&&r)return r}return t}const qi="\uB124\uD2B8\uC6CC\uD06C \uC5F0\uACB0\uC774 \uBD88\uC548\uC815\uD569\uB2C8\uB2E4. \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uD655\uC778\uD55C \uB4A4 \uB2E4\uC2DC \uC2DC\uB3C4\uD574 \uC8FC\uC138\uC694.";function Yi(e){return e?/failed to fetch|load failed|networkerror|network request failed|fetcherror/i.test(e):!1}function Cu(e){return Yi(e)?qi:e}function _u(e,t){return e==="id"?void 0:`${e}|${t?"asc":"desc"}`}function wu(e){const[t,a]=e.split("|");return{key:t,asc:a==="asc"}}function ku(e){let t=e==null?"":String(e);return/^[=+\-@\t\r]/.test(t)&&(t=" "+t),/[",\n\r]/.test(t)?`"${t.replaceAll('"','""')}"`:t}function Su(e,t){const a=new Blob(["\uFEFF"+t],{type:"text/csv;charset=utf-8"}),r=URL.createObjectURL(a),n=document.createElement("a");n.href=r,n.download=e,n.click(),URL.revokeObjectURL(r)}const Au="__ihab_core_word_pool__";function Dw(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("wordpool:update"))}function Tu(e,t){const a=new Map;for(const n of e)a.set(n.word,n);const r={entries:e,pairIndex:t??null,byWord:a};globalThis[Au]=r,Dw()}function fo(){return globalThis[Au]??null}const vo=globalThis;function Ui(e,t){const a=r=>{};try{const r=t();r&&typeof r.catch=="function"&&r.catch(a)}catch(r){a(r)}}function Bu(e){vo.__ihabTrainingTimeLogger=e}function Ki(e){Ui("time",()=>vo.__ihabTrainingTimeLogger?.(e))}function Nu(e){vo.__ihabTrainingCompletionLogger=e}function Zi(e){Ui("completion",()=>vo.__ihabTrainingCompletionLogger?.(e))}function Du(e){vo.__ihabCrosswordLogger=e}function Eu(e){Ui("crossword",()=>vo.__ihabCrosswordLogger?.(e))}function Jt(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function Xi(e){for(const t of["correct","isCorrect","heard","judgement"])if(typeof e[t]=="boolean")return e[t];return e.score===1?!0:e.score===0?!1:null}function Qi(e){return Array.isArray(e)?e.map((t,a)=>{const r=t??{};return{index:a,itemId:Jt(r.contextCode)??Jt(r.itemId)??Jt(r.itemCode)??Jt(r.id),question:Jt(r.question)??Jt(r.sentence)??Jt(r.word)??Jt(r.targetSyllable),answer:Jt(r.answer),selected:Jt(r.selectedText)??Jt(r.selected),correct:Xi(r)}}):[]}function ju(e){return e.filter(t=>t.correct===!1)}let Lu=null,Mu=null,Pu=null;function Ru(e){Lu=e}function $u(e){Mu=e}function zu(e){Pu=e}async function Iu(e,t){try{return await Lu?.(e,t)??null}catch{return null}}async function Ou(){try{return await Mu?.()??null}catch{return null}}async function Fu(e,t){try{return await Pu?.(e,t)??null}catch{return null}}const Ji=globalThis;function Wu(e){Ji.__ihabNoiseSettingsStore=e}async function es(){try{return await Ji.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function ts(e){const t=a=>{};try{const a=Ji.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(t)}catch(a){t(a)}}function tr(e){const t=new TextEncoder().encode(String(e).normalize("NFC"));let a="";return t.forEach(r=>{a+=r.toString(16).padStart(2,"0")}),a}const Hu=tr;function Vu(e,t){return`${e}/${tr(t)}.mp3`}function Gu(e={}){const t=e.storagePrefix??"audio-cache",a=e.voice??"ko-f",r=typeof e.speed=="number"?e.speed:1,n=e.filenameSanitizer??tr;return async function(i){const s=String(i||"").trim();if(!s)return"";const c=`${n(s)}_${a}.mp3`,u=`${t}/${c}`;try{if(await Zn(u)){const d=await Io(u);if(d)return d}}catch{}if(e.generator)try{const d=await e.generator(s,u,e);if(d)return d}catch{}try{const d=`/api/tts?word=${encodeURIComponent(s)}&voice=${encodeURIComponent(a)}&speed=${encodeURIComponent(String(r))}`;return await fetch(d,{method:"GET"}),`/audio-cache/${c}`}catch{return`/audio-cache/${c}`}}}async function as(e){if(typeof document<"u")try{const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="fixed",t.style.top="0",t.style.left="0",t.style.opacity="0",t.style.pointerEvents="none",document.body.appendChild(t),t.focus(),t.select(),t.setSelectionRange(0,e.length);const a=document.execCommand("copy");if(document.body.removeChild(t),a)return!0}catch{}try{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}return!1}const yo="Asia/Seoul";function qu(e){return new Date(e).toLocaleDateString("ko-KR",{timeZone:yo,year:"numeric",month:"short",day:"numeric"})}function Yu(e){return new Date(e).toLocaleString("ko-KR",{timeZone:yo,year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"})}function Uu(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US";return new Date(e).toLocaleDateString(a,{timeZone:yo,year:"numeric",month:"short",day:"numeric"})}function Ku(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US";return new Date(e).toLocaleString(a,{timeZone:yo,year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"})}function Zu(e){return new Date(e).toLocaleString("ko-KR",{timeZone:yo,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}function Xu(e){if(e==null||e==="")return"";const t=e instanceof Date?e:new Date(e);return isNaN(t.getTime())?"":new Intl.DateTimeFormat("en-GB",{timeZone:yo,hour:"2-digit",minute:"2-digit",hour12:!1}).format(t)}function Gr(){return ka(new Date)}function ka(e){if(e==null||e==="")return"";const t=e instanceof Date?e:new Date(e);return isNaN(t.getTime())?"":new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(t)}function qr(e,t){if(!e)return"";const a=new Date(e).getTime();if(Number.isNaN(a))return"";const r=Math.max(0,Math.floor((Date.now()-a)/1e3)),n=Math.floor(r/60),i=Math.floor(n/60),s=Math.floor(i/24),c=Math.floor(s/7),u=Math.floor(s/30),d=Math.floor(s/365);return n<1?t("store.time.justNow","\uBC29\uAE08 \uC804"):n<60?t("store.time.minutesAgo",{n}):i<24?t("store.time.hoursAgo",{n:i}):s<7?t("store.time.daysAgo",{n:s}):c<5?t("store.time.weeksAgo",{n:c}):s<365?t("store.time.monthsAgo",{n:Math.min(u,11)}):t("store.time.yearsAgo",{n:d})}function Yr(e,t={}){const{sep:a=".",pad:r=!0,trailingDot:n=!1,fallback:i="\u2014"}=t;if(!e)return i;const s=ka(e instanceof Date?e:String(e));if(!s)return i;const[c,u,d]=s.split("-"),m=r?u:String(Number(u)),h=r?d:String(Number(d));return`${c}${a}${m}${a}${h}${n?".":""}`}function Qu(e){const t=e.replace(/\D/g,"").slice(0,11);return t.startsWith("02")?t.length<=2?t:t.length<=6?`${t.slice(0,2)}-${t.slice(2)}`:`${t.slice(0,2)}-${t.slice(2,t.length-4)}-${t.slice(t.length-4)}`:t.length<=3?t:t.length<=7?`${t.slice(0,3)}-${t.slice(3)}`:`${t.slice(0,3)}-${t.slice(3,t.length-4)}-${t.slice(t.length-4)}`}function Ju(e){if(e){if(/^\d{4}\.\d{2}\.\d{2}$/.test(e))return e;if(/^\d{8}$/.test(e))return`${e.slice(0,4)}.${e.slice(4,6)}.${e.slice(6,8)}`;if(/^\d{4}-\d{2}-\d{2}$/.test(e))return e.replace(/-/g,".");if(/^\d{4}-\d{2}-\d{2}T/.test(e)){const t=new Date(e);return isNaN(t.getTime())?void 0:ka(t).replace(/-/g,".")}}}function ep(e){if(e)return/^\d{4}\.\d{2}\.\d{2}$/.test(e)?e.replace(/\./g,"-"):e}function ar(e){if(!e)return e;const t=e.trim();return/^[₩$]/.test(t)?t:/원\s*$/.test(t)?"\u20A9"+t.replace(/\s*원\s*$/,"").trim():t}function Ur(e,t){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const r=Number(a[1]),n=Number(a[2]),i=a[1].padStart(2,"0");return n===0?t("date.timeH",{h:r,hh:i,mm:a[2]}):t("date.timeHM",{h:r,hh:i,m:n,mm:a[2]})}function or(e){return(e??0).toLocaleString("ko-KR")}const Ew=[{key:"FOOD",label:"\uC74C\uC2DD",icon:"salad",color:"#FF8A65",subs:[{key:"TRKRFD",label:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD"},{key:"MDKRFD",label:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD"},{key:"WRLDFD",label:"\uC138\uACC4\uC758 \uC74C\uC2DD"},{key:"MTRFRT",label:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C"},{key:"GEFDKL",label:"\uC74C\uC2DD \uC0C1\uC2DD"}]},{key:"HLTH",label:"\uAC74\uAC15",icon:"heart",color:"#66BB6A",subs:[{key:"HTETHB",label:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00"},{key:"DISILL",label:"\uBCD1\uACFC \uC9C8\uD658"},{key:"EXCISE",label:"\uC6B4\uB3D9"},{key:"GEHTKL",label:"\uAC74\uAC15\uC0C1\uC2DD"}]},{key:"WETH",label:"\uB0A0\uC528",icon:"sun-medium",color:"#42A5F5",subs:[{key:"GESSKL",label:"\uACC4\uC808\uC0C1\uC2DD"},{key:"SNWRAN",label:"\uB208\uACFC \uBE44"},{key:"WTHFCT",label:"\uC77C\uAE30\uC608\uBCF4"},{key:"GEWTKL",label:"\uB0A0\uC528\uC0C1\uC2DD"}]},{key:"PRSN",label:"\uC778\uBB3C",icon:"user-round",color:"#AB47BC",subs:[{key:"JODYPS",label:"\uC870\uC120\uC2DC\uB300"},{key:"MDKRPS",label:"\uD55C\uAD6D \uADFC\uD604\uB300"},{key:"THKDPS",label:"\uC0BC\uAD6D\uC2DC\uB300"},{key:"WRLART",label:"\uC138\uACC4\uC758 \uC608\uC220\uAC00"},{key:"WRLPSN",label:"\uC138\uACC4\uC758 \uC778\uBB3C"}]},{key:"KRCT",label:"\uD55C\uAD6D\uBB38\uD654",icon:"bow-arrow",color:"#EC407A",subs:[{key:"KRLANG",label:"\uC6B0\uB9AC\uB9D0"},{key:"TRPLCT",label:"\uC804\uD1B5\uB180\uC774"},{key:"HERITG",label:"\uBB38\uD654\uC7AC"},{key:"EVTFES",label:"\uD589\uC0AC\uC640 \uCD95\uC81C"},{key:"GECTKL",label:"\uC0C1\uC2DD"}]},{key:"STRY",label:"\uC774\uC57C\uAE30",icon:"message-circle",color:"#8D6E63",subs:[{key:"FRYTAL",label:"\uB3D9\uD654"},{key:"AMZING",label:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30"},{key:"DAYSTR",label:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30"}]},{key:"LOCA",label:"\uC9C0\uC5ED",icon:"map-pin",color:"#26A69A",subs:[{key:"KRLDMK",label:"\uD55C\uAD6D\uC758 \uBA85\uC18C"},{key:"SELNMK",label:"\uC11C\uC6B8\uC758 \uBA85\uC18C"},{key:"WRDTRB",label:"\uC138\uACC4\uC5EC\uD589"},{key:"NAVIGT",label:"\uAE38 \uCC3E\uAE30"}]},{key:"SOAR",label:"\uC0AC\uD68C\uC640 \uC608\uC220",icon:"landmark",color:"#5C6BC0",subs:[{key:"KRSOCI",label:"\uD55C\uAD6D"},{key:"ECONEW",label:"\uACBD\uC81C\uC640 \uB274\uC2A4"},{key:"GENART",label:"\uC608\uC220"},{key:"GELFKL",label:"\uC0DD\uD65C \uC0C1\uC2DD"}]},{key:"NTSC",label:"\uC790\uC5F0\uACFC \uACFC\uD559",icon:"leaf",color:"#9CCC65",subs:[{key:"ANIMAL",label:"\uB3D9\uBB3C"},{key:"PLANTS",label:"\uC2DD\uBB3C"},{key:"ETHPLT",label:"\uC9C0\uAD6C"},{key:"TOLELC",label:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488"},{key:"GESCKL",label:"\uACFC\uD559\uC0C1\uC2DD"}]},{key:"SPRT",label:"\uC2A4\uD3EC\uCE20",icon:"trophy",color:"#FFCA28",subs:[{key:"INVDSP",label:"\uAC1C\uC778\uACBD\uAE30"},{key:"MARART",label:"\uACA9\uD22C\uAE30"},{key:"TEAMSP",label:"\uB2E8\uCCB4\uACBD\uAE30"},{key:"FOOTBL",label:"\uCD95\uAD6C"},{key:"GESPKL",label:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}]}],jw=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"party-popper",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828"},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30 + 4\uBB38\uC81C"},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30 \uC2EC\uD654 \uD6C8\uB828"},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC21C\uC11C \uBC30\uC5F4 \uD6C8\uB828"}];let os=null;function tp(e){os=e}function Kr(){return os?.topicTypes??Ew}function rs(){return os?.trainingTypes??jw}const ap="ihab_theme",Lw="light";function ns(){try{const e=localStorage.getItem(ap);if(e==="light"||e==="dark"||e==="auto")return e}catch{}return Lw}function is(e){try{document.documentElement.setAttribute("data-theme",e),localStorage.setItem(ap,e)}catch{}}function op(){is(ns())}const rp="ihab_font_scale",Mw="medium",Pw=["medium","large1","large2","large3"];function ss(){try{const e=localStorage.getItem(rp);if(Pw.includes(e))return e}catch{}return Mw}function ls(e){try{document.documentElement.setAttribute("data-font-scale",e),localStorage.setItem(rp,e)}catch{}}function np(){ls(ss())}const Ra=[],$a=[],za=[],Ia=[],rr={LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]},nr={LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]},Rw={LISTEN_IN_NOISE:3,SHORT_STORY:2,LONG_STORY:1,ORDERING_SENTENCE:2};let cs=null,ip=null,Oa=null;function ds({counts:e,forceRefresh:t}={}){const a=Object.assign({},Rw,e||{}),r=Gr(),n=ka(new Date(`${r}T00:00:00+09:00`).getTime()-864e5),i=JSON.stringify(a);if(!t&&ip===r&&cs===i&&Oa)return Object.assign(rr,Oa.today),Object.assign(nr,Oa.yesterday?.selection||{LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]}),{today:rr,yesterday:nr};const s={LISTEN_IN_NOISE:Qt(Ra,Math.max(0,Number(a.LISTEN_IN_NOISE)||0)),SHORT_STORY:Qt($a,Math.max(0,Number(a.SHORT_STORY)||0)),LONG_STORY:Qt(za,Math.max(0,Number(a.LONG_STORY)||0)),ORDERING_SENTENCE:Qt(Ia,Math.max(0,Number(a.ORDERING_SENTENCE)||0))};let c=null;return Oa&&cs===i&&Oa.yesterday&&Oa.yesterday.date===n&&(c=Oa.yesterday.selection),c||(c={LISTEN_IN_NOISE:Qt(Ra,Math.max(0,Number(a.LISTEN_IN_NOISE)||0)),SHORT_STORY:Qt($a,Math.max(0,Number(a.SHORT_STORY)||0)),LONG_STORY:Qt(za,Math.max(0,Number(a.LONG_STORY)||0)),ORDERING_SENTENCE:Qt(Ia,Math.max(0,Number(a.ORDERING_SENTENCE)||0))}),Object.assign(rr,s),Object.assign(nr,c),ip=r,cs=i,Oa={today:s,yesterday:{date:n,countsKey:i,selection:c}},{today:rr,yesterday:nr}}function sp(){return{today:rr,yesterday:nr}}function us(){return{LISTEN_IN_NOISE:Ra,SHORT_STORY:$a,LONG_STORY:za,ORDERING_SENTENCE:Ia}}let ps=!1,ir=null;async function $w(){try{const e={url:typeof document>"u"?require("url").pathToFileURL(__filename).href:Yt&&Yt.tagName.toUpperCase()==="SCRIPT"&&Yt.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}&&void 0||"/",t=await fetch(`${e}data/allTrainingData.json`);return t.ok?await t.json():null}catch{return null}}async function hs(){if(!ps)return ir||(ir=(async()=>{const e=await $w();if(!e){ir=null;try{window.dispatchEvent(new Event("speechear.data.error"))}catch{}return}try{for(const t of Object.keys(e||{})){const a=e[t]||[];for(const r of a){const n=r,i=String(n.training_type||t),s=String(n.category_main_code||n.category_main||n.category_0||""),c=String(n.category_sub_code||n.category_sub||n.category_1||""),u=Object.assign({},n,{training_type:i,category_0:s,category_1:c});i==="LISTEN_IN_NOISE"?Ra.push(u):i==="SHORT_STORY"?$a.push(u):i==="LONG_STORY"?za.push(u):i==="ORDERING_SENTENCE"&&Ia.push(u)}}}catch{ir=null;try{window.dispatchEvent(new Event("speechear.data.error"))}catch{}return}try{window.dispatchEvent(new Event("speechear.data.updated"))}catch{}try{ds()}catch{}ps=!0})(),ir)}function lp(){return ps}async function ms(e=3e3){const t=hs();return Promise.race([t,new Promise(a=>setTimeout(a,e))])}const Zr=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"party-popper",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uB2E4\uC218\uC758 \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC5EC\uB7EC\uAC1C\uC758 \uC9E7\uC740 \uBB38\uC7A5\uC744 \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uADF8 \uC21C\uC11C\uC5D0 \uB9DE\uAC8C \uBC30\uC5F4\uD569\uB2C8\uB2E4."}],cp=[{key:"FOOD",label:"\uC74C\uC2DD",icon:"salad",color:"#FF8A65",subs:[{key:"TRKRFD",label:" \uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD"},{key:"MDKRFD",label:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD"},{key:"WRLDFD",label:"\uC138\uACC4\uC758 \uC74C\uC2DD"},{key:"MTRFRT",label:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C"},{key:"GEFDKL",label:"\uC74C\uC2DD \uC0C1\uC2DD"}]},{key:"HLTH",label:"\uAC74\uAC15",icon:"heart",color:"#66BB6A",subs:[{key:"HTETHB",label:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00"},{key:"DISILL",label:"\uBCD1\uACFC \uC9C8\uD658"},{key:"EXCISE",label:"\uC6B4\uB3D9"},{key:"GEHTKL",label:"\uAC74\uC0C1\uC0C1\uC2DD"}]},{key:"WETH",label:"\uB0A0\uC528",icon:"sun-medium",color:"#42A5F5",subs:[{key:"GESSKL",label:"\uACC4\uC808\uC0C1\uC2DD"},{key:"SNWRAN",label:"\uB208\uACFC \uBE44"},{key:"WTHFCT",label:"\uC77C\uAE30\uC608\uBCF4"},{key:"GEWTKL",label:"\uB0A0\uC528\uC0C1\uC2DD"}]},{key:"PRSN",label:"\uC778\uBB3C",icon:"user-round",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#AB47BC",subs:[{key:"JODYPS",label:"\uC870\uC120\uC2DC\uB300"},{key:"MDKRPS",label:"\uD55C\uAD6D \uADFC\uD604\uB300"},{key:"THKDPS",label:"\uC0BC\uAD6D\uC2DC\uB300"},{key:"WRLART",label:"\uC138\uACC4\uC758 \uC608\uC220\uAC00"},{key:"WRLPSN",label:"\uC138\uACC4\uC758 \uC778\uBB3C"}]},{key:"KRCT",label:"\uD55C\uAD6D\uBB38\uD654",icon:"bow-arrow",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#EC407A",subs:[{key:"KRLANG",label:"\uC6B0\uB9AC\uB9D0"},{key:"TRPLCT",label:"\uC804\uD1B5\uB180\uC774"},{key:"HERITG",label:"\uBB38\uD654\uC7AC"},{key:"EVTFES",label:"\uD589\uC0AC\uC640 \uCD95\uC81C"},{key:"GECTKL",label:"\uC0C1\uC2DD"}]},{key:"STRY",label:"\uC774\uC57C\uAE30",icon:"message-circle",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#8D6E63",subs:[{key:"FRYTAL",label:"\uB3D9\uD654"},{key:"AMZING",label:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30"},{key:"DAYSTR",label:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30"}]},{key:"LOCA",label:"\uC9C0\uC5ED",icon:"map-pin",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#26A69A",subs:[{key:"KRLDMK",label:"\uD55C\uAD6D\uC758 \uBA85\uC18C"},{key:"SELNMK",label:"\uC11C\uC6B8\uC758 \uBA85\uC18C"},{key:"WRDTRB",label:"\uC138\uACC4\uC5EC\uD589"},{key:"NAVIGT",label:"\uAE38 \uCC3E\uAE30"}]},{key:"SOAR",label:"\uC0AC\uD68C\uC640 \uC608\uC220",icon:"landmark",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#5C6BC0",subs:[{key:"KRSOCI",label:"\uD55C\uAD6D"},{key:"ECONEW",label:"\uACBD\uC81C\uC640 \uB274\uC2A4"},{key:"GENART",label:"\uC608\uC220"},{key:"GELFKL",label:"\uC0DD\uD65C \uC0C1\uC2DD"}]},{key:"NTSC",label:"\uC790\uC5F0\uACFC \uACFC\uD559",icon:"leaf",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#9CCC65",subs:[{key:"ANIMAL",label:"\uB3D9\uBB3C"},{key:"PLANTS",label:"\uC2DD\uBB3C"},{key:"ETHPLT",label:"\uC9C0\uAD6C"},{key:"TOLELC",label:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488"},{key:"GESCKL",label:"\uACFC\uD559\uC0C1\uC2DD"}]},{key:"SPRT",label:"\uC2A4\uD3EC\uCE20",icon:"trophy",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828",color:"#FFCA28",subs:[{key:"INVDSP",label:"\uAC1C\uC778\uACBD\uAE30"},{key:"MARART",label:"\uACA9\uD22C\uAE30"},{key:"TEAMSP",label:"\uB2E8\uCCB4\uACBD\uAE30"},{key:"FOOTBL",label:"\uCD95\uAD6C"},{key:"GESPKL",label:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}]}],bs={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function zw(e){return Zr.map(t=>{const a=bs[t.key];return a?{...t,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:t})}let Xr=null,dp=null,up=null;function Iw(){const e=fo();if(e&&e.entries.length>0){const t=Ka();if(Xr&&dp===e&&up===t)return Xr;const a=new Set,r=[];for(const n of e.entries)!n.word||a.has(n.word)||(a.add(n.word),r.push({w:n.word,s:n.syllables,p:t?.[n.word]?[...t[n.word].cho??[],...t[n.word].jung??[],...t[n.word].jong??[]]:[],pron:n.pronunciation||n.word,grade:n.grade}));return Xr=r,dp=e,up=t,Xr}return[]}const ea=new Proxy([],{get(e,t){const a=Iw(),r=a[t];return typeof r=="function"?r.bind(a):r}});function Qr(e){return e.length?e[Math.floor(Math.random()*e.length)]:void 0}function ta(e,t){if(t>=e.length)return ze(e);if(t===0)return[];const a=e.slice();for(let r=0;r<t;r++){const n=r+Math.floor(Math.random()*(a.length-r)),i=a[r];a[r]=a[n],a[n]=i}return a.slice(0,t)}let gs=null,pp=null;function eo(){const e=fo();if(gs&&pp===e)return gs;const t=new Map;for(const a of ea)a.w&&t.set(a.w,a.pron);return gs=t,pp=e,t}function Ft(e){return eo().get(e)||e}function fs(e,t,a=new Set){const r=[];for(const n of ze(e)){if(r.length>=t)break;const i=Ft(n);a.has(i)||(a.add(i),r.push(n))}return r}let Ow=0;function At(e){return`${e}-rt-${++Ow}`}function sr(e){const t=Er();if(!t||t.total===0){const r=new Set;for(const n of e)r.add(n);return r}const a=new Set;for(const r of e)oi(r)===!0&&a.add(r);return a}const Jr=new Map;let hp=null,mp=null;function lr(e){return e==null?"":Array.isArray(e)?e.slice().sort().join(","):e}function bp(e){const t=lr(e.choseong),a=e.composition,r=a?.syllable==null?"":Array.isArray(a.syllable)?a.syllable.slice().sort().join(","):String(a.syllable),n=a?`${lr(a.cho)}/${lr(a.jung)}/${lr(a.jong)}/${a.jongNone?"N":""}/${r}`:"",i=lr(e.grade);return`${e.difficulty??""}|${t}|${n}|${e.excludeNoImage?"1":"0"}|${e.count??""}|x${e.contrastCount??1}|${e.fullCount?"F":""}|s${e.sameStructureOnly===!1?"0":"1"}|v${e.phonemeView==="pron"?"p":"c"}|g${i}|t${e.targetSyllable??""}|c${e.choicesPerItem??""}`}async function Wt(e){const t=fo(),a=Ka();(t!==hp||a!==mp)&&(Jr.clear(),hp=t,mp=a);const r=bp(e);return Jr.has(r)||Jr.set(r,Ww(e)),Jr.get(r)}function Fw(e){if(!e)return null;const t=s=>s==null?null:Array.isArray(s)?s.length?s:null:[s],a=t(e.cho),r=t(e.jung),n=!!e.jongNone,i=n?null:t(e.jong);return a||r||i||n?n&&!a&&!r&&!i?s=>di(s):s=>ui(s,{cho:a,jung:r,jong:i,jongNone:n}):null}async function Ww(e){const{difficulty:t=null,choseong:a=null,composition:r=null,targetSyllable:n=null,excludeNoImage:i=!1}=e,s=e.grade&&e.grade.length>0?new Set(e.grade):null,c=e.sameStructureOnly??!0,u=e.phonemeView==="pron"?"pron":"char",d=Math.max(1,e.contrastCount??1),m=t==="cho"||t==="jung"||t==="jong",h=m&&d>=2,p=t==="count",g=a?new Set(Array.isArray(a)?a:[a]):null,v=r?.syllable!=null?new Set(Array.isArray(r.syllable)?r.syllable:[r.syllable]):null,b=r?[Fw(r),v?M=>v.has(mo(M)):null].filter(M=>M!=null):[],y=t==="random"||t===null,f=y||p,x=y||h||p;let _=ea.filter(M=>!M.w||s&&(!M.grade||!s.has(M.grade))?!1:x?!0:Array.isArray(M.p)&&M.p.length>0);g&&(_=_.filter(M=>{for(const R of g)if(X_(M.w,R))return!0;return!1})),b.length>0&&(_=_.filter(M=>{const R=u==="pron"?Ft(M.w):M.w;return b.every(z=>z(R))})),n&&(_=_.filter(M=>M.w[0]===n));let C;if(i){const M=new Set;for(const R of _)if(M.add(R.w),Array.isArray(R.p))for(const z of R.p)M.add(z);if(f)for(const R of ea)R.w&&M.add(R.w);C=sr(M)}else{const M=new Set;for(const R of _)if(M.add(R.w),Array.isArray(R.p))for(const z of R.p)M.add(z);if(f)for(const R of ea)R.w&&M.add(R.w);C=M}let A=null;if(h){const M=new Set;for(const R of ea)R.w&&M.add(R.w);A=i?sr(M):M}const w=_.filter(M=>C.has(M.w)),S=600,N=Array.from(C),T=N.length>S?ta(N,S):N,E=p&&r!=null&&(ft(r.cho)||ft(r.jung)||ft(r.jong)),W=2500,L=new Map;if(p&&!E&&d>=2){for(const M of N){const R=mo(M),z=L.get(R);z?z.push(M):L.set(R,[M])}for(const[M,R]of L)R.length>W&&L.set(M,ta(R,W))}const k=ni(),D=E?yi(r,N,k,c,u,Ft):null,j=500,F=1500,ee=e.fullCount?w:t==="random"?w.length>j?ta(w,j):w:w.length>F?ta(w,F):w,Z=Ka(),J=[];for(const M of ee){let R;const z=Ft(M.w);if(h)R=aw(M.w,t,d,A,24).filter(H=>Ft(H)!==z);else if(p)E?R=(D.get(M.w)??[]).filter(H=>Ft(H)!==z):d<=1?R=jr(M.w,Z,{okSet:C,pronOf:Ft,decompOf:k,sameStructureOnly:!1}):R=(L.get(mo(M.w))??[]).filter(H=>{if(H===M.w||Ft(H)===z)return!1;const $=ow(M.w,H);return d>=5?$>=5:$===d});else if(y)R=T.filter(H=>H!==M.w&&H.length===M.w.length&&Ft(H)!==z);else{const H=t;R=jr(M.w,Z,{kind:H,okSet:C,pronOf:Ft,decompOf:k,sameStructureOnly:!1}),R.length===0&&(R=(T.length>30?ta(T,30):T).filter($=>$!==M.w&&ii(M.w,$)===t&&Ft($)!==z))}if(c&&R.length>0&&(m||p&&!E)){const H=k(Ft(M.w));R=R.filter($=>!Uo(H,k(Ft($))))}R.length!==0&&J.push({word:M,usable:R})}return J}async function gp(e,t){const{choicesPerItem:a=3,count:r=10}=t,n=a-1,i=(await Wt(t)).filter(c=>c.usable.length>=n),s=[];for(const c of ze(i)){if(s.length>=r)break;const u=fs(c.usable,n);if(u.length<n)continue;const d=ze([c.word.w,...u]);s.push({id:At(e+"-item"),index:s.length+1,word:c.word.w,syllables:c.word.s,choices:d,answerIndex:d.indexOf(c.word.w)})}return s}async function Hw(e){const{choicesPerItem:t=3,count:a=10}=e,r=t-1,n=await Wt({...e,difficulty:null});if(n.length<t)return[];const i=[],s=ze([...n]);for(const c of s){if(i.length>=a)break;const u=c.word.w,d=[...c.word.pron||u],m=Qr(d);if(!m)continue;const h=n.filter(v=>v.word.w!==u&&v.word.s===c.word.s&&!(v.word.pron||v.word.w).includes(m)&&v.word.pron!==c.word.pron);if(h.length<r)continue;const p=fs(h.map(v=>v.word.w),r);if(p.length<r)continue;const g=ze([u,...p]);i.push({id:At("HPI-item"),index:i.length+1,targetSyllable:m,word:u,choices:g,answerIndex:g.indexOf(u)})}return i}async function Vw(e){const{count:t=10}=e,a=(await Wt(e)).filter(r=>r.usable.length>=1);return Array.from({length:t},(r,n)=>{const i=Qr(a);if(!i)return null;const s=n%2===0;let c;if(s)c=[i.word.w,i.word.w];else{const u=Qr(i.usable);c=Math.random()<.5?[i.word.w,u]:[u,i.word.w]}return{id:At("SOD-item"),index:n+1,word:i.word.w,pair:c,same:s}}).filter(r=>!!r)}async function Gw(e){const{choicesPerItem:t=3,count:a=10}=e,r=t-1,n=await Wt({...e,difficulty:null});if(n.length<t+1)return[];const i=n.map(p=>p.word.w),s=new Map(n.map(p=>[p.word.w,p.word.pron])),c=p=>(s.get(p)||p)[0]??"",u={};for(const p of n){const g=c(p.word.w);g&&(u[g]||(u[g]=[]),u[g].push(p.word.w))}const d=Object.entries(u).filter(([,p])=>p.length>=2).map(([p])=>p);if(d.length===0)return[];const m=[],h=ze([...d]);for(let p=0;m.length<a&&p<a*4;p++){const g=h[p%h.length],v=u[g];if(v.length<2)continue;const b=ze([...v]),y=b[0],f=b[1];if(!y||!f||y===f||(s.get(y)||y)===(s.get(f)||f))continue;const x=s.get(f)||f,_=i.filter(w=>c(w)!==g&&w!==y&&w!==f&&w.length===f.length&&(s.get(w)||w)!==x);if(_.length<r)continue;const C=fs(_,r);if(C.length<r)continue;const A=ze([f,...C]);m.push({id:At("SWS-item"),index:m.length+1,sourceWord:y,targetSyllable:g,word:f,choices:A,answerIndex:A.indexOf(f)})}return m}function fp(e,t,a){return ta(e,t).map((r,n)=>{const i=Qr(r.usable)??"",s=[...r.word.w],c=[...i],u=s.findIndex((m,h)=>m!==c[h]),d=ze(r.usable.filter(m=>m&&m!==i)).slice(0,2);return{id:At(a),index:n+1,word:r.word.w,original:r.word.w,changed:i,changedFrom:u>=0?s[u]:"",changedTo:u>=0?c[u]:"",distractors:d}})}async function vp(e,t,a){const{count:r=10}=t,n=eo(),i=ea.filter(g=>g.w&&g.s===e),s=t.excludeNoImage?sr(i.map(g=>g.w)):null,c=s?i.filter(g=>s.has(g.w)):i,u=new Set(c.map(g=>g.w)),d=Vi(u),m=t.phonemeView??"char",h=t.composition??null,p=[];for(const g of ze(c)){if(p.length>=r)break;const v=Gi(g.w,h,n,m,d,null,null);if(!v)continue;const b=v.distractors[0],y=[...g.w],f=[...b],x=y.findIndex((_,C)=>_!==f[C]);p.push({id:At(a),index:p.length+1,word:g.w,original:g.w,changed:b,changedFrom:x>=0?y[x]:"",changedTo:x>=0?f[x]:"",distractors:v.distractors.slice(1)})}return p}async function qw(e){return vp(2,e,"CS2-item")}async function Yw(e){return vp(3,e,"CS3-item")}async function Uw(e){const t=(await Wt({...e,difficulty:"count",contrastCount:1})).filter(a=>a.word.s===1&&a.usable.length>=1);return fp(t,e.count??10,"CP1-item")}async function Kw(e){const t=e.difficulty&&e.difficulty!=="random"?e.difficulty:"count",a=(await Wt({...e,difficulty:t,contrastCount:1})).filter(r=>r.word.s===2&&r.usable.length>=1);return fp(a,e.count??10,"CP2-item")}async function Zw(e){const{count:t=10}=e,a=(await Wt({...e})).filter(r=>r.word.s===2);return ta(a,t).map((r,n)=>({id:At("M2S-item"),index:n+1,word:r.word.w,answer:r.word.w,parts:[...r.word.w]}))}async function Xw(e){const{count:t=10}=e,a=(await Wt({...e})).filter(r=>r.word.s===3);return ta(a,t).map((r,n)=>({id:At("M3S-item"),index:n+1,word:r.word.w,answer:r.word.w,parts:[...r.word.w]}))}async function Qw(e){const{count:t=10}=e,a=(await Wt({...e})).filter(c=>c.word.s===2),r=eo(),n=new Set(ea.map(c=>c.w)),i=e.phonemeView??"char",s=[];for(const c of ze(a)){if(s.length>=t)break;const u=zi(c.word.w,e.composition??null,r,i,n);if(!u)continue;const[d,...m]=u.distractors,h=[...c.word.w],p=h[0]===d?h[1]:h[0];s.push({id:At("D2-item"),index:s.length+1,original:c.word.w,word:c.word.w,dropped:p,missingResult:d,distractors:m})}return s}async function Jw(e){const{count:t=10}=e,a=(await Wt({...e})).filter(c=>c.word.s===3),r=eo(),n=new Set(ea.map(c=>c.w)),i=e.phonemeView??"char",s=[];for(const c of ze(a)){if(s.length>=t)break;const u=Ii(c.word.w,e.composition??null,r,i,n);if(!u)continue;const[d,...m]=u.distractors,h=[...c.word.w];let p="";for(let g=0;g<h.length;g++)if(h.filter((v,b)=>b!==g).join("")===d){p=h[g];break}s.push({id:At("D3-item"),index:s.length+1,original:c.word.w,word:c.word.w,dropped:p,missingResult:d,distractors:m})}return s}async function e4(e){const{count:t=10}=e,a=(await Wt({...e})).filter(c=>c.word.s>=2),r=eo(),n=new Set(ea.map(c=>c.w)),i=e.phonemeView??"char",s=[];for(const c of ze(a)){if(s.length>=t)break;const u=Oi(c.word.w,e.composition??null,r,i,n);if(!u)continue;const[d,...m]=u.distractors,h=c.word.w,p=h.startsWith(d)?h.slice(d.length):h.endsWith(d)?h.slice(0,h.length-d.length):"";s.push({id:At("DPC-item"),index:s.length+1,original:h,word:h,dropped:p,missingResult:d,distractors:m})}return s}async function t4(e){const{count:t=10}=e,a=(await Wt({...e})).map(r=>r.word.w);return a.length<3?[]:Array.from({length:t},(r,n)=>{const i=ta(a,3);return{id:At("LRO-item"),index:n+1,sequence:i,choices:ze(i)}})}function en(e,t,a){const r=ea.filter(s=>s.w&&s.s===e),n=t?sr(r.map(s=>s.w)):null,i=[];for(const s of r)if(!(n&&!n.has(s.w))){if(a){const c=Ne(s.w);if(!c||!a(c))continue}i.push(s)}return i}function a4(e){const t=en(1,e.excludeNoImage??!1,a=>a.jong===0);return ta(t,e.count??10).map((a,r)=>{const n=Ne(a.w);return{id:At("M2P-item"),index:r+1,parts:[qe[n.cho],dt[n.jung]],answer:a.w,word:a.w}})}function o4(e){const t=en(1,e.excludeNoImage??!1,a=>a.jong>0&&!ho[a.jong]);return ta(t,e.count??10).map((a,r)=>{const n=Ne(a.w);return{id:At("M3P-item"),index:r+1,parts:[qe[n.cho],dt[n.jung],gt[n.jong]],answer:a.w,word:a.w}})}function r4(e){const t=Wr.DROP_FINAL_CONSONANT_FROM_1SYLL,a=en(t.syllables,e.excludeNoImage??!1,t.syllable),r=eo(),n=[];for(const i of ze(a)){if(n.length>=(e.count??10))break;const s=Fi(i.w,null,r);if(!s)continue;const[c,...u]=s.distractors;n.push({id:At("DFC-item"),index:n.length+1,original:i.w,word:i.w,result:c,distractors:u})}return n}function n4(e){const t=Wr.REMOVE_CONSONANT_AND_IDENTIFY_PHONEME,a=en(t.syllables,e.excludeNoImage??!1,t.syllable),r=eo(),n=[];for(const i of ze(a)){if(n.length>=(e.count??10))break;const s=Hi(i.w,null,r);if(!s)continue;const c=Ne(r.get(i.w)||i.w);if(!c)continue;const[u,...d]=s.distractors;n.push({id:At("RCP-item"),index:n.length+1,base:i.w,word:i.w,missingConsonant:qe[c.cho],remaining:u,distractors:d})}return n}const tn=new Map;let yp=null,xp=null;async function Cp(e,t={}){const a=fo(),r=Ka();(a!==yp||r!==xp)&&(tn.clear(),yp=a,xp=r);const n=`${e}:${bp(t)}`;if(tn.has(n))return tn.get(n);const i=await s4(e,t);return tn.set(n,i),i}const i4={SAME_SOUND_PICK:e=>gp("SSP",e),HEAR_AND_PICK_SAME:e=>gp("HPS",e),HEAR_AND_PICK_INCLUDED:e=>Hw(e),SAME_OR_DIFF:e=>Vw(e),STARTS_WITH_SAME_SOUND:e=>Gw(e),LISTEN_AND_REMEMBER_ORDER:e=>t4(e),MERGE_2_SYLLABLES:e=>Zw(e),MERGE_3_SYLLABLES:e=>Xw(e),MERGE_2_PHONEMES:e=>a4(e),MERGE_3_PHONEMES:e=>o4(e),DROP_1_FROM_2SYLL:e=>Qw(e),DROP_1_FROM_3SYLL:e=>Jw(e),DROP_PART_FROM_COMPOUND:e=>e4(e),DROP_FINAL_CONSONANT_FROM_1SYLL:e=>r4(e),REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:e=>n4(e),CHANGE_1_SYLL_IN_2SYLL:e=>qw(e),CHANGE_1_SYLL_IN_3SYLL:e=>Yw(e),CHANGE_1_PHONEME_IN_1SYLL:e=>Uw(e),CHANGE_1_PHONEME_IN_2SYLL:e=>Kw(e)};async function s4(e,t={}){const a=i4[e];return a?await a(t):[]}async function l4(e){const t=[null,"count"],a=Object.keys(go);let r=0;for(const n of t)for(const i of a){const s=go[i];Cp(i,{difficulty:s.difficulty?n:null,choseong:null,count:10,excludeNoImage:e}).catch(()=>{}),++r%6===0&&await new Promise(c=>setTimeout(c,0))}}async function c4(e){return(await Wt({...e,fullCount:!0})).length}async function d4(e={}){const t=[];for(const c of ea)c.w&&t.push(c.w);const a=e.excludeNoImage?sr(t):t,r=new Set,n=new Set,i=new Set,s=new Set;for(const c of a){s.add(mo(c));for(const u of c){const d=Ne(u);if(d&&(qe[d.cho]!=="\u3147"&&r.add(qe[d.cho]),n.add(dt[d.jung]),d.jong>0)){i.add(gt[d.jong]);const m=ho[d.jong];m&&m.forEach(h=>i.add(h))}}}return{cho:r,jung:n,jong:i,syllable:s}}const _p={free:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:0,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},personal_standard:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:2,sentenceDataLevel:2,crossword:!0,crosswordMid:!0,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},mgr_free:{maxCustomers:5,visitWord:!0,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:1,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},none:{maxCustomers:0,visitWord:!1,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!1,wordTableSetting:!1,wordTablePrint:!1,addToMyList:!1,addToGroupList:!1,wordSearch:!1,wordSearchPrint:!1,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:0,sentenceDataLevel:0,crossword:!1,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!1},lite_word:{maxCustomers:10,visitWord:!0,visitSentence:!1,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:0,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!1},lite_sentence:{maxCustomers:10,visitWord:!1,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!1,wordTableSetting:!1,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!1,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:0,sentenceDataLevel:1,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!1,sentenceTrainingView:!0},lite:{maxCustomers:10,visitWord:!0,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!1,wordTrainingSetting:!1,myWordList:!1,wordListShare:!1,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!1,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!1,wordSearchAddToGroupList:!1,wordDataLevel:1,sentenceDataLevel:1,crossword:!0,crosswordMid:!1,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},standard:{maxCustomers:30,visitWord:!0,visitSentence:!0,homework:!1,customerStats:!1,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:2,sentenceDataLevel:2,crossword:!0,crosswordMid:!0,crosswordHigh:!1,wordTrainingView:!0,sentenceTrainingView:!0},pro:{maxCustomers:50,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!0,managerCustomerSplit:!1,managerManagement:!1,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!1,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!1,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!1,wordDataLevel:3,sentenceDataLevel:3,crossword:!0,crosswordMid:!0,crosswordHigh:!0,wordTrainingView:!0,sentenceTrainingView:!0},enterprise:{maxCustomers:1/0,visitWord:!0,visitSentence:!0,homework:!0,customerStats:!0,managerCustomerSplit:!0,managerManagement:!0,sentenceTrainingSetting:!0,wordTrainingSetting:!0,myWordList:!0,wordListShare:!0,groupTrainingSetting:!0,minimalPairSearch:!0,wordTableSetting:!0,wordTablePrint:!0,addToMyList:!0,addToGroupList:!0,wordSearch:!0,wordSearchPrint:!0,wordSearchAddToMyList:!0,wordSearchAddToGroupList:!0,wordDataLevel:3,sentenceDataLevel:3,crossword:!0,crosswordMid:!0,crosswordHigh:!0,wordTrainingView:!0,sentenceTrainingView:!0}},wp={none:0,free:1,personal_standard:3,mgr_free:4,lite_word:5,lite_sentence:5,lite:6,standard:7,pro:8,enterprise:9},kp={free:{sentenceTrainingDaily:2,wordTrainingDaily:2,gameDaily:1},personal_standard:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null},mgr_free:{sentenceTrainingDaily:2,wordTrainingDaily:2,gameDaily:1,trainingItemMax:5,customerMax:5,homeworkSendDaily:1},lite:{sentenceTrainingDaily:5,wordTrainingDaily:5,gameDaily:5,trainingItemMax:10,customerMax:10,homeworkSendDaily:10},standard:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:30,customerMax:30,homeworkSendDaily:30},pro:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:null,customerMax:50,homeworkSendDaily:50},enterprise:{sentenceTrainingDaily:null,wordTrainingDaily:null,gameDaily:null,trainingItemMax:null,customerMax:null,homeworkSendDaily:null}};function Sp(e){const t=e.toLowerCase();return t.startsWith("manager_enterprise")?"enterprise":t.startsWith("manager_pro")?"pro":t.startsWith("manager_standard")?"standard":t.startsWith("manager_lite_word")?"lite_word":t.startsWith("manager_lite_sentence")?"lite_sentence":t.startsWith("manager_lite")||t.startsWith("mgr_lite")?"lite":t.startsWith("mgr_standard")?"standard":t.startsWith("mgr_pro")?"pro":t.startsWith("content_")||t.startsWith("speechear_")||t.startsWith("light_")||t==="light"?"personal_standard":"none"}const Ap=5,Tp=5;function Bp({rank:e,voteCount:t,quota:a=5}){return e<a&&t>0}const Np={selected:"ALREADY_SELECTED",added:"ALREADY_ADDED",rejected:"ALREADY_REJECTED"};var u4=Object.freeze({__proto__:null,CAPABILITY:go,CHOSEONG:qe,JONGSEONG:gt,JUNGSEONG:dt,LONG_STORIES:za,NETWORK_ERROR_MESSAGE:qi,NOISE_DATAS:Ra,ORDER_SETS:Ia,PLAN_FEATURES:_p,PLAN_LIMITS:kp,SHORT_STORIES:$a,TIER_RANK:wp,TOPIC_TYPES:cp,TRAINING_TYPES:Zr,TRAINING_TYPE_I18N_KEY:bs,WORD_SUGGESTION_ACCOUNT_LIMIT:Tp,WORD_SUGGESTION_EXISTING_ERROR:Np,WORD_SUGGESTION_WEEKLY_QUOTA:Ap,applyFontScale:ls,applyTheme:is,buildChangeWholeSyllableProblem:Gi,buildDropCompoundProblem:Oi,buildDropContrast3Problem:Ii,buildDropContrastProblem:zi,buildDropFinalConsonantProblem:Fi,buildMultiPartPosContrast:yi,buildPairIndex:Qd,buildRemoveConsonantProblem:Hi,buildSyllableMaskIndex:Vi,bulkSetImageExistence:Fd,cardQuestionTitle:yu,checkImageExists:qo,classifyPairDifficulty:ii,clearAudioExistsCache:Md,clearImageExistenceCache:ri,clearPairIndexCache:gi,composeSyllable:ua,computeDailySelection:ds,configureImageResolver:Id,configureNoiseSettingsStore:Wu,configurePronunciationResolver:Rd,configureStorage:Kn,configureTTS:Ld,configureTrainingCategories:tp,copyText:as,createDecompCache:ni,createTTSUrlResolver:Gu,dateToDb:ep,downloadCsvText:Su,downloadSound:Br,ensureTrainingDataLoaded:ms,escapeCsvField:ku,fileExists:Zn,filterContrastCandidates:vi,finalToPhoneme:Fr,firstChoseongOf:si,formatCount:or,formatDateKo:qu,formatDateLocale:Uu,formatDateLongKo:Yu,formatDateLongLocale:Ku,formatDatetimeKo:Zu,formatPhone:Qu,formatRelativeTime:qr,formatTimeHM:Ur,formatYmd:Yr,getAssetBaseUrl:Yn,getDailySelection:sp,getElementAnalyser:Ho,getErrorMessage:Vr,getImageExistenceStats:Er,getImageExistsCached:oi,getImageResolver:Ma,getNoiseBaseUrl:Xn,getPairIndex:Ka,getPlanTier:Sp,getPronunciationResolver:ei,getSavedFontScale:ss,getSavedTheme:ns,getSignedOrPublicUrl:Io,getTTSFallbackUrlResolver:Jn,getTTSUrlResolver:Oo,getTodayKst:Gr,getTopicTypes:Kr,getTrainingPools:us,getTrainingTypes:rs,getWordPool:fo,hasQuestionWordConstraint:pu,hasSel:ft,hasStructureContrast:Uo,initFontScale:np,initTheme:op,isAllChoseong:ci,isManualOnlyType:mu,isNetworkErrorMessage:Yi,isSyllablePattern:pi,isThisWeekPick:Bp,isTrainingDataLoaded:lp,isValidQuestionWord:hu,itemCorrectness:Xi,jamoToNamesForSpeech:xu,loadGameLeaderboard:Fu,loadMyGameRanks:Ou,loadNoiseSettings:es,loadTrainingData:hs,logCrossword:Eu,logTrainingCompletion:Zi,logTrainingTime:Ki,matchSyllables:Qa,matchesChoseongSearch:Wd,matchesSyllablePattern:hi,matchesWordQuery:po,mergeQuestionText:Ri,minimalPairDistractors:jr,normalizeDate:Ju,officialSoundPath:Vu,parseSortValue:wu,parseSyllable:Ne,patternToComposition:Ud,phonemePartsOf:vu,pickEuRo:Li,pickEulReul:Ni,pickEunNeun:Ei,pickIga:Ti,pickWaGwa:ji,prewarmImageCache:Od,primarySelPart:er,readLevel:ti,reorderArray:Mi,resolveAssetUrl:$o,resolveSoundPath:Tr,resumeAudioMeter:Wo,sample:Qt,saveNoiseSettings:ts,searchAndRankWords:Zd,setAssetBaseUrl:Ed,setCrosswordLogger:Du,setGameLeaderboardLoader:zu,setGameRanksLoader:$u,setGameScoreSubmitter:Ru,setTrainingCompletionLogger:Nu,setTrainingTimeLogger:Bu,setWordPool:Tu,shuffle:ze,sortToValue:_u,soundOf:Hr,speak:Bd,stopSpeaking:Nd,submitGameScore:Iu,syllMatchesComp:Pa,syllableContrasts:Ja,syllableLength:mo,syllablePron:$i,toBase64UrlSafe:Hu,toChoseong:li,toItemResults:Qi,toKstHm:Xu,toKstYmd:ka,toStandardPronunciation:lu,toStorageName:tr,toUserErrorMessage:Cu,validateSyllableSearchInput:Kd,withEuRo:uu,withEulReul:Di,withEunNeun:cu,withIga:Bi,withWaGwa:du,wordContainsChoseong:Vd,wordContainsJongseong:qd,wordContainsJungseong:Gd,wordHasNoCoda:di,wordHasSyllableMatching:ui,wrongItems:ju});function p4(e){return typeof window>"u"?"":V_.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use"],FORBID_ATTR:["xlink:href","href"]})}function h4(e){const[t,a]=l.useState(null),[r,n]=l.useState(null),[i,s]=l.useState(null),[c,u]=l.useState(null);return l.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),n(null),s(null);return}const d=e.split("/").pop();let m=e;d&&(e.startsWith("/")?m=$o(e):/^(Logo|Symbol)/i.test(d)?m=$o(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),m=e)),a(m)},[e]),l.useEffect(()=>{if(!t)return;let d=!1;async function m(){try{let h=await fetch(t);h.ok||(h=await fetch(t));const p=h.headers.get("content-type")||"";if(d)return;if(p.includes("svg")){n("mask");return}if(p.startsWith("image/")){n("img");return}const g=await fetch(t);if(!g.ok)throw new Error("not ok");const v=await g.text();if(d)return;if(/^\s*<svg[\s>]/i.test(v)){const b=p4(v);if(!b){n("none");return}s(b),n("inline");return}n("none")}catch{d||n("none")}}return m(),()=>{d=!0}},[t]),l.useEffect(()=>{let d=!1,m=null;return r==="mask"&&t&&fetch(t).then(h=>{if(!h.ok)throw new Error("fetch failed");return h.blob()}).then(h=>{d||(m=URL.createObjectURL(h),u(m))}).catch(()=>{d||n("img")}),()=>{d=!0,m&&URL.revokeObjectURL(m),u(null)}},[r,t]),{iconToUse:t,mode:r,svgText:i,blobUrl:c}}function Pe(e){const{icon:t,label:a,className:r,imgClassName:n,maskClassName:i,svgClassName:s,wrapperStyle:c,size:u}=e||{},d=r??"iconRenderer-icon",m=n??"iconRenderer-icon-image",h=i??"iconRenderer-icon-mask",p=s??"iconRenderer-icon-svg",g=typeof t=="string"?t:null,v=c_(g),{iconToUse:b,mode:y,svgText:f,blobUrl:x}=h4(g),_=(S,N={})=>o.jsx("span",{className:d,style:c,...N,children:S}),C=(S,N={})=>o.jsx("img",{src:S,alt:typeof a=="string"?a:a?String(a):"",className:m,...N});if(!t)return null;if(typeof t!="string")return _(t);if(t==="none")return _(o.jsx("span",{className:p,dangerouslySetInnerHTML:{__html:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true"></svg>'}}),{"aria-hidden":"true"});if(v)try{return _(l.createElement(v,{className:p,size:typeof u=="number"?u:20}),{"aria-hidden":"true"})}catch{}if(b&&b.endsWith(".svg")){if(y==="mask"){const S={"--icon-url":x?`url(${x})`:`url(${b})`};return _(o.jsx("span",{className:h,style:S}),{"aria-hidden":"true"})}return y==="img"?_(C(b,{onError:S=>{S.currentTarget.onerror=null,S.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):y==="inline"?_(o.jsx("span",{className:p,dangerouslySetInnerHTML:f?{__html:f}:void 0}),{"aria-hidden":"true"}):_(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return C($o(t),{style:c,onError:S=>{S.currentTarget.onerror=null,S.currentTarget.style.display="none"}});const A=typeof u=="number"?u:20,w=`<svg width="${A}" height="${A}" 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 _(o.jsx("span",{className:p,dangerouslySetInnerHTML:{__html:w}}),{"aria-hidden":"true"})}function Dp({icon:e,emoji:t,title:a,message:r,hint:n,action:i,compact:s,className:c}){return o.jsxs("div",{className:xe("empty-state",s&&"empty-state--compact",c),children:[t&&o.jsx("span",{className:"empty-state__emoji",children:t}),e&&o.jsx(Pe,{icon:e,className:"empty-state__icon"}),a&&o.jsx("p",{className:"empty-state__title body-2",children:a}),r&&o.jsx("p",{className:"empty-state__message body-3",children:r}),n&&o.jsx("p",{className:"empty-state__hint caption-1",children:n}),i&&o.jsxs("button",{className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:i.onClick,children:[i.icon&&o.jsx(Pe,{icon:i.icon,className:"button__icon"}),o.jsx("span",{className:"button__label button-1",children:i.label})]})]})}var m4=".ihabdevteam-core-scope .error-state__icon{color:var(--color-error)}";Q(m4);function Ep({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:n,className:i}){const{t:s}=me.useTranslation();return o.jsxs("div",{className:xe("empty-state","error-state",i),role:"alert",children:[o.jsx(Pe,{icon:a,className:"empty-state__icon error-state__icon"}),o.jsx("p",{className:"empty-state__message body-3",children:e??s("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&o.jsx("p",{className:"empty-state__hint caption-1",children:t}),r&&o.jsxs("button",{className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:r,children:[o.jsx(Pe,{icon:"rotate-cw",className:"button__icon"}),o.jsx("span",{className:"button__label button-1",children:n??s("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}var b4=".ihabdevteam-core-scope .action-card{--ac-color:var(--color-main);--ac-color-a10:var(--color-main-a10);aspect-ratio:1/1;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-l);box-shadow:var(--shadow-card);cursor:pointer;display:block;overflow:hidden;transition:transform .2s ease-out,box-shadow .2s ease-out,border-color .2s ease-out;width:100%}.ihabdevteam-core-scope .action-card--sub{--ac-color:var(--color-sub);--ac-color-a10:var(--color-sub-a10)}.ihabdevteam-core-scope .action-card:focus-visible{outline:none}.ihabdevteam-core-scope .action-card:not(.action-card--disabled):focus-visible,.ihabdevteam-core-scope .action-card:not(.action-card--disabled):hover{border-color:var(--ac-color);box-shadow:var(--shadow-panel);transform:translateY(-4px)}.ihabdevteam-core-scope .action-card--disabled{cursor:wait;opacity:.6}.ihabdevteam-core-scope .action-card__body{display:flex;flex-direction:column;gap:var(--spacing-m);height:100%;padding:var(--spacing-l)}.ihabdevteam-core-scope .action-card__chip{align-items:center;background:var(--ac-color-a10);border-radius:var(--radius-m);color:var(--ac-color);display:flex;height:64px;justify-content:center;width:64px}.ihabdevteam-core-scope .action-card__text{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .action-card__title{color:var(--color-text-primary);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight-bold);letter-spacing:var(--text-h2-spacing);line-height:var(--text-h2-line);margin:0}.ihabdevteam-core-scope .action-card__desc{color:var(--color-lightGray);font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight);line-height:var(--text-body-2-line);margin:0}.ihabdevteam-core-scope .action-card__cta{align-items:center;color:var(--ac-color);display:flex;font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight-bold);gap:var(--spacing-xs);justify-content:flex-end;line-height:var(--text-body-2-line);margin-top:auto;padding-right:var(--spacing-s);padding-top:var(--spacing-s)}.ihabdevteam-core-scope .action-card__arrow{display:flex;transition:transform .2s}.ihabdevteam-core-scope .action-card:not(.action-card--disabled):hover .action-card__arrow{transform:translateX(4px)}";Q(b4);function jp({icon:e,title:t,description:a,cta:r,tone:n="main",disabled:i=!1,onClick:s,className:c=""}){const u=()=>{i||s?.()};return o.jsx("section",{role:"button",tabIndex:i?-1:0,"aria-disabled":i||void 0,"aria-label":t,onClick:u,onKeyDown:d=>{(d.key==="Enter"||d.key===" ")&&(d.preventDefault(),u())},className:xe("action-card",`action-card--${n}`,i&&"action-card--disabled",c),children:o.jsxs("div",{className:"action-card__body",children:[o.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:o.jsx(Pe,{icon:e,size:34})}),o.jsxs("div",{className:"action-card__text",children:[o.jsx("h2",{className:"action-card__title",children:t}),o.jsx("p",{className:"action-card__desc",children:a})]}),o.jsxs("div",{className:"action-card__cta",children:[o.jsx("span",{children:r}),o.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:o.jsx(Pe,{icon:"arrow-right",size:18})})]})]})})}function Lp({as:e="div",className:t="",children:a,storage:r,...n}){r&&Kn({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});const i=xe("ihabdevteam-core-scope",t);return o.jsx(e,{className:i,...n,children:a})}var g4=".ihabdevteam-core-scope .notice-box{background:var(--color-darkWhite);border-radius:var(--radius-m);color:var(--color-gray);margin:0 auto var(--spacing-page);padding:var(--spacing-l);position:relative;text-align:left}.ihabdevteam-core-scope .notice-box ul{margin:0;padding:0 0 0 18px}.ihabdevteam-core-scope .notice-box__inner{border-radius:var(--radius-s);padding:12px 14px;text-align:left}.ihabdevteam-core-scope .notice-box__title{color:var(--color-darkGray);margin:0 0 10px}.ihabdevteam-core-scope .notice-box__body,.ihabdevteam-core-scope .notice-box__line{color:var(--color-deepGray)}.ihabdevteam-core-scope .notice-box--default{border-color:var(--color-whiteLine)}.ihabdevteam-core-scope .notice-box--dashed{background:var(--color-deepWhite);border:1px dashed var(--color-whiteLine)}.ihabdevteam-core-scope .notice-box--important{border:1px solid var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .notice-box__dismiss{background:none;border:none;border-radius:var(--radius-xs);color:var(--color-lightGray);cursor:pointer;font-size:18px;line-height:1;padding:2px 6px;position:absolute;right:10px;top:8px;transition:color .12s}.ihabdevteam-core-scope .notice-box__dismiss:hover{color:var(--color-gray)}@media (max-width:767px){.ihabdevteam-core-scope .notice-box,.ihabdevteam-core-scope .notice-box__inner{padding:var(--spacing-s)}}";Q(g4);function Mp({title:e="",lines:t=[],notices:a=null,children:r,variant:n="default",dismissible:i=!1,className:s=""}){const{t:c}=me.useTranslation(),[u,d]=l.useState(!1),m=l.useCallback(()=>d(!0),[]);if(u)return null;const h=`notice-box notice-box--${n} body-2 ${s}`.trim();if(a&&Array.isArray(a)&&a.length)return o.jsx("div",{className:h,role:"note",children:a.map((g,v)=>o.jsxs("div",{className:"notice-box__inner",children:[g.title?o.jsx("span",{className:"notice-box__title body-3",children:g.title}):null,o.jsx("div",{className:"notice-box__body",children:g.lines&&g.lines.length?o.jsx("div",{children:g.lines.map((b,y)=>o.jsx("span",{className:"notice-box__line body-3",children:b},y))}):g.children??null})]},v))});const p=e||t.length?o.jsxs("div",{className:"notice-box__inner",children:[e?o.jsx("span",{className:"notice-box__title body-1",children:e}):null,o.jsx("div",{className:"notice-box__body",children:t.length?o.jsx("ul",{children:t.map((g,v)=>o.jsx("li",{className:"notice-box__line",children:g},v))}):r})]}):o.jsx("div",{className:"notice-box__inner",children:r});return o.jsxs("div",{className:h,role:"note",children:[p,i&&o.jsx("button",{className:"notice-box__dismiss",onClick:m,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}var f4=".ihabdevteam-core-scope .button{align-items:center;background:var(--color-white);border:0;border:var(--button-border,0);box-sizing:border-box;color:inherit;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);padding:0 12px;transition:background-color .14s ease,color .14s ease,transform .1s ease,box-shadow .14s ease}.ihabdevteam-core-scope .button__icon,.ihabdevteam-core-scope .button__left,.ihabdevteam-core-scope .button__right{align-items:center;color:inherit;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .button--align-center .button__label,.ihabdevteam-core-scope .button--align-right .button__label{flex:1 1 auto;text-align:center}.ihabdevteam-core-scope .button__icon{height:24px;width:24px}.ihabdevteam-core-scope .button__icon--small{height:16px;width:16px}.ihabdevteam-core-scope .button__icon--medium{height:24px;width:24px}.ihabdevteam-core-scope .button__icon--large{height:36px;width:36px}.ihabdevteam-core-scope .button__center-group{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .button__center-group .button__label{display:inline-block;flex:0 1 auto;text-align:center}.ihabdevteam-core-scope .button__label{display:block;white-space:normal}.ihabdevteam-core-scope .button__label-text{align-items:center;display:inline-flex;justify-content:center;max-width:100%;vertical-align:middle;white-space:normal;word-break:break-word}.ihabdevteam-core-scope .button__label-text--has-sub{flex-direction:column;gap:3px}.ihabdevteam-core-scope .button__count{color:var(--color-main);font-weight:700;margin-left:4px}.ihabdevteam-core-scope .button--variant-main .button__count,.ihabdevteam-core-scope .is-selected .button__count,.ihabdevteam-core-scope [aria-pressed=true] .button__count{color:#fff}.ihabdevteam-core-scope .button__label:has(>.button__label-text+.button__label-text){gap:5px}.ihabdevteam-core-scope .button__sub-label-text{color:var(--button-subLabel-color,var(--color-gray));display:block}.ihabdevteam-core-scope .button__icon-img{display:block;height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.ihabdevteam-core-scope .button__icon-mask{background-color:currentColor;display:block;height:100%;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.ihabdevteam-core-scope .button__icon-svg{align-items:center;display:inline-flex;height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .button__icon-svg svg{display:block;height:100%;width:100%}.ihabdevteam-core-scope .button__icon-svg svg,.ihabdevteam-core-scope .button__icon-svg svg *{fill:currentColor;stroke:currentColor}.ihabdevteam-core-scope .button .button__label{color:currentColor;color:var(--button-text-color,currentColor);min-height:20px;min-width:20px}.ihabdevteam-core-scope .button .button__icon,.ihabdevteam-core-scope .button .button__left,.ihabdevteam-core-scope .button .button__right{color:currentColor;color:var(--button-icon-color,currentColor)}.ihabdevteam-core-scope .button--align-left{justify-content:flex-start}.ihabdevteam-core-scope .button--align-center{justify-content:center}.ihabdevteam-core-scope .button--align-right{justify-content:flex-end}.ihabdevteam-core-scope .button--align-left .button__label{align-items:center;display:inline-flex;flex:1 1 auto}.ihabdevteam-core-scope .button--align-left .button__label-text{justify-content:flex-start;text-align:left}.ihabdevteam-core-scope .button--align-center .button__label{align-items:center;display:flex;flex:1 1 auto;justify-content:center;text-align:center}.ihabdevteam-core-scope .button--align-right .button__label{flex:1 1 auto;text-align:right}.ihabdevteam-core-scope .button--align-grid{justify-content:center}.ihabdevteam-core-scope .button--align-grid .button__label{display:grid;flex:1 1 auto;grid-auto-columns:1fr;grid-auto-flow:column;text-align:center}.ihabdevteam-core-scope .button.button--no-bg{background:transparent;border-color:transparent}.ihabdevteam-core-scope .button--variant-danger{--button-text-color:var(--color-error);--button-icon-color:var(--color-error);--button-subLabel-color:var(--color-error);background:var(--color-deepWhite);border:var(--button-border,1px solid var(--color-error))}.ihabdevteam-core-scope .button--variant-danger:focus-visible,.ihabdevteam-core-scope .button--variant-danger:hover{--button-text-color:var(--color-error);--button-icon-color:var(--color-error);--button-subLabel-color:var(--color-error);background:var(--color-error-a10);border-color:var(--color-error)}.ihabdevteam-core-scope .button--variant-danger.is-selected,.ihabdevteam-core-scope .button--variant-danger[aria-pressed=true]{--button-text-color:#fff;--button-icon-color:#fff;--button-subLabel-color:#fff;background:var(--color-error);border-color:var(--color-error)}.ihabdevteam-core-scope .button--variant-default{--button-text-color:var(--color-darkGray);--button-icon-color:var(--color-lightGray);--button-subLabel-color:var(--color-gray);background:var(--color-deepWhite);border:var(--button-border,1px solid var(--color-whiteLine))}.ihabdevteam-core-scope .button--variant-default:focus-visible,.ihabdevteam-core-scope .button--variant-default:hover{--button-text-color:var(--color-black);--button-icon-color:var(--color-main);--button-subLabel-color:var(--color-black);background:var(--color-white);border-color:var(--color-main)}.ihabdevteam-core-scope .button--variant-default.is-selected,.ihabdevteam-core-scope .button--variant-default[aria-pressed=true]{--button-text-color:#fff;--button-icon-color:#fff;--button-subLabel-color:#fff;background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .button--variant-main{--button-subLabel-color:var(--color-white-a80);background:var(--color-main);border:var(--button-border,1px solid var(--color-main));color:#fff}.ihabdevteam-core-scope .button--variant-main:focus-visible,.ihabdevteam-core-scope .button--variant-main:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-sub);border-color:var(--color-sub);color:#fff}.ihabdevteam-core-scope .button--variant-main.is-selected,.ihabdevteam-core-scope .button--variant-main[aria-pressed=true]{--button-subLabel-color:var(--color-white-a80);background:var(--color-sub);color:#fff}.ihabdevteam-core-scope .button--variant-sub{--button-subLabel-color:var(--color-white-a80);background:var(--color-primary,var(--color-sub));color:#fff}.ihabdevteam-core-scope .button--variant-sub:focus-visible,.ihabdevteam-core-scope .button--variant-sub:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-uiAccent);color:#fff}.ihabdevteam-core-scope .button--variant-transparent-white{--button-subLabel-color:var(--color-white-a60);background:transparent;border:var(--button-border,1px solid var(--color-white-a80));color:#fbfdff}.ihabdevteam-core-scope .button--variant-transparent-white:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-white:hover{--button-subLabel-color:var(--color-white-a80);background:var(--color-white-a10);color:#fff}.ihabdevteam-core-scope .button--variant-transparent-white.is-selected,.ihabdevteam-core-scope .button--variant-transparent-white[aria-pressed=true]{--button-subLabel-color:var(--color-lightGray);background:var(--color-white);color:var(--color-main)}.ihabdevteam-core-scope .button--variant-transparent-gray{--button-subLabel-color:var(--color-gray-a60);background:transparent;border:var(--button-border,1px solid var(--color-gray-a80));color:var(--color-gray-a80)}.ihabdevteam-core-scope .button--variant-transparent-gray:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-gray:hover{--button-subLabel-color:var(--color-gray-a60);background:var(--color-gray-a10);color:var(--color-gray)}.ihabdevteam-core-scope .button--variant-transparent-lightGray{--button-subLabel-color:var(--color-gray-a60);background:transparent;border:var(--button-border,1px solid var(--color-lightGray-a80));color:var(--color-gray)}.ihabdevteam-core-scope .button--variant-transparent-lightGray:focus-visible,.ihabdevteam-core-scope .button--variant-transparent-lightGray:hover{--button-subLabel-color:var(--color-gray-a60);background:var(--color-lightGray-a10);color:var(--color-deepGray)}.ihabdevteam-core-scope .button--variant-disabled{--button-subLabel-color:var(--color-disabled);background-color:transparent;border:var(--button-border,1px solid var(--color-whiteLine));color:var(--color-disabled)}.ihabdevteam-core-scope .button--variant-disabled .button__icon,.ihabdevteam-core-scope .button--variant-disabled .button__left,.ihabdevteam-core-scope .button--variant-disabled .button__right{color:var(--color-disabled)}.ihabdevteam-core-scope .button--variant-disabled-covered{background-color:var(--color-darkWhite);border:var(--button-border,1px solid var(--color-darkWhite));border-color:var(--color-whiteLine);color:transparent}.ihabdevteam-core-scope .button--variant-disabled-covered .button__icon,.ihabdevteam-core-scope .button--variant-disabled-covered .button__left,.ihabdevteam-core-scope .button--variant-disabled-covered .button__right{color:transparent}.ihabdevteam-core-scope .button--variant-disabled-faded,.ihabdevteam-core-scope .button--variant-disabled-invisibled{background:transparent}.ihabdevteam-core-scope .button--variant-disabled-faded .button__icon,.ihabdevteam-core-scope .button--variant-disabled-faded .button__left,.ihabdevteam-core-scope .button--variant-disabled-faded .button__right,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__icon,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__label,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__left,.ihabdevteam-core-scope .button--variant-disabled-invisibled .button__right{color:transparent}.ihabdevteam-core-scope .button:disabled,.ihabdevteam-core-scope .button[disabled]{cursor:default;pointer-events:none}.ihabdevteam-core-scope .button--shape-rounded{border-radius:8px!important;border-radius:var(--button-rounded-radius,8px)!important}.ihabdevteam-core-scope .button--shape-pill{border-radius:9999px!important}.ihabdevteam-core-scope .button72{--button-rounded-radius:18px;border-radius:36px;height:72px;justify-content:center}.ihabdevteam-core-scope .button72--bar{min-width:220px}.ihabdevteam-core-scope .button72--dot{padding:0;width:72px}.ihabdevteam-core-scope .button56{--button-rounded-radius:14px;border-radius:28px;height:56px;justify-content:center}.ihabdevteam-core-scope .button56--bar{min-width:190px}.ihabdevteam-core-scope .button56--dot{padding:0;width:56px}.ihabdevteam-core-scope .button52{--button-rounded-radius:13px;border-radius:26px;height:52px;justify-content:center}.ihabdevteam-core-scope .button52--bar{min-width:175px}.ihabdevteam-core-scope .button52--dot{padding:0;width:52px}.ihabdevteam-core-scope .button48{--button-rounded-radius:12px;border-radius:24px;height:48px;justify-content:center}.ihabdevteam-core-scope .button48--bar{min-width:160px}.ihabdevteam-core-scope .button48--dot{padding:0;width:48px}.ihabdevteam-core-scope .button40{--button-rounded-radius:10px;border-radius:20px;height:40px;justify-content:center}.ihabdevteam-core-scope .button40--bar{min-width:100px}.ihabdevteam-core-scope .button40--dot{padding:0;width:40px}.ihabdevteam-core-scope .button40 .button__icon,.ihabdevteam-core-scope .button40--bar .button__icon,.ihabdevteam-core-scope .button40--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button32{--button-rounded-radius:8px;border-radius:16px;height:32px;justify-content:center}.ihabdevteam-core-scope .button32--bar{min-width:72px}.ihabdevteam-core-scope .button32--dot{padding:0;width:32px}.ihabdevteam-core-scope .button32 .button__icon,.ihabdevteam-core-scope .button32--bar .button__icon,.ihabdevteam-core-scope .button32--dot .button__icon{height:18px;width:18px}.ihabdevteam-core-scope .button28{--button-rounded-radius:7px;border-radius:14px;height:28px;justify-content:center}.ihabdevteam-core-scope .button28--bar{min-width:60px}.ihabdevteam-core-scope .button28--dot{padding:0;width:28px}.ihabdevteam-core-scope .button28 .button__icon,.ihabdevteam-core-scope .button28--bar .button__icon,.ihabdevteam-core-scope .button28--dot .button__icon{height:16px;width:16px}.ihabdevteam-core-scope .button24{--button-rounded-radius:6px;border-radius:12px;height:24px;justify-content:center}.ihabdevteam-core-scope .button24--bar{min-width:48px}.ihabdevteam-core-scope .button24--dot{padding:0;width:24px}.ihabdevteam-core-scope .button24 .button__icon,.ihabdevteam-core-scope .button24--bar .button__icon,.ihabdevteam-core-scope .button24--dot .button__icon{height:14px;width:14px}.ihabdevteam-core-scope .button-keyboard{border-radius:12px;height:32px;justify-content:center}.ihabdevteam-core-scope .button-keyboard--bar{min-width:32px;padding:0 12px}.ihabdevteam-core-scope .button-keyboard--dot{padding:0;width:32px}.ihabdevteam-core-scope .button-word{border-radius:12px;height:72px;justify-content:center;padding:0 16px}.ihabdevteam-core-scope .button-word--bar{min-width:120px}.ihabdevteam-core-scope .button-word--dot{padding:0;width:72px}@media (max-width:1024px){.ihabdevteam-core-scope .button56{--button-rounded-radius:13px;border-radius:25px;height:50px}.ihabdevteam-core-scope .button56--bar{min-width:170px}.ihabdevteam-core-scope .button56--dot{width:50px}.ihabdevteam-core-scope .button48{--button-rounded-radius:11px;border-radius:22px;height:44px}.ihabdevteam-core-scope .button48--bar{min-width:140px}.ihabdevteam-core-scope .button48--dot{width:44px}.ihabdevteam-core-scope .button40{--button-rounded-radius:9px;border-radius:18px;height:36px}.ihabdevteam-core-scope .button40--bar{min-width:88px}.ihabdevteam-core-scope .button40--dot{width:36px}.ihabdevteam-core-scope .button32{--button-rounded-radius:8px;border-radius:15px;height:30px}.ihabdevteam-core-scope .button32--bar{min-width:64px}.ihabdevteam-core-scope .button32--dot{width:30px}.ihabdevteam-core-scope .button24--bar{min-width:44px}}@media (max-width:768px){.ihabdevteam-core-scope .button56{--button-rounded-radius:12px;border-radius:23px;height:46px}.ihabdevteam-core-scope .button56--bar{min-width:150px}.ihabdevteam-core-scope .button56--dot{width:46px}.ihabdevteam-core-scope .button56 .button__icon,.ihabdevteam-core-scope .button56--bar .button__icon,.ihabdevteam-core-scope .button56--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button48{--button-rounded-radius:10px;border-radius:20px;height:40px}.ihabdevteam-core-scope .button48--bar{min-width:120px}.ihabdevteam-core-scope .button48--dot{width:40px}.ihabdevteam-core-scope .button48 .button__icon,.ihabdevteam-core-scope .button48--bar .button__icon,.ihabdevteam-core-scope .button48--dot .button__icon{height:20px;width:20px}.ihabdevteam-core-scope .button40{--button-rounded-radius:8px;border-radius:17px;height:34px}.ihabdevteam-core-scope .button40--bar{min-width:80px}.ihabdevteam-core-scope .button40--dot{width:34px}.ihabdevteam-core-scope .button32{--button-rounded-radius:7px;border-radius:14px;height:28px}.ihabdevteam-core-scope .button32--bar{min-width:60px}.ihabdevteam-core-scope .button32--dot{width:28px}.ihabdevteam-core-scope .button24--bar{min-width:40px}}";Q(f4);var v4=".ihabdevteam-core-scope .tooltip-content{animation:tooltip-pop .2s cubic-bezier(.2,.9,.2,1) both;background-color:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);box-sizing:border-box;pointer-events:auto;position:absolute;transform-origin:left center;white-space:normal;will-change:transform,opacity;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-content--bordered{border:1px solid var(--color-whiteLine)}.ihabdevteam-core-scope .tooltip-content.tooltip-description,.ihabdevteam-core-scope .tooltip-content.tooltip-info,.ihabdevteam-core-scope .tooltip-content.tooltip-training{background:transparent;box-shadow:none}.ihabdevteam-core-scope .tooltip-content__header{align-items:center;color:var(--color-gray);display:flex;height:40px;padding:0 2px 10px}.ihabdevteam-core-scope .tooltip-content.is-closing{opacity:0;transition:opacity .2s ease,transform .2s ease}.ihabdevteam-core-scope .tooltip-content[data-placement=top]{transform:translateY(-6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=bottom]{transform:translateY(6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=left]{transform:translateX(-6px)}.ihabdevteam-core-scope .tooltip-content[data-placement=right]{transform:translateX(6px)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=top]{transform:translateY(-6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=bottom]{transform:translateY(6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=left]{transform:translateX(-6px) scale(.98)}.ihabdevteam-core-scope .tooltip-content.is-closing[data-placement=right]{transform:translateX(6px) scale(.98)}.ihabdevteam-core-scope .tooltip--hidden{display:none}@keyframes tooltip-pop{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tooltip-fade-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-6px) scale(.98)}}.ihabdevteam-core-scope .tooltip-backdrop{background:var(--color-popupBlock);inset:0;position:fixed;z-index:calc(var(--z-tooltip) - 1)}.ihabdevteam-core-scope .tooltip-portal{inset:0;position:fixed;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-content.is-mobile{left:50%!important;max-width:calc(100% - 40px)!important;top:50%!important;transform:translate(-50%,-50%)!important;visibility:visible!important;width:calc(100% - 40px)!important;z-index:var(--z-tooltip)!important}.ihabdevteam-core-scope .tooltip-content .tooltip-close{display:inline-flex;position:absolute;right:6px;top:6px;z-index:2}.ihabdevteam-core-scope .tooltip-content .tooltip-close .button{box-shadow:none}";Q(v4);function Sa(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:n=20,onClose:i,closeOnOutsideClick:s=!0,className:c="",role:u="dialog",ariaLabel:d="",children:m,backdrop:h=!1,isMobilePopup:p=!1,useBorder:g=!0,header:v}=e||{},b=l.useRef(null),[y,f]=l.useState({position:"fixed",left:0,top:-9999}),[x,_]=l.useState(!1),[C,A]=l.useState("bottom"),[w,S]=l.useState(!1),[N,T]=l.useState(!1),E=!t&&!a,W=l.useCallback((j=!1)=>{if(N&&p)return;const F=a?a.getBoundingClientRect():t;if(!F||!b.current)return;const ee=b.current,{offsetWidth:Z,offsetHeight:J}=ee,M=window.innerWidth,R=window.innerHeight,z=M-F.right,H=F.left,$=F.top,q=R-F.bottom;let O=0,G=0,I="top";if($>=J+r)I="top",G=F.top-r-J,O=F.left+F.width/2-Z/2;else if(q>=J+r)I="bottom",G=F.bottom+r,O=F.left+F.width/2-Z/2;else if(z>=Z+r)I="right",O=F.right+r,G=F.top+F.height/2-J/2;else if(H>=Z+r)I="left",O=F.left-r-Z,G=F.top+F.height/2-J/2;else{const pe=Math.max($,q,z,H);pe===$?(I="top",G=F.top-r-J,O=F.left+F.width/2-Z/2):pe===q?(I="bottom",G=F.bottom+r,O=F.left+F.width/2-Z/2):pe===z?(I="right",O=F.right+r,G=F.top+F.height/2-J/2):(I="left",O=F.left-r-Z,G=F.top+F.height/2-J/2)}const ne=Number(n)||8;O=Math.min(Math.max(O,ne),M-Z-ne),G=Math.min(Math.max(G,ne),R-J-ne);const X=Math.round(O),te=Math.round(G);j&&b.current?(b.current.style.left=`${X}px`,b.current.style.top=`${te}px`,b.current.dataset.placement=I):(A(I||C),f({position:"fixed",left:X,top:te}),S(!0))},[N,p,a,t,r,n,C]);l.useLayoutEffect(()=>{if(E)return;if(N&&p){f({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),S(!0);return}W();const j=requestAnimationFrame(()=>W());return()=>cancelAnimationFrame(j)},[t,a,r,m,n,E,N,p,W]),l.useEffect(()=>{if(E||N&&p||!b.current||typeof ResizeObserver>"u")return;const j=new ResizeObserver(()=>{t&&W()});return j.observe(b.current),()=>j.disconnect()},[t,m,n,E,N,p,W]),l.useEffect(()=>{if(E||N&&p)return;const j=()=>W(!0);return window.addEventListener("resize",j),document.addEventListener("scroll",j,{passive:!0,capture:!0}),()=>{window.removeEventListener("resize",j),document.removeEventListener("scroll",j,{capture:!0})}},[t,r,m,n,E,N,p,W]),l.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const j=window.matchMedia("(max-width: 768px)"),F=()=>T(!!j.matches);F();try{j.addEventListener?j.addEventListener("change",F):j.addListener(F)}catch{try{j.addListener(F)}catch{}}return()=>{try{j.removeEventListener?j.removeEventListener("change",F):j.removeListener(F)}catch{}}},[]);const L=l.useRef(!1),k=l.useCallback((j=!1)=>{if(!(x||L.current)){if(L.current=!0,j){_(!0);try{i&&i()}catch{}return}_(!0),setTimeout(()=>{i&&i()},200)}},[x,i,_]);l.useEffect(()=>{const j=Z=>{const J=b.current;if(!J)return;const M=Z.target;if(M&&!J.contains(M)){try{if(M.closest&&M.closest("[data-tooltip-ignore]"))return}catch{}s&&k(!0)}},F=Z=>{const J=b.current;if(!J)return;const M=Z.target;if(M&&!J.contains(M)){try{if(M.closest&&M.closest("[data-tooltip-ignore]"))return}catch{}s&&k(!0)}},ee=Z=>{if(Z.key==="Escape"){Z.stopPropagation(),k();return}if(Z.key==="Tab"){const J=b.current;if(!J)return;const M=J.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(!M||M.length===0)return;const R=M[0],z=M[M.length-1],H=document.activeElement;Z.shiftKey?H===R&&(Z.preventDefault(),z.focus()):H===z&&(Z.preventDefault(),R.focus())}};return document.addEventListener("pointerdown",j,!0),document.addEventListener("click",F,!0),document.addEventListener("keydown",ee),()=>{document.removeEventListener("pointerdown",j,!0),document.removeEventListener("click",F,!0),document.removeEventListener("keydown",ee)}},[i,s,k]),l.useEffect(()=>{const j=()=>{k(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",j),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",j)}},[k]);const D=o.jsxs("div",{ref:b,className:`tooltip-content ${g?"tooltip-content--bordered":""} ${x?"is-closing":""} ${c} ${N&&p?"is-mobile":""}`,role:u,"aria-label":d||void 0,style:E?{}:{...y,visibility:w?"visible":"hidden"},tabIndex:-1,"data-placement":C,"data-left":E?"":y.left,"data-top":E?"":y.top,"data-anchor-left":t?Math.round(t.left):"","data-anchor-top":t?Math.round(t.top):"","data-anchor-width":t?Math.round(t.width):"","data-anchor-height":t?Math.round(t.height):"",children:[v!=null&&o.jsx("div",{className:"tooltip-content__header h5",children:v}),m]});if(E||typeof document>"u")return D;if(h||N&&p){const j=o.jsxs("div",{className:"tooltip-portal",children:[o.jsx("div",{className:"tooltip-backdrop",onClick:()=>{s&&k(!0)}}),D]});return qt.createPortal(j,document.body)}return qt.createPortal(D,document.body)}var y4='.ihabdevteam-core-scope .tooltip-info__content{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-main);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);color:var(--color-black);display:inline-flex;justify-content:center;line-height:1;overflow:hidden;padding:4px 12px;position:relative;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .tooltip-content.tooltip-info{pointer-events:none}.ihabdevteam-core-scope .tooltip-content.tooltip-info .tooltip-info__content{box-shadow:var(--shadow-tooltip)}.ihabdevteam-core-scope .tooltip-info[data-placement=bottom] .tooltip-info__content:after,.ihabdevteam-core-scope .tooltip-info[data-placement=top] .tooltip-info__content:after{content:"";height:0;margin:0;padding:0;position:absolute;width:0}';Q(y4);function aa(e){const{anchorRect:t,text:a,offset:r=8,onClose:n,className:i="",ariaLabel:s}=e||{};return a?o.jsx(Sa,{anchorRect:t,offset:r,onClose:n,closeOnOutsideClick:!1,className:`tooltip-info ${i}`,ariaLabel:s||a,children:o.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}var x4=".ihabdevteam-core-scope .tooltip-description__box{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);display:flex;flex-direction:column;gap:10px;max-width:640px;padding:16px 20px}.ihabdevteam-core-scope .tooltip-description__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .tooltip-description__items{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .tooltip-description__item{align-items:flex-start;color:var(--color-darkGray);display:flex;gap:var(--spacing-xs);margin:0}.ihabdevteam-core-scope .tooltip-description__index{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .tooltip-description__item--active{color:var(--color-main);font-weight:600}.ihabdevteam-core-scope .tooltip-description__item--active .tooltip-description__index{color:var(--color-main)}";Q(x4);function to(e){const{anchorRect:t,title:a,items:r,activeIndex:n=-1,showIndex:i=!0,onClose:s,offset:c=12}=e||{},u=Array.isArray(r)?r:r?[r]:[];return!u.length&&!a?null:o.jsx(Sa,{anchorRect:t,offset:c,onClose:s,closeOnOutsideClick:!0,useBorder:!1,className:"tooltip-description",children:o.jsxs("div",{className:"tooltip-description__box",children:[a&&o.jsx("span",{className:"tooltip-description__title body-2",children:a}),o.jsx("ol",{className:"tooltip-description__items",children:u.map((d,m)=>o.jsxs("li",{className:`tooltip-description__item body-3${m===n?" tooltip-description__item--active":""}`,children:[i&&u.length>1&&o.jsxs("span",{className:"tooltip-description__index button-1",children:[m+1,"."]}),o.jsx("span",{children:d})]},m))})]})})}function ce(e){const{size:t=48,type:a,htmlType:r,href:n,target:i,rel:s,icon:c,rightIcon:u,label:d,count:m,subLabel:h,children:p,ariaLabel:g,variant:v="default",align:b="center",selected:y,toggleable:f=!1,disabled:x=!1,useLabel:_=!0,useBorder:C=!0,useBG:A=!0,useDisabledCovered:w=!1,useDisabledInvisible:S=!1,width:N,minWidth:T,onClick:E,onDisabledClick:W,showTooltipInfo:L=!1,tooltipInfoText:k=null,tooltipDescription:D=null,iconSize:j="medium",iconColor:F,shape:ee="rounded",color:Z,className:J,...M}=e,R=typeof t=="string"&&isNaN(Number(t))?t.toLowerCase():String(Number(t)||48),z=R.match(/^\d+$/)?`button${R}`:`button-${R}`,H=Number(t),$=!isNaN(H)&&H<40?"button-2":"button-1",q=d??p,O=x||!!M.disabled,G=O?w?"disabled-covered":S?"disabled-invisibled":"disabled":v,I=G?`button--variant-${G}`:"",ne=b?`button--align-${b}`:"",X=ee?`button--shape-${ee}`:"",te=typeof F=="string"&&F.startsWith("--")?`var(${F})`:F,pe={...N?{width:typeof N=="number"?`${N}px`:N}:{},...T?{minWidth:typeof T=="number"?`${T}px`:T}:{},...C?{}:{"--button-border":O?"0":"1px solid transparent"},...te?{"--button-icon-color":te}:{},...Z?{"--color-main":Z}:{}},ae=_===!1?"":q,Y=Array.isArray(ae)?ae.length>0:!!ae,de=!!u,fe=a??(Y||c||de?"bar":"dot"),Se=`${z}--${fe}`,Ae=l.useRef(null),P=l.useRef(O),[oe,re]=l.useState(!!y),[Ce,De]=l.useState(!1),[Ie,Oe]=l.useState(null),Fe=l.useCallback(()=>De(!1),[]);l.useEffect(()=>{(L||D)&&O&&Ce&&(De(!1),Oe(null))},[O,L,D,Ce]),l.useEffect(()=>{typeof y=="boolean"&&re(y)},[y]),l.useEffect(()=>{if(P.current&&!O&&Ae.current){const $e=Ae.current;$e.blur(),$e.style.pointerEvents="none";const Ze=requestAnimationFrame(()=>{requestAnimationFrame(()=>{Ae.current&&(Ae.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(Ze)}P.current=O},[O]);const Qe=typeof y=="boolean"?!!y:oe,Re=f||typeof y=="boolean"?Qe?"true":"false":void 0,Ge=xe("button",z,Se,I,ne,X,Qe?"is-selected":null,A?null:"button--no-bg",J),We=`button__icon button__icon--${j}`,be=Array.isArray(h)?h:h!==void 0?[h]:[],at=()=>{if(Array.isArray(ae))return ae.map((Ze,et)=>{const yt=be[et];return o.jsxs("span",{className:`button__label-text${yt!==void 0?" button__label-text--has-sub":""}`,children:[Ze,yt!==void 0&&o.jsx("span",{className:"button__sub-label-text caption-1",children:yt})]},et)});const $e=h!==void 0;return o.jsxs("span",{className:`button__label-text${$e?" button__label-text--has-sub":""}`,children:[ae,m!=null&&o.jsx("span",{className:"button__count",children:m}),$e&&o.jsx("span",{className:"button__sub-label-text caption-1",children:h})]})},He=$e=>{O||(typeof M.onMouseLeave=="function"&&M.onMouseLeave($e),typeof y!="boolean"&&re(!1),$e.currentTarget.blur())},Le=$e=>{if(O){W?.($e);return}typeof y!="boolean"&&f&&re(Ze=>!Ze),E?.($e)},Ue=l.useCallback(()=>{!O&&(L||D)&&(De(!0),Oe(Ae.current?.getBoundingClientRect()??null))},[O,L,D]),Dt=l.useCallback(()=>{(L||D)&&(De(!1),Oe(null))},[L,D]),Ke={...M};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.onFocus,delete Ke.onBlur,O&&(Object.keys(Ke).forEach($e=>{/^on[A-Z]/.test($e)&&typeof Ke[$e]=="function"&&delete Ke[$e]}),Ke["aria-disabled"]="true");const Ye=(typeof L=="string"?L:null)??(typeof k=="string"?k:null)??(typeof g=="string"?g:null)??(typeof q=="string"?q:null)??void 0,ut=typeof g=="string"?g:typeof q=="string"?q:Ye,je=($e,Ze)=>o.jsx(Pe,{icon:$e,label:Ze??ut,className:We,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),rt=()=>fe==="dot"?o.jsxs(o.Fragment,{children:[je(c),Y&&o.jsx("span",{className:`button__label ${$}`,children:at()})]}):b==="center"&&c?o.jsxs(o.Fragment,{children:[o.jsxs("span",{className:"button__center-group",children:[o.jsx("span",{className:"button__left",children:je(c)}),Y&&o.jsx("span",{className:`button__label ${$}`,children:at()})]}),de&&o.jsx("span",{className:"button__right",children:je(u)})]}):o.jsxs(o.Fragment,{children:[c&&o.jsx("span",{className:"button__left",children:je(c,g??q)}),Y&&o.jsx("span",{className:`button__label ${$}`,children:at()}),de&&o.jsx("span",{className:"button__right",children:je(u)})]}),Je=!!n&&!O;return o.jsxs(o.Fragment,{children:[o.jsx(Je?"a":"button",{...Ke,ref:Ae,...Je?{href:n,target:i,rel:s??(i==="_blank"?"noreferrer":void 0)}:{type:r,disabled:O&&!W},className:Ge,"aria-pressed":Re,"aria-label":ut,"aria-disabled":Je&&O?!0:void 0,style:pe,onClick:Le,onMouseLeave:He,onPointerEnter:$e=>{Ue(),!O&&typeof M.onPointerEnter=="function"&&M.onPointerEnter($e)},onPointerLeave:$e=>{Dt(),!O&&typeof M.onPointerLeave=="function"&&M.onPointerLeave($e)},onFocus:$e=>{Ue(),!O&&typeof M.onFocus=="function"&&M.onFocus($e)},onBlur:$e=>{He($e),Dt(),!O&&typeof M.onBlur=="function"&&M.onBlur($e)},children:rt()}),Ce&&D?o.jsx(to,{anchorRect:Ie,title:D.title,items:D.items,onClose:Fe}):Ce&&Ye?o.jsx(aa,{anchorRect:Ie,text:Ye,onClose:Fe}):null]})}function lt(e,t,a){const r=l.useRef(null);return l.useLayoutEffect(()=>{const n=r.current?.parentElement??null;return t(n,e),()=>a(n)},[e,t,a]),r}var C4=".ihabdevteam-core-scope .promo-banner-bg{border-radius:inherit;inset:0;pointer-events:none;position:absolute}";Q(C4);var _4=".ihabdevteam-core-scope .promo-banner-bg-main{background:linear-gradient(45deg,var(--color-main),var(--color-sub))}";Q(_4);const xo={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},vs=new WeakMap;function ys(e){if(e)return vs.get(e)}function Tt(e,t){e&&(e.style.setProperty(xo.title,t.title),e.style.setProperty(xo.description,t.description),vs.set(e,t))}function Bt(e){e&&(e.style.removeProperty(xo.title),e.style.removeProperty(xo.description),vs.delete(e))}const xs={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Cs(){const e=lt(xs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}var w4=".ihabdevteam-core-scope .promo-banner-bg-soft{background:var(--color-main-a10)}";Q(w4);const _s={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function ws(){const e=lt(_s,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}var k4=".ihabdevteam-core-scope .promo-banner-bg-sub{background:var(--color-sub)}";Q(k4);const ks={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ss(){const e=lt(ks,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}var S4=".ihabdevteam-core-scope .promo-banner-bg-deep{background:linear-gradient(135deg,var(--color-darkMain),var(--color-darkSub))}";Q(S4);const As={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ts(){const e=lt(As,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}var A4=".ihabdevteam-core-scope .promo-banner-bg-soft-sub{background:var(--color-sub-a10)}";Q(A4);const Bs={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Ns(){const e=lt(Bs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}var T4=".ihabdevteam-core-scope .promo-banner-bg-warm{background:var(--color-warn)}";Q(T4);const Ds={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function Es(){const e=lt(Ds,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}var B4=".ihabdevteam-core-scope .promo-banner-bg-dark{background:var(--color-lightBlack)}";Q(B4);const js={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Ls(){const e=lt(js,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}var N4=".ihabdevteam-core-scope .promo-banner-bg-radial{background:radial-gradient(circle at 15% 20%,var(--color-main) 0,var(--color-sub) 100%)}";Q(N4);const Ms={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ps(){const e=lt(Ms,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}var D4=".ihabdevteam-core-scope .promo-banner-bg-diagonal{background-color:var(--color-lightMain);background-image:repeating-linear-gradient(45deg,var(--color-main-a10) 0,var(--color-main-a10) 10px,transparent 10px,transparent 20px)}";Q(D4);const Rs={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function $s(){const e=lt(Rs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}var E4=".ihabdevteam-core-scope .promo-banner-bg-dots{background-color:var(--color-lightSub);background-image:radial-gradient(var(--color-sub-a10) 2px,transparent 2px);background-size:14px 14px}";Q(E4);const zs={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Is(){const e=lt(zs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}var j4=".ihabdevteam-core-scope .promo-banner-bg-outline{background:var(--color-white);border:1px solid var(--color-whiteLine);box-sizing:border-box}.ihabdevteam-core-scope .promo-banner-bg-outline__dot{background:linear-gradient(45deg,var(--color-main),var(--color-sub));border-radius:50%;bottom:-40px;height:140px;opacity:.12;position:absolute;right:-40px;width:140px}";Q(j4);const Os={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function Fs(){const e=lt(Os,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:o.jsx("span",{className:"promo-banner-bg-outline__dot"})})}var L4=".ihabdevteam-core-scope .promo-banner-bg-success{background:var(--color-success)}";Q(L4);const Ws={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Hs(){const e=lt(Ws,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}var M4=".ihabdevteam-core-scope .promo-banner-bg-naver{background:linear-gradient(90deg,#03c75a 0,var(--color-main) 100%)}";Q(M4);const Vs={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function Gs(){const e=lt(Vs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}var P4=".ihabdevteam-core-scope .promo-banner-bg-instagram{background:linear-gradient(45deg,#f9ce34,#ee2a7b 50%,#6228d7)}";Q(P4);const qs={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function Ys(){const e=lt(qs,Tt,Bt);return o.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const Pp=[{key:"main",label:"\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"soft",label:"\uC18C\uD504\uD2B8",textTone:"dark"},{key:"sub",label:"\uC11C\uBE0C \uCEEC\uB7EC",textTone:"light"},{key:"deep",label:"\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"softSub",label:"\uC18C\uD504\uD2B8 \uC11C\uBE0C",textTone:"dark"},{key:"warm",label:"\uC6DC(\uAC15\uC870)",textTone:"dark"},{key:"dark",label:"\uB2E4\uD06C",textTone:"light"},{key:"radial",label:"\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8",textTone:"light"},{key:"diagonal",label:"\uB300\uAC01\uC120 \uD328\uD134",textTone:"dark"},{key:"dots",label:"\uB3C4\uD2B8 \uD328\uD134",textTone:"dark"},{key:"outline",label:"\uC544\uC6C3\uB77C\uC778",textTone:"dark"},{key:"success",label:"\uC131\uACF5/\uC644\uB8CC",textTone:"light"},{key:"naver",label:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4",textTone:"light"},{key:"instagram",label:"\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4",textTone:"light"}],Us={main:Cs,soft:ws,sub:Ss,deep:Ts,softSub:Ns,warm:Es,dark:Ls,radial:Ps,diagonal:$s,dots:Is,outline:Fs,success:Hs,naver:Gs,instagram:Ys};function an({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:n=.1,lineHeightRatio:i=1.4}={}){const s=y=>Math.max(a,Math.min(r,Number(y))),[c,u]=l.useState(()=>{try{const y=localStorage.getItem(e),f=y?Number(y):1;return Number.isFinite(f)?f:1}catch{return 1}});l.useEffect(()=>{try{localStorage.setItem(e,String(c))}catch{}},[e,c]);const d=y=>{u(typeof y=="function"?f=>s(y(f)):s(y))},m=()=>d(y=>+(y+n).toFixed(6)),h=()=>d(y=>+(y-n).toFixed(6)),p=c<r-Number.EPSILON,g=c>a+Number.EPSILON,v=Math.round(t*c),b=Math.round(v*i);return{scale:c,setScale:d,increase:m,decrease:h,canIncrease:p,canDecrease:g,fontSize:v,lineHeight:b}}const on=l.createContext(null);function R4(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}function oa(e){const t=l.useContext(on),a=i=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(i).matches,[r,n]=l.useState(a(e));return l.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const i=window.matchMedia(e),s=u=>n(u.matches),c=i;return c.addEventListener?c.addEventListener("change",s):c.addListener&&c.addListener(s),n(i.matches),()=>{c.removeEventListener?c.removeEventListener("change",s):c.removeListener&&c.removeListener(s)}},[e]),t&&typeof t.mobile=="boolean"&&R4(e)?t.mobile:r}function Ks(e){const t=l.useRef(e);return l.useEffect(()=>{t.current=e}),t}function cr(e,t){const a=Ks(t);l.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const Zs=" \xB7 ",Rp=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(Zs)?e.split(Zs).pop()??e:e})(),Xs=l.createContext(!1);function Qs(e){const t=l.useContext(Xs);l.useEffect(()=>{if(t||typeof e!="string"||!e)return;const a=document.title;return document.title=Rp?`${e}${Zs}${Rp}`:e,()=>{document.title=a}},[e,t])}function $p(){const{t:e}=me.useTranslation();return l.useCallback(t=>{if(!t)return"";const a=new Date(t).getTime();if(Number.isNaN(a))return"";const r=Math.floor((Date.now()-a)/864e5);return r<=0?e("myHomework.relativeDay.today","\uC624\uB298"):r===1?e("myHomework.relativeDay.yesterday","\uC5B4\uC81C"):e("myHomework.relativeDay.daysAgo",{n:r})},[e])}function zp(e){const[t,a]=l.useState({current:"",next:"",confirm:""}),[r,n]=l.useState(null),[i,s]=l.useState(!1),c=l.useRef(null);l.useEffect(()=>()=>{c.current!==null&&clearTimeout(c.current)},[]);const u=l.useCallback(()=>{a({current:"",next:"",confirm:""}),n(null)},[]),d=l.useCallback(async()=>{if(!t.current){n({type:"error",text:"\uD604\uC7AC \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694."});return}if(!t.next){n({type:"error",text:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694."});return}if(t.next!==t.confirm){n({type:"error",text:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."});return}s(!0);const m=e?await e(t.current,t.next):null;if(s(!1),m){n({type:"error",text:m});return}n({type:"success",text:"\uBE44\uBC00\uBC88\uD638\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4."}),a({current:"",next:"",confirm:""}),c.current!==null&&clearTimeout(c.current),c.current=setTimeout(()=>n(null),1500)},[t,e]);return{pw:t,setPw:a,pwMsg:r,setPwMsg:n,pwLoading:i,handleChangePw:d,reset:u}}const Js=[{id:"wordData",labelKey:"settings.cache.group.wordData.label",subKey:"settings.cache.group.wordData.sub",keys:["word_data_cache","word_data_version"]},{id:"pairIndex",labelKey:"settings.cache.group.pairIndex.label",subKey:"settings.cache.group.pairIndex.sub",keys:["word_pair_index_v2","word_pair_index_sig_v2"]},{id:"imageCache",labelKey:"settings.cache.group.imageCache.label",subKey:"settings.cache.group.imageCache.sub",keys:["word_image_existence_map_v1"]}];function el(e){return e.reduce((t,a)=>{try{const r=localStorage.getItem(a);return t+(r?new Blob([r]).size:0)}catch{return t}},0)}function Ip(e){return e===0?"0 B":e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(2)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}function Op(e){const{t}=me.useTranslation(),[a,r]=l.useState({}),[n,i]=l.useState(null),[s,c]=l.useState(null),[u,d]=l.useState(null),m=l.useCallback(()=>{const p={};Js.forEach(g=>{p[g.id]=el([...g.keys])}),r(p),typeof navigator<"u"&&navigator.storage?.estimate&&navigator.storage.estimate().then(g=>{d({usage:g.usage??0,quota:g.quota??0})}).catch(()=>{})},[]);l.useEffect(()=>{m()},[m]);const h=l.useCallback(async p=>{i(p);try{p==="wordData"?(localStorage.removeItem("word_data_cache"),localStorage.removeItem("word_data_version")):p==="pairIndex"?gi():p==="imageCache"&&ri(),m(),e?.(t("settings.cache.cleared","\uCE90\uC2DC\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4."))}finally{i(null)}},[m,e,t]);return{cacheSizes:a,clearingId:n,confirmCacheId:s,setConfirmCacheId:c,storageEstimate:u,refreshCacheSizes:m,handleClearCache:h}}function Fp(e){const[t,a]=l.useState(null),[r,n]=l.useState(null),i=l.useCallback(()=>{const s=Ka();if(s){const u=Object.values(s),d=u.filter(m=>m.cho.length+m.jung.length+m.jong.length>0).length;a({matched:d,total:u.length})}else a(null);const c=Er();n(c?{exists:c.exists,total:c.total}:null)},[]);return l.useEffect(()=>{i();const s=setTimeout(i,1e3);return()=>clearTimeout(s)},[e?.length,i]),{pairStats:t,imgStats:r,setPairStats:a,setImgStats:n,refreshStats:i}}function Wp(e,t=[]){const[a,r]=l.useState(t),[n,i]=l.useState(null),[s,c]=l.useState(!1),[u,d]=l.useState(e),m=l.useRef(s);l.useEffect(()=>{m.current=s});const h=l.useRef(null);l.useEffect(()=>{if(m.current)return;const f=h.current;f!==null&&f.length===t.length&&f.every((x,_)=>x===t[_])||(h.current=t,r(t))},[t]);const p=l.useCallback(f=>{i(f),c(!1),d({...f})},[]),g=l.useCallback(()=>c(!0),[]),v=l.useCallback(()=>c(!1),[]),b=l.useCallback((f,x)=>{r(f),i(x),c(!1)},[]),y=l.useCallback(f=>{r(x=>x.filter(_=>_!==f)),i(null)},[]);return{list:a,setList:r,selected:n,setSelected:i,isEditing:s,setIsEditing:c,editForm:u,setEditForm:d,openDetail:p,startEditing:g,cancelEditing:v,commitEdit:b,remove:y}}const Co=()=>{const e=new Date;return{year:String(e.getFullYear()),month:String(e.getMonth()+1).padStart(2,"0"),day:String(e.getDate()).padStart(2,"0")}},$4={year:"",month:"",day:"",hour:"09",minute:"00",memo:""};function Hp(e=[]){const{list:t,setList:a,selected:r,setSelected:n,isEditing:i,setIsEditing:s,editForm:c,setEditForm:u,openDetail:d,commitEdit:m}=Wp($4,e),{year:h,month:p,day:g}=Co(),[v,b]=l.useState({year:h,month:p,day:g,hour:"09",minute:"00",memo:""});return{visitHistory:t,visitForm:v,setVisitForm:b,setVisit:y=>f=>b(x=>({...x,[y]:f})),selectedVisit:r,setSelectedVisit:n,isEditingVisit:i,setIsEditingVisit:s,editVisitForm:c,setEditVisitForm:u,openVisitDetail:d,handleVisitSave:y=>{a(C=>[v,...C]);const{year:f,month:x,day:_}=Co();b({year:f,month:x,day:_,hour:"09",minute:"00",memo:""}),y?.()},handleVisitEditSave:()=>{m(y=>y.map(f=>f===r?c:f),c)},addVisit:y=>{a(f=>[y,...f])},removeVisit:y=>{a(f=>f.filter(x=>x!==y))},revertVisitEdit:(y,f)=>{a(x=>x.map(_=>_===f?y:_)),n(x=>x===f?y:x)}}}const Vp=e=>`${e.year.padStart(4,"0")}-${e.month.padStart(2,"0")}-${e.day.padStart(2,"0")} ${e.hour.padStart(2,"0")}:${e.minute.padStart(2,"0")}`,rn=e=>[...e].sort((t,a)=>{const r=Vp(t),n=Vp(a);return r<n?-1:r>n?1:0}),z4={year:"",month:"",day:"",hour:"09",minute:"00",memo:""};function Gp(e,t=[]){const a=l.useMemo(()=>rn(t),[t]),{list:r,setList:n,selected:i,setSelected:s,isEditing:c,setIsEditing:u,editForm:d,setEditForm:m,openDetail:h,commitEdit:p,remove:g}=Wp(z4,a),[v,b]=l.useState([]),{year:y,month:f,day:x}=Co(),[_,C]=l.useState({year:y,month:f,day:x,hour:"09",minute:"00",memo:""}),A=D=>j=>C(F=>({...F,[D]:j})),w=D=>{n(Z=>rn([...Z,_]));const{year:j,month:F,day:ee}=Co();C({year:j,month:F,day:ee,hour:"09",minute:"00",memo:""}),D?.()},S=()=>{p(D=>rn(D.map(j=>j===i?d:j)),d)},N=l.useCallback(D=>{g(D)},[g]),T=l.useCallback(D=>{e({year:D.year,month:D.month,day:D.day,hour:D.hour,minute:D.minute,memo:D.memo}),g(D)},[e,g]),E=l.useCallback(D=>{n(j=>j.filter(F=>F!==D)),b(j=>[D,...j]),s(null)},[n,s]),W=l.useCallback(D=>{n(j=>rn([...j,D]))},[n]),L=l.useCallback(D=>{n(j=>j.filter(F=>F!==D))},[n]),k=l.useCallback((D,j)=>{n(F=>F.map(ee=>ee===j?D:ee)),s(F=>F===j?D:F)},[n,s]);return{scheduleList:r,noShowList:v,addSchedule:W,removeSchedule:L,revertScheduleEdit:k,scheduleForm:_,setScheduleForm:C,setSchedule:A,selectedSchedule:i,setSelectedSchedule:s,isEditingSchedule:c,setIsEditingSchedule:u,editScheduleForm:d,setEditScheduleForm:m,openScheduleDetail:h,handleScheduleSave:w,handleScheduleEditSave:S,handleScheduleDelete:N,handleScheduleToVisit:T,handleScheduleNoVisit:E}}const tl=[{value:"10",label:"10\uAC1C\uC529 \uBCF4\uAE30"},{value:"25",label:"25\uAC1C\uC529 \uBCF4\uAE30"},{value:"50",label:"50\uAC1C\uC529 \uBCF4\uAE30"},{value:"100",label:"100\uAC1C\uC529 \uBCF4\uAE30"}];function qp(e){const[t,a]=l.useState(""),[r,n]=l.useState("25"),[i,s]=l.useState("all"),[c,u]=l.useState(1),d=l.useMemo(()=>e.filter(({item:g,status:v})=>!(t&&!g.memo.includes(t)||i!=="all"&&v!==i)),[e,t,i]),m=Math.max(1,Math.ceil(d.length/Number(r))),h=Math.min(c,m),p=l.useMemo(()=>d.slice((h-1)*Number(r),h*Number(r)),[d,h,r]);return{vapSearch:t,setVapSearch:a,vapPageSize:r,setVapPageSize:n,vapStatus:i,setVapStatus:s,vapPage:h,setVapPage:u,vapFiltered:d,vapTotal:m,vapPageItems:p}}function al(e,t){const{t:a}=me.useTranslation(),[r,n]=l.useState("25"),[i,s]=l.useState(1),[c,u]=l.useState(t);c!==t&&(u(t),i!==1&&s(1));const d=l.useMemo(()=>tl.map(g=>({...g,label:a("visits.showN",{n:g.value})})),[a]),m=l.useCallback(g=>{n(g),s(1)},[]),h=Math.max(1,Math.ceil(e.length/Number(r))),p=Math.min(i,h);return{pageRows:l.useMemo(()=>e.slice((p-1)*Number(r),p*Number(r)),[e,p,r]),pageSizeProps:{options:d,value:r,onChange:m},paginationProps:{page:p,total:h,onChange:s},setPage:s}}function ol(){const[e,t]=l.useState(null),a=l.useCallback(n=>{t(i=>i?.key===n?{key:n,asc:!i.asc}:{key:n,asc:!0})},[]),r=l.useCallback((n,i)=>({label:n,sortDir:e?.key===i?e.asc?"asc":"desc":null,onClick:()=>a(i)}),[e,a]);return{\uC815\uB82C:e,\uCE78:r}}function Yp(){const[e,t]=l.useState(!1),[a,r]=l.useState("\uC88C"),[n,i]=l.useState({\uC88C:null,\uC6B0:null}),[s,c]=l.useState({\uC88C:[],\uC6B0:[]}),[u,d]=l.useState(!1),[m,h]=l.useState("\uC88C"),p=l.useCallback(v=>{const b=v.direction;i(y=>({...y,[b]:v})),c(y=>({...y,[b]:[v,...y[b]]})),t(!1)},[]),g=l.useCallback(v=>{const b=v.direction;i(y=>({...y,[b]:v})),d(!1)},[]);return{showDevice:e,setShowDevice:t,deviceDirection:a,setDeviceDirection:r,devices:n,setDevices:i,deviceHistory:s,setDeviceHistory:c,showDeviceList:u,setShowDeviceList:d,listForSide:m,setListForSide:h,handleDeviceSubmit:p,handleSelectFromList:g}}const Nt="\uC804\uCCB4";function _o(){const[e,t]=l.useState(null),a=l.useCallback(i=>t(i.getBoundingClientRect()),[]),r=l.useCallback(()=>t(null),[]),n=l.useCallback(i=>{const s=i.getBoundingClientRect();t(c=>c?null:s)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:n}}function Up(e){const[t,a]=l.useState(null),[r,n]=l.useState(null),i=l.useRef(null);l.useEffect(()=>()=>{i.current&&clearTimeout(i.current)},[]);const s=l.useCallback((u,d)=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{a(u),n(d)},e)},[e]),c=l.useCallback(()=>{i.current&&clearTimeout(i.current),a(null),n(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:s,close:c}}function wo({title:e,items:t}){const{t:a}=me.useTranslation(),{anchorRect:r,openAt:n,close:i}=_o();return o.jsxs(o.Fragment,{children:[o.jsx(ce,{size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:s=>n(s.currentTarget),onPointerLeave:i,onFocus:s=>n(s.currentTarget),onBlur:i}),r&&o.jsx(to,{title:e,items:t,showIndex:t.length>1,anchorRect:r,onClose:i})]})}function rl(){const{t:e}=me.useTranslation();return l.useMemo(()=>({difficulty:e("wordSearch.filter.difficulty","\uB4F1\uAE09"),syllables:e("wordSearch.filter.syllables","\uC74C\uC808 \uC218"),syllable5plus:e("wordSearch.filter.syllable5plus","5\uC74C\uC808 \uC774\uC0C1"),partOfSpeech:e("wordSearch.filter.partOfSpeech","\uD488\uC0AC"),wordType:e("wordSearch.filter.wordType","\uC720\uD615"),posMap:{[e("wordSearch.filter.pos.noun","\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)")]:["\uBA85","\uC218"],[e("wordSearch.filter.pos.verb","\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)")]:["\uB3D9","\uD615"],[e("wordSearch.filter.pos.modifier","\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)")]:["\uBD80","\uAD00"]},typeMap:{[e("wordSearch.filter.type.native","\uACE0\uC720\uC5B4")]:"\uACE0\uC720",[e("wordSearch.filter.type.sino","\uD55C\uC790\uC5B4")]:"\uD55C\uC790",[e("wordSearch.filter.type.foreign","\uC678\uB798\uC5B4")]:"\uC678\uB798",[e("wordSearch.filter.type.mixed","\uD63C\uC885\uC5B4")]:"\uD63C\uC885"}}),[e])}function nl(e,t,a){return{label:t.difficulty,items:[1,2,3,4].map(r=>e("wordSearch.filter.grade",{n:r})),multiple:!0,allOption:!0,allLabel:a?.allLabel,labelAction:a?.labelAction}}function il(e){return{label:e.partOfSpeech,items:Object.keys(e.posMap),multiple:!0,allOption:!0}}function sl(e){return{label:e.wordType,items:Object.keys(e.typeMap),multiple:!0,allOption:!0}}function Kp(e,t){return{label:t.syllables,items:[e("wordSearch.filter.syllable",{n:1}),e("wordSearch.filter.syllable",{n:2}),e("wordSearch.filter.syllable",{n:3}),e("wordSearch.filter.syllable",{n:4}),t.syllable5plus],multiple:!0,allOption:!0}}function Zp(e,t){const a=[e("wordPairs.filter.onlyHasImage","\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC")];return t?.includeStructure&&a.push(e("wordPairs.filter.onlySameStructure","\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC")),{label:e("wordPairs.filter.selectLabel","\uC120\uD0DD"),items:a,multiple:!0,labelAction:t?.labelAction}}function Xp(e,t){const{label:a,headValue:r,midValue:n,tailValue:i,includeMid:s=!0,headDisabled:c,midDisabled:u,tailDisabled:d,allOptionDisabled:m,groupLabel:h,labelAction:p}=t;return{label:a,...h?{groupLabel:h}:{},...p?{labelAction:p}:{},allOption:!0,allLabel:e("wordSearch.filter.positionAny",{defaultValue:"\uBB34\uAD00"}),...m?{allOptionDisabled:m}:{},items:[{value:r,displayLabel:e("wordSearch.filter.positionHead",{defaultValue:"\uC5B4\uB450"}),disabled:c},...s?[{value:n,displayLabel:e("wordSearch.filter.positionMid",{defaultValue:"\uC5B4\uC911"}),disabled:u}]:[],{value:i,displayLabel:e("wordSearch.filter.positionTail",{defaultValue:"\uC5B4\uB9D0"}),disabled:d}]}}function Qp(e,t,a){if(t===Nt){const{[a]:i,...s}=e;return s}const r=e[a]??[],n=r.includes(t)?r.filter(i=>i!==t):[...r,t];if(n.length===0){const{[a]:i,...s}=e;return s}return{...e,[a]:n}}Object.fromEntries(Object.entries(xw).map(([e,{nucleus:t}])=>[e,t]));const I4={\uACE0\uC720\uC5B4:"\uACE0\uC720",\uD55C\uC790\uC5B4:"\uD55C\uC790",\uC678\uB798\uC5B4:"\uC678\uB798",\uD63C\uC885\uC5B4:"\uD63C\uC885"},O4={"\uCCB4\uC5B8(\uBA85\uC0AC,\uC218\uC0AC)":["\uBA85","\uC218"],"\uC6A9\uC5B8(\uB3D9\uC0AC,\uD615\uC6A9\uC0AC)":["\uB3D9","\uD615"],"\uC218\uC2DD\uC5B8(\uBD80\uC0AC,\uAD00\uD615\uC0AC)":["\uBD80","\uAD00"]},F4={difficulty:"\uB09C\uC774\uB3C4 \uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218",syllable5plus:"5\uC74C\uC808 \uC774\uC0C1",partOfSpeech:"\uD488\uC0AC",wordType:"\uC720\uD615",posMap:O4,typeMap:I4};function W4(e,t,a=F4){const r=t[a.difficulty];if(r?.length&&!r.some(c=>e.grade===c.replace(/\D/g,"")))return!1;const n=t[a.syllables];if(n?.length){const c=e.syllables??0;if(!n.some(u=>u===a.syllable5plus?c>=5:c===parseInt(u)))return!1}const i=t[a.partOfSpeech];if(i?.length&&!i.flatMap(c=>a.posMap[c]??[c]).some(c=>(e.pos??"").includes(c)))return!1;const s=t[a.wordType];return!(s?.length&&!s.some(c=>e.wordType===a.typeMap[c]))}const Aa=(e,t)=>t.map(a=>({jamos:[a],tooltip:e})),_t=(e,t)=>({jamos:[...e],tooltip:t}),ll={cho:[Aa("\uC591\uC21C\uC74C",["\u3142","\u3143","\u314D","\u3141"]),Aa("\uCE58\uC870\uC74C",["\u3137","\u3138","\u314C","\u3134","\u3139"]),Aa("\uCE58\uC870\uC74C",["\u3145","\u3146"]),Aa("\uACBD\uAD6C\uAC1C\uC74C",["\u3148","\u3149","\u314A"]),Aa("\uC5F0\uAD6C\uAC1C\uC74C",["\u3131","\u3132","\u314B"]),Aa("\uC131\uBB38\uC74C",["\u314E"])],jung:[[_t("\u3163","\uC804\uC124 \uACE0\uBAA8\uC74C"),_t("\u315F","\uC804\uC124 \uACE0\uBAA8\uC74C \xB7 w\uD65C\uC74C"),_t("\u3162","\uC804\uC124 \uACE0\uBAA8\uC74C \xB7 \u0270\uD65C\uC74C")],[_t("\u3161","\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C")],[_t("\u315C","\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C"),_t("\u3160","\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C \xB7 j\uD65C\uC74C")],[_t("\u3154\u3150","\uC804\uC124 \uC911\uBAA8\uC74C"),_t("\u3156\u3152","\uC804\uC124 \uC911\uBAA8\uC74C \xB7 j\uD65C\uC74C"),_t("\u3159\u315A\u315E","\uC804\uC124 \uC911\uBAA8\uC74C \xB7 w\uD65C\uC74C")],[_t("\u3153","\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C"),_t("\u3155","\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C \xB7 j\uD65C\uC74C"),_t("\u315D","\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C \xB7 w\uD65C\uC74C")],[_t("\u3157","\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C"),_t("\u315B","\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C \xB7 j\uD65C\uC74C")],[_t("\u314F","\uC800\uBAA8\uC74C"),_t("\u3151","\uC800\uBAA8\uC74C \xB7 j\uD65C\uC74C"),_t("\u3158","\uC800\uBAA8\uC74C \xB7 w\uD65C\uC74C")]],jong:[Aa("\uC591\uC21C\uC74C",["\u3142","\u3141"]),Aa("\uCE58\uC870\uC74C",["\u3137","\u3134","\u3139"]),Aa("\uC5F0\uAD6C\uAC1C\uC74C",["\u3131","\u3147"])]},H4=[...qe],V4=[...dt],G4=gt.filter(e=>e!==""),ba=e=>e===ra?[]:Array.from(e),ra="__NO_CODA__",Jp=[1,2,3,4],na=5,q4=12,eh="SYL_",cl=e=>`${eh}${e}`,Y4=e=>Number(e.slice(eh.length));function nn(e){return e>=na?Array.from({length:q4-na+1},(t,a)=>na+a):[e]}const th={cho:H4,jung:V4,jong:G4},dl=e=>e.map(t=>t.map(({jamos:a,tooltip:r})=>({v:a.join(""),tooltip:r}))),ul={cho:dl(ll.cho),jung:dl(ll.jung),jong:dl(ll.jong)},ah={};ul.jung.flat().forEach(({v:e})=>{for(const t of ba(e))ah[t]=e});const U4=new Set(ul.cho.flat().map(e=>e.v));function pl(e,t){return e==="cho"?U4.has(t)?t:null:e==="jung"?ah[t]??t:Fr(t)}function hl(e,t,a){if(e==="jung"){const r=ba(t);return a&&r.includes(a)?a:r[0]??t}return t}function ml(e,t,a){const r=(n,i)=>i?n==="jong"&&i===ra?ra:t==="pron"?pl(n,i):hl(n,i,n==="jung"?a:null):null;return{...e,cho:r("cho",e.cho),jung:r("jung",e.jung),jong:r("jong",e.jong)}}const sn={cho:null,jung:null,jong:null,syllable:null},K4="wt_filter",oh=e=>`wt_filter_${e}`;function rh(e){try{const t=localStorage.getItem(oh(e))??localStorage.getItem(K4);if(t)return JSON.parse(t)}catch{}return null}function Z4(e){const t=e;return t?.composition?{cho:t.composition.cho??null,jung:t.composition.jung??null,jong:t.composition.jong??null,syllable:t.composition.syllable??null}:t?.choseong?{...sn,cho:t.choseong}:sn}function nh(e,t,a){const{t:r,i18n:n}=me.useTranslation(),[i]=l.useState(()=>a?.resetOnMount?null:rh(e)),s=i?.contrastCount,c=typeof s=="number"&&Number.isFinite(s)?s:1,[u,d]=l.useState(Math.min(5,Math.max(1,c))),[m,h]=l.useState(i?.phonemeView==="pron"?"pron":i?.phonemeView==="direct"?"direct":"char"),[p,g]=l.useState(()=>Z4(i)),v=l.useCallback(()=>t.requireSyllable?{cho:"\u3131",jung:"\u314F",jong:ra,syllable:t.fixedSyllable??null}:{cho:null,jung:null,jong:t.fixedNoCoda?ra:null,syllable:t.fixedSyllable??null},[t.requireSyllable,t.fixedSyllable,t.fixedNoCoda]);l.useEffect(()=>{!t.requireSyllable&&t.fixedSyllable==null&&!t.fixedNoCoda||g(P=>P.cho||P.jung||P.syllable!=null||P.jong?P:v())},[]);const b=l.useMemo(()=>ft(p.cho)||ft(p.jung)||ft(p.jong)?"count":"random",[p.cho,p.jung,p.jong]),y=l.useRef(m==="char"?p.jung:null);l.useEffect(()=>{m==="char"&&(y.current=p.jung)},[m,p.jung]);const[f,x]=l.useState(a?.resetOnMount?!!a?.defaultImageOnly:i?.excludeNoImage??!0),[_,C]=l.useState(a?.resetOnMount?!1:i?.sameStructureOnly??!0),[A,w]=l.useState(Array.isArray(i?.gradeFilter)?i.gradeFilter:[]),[S,N]=l.useState(Array.isArray(i?.posFilter)?i.posFilter:[]),[T,E]=l.useState(Array.isArray(i?.wordTypeFilter)?i.wordTypeFilter:[]),W=l.useRef(a?.resetKey);l.useEffect(()=>{W.current!==a?.resetKey&&(W.current=a?.resetKey,g(v()),x(!1),C(!1),w([]),N([]),E([]),d(1))},[a?.resetKey]);const L=rl(),[k,D]=l.useState({cho:new Set,jung:new Set,jong:new Set,syllable:new Set}),[j,F]=l.useState(!1),[ee,Z]=l.useState(null),J=1,M=Math.max(1,[p.cho,p.jung,p.jong].filter(Boolean).length);l.useEffect(()=>{u<M&&d(M)},[M,u]);const[R,z]=l.useState(e);l.useEffect(()=>{if(R!==e){if(!a?.resetOnMount){const P=rh(e),oe=typeof P?.contrastCount=="number"&&Number.isFinite(P.contrastCount)?P.contrastCount:1;d(Math.min(5,Math.max(1,oe))),g(P?.composition??v()),x(P?.excludeNoImage??!0),C(P?.sameStructureOnly??!0),h(P?.phonemeView==="pron"?"pron":"char"),w(Array.isArray(P?.gradeFilter)?P.gradeFilter:[]),N(Array.isArray(P?.posFilter)?P.posFilter:[]),E(Array.isArray(P?.wordTypeFilter)?P.wordTypeFilter:[])}z(e)}},[e,R,a?.resetOnMount]),l.useEffect(()=>{if(!a?.resetOnMount&&R===e)try{localStorage.setItem(oh(e),JSON.stringify({contrastCount:u,composition:p,excludeNoImage:f,sameStructureOnly:_,phonemeView:m,gradeFilter:A,posFilter:S,wordTypeFilter:T}))}catch{}},[a?.resetOnMount,e,R,u,p,f,_,m,A,S,T]);const[H,$]=l.useState(0);cr("wordpool:update",()=>$(P=>P+1));const q=l.useRef(n.language);l.useEffect(()=>{q.current!==n.language&&(q.current=n.language,$(P=>P+1))},[n.language]),l.useEffect(()=>{if(!t.choseong)return;let P=!1;return d4({difficulty:b,excludeNoImage:f}).then(oe=>{P||(D(oe),oe.cho.size+oe.jung.size+oe.jong.size>0&&F(!0))}).catch(()=>{P||D({cho:new Set,jung:new Set,jong:new Set,syllable:new Set})}),()=>{P=!0}},[t.choseong,b,f,H]),l.useEffect(()=>{let P=!1;const oe=p,re=oe.cho?ba(oe.cho):null,Ce=oe.jung?ba(oe.jung):null,De=oe.jong===ra,Ie=De?null:oe.jong?ba(oe.jong):null,Oe=oe.syllable!=null?nn(oe.syllable):null,Fe=!!(re||Ce||Ie||De||Oe);return c4({difficulty:t.difficulty?b:null,contrastCount:t.difficulty?u:1,composition:t.choseong&&Fe?{cho:re,jung:Ce,jong:Ie,jongNone:De,syllable:Oe}:null,excludeNoImage:f,sameStructureOnly:_,phonemeView:m==="pron"?"pron":"char",grade:A.length>0?A:null}).then(Qe=>{P||Z(Qe)}).catch(()=>{P||Z(null)}),()=>{P=!0}},[t.choseong,t.difficulty,b,u,p,m,f,_,H,A]),l.useEffect(()=>{j&&g(P=>{const oe={...P};let re=!1;return["cho","jung","jong"].forEach(Ce=>{const De=P[Ce];!De||De===ra||ba(De).some(Ie=>k[Ce].has(Ie))||(oe[Ce]=null,re=!0)}),P.syllable!=null&&t.fixedSyllable==null&&(P.syllable>=na?[...k.syllable].some(Ce=>Ce>=na)||(oe.syllable=null,re=!0):(!k.syllable.has(P.syllable)||P.syllable<J)&&(oe.syllable=null,re=!0)),re?oe:P})},[k,j,J,t.fixedSyllable]);const O=l.useMemo(()=>{const P=oe=>{const re=new Set;for(const Ce of th[oe])k[oe].has(Ce)&&re.add(Ce);return re};return{cho:P("cho"),jung:P("jung"),jong:P("jong")}},[k]),G=l.useMemo(()=>({exact:new Set(Jp.filter(P=>k.syllable.has(P))),min:[...k.syllable].some(P=>P>=na)}),[k]),I=l.useMemo(()=>({diffPhonemeCount:r("training.contrast.diffPhonemeCount",{defaultValue:"\uB2E4\uB978 \uC74C\uC18C\uC758 \uCD1D \uAC2F\uC218"}),composition:r("wordPairs.composition","\uC815\uB2F5 \uB2E8\uC5B4 \uAD6C\uC131"),syllableCount:r("wordPairs.syllableCount","\uC74C\uC808 \uC218"),onset:r("wordPairs.onset","\uCD08\uC131"),vowel:r("wordPairs.vowel","\uBAA8\uC74C"),coda:r("wordPairs.coda","\uC885\uC131"),phonemeGroup:r("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),trainOnset:r("training.filter.trainOnset",{defaultValue:"\uCD08\uC131"}),trainVowel:r("training.filter.trainVowel",{defaultValue:"\uBAA8\uC74C"}),trainCoda:r("training.filter.trainCoda",{defaultValue:"\uC885\uC131"}),random:r("training.filter.random","\uBB34\uC791\uC704"),exclude:r("wordSearch.filter.exclude","\uC81C\uC678"),selectLabel:r("training.filter.selectSection",{defaultValue:"\uC120\uD0DD"}),none:r("common.none","\uC5C6\uC74C"),noImage:r("wordSearch.filter.excludeNoImage","\uC774\uBBF8\uC9C0 \uC5C6\uC74C"),excludeImage:r("training.filter.excludeImage",{defaultValue:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC"}),sameStructure:r("training.filter.sameStructure",{defaultValue:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"}),noLimit:r("training.filter.noLimit",{defaultValue:"\uBB34\uAD00"}),codaExclude:r("training.filter.codaExclude",{defaultValue:"\uC81C\uC678"}),gradeLabel:r("training.filter.gradeLabel",{defaultValue:"\uB09C\uC774\uB3C4 \uB4F1\uAE09"})}),[r]),ne=l.useMemo(()=>({[I.trainOnset]:"cho",[I.trainVowel]:"jung",[I.trainCoda]:"jong"}),[I]),X=l.useCallback((P,oe)=>l.createElement(wo,{title:oe,items:P}),[]),te=l.useMemo(()=>[r("training.filter.excludeImageInfo",{defaultValue:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC: \uB2E8\uC5B4 \uC911\uC5D0 \uC774\uBBF8\uC9C0\uAC00 \uC788\uB294 \uB2E8\uC5B4\uB9CC \uACB0\uACFC\uC5D0 \uBCF4\uC5EC\uC90D\uB2C8\uB2E4."}),r("training.filter.sameStructureInfo",{defaultValue:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC: \uC815\uB2F5\uACFC \uC624\uB2F5\uC758 \uC74C\uC808 \uAD6C\uC870(\uAE00\uC790 \uC218\xB7\uBC1B\uCE68 \uC720\uBB34 \uB4F1)\uAC00 \uAC19\uC740 \uACB0\uACFC\uB9CC \uB0A8\uACA8\uC694."})],[r]),pe=l.useMemo(()=>{const P=[];if(t.choseong){const oe={value:ra,displayLabel:I.codaExclude},re=t.fixedNoCoda===!0,Ce=(De,Ie)=>{const Oe=re&&De==="jong",Fe={label:Ie,groupLabel:I.phonemeGroup,allOption:!t.requireSyllable,allLabel:I.noLimit,allOptionDisabled:Oe};if(m==="pron"){const Re=ul[De].map(Ge=>Ge.map(({v:We,tooltip:be})=>{const at=ba(We),He=Oe||!at.some(Le=>k[De].has(Le));return at.length>1?{value:We,labels:at,tooltip:be,disabled:He}:{value:We,tooltip:be,disabled:He}}));return De==="jong"&&!t.requireCoda&&Re.unshift([oe]),{...Fe,groups:Re}}const Qe=th[De].map(Re=>!Oe&&O[De].has(Re)?Re:{value:Re,disabled:!0});return{...Fe,items:De==="jong"&&!t.requireCoda?[oe,...Qe]:Qe}};P.push(Ce("cho",I.trainOnset)),P.push(Ce("jung",I.trainVowel)),P.push(Ce("jong",I.trainCoda))}if(P.push({...nl(r,L,{labelAction:X([r("wordPairs.filter.difficultyInfo",{defaultValue:"\uAD6D\uB9BD\uAD6D\uC5B4\uC6D0\uC758 \uAE30\uCD08 \uC5B4\uD718 \uB4F1\uAE09\uC774 \uACB0\uACFC\uC5D0 \uBC18\uC601\uB429\uB2C8\uB2E4."})])}),label:I.gradeLabel}),t.partOfSpeech&&P.push(il(L)),t.wordType&&P.push(sl(L)),t.choseong||t.fixedSyllable!=null){const oe=t.fixedSyllable;P.push({label:I.syllableCount,items:[...Jp.map(re=>({value:cl(re),displayLabel:r("wordPairs.syllableN",{n:re,defaultValue:"{{n}}\uC74C\uC808"}),disabled:oe!=null?re!==oe:!G.exact.has(re)||re<J})),{value:cl(na),displayLabel:r("wordPairs.syllableNPlus",{n:na,defaultValue:"{{n}}\uC74C\uC808 \uC774\uC0C1"}),disabled:oe!=null?na!==oe:!G.min}],allOption:!0,allOptionDisabled:oe!=null})}return t.choseong?P.push({label:I.exclude,displayLabel:I.selectLabel,multiple:!0,items:[I.excludeImage,I.sameStructure],labelAction:X(te)}):P.push({label:I.exclude,displayLabel:I.selectLabel,multiple:!0,items:[I.excludeImage],labelAction:X([te[0]])}),P},[t.choseong,t.partOfSpeech,t.wordType,t.requireSyllable,t.fixedSyllable,t.fixedNoCoda,t.requireCoda,J,O,k,m,G,I,r,X,te,L]),ae={...t.difficulty?{[I.diffPhonemeCount]:String(u)}:{},...(t.choseong||t.fixedSyllable!=null)&&p.syllable!=null?{[I.syllableCount]:cl(p.syllable)}:{},...t.choseong&&p.cho?{[I.trainOnset]:p.cho}:{},...t.choseong&&p.jung?{[I.trainVowel]:p.jung}:{},...t.choseong&&p.jong?{[I.trainCoda]:p.jong}:{},[I.exclude]:[...f?[I.excludeImage]:[],..._?[I.sameStructure]:[]],[I.gradeLabel]:A.map(P=>r("wordSearch.filter.grade",{n:Number(P),defaultValue:"{{n}}\uB4F1\uAE09"})),...t.partOfSpeech?{[L.partOfSpeech]:S}:{},...t.wordType?{[L.wordType]:T}:{}},Y=l.useCallback((P,oe)=>{if(oe===I.diffPhonemeCount){const re=Number(P);re>=1&&d(re)}else if(oe===I.exclude)P===I.excludeImage?x(re=>!re):P===I.sameStructure&&C(re=>!re);else if(oe===I.syllableCount)g(re=>{if(!P||P===Nt)return{...re,syllable:null};const Ce=Y4(P);return{...re,syllable:re.syllable===Ce?null:Ce}});else if(oe===I.gradeLabel){if(!P||P===Nt){w([]);return}const re=P.replace(/\D/g,"");w(Ce=>Ce.includes(re)?Ce.filter(De=>De!==re):[...Ce,re])}else if(oe===L.partOfSpeech){if(!P||P===Nt){N([]);return}N(re=>re.includes(P)?re.filter(Ce=>Ce!==P):[...re,P])}else if(oe===L.wordType){if(!P||P===Nt){E([]);return}E(re=>re.includes(P)?re.filter(Ce=>Ce!==P):[...re,P])}else{const re=ne[oe];if(!re)return;g(Ce=>t.requireSyllable?P&&P!==Nt?{...Ce,[re]:P}:Ce:!P||P===Nt||Ce[re]===P?{...Ce,[re]:null}:{...Ce,[re]:P})}},[I,ne,L,t.requireSyllable]),de=l.useCallback(P=>!t.partOfSpeech&&!t.wordType?!0:W4(P,{...t.partOfSpeech?{[L.partOfSpeech]:S}:{},...t.wordType?{[L.wordType]:T}:{}},L),[t.partOfSpeech,t.wordType,S,T,L]),fe=l.useCallback(P=>{P!==m&&(P!=="direct"&&m!=="direct"&&g(oe=>ml(oe,P,y.current)),h(P))},[m]),Se=l.useCallback(()=>({composition:p,contrastCount:u,excludeNoImage:f,sameStructureOnly:_,phonemeView:m,gradeFilter:A}),[p,u,f,_,m,A]),Ae=l.useCallback(P=>{g(P.composition),d(P.contrastCount),x(P.excludeNoImage),C(P.sameStructureOnly??!0),h(P.phonemeView),w(Array.isArray(P.gradeFilter)?P.gradeFilter:[])},[]);return{difficulty:b,contrastCount:u,composition:p,choseong:p.cho,excludeNoImage:f,sameStructureOnly:_,gradeFilter:A,posFilter:S,wordTypeFilter:T,matchesWordAttributes:de,poolVersion:H,filterSections:pe,filterSelected:ae,handleFilterSelect:Y,phonemeView:m,setPhonemeView:fe,phonemeGroupLabel:I.phonemeGroup,wordCount:ee,getFilterSnapshot:Se,restoreFilterSnapshot:Ae}}function X4(e){const t=c=>c?ba(c):null,a=t(e.cho),r=t(e.jung),n=e.jong===ra,i=n?null:t(e.jong),s=e.syllable!=null?nn(e.syllable):null;return!a&&!r&&!i&&!n&&!s?null:{cho:a,jung:r,jong:i,jongNone:n,syllable:s}}function ih(e,t,a,r,n,i,s=!0,c="char",u=[]){const[d,m]=l.useState({}),[h,p]=l.useState(!1),{cho:g=null,jung:v=null,jong:b=null,syllable:y=null}=r??{},f=u.length>0?u.slice().sort().join(","):"";return l.useEffect(()=>{i>0&&l4(n).catch(()=>{})},[i,n]),l.useEffect(()=>{let x=!1;return p(!0),(async()=>{const _=X4({cho:g,jung:v,jong:b,syllable:y}),C=`${g??""}_${v??""}_${b??""}_${y??""}_${f}`,A={};await Promise.all(e.map(async w=>{const S=go[w.key];try{const N=await Cp(w.key,{difficulty:S.difficulty?t:null,contrastCount:S.difficulty?a:1,composition:S.choseong?_:null,count:5,excludeNoImage:n,sameStructureOnly:s,phonemeView:c,grade:u.length>0?u:null});N&&N.length>0?A[w.key]={id:`wt-${w.key}-${t}-${C}-${Date.now()}`,name:w.label,training_type:w.key,category_main_code:"WORD",iconColor:w.color,subTitle:w.subTitle,items:N,itemCount:N.length}:A[w.key]={id:`wt-${w.key}-empty`,name:w.label,training_type:w.key,category_main_code:"WORD",iconColor:w.color,subTitle:w.subTitle,items:[],itemCount:0,__empty:!0}}catch{A[w.key]=null}})),x||(m(A),p(!1))})(),()=>{x=!0}},[t,a,g,v,b,y,n,s,c,i,f]),{perTypeData:d,generating:h}}function Q4(e){let t=2166136261;for(let a=0;a<e.length;a++)t^=e.charCodeAt(a),t=Math.imul(t,16777619);return t>>>0}function J4(e){let t=e>>>0;return()=>{t|=0,t=t+1831565813|0;let a=Math.imul(t^t>>>15,1|t);return a=a+Math.imul(a^a>>>7,61|a)^a,((a^a>>>14)>>>0)/4294967296}}const ln=Qt;function bl(e,t){const a=t?J4(Q4(t)):Math.random;return{LISTEN_IN_NOISE:ln(Ra,Math.max(0,e.LISTEN_IN_NOISE||0),a),SHORT_STORY:ln($a,Math.max(0,e.SHORT_STORY||0),a),LONG_STORY:ln(za,Math.max(0,e.LONG_STORY||0),a),ORDERING_SENTENCE:ln(Ia,Math.max(0,e.ORDERING_SENTENCE||0),a)}}function sh(e){return e?!!(e.LISTEN_IN_NOISE?.length||e.SHORT_STORY?.length||e.LONG_STORY?.length||e.ORDERING_SENTENCE?.length):!1}const e5={LISTEN_IN_NOISE:3,SHORT_STORY:2,LONG_STORY:1,ORDERING_SENTENCE:2};function lh(e=!1,t=e5,a){const r=ka(Date.now()),n=ka(Date.now()-864e5),i=`${a??""}|${r}`,s=`${a??""}|${n}`;return Ra.length>0||$a.length>0||za.length>0||Ia.length>0?{today:bl(t,i),yesterday:bl(t,s)}:{today:bl(t,i),yesterday:null}}function ch(e){const t=l.useRef({LISTEN_IN_NOISE:[],SHORT_STORY:[],LONG_STORY:[],ORDERING_SENTENCE:[]}),a=l.useRef(null),[r,n]=l.useState(!1),[i,s]=l.useState(!1),[c,u]=l.useState(0),[d,m]=l.useState(!1);l.useEffect(()=>{let p=!1,g,v=0;const b=40,y=()=>{g!==void 0&&(clearInterval(g),g=void 0)};let f=!1;try{const C=new URLSearchParams(window.location.search),A=C.get("forceRefresh")||C.get("force");f=A==="1"||A==="true"}catch{}const x=C=>{t.current=C.today,a.current=C.yesterday,n(!0),m(!0),u(A=>A+1),p=!0,y()},_=async()=>{if(p)return;if(!f){const A=lh(!1,void 0,e);if(sh(A.today)){x(A);return}}try{await ms(3e3)}catch{}if(p)return;const C=lh(f,void 0,e);if(sh(C.today)){x(C);return}++v>=b&&(n(!0),m(!1),p=!0,y())};return _(),g=setInterval(_,250),()=>{p=!0,y()}},[e]);const h=l.useCallback(p=>{const g=i?a.current:t.current,v=i?t.current:a.current;return g?.[p]?.length?g[p]:v?.[p]?.length?v[p]:void 0},[i,c]);return{loaded:r,hasData:d,showYesterday:i,setShowYesterday:s,getTrainingPerType:h}}const ko=[];let cn=!1;function dh(e){if(e.key!=="Escape"||e.defaultPrevented)return;const t=ko[ko.length-1];t&&(e.stopPropagation(),t())}function gl(e){return ko.push(e),!cn&&typeof document<"u"&&(document.addEventListener("keydown",dh),cn=!0),()=>{const t=ko.lastIndexOf(e);t>=0&&ko.splice(t,1),ko.length===0&&cn&&typeof document<"u"&&(document.removeEventListener("keydown",dh),cn=!1)}}function uh(e,t=!0){const a=Ks(e);l.useEffect(()=>{if(t)return gl(()=>{a.current?.()})},[t,a])}const dn=(e,t)=>`${e}:${t??1}`,fl=new Map;function ph(e,t){const[a,r]=l.useState(0),n=e.map(i=>dn(i.word,i.homonum)).join("|");return l.useEffect(()=>{const i=(n?n.split("|"):[]).filter(u=>!fl.has(u));if(i.length===0)return;let s=!1;const c=Array.from(new Set(i.map(u=>u.slice(0,u.lastIndexOf(":")))));return t(c).then(u=>{if(!(s||u.length===0)){for(const d of u)d.Meaning&&fl.set(dn(d.Word,d.Homonum??void 0),d.Meaning);r(d=>d+1)}}),()=>{s=!0}},[n,t]),l.useMemo(()=>{const i=n?n.split("|"):[],s=new Map;for(const c of i){const u=fl.get(c);u!=null&&s.set(c,u)}return s},[n,a])}function hh(e,t,a){const r=Number.isFinite(t)&&t>=1?Math.floor(t):1,n=Math.max(1,Math.ceil(e.length/r)),i=Number.isFinite(a)?Math.min(Math.max(1,Math.floor(a)),n):1;return{pageItems:l.useMemo(()=>e.slice((i-1)*r,i*r),[e,i,r]),totalPages:n,curPage:i}}function un(e="warning"){const[t,a]=l.useState(""),[r,n]=l.useState(e),[i,s]=l.useState(0),c=l.useCallback((h,p)=>{n(p),a(h),s(g=>g+1)},[]),u=l.useCallback(h=>c(h,"warning"),[c]),d=l.useCallback(h=>c(h,"normal"),[c]),m=l.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:i,showToast:c,showWarning:u,showNormal:d,clearToast:m}}const dr={blue:"#60A5FA",green:"#4ADE80",amber:"#FBBF24",purple:"#A78BFA",pink:"#F472B6"},ur=dr.blue,pn=dr.green,pr=dr.amber,hn=dr.purple,t5=dr.pink,a5=[{key:"discrimination",label:"\uBCC0\uBCC4\uD6C8\uB828",disc:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0, \uB610\uB294 \uD2B9\uC815 \uC18C\uB9AC\uB97C \uAD6C\uBCC4\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"ear",types:[{key:"SAME_SOUND_PICK",label:"\uAC19\uC740 \uC18C\uB9AC \uACE0\uB974\uAE30",icon:"volume-2",color:ur,subTitle:"\uB4E4\uC740 \uC18C\uB9AC\uC640 \uAC19\uC740 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"SAME_OR_DIFF",label:"\uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0 \uB9DE\uD788\uAE30",icon:"diff",color:ur,subTitle:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0, \uB2E4\uB978\uC9C0 \uAD6C\uBD84\uD558\uC138\uC694."},{key:"HEAR_AND_PICK_SAME",label:"\uC77C\uCE58\uD558\uB294 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"headphones",color:ur,subTitle:"\uB4E4\uC740 \uC18C\uB9AC\uC758 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"HEAR_AND_PICK_INCLUDED",label:"\uD55C \uC74C\uC808 \uD3EC\uD568 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"scan-search",color:ur,subTitle:"\uB4E4\uC740 \uC74C\uC808\uC774 \uD3EC\uD568\uB41C \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},{key:"STARTS_WITH_SAME_SOUND",label:"\uCCAB \uC74C\uC808\uC774 \uAC19\uC740 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",icon:"play-circle",color:ur,subTitle:"\uB4E4\uC740 \uB2E8\uC5B4\uC640 \uAC19\uC740 \uC18C\uB9AC\uB85C \uC2DC\uC791\uD558\uB294 \uB2E8\uC5B4\uB97C \uACE0\uB974\uC138\uC694."}]},{key:"synthesis",label:"\uD569\uC131\uD6C8\uB828",disc:"\uB450 \uAC1C \uC774\uC0C1\uC758 \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uD569\uCCD0 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"git-merge",types:[{key:"MERGE_2_SYLLABLES",label:"\uC74C\uC808 2\uAC1C \uD569\uCE58\uAE30",icon:"link-2",color:pn,subTitle:"\uB450 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_3_SYLLABLES",label:"\uC74C\uC808 3\uAC1C \uD569\uCE58\uAE30",icon:"git-merge",color:pn,subTitle:"\uC138 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_2_PHONEMES",label:"\uC74C\uC18C 2\uAC1C \uD569\uCE58\uAE30",icon:"combine",color:pn,subTitle:"\uB450 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"MERGE_3_PHONEMES",label:"\uC74C\uC18C 3\uAC1C \uD569\uCE58\uAE30",icon:"braces",color:pn,subTitle:"\uC138 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"}]},{key:"deletion",label:"\uD0C8\uB77D\uD6C8\uB828",disc:"\uB2E8\uC5B4\uC5D0\uC11C \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uC81C\uAC70\uD588\uC744 \uB54C \uB0A8\uB294 \uC18C\uB9AC\uB97C \uC778\uC2DD\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"scissors",types:[{key:"DROP_1_FROM_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C 1\uC74C\uC808 \uD0C8\uB77D",icon:"scissors",color:pr,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_1_FROM_3SYLL",label:"3\uC74C\uC808\uC5D0\uC11C 1\uC74C\uC808 \uD0C8\uB77D",icon:"minus-circle",color:pr,subTitle:"3\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_PART_FROM_COMPOUND",label:"\uD569\uC131\uC5B4\uC5D0\uC11C \uBD80\uBD84\uD0C8\uB77D",icon:"unlink",color:pr,subTitle:"\uD569\uC131\uC5B4\uC758 \uC77C\uBD80\uB97C \uBE7C\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},{key:"DROP_FINAL_CONSONANT_FROM_1SYLL",label:"1\uC74C\uC808\uC5D0\uC11C \uBC1B\uCE68 \uD0C8\uB77D",icon:"eraser",color:pr,subTitle:"\uBC1B\uCE68\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},{key:"REMOVE_CONSONANT_AND_IDENTIFY_PHONEME",label:"1\uC74C\uC808\uC5D0\uC11C \uC790\uC74C \uD0C8\uB77D",icon:"audio-lines",color:pr,subTitle:"\uC790\uC74C\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB0A8\uC744\uAE4C\uC694?"}]},{key:"substitution",label:"\uB300\uCE58\uD6C8\uB828",disc:"\uB2E8\uC5B4\uC758 \uC77C\uBD80 \uC74C\uC808\uC774\uB098 \uC74C\uC18C\uB97C \uBC14\uAFB8\uC5B4 \uC0C8\uB85C\uC6B4 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"replace",types:[{key:"CHANGE_1_SYLL_IN_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",icon:"replace",color:hn,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_SYLL_IN_3SYLL",label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",icon:"shuffle",color:hn,subTitle:"3\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_PHONEME_IN_1SYLL",label:"1\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC18C \uBC14\uAFB8\uAE30",icon:"arrow-right-left",color:hn,subTitle:"1\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uC138\uC694."},{key:"CHANGE_1_PHONEME_IN_2SYLL",label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC18C \uBC14\uAFB8\uAE30",icon:"flip-horizontal",color:hn,subTitle:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."}]},{key:"attention",label:"\uCCAD\uAC01\uC801\uC8FC\uC758\uB825\uD6C8\uB828",disc:"\uC5EC\uB7EC \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uC21C\uC11C\uB97C \uAE30\uC5B5\uD558\uB294 \uC8FC\uC758\uB825\uACFC \uB2E8\uAE30 \uAE30\uC5B5 \uD6C8\uB828\uC785\uB2C8\uB2E4.",icon:"list-ordered",types:[{key:"LISTEN_AND_REMEMBER_ORDER",label:"\uB4E3\uACE0 \uC21C\uC11C\uB300\uB85C \uAE30\uC5B5\uD558\uAE30",icon:"list-ordered",color:t5,subTitle:"\uC138 \uB2E8\uC5B4\uB97C \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694."}]}];function mh(){const{t:e}=me.useTranslation();return l.useMemo(()=>{const t=Object.fromEntries(zw(e).map(r=>[r.key,r.label])),a={...t};return a5.flatMap(r=>r.types).forEach(r=>{a[r.key]=e(`trainingType.${r.key}.label`,{defaultValue:r.label})}),{sentence:t,all:a}},[e])}var o5=Object.freeze({__proto__:null,CACHE_GROUPS:Js,DocumentTitleSuppressContext:Xs,EMPTY_COMPOSITION:sn,MediaQueryOverrideContext:on,NO_CODA:ra,SYLLABLE_MIN:na,VAP_PAGE_SIZE_OPTIONS:tl,buildGradeSection:nl,buildPartOfSpeechSection:il,buildPositionSection:Xp,buildSelectSection:Zp,buildSyllableSection:Kp,buildWordTypeSection:sl,charToPronValue:pl,convertComposition:ml,fmtBytes:Ip,lsBytes:el,meaningKey:dn,pronToCharValue:hl,syllableToFilter:nn,today:Co,toggleAttributeFilter:Qp,useCacheManagement:Op,useDailyTrainingSelection:ch,useDelayedHoverAnchor:Up,useDeviceManagement:Yp,useDocumentTitle:Qs,useEscToClose:uh,useFontScale:an,useHoverAnchor:_o,useMediaQuery:oa,usePagedList:hh,usePasswordChange:zp,useRelativeDay:$p,useTablePaging:al,useTableSort:ol,useToastState:un,useTrainingTypeLabels:mh,useVisitAllPanel:qp,useVisitHistory:Hp,useVisitSchedule:Gp,useWindowEvent:cr,useWordAttributeFilterKeys:rl,useWordDataStats:Fp,useWordMeanings:ph,useWordTrainingDataGeneration:ih,useWordTrainingFilter:nh,valueToJamos:ba}),r5=".ihabdevteam-core-scope .promo-banner{align-items:center;border-radius:var(--radius-s);box-sizing:border-box;display:flex;gap:var(--spacing-m);justify-content:space-between;overflow:hidden;position:relative;text-align:left}.ihabdevteam-core-scope .promo-banner--medium{min-height:120px;padding:20px 24px}.ihabdevteam-core-scope .promo-banner--small{padding:14px 16px}.ihabdevteam-core-scope .promo-banner__title{color:inherit;color:var(--promo-banner-bg-title,inherit)}.ihabdevteam-core-scope .promo-banner__description{color:inherit;color:var(--promo-banner-bg-description,inherit)}.ihabdevteam-core-scope .promo-banner__text{display:flex;flex-direction:column;justify-content:center;min-width:0;position:relative;z-index:1}.ihabdevteam-core-scope .promo-banner__description{margin-left:2px;margin-top:1px}.ihabdevteam-core-scope .promo-banner>.button{flex-shrink:0;position:relative;z-index:1}";Q(r5);function bh({title:e,description:t,actionLabel:a,onAction:r,bg:n,color:i,size:s="medium",actionVariant:c,titleColor:u,descriptionColor:d,className:m=""}){const h=n??i??"main",p=l.useRef(null),[g,v]=l.useState("main"),b=oa("(max-width: 767px)");l.useLayoutEffect(()=>{const x=p.current;x&&(u!==void 0&&x.style.setProperty("--promo-banner-bg-title",u),d!==void 0&&x.style.setProperty("--promo-banner-bg-description",d))},[u,d]),l.useLayoutEffect(()=>{const x=p.current;if(!x)return;const _=ys(x);v(_?.actionVariant??"main")},[h]);const y=xe("promo-banner",`promo-banner--${s}`,m),f=Us[h];return o.jsxs("div",{ref:p,className:y,role:"note",children:[o.jsx(f,{}),o.jsxs("div",{className:"promo-banner__text",children:[o.jsx("span",{className:`promo-banner__title ${s==="small"?"body-2":"h2"}`,children:e}),t&&o.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&o.jsx(ce,{size:40,variant:c??g,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...b?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}var n5='.ihabdevteam-core-scope .top-banner{--top-banner-min-h:120px;display:flex;flex-direction:column;padding-bottom:var(--spacing-page);position:relative}.ihabdevteam-core-scope .top-banner__viewport{border-radius:var(--radius-m);min-height:var(--top-banner-min-h);overflow:hidden}.ihabdevteam-core-scope .top-banner__track{align-items:stretch;display:flex;min-height:var(--top-banner-min-h);transition:transform .4s ease}.ihabdevteam-core-scope .top-banner__slide{flex:0 0 100%;min-width:0}.ihabdevteam-core-scope .top-banner__slide>*{box-sizing:border-box;min-height:100%;width:100%}.ihabdevteam-core-scope .top-banner__dots{bottom:calc(var(--spacing-page) + 12px);display:flex;gap:6px;left:50%;position:absolute;transform:translateX(-50%)}.ihabdevteam-core-scope .top-banner__dot{background:var(--color-white-a30);border:none;border-radius:3px;cursor:pointer;height:6px;padding:0;position:relative;transition:width .25s ease,background-color .25s ease;width:6px}.ihabdevteam-core-scope .top-banner__dot:after{content:"";height:24px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:calc(100% + 6px)}.ihabdevteam-core-scope .top-banner__dot--active{background:var(--color-white);width:18px}.ihabdevteam-core-scope .top-banner__dots--dark .top-banner__dot{background:var(--color-lightGray-a80)}.ihabdevteam-core-scope .top-banner__dots--dark .top-banner__dot--active{background:var(--color-main)}';Q(n5);function gh({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":n}){const{t:i}=me.useTranslation(),s=n??i("topBanner.ariaLabel","\uBC30\uB108"),c=l.Children.toArray(e),u=c.length,[d,m]=l.useState(0),[h,p]=l.useState(!1),g=u>0?d%u:0;return l.useEffect(()=>{if(u<2||t<=0||h)return;const v=window.setInterval(()=>m(b=>(b+1)%u),t);return()=>window.clearInterval(v)},[u,t,h]),u===0?null:o.jsxs("section",{className:xe("top-banner",r),"aria-label":s,"aria-roledescription":"carousel",onMouseEnter:()=>p(!0),onMouseLeave:()=>p(!1),onFocus:()=>p(!0),onBlur:()=>p(!1),children:[o.jsx("div",{className:"top-banner__viewport",children:o.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${g*100}%)`},children:c.map((v,b)=>o.jsx("div",{className:"top-banner__slide","aria-hidden":b!==g,...b!==g?{inert:!0}:{},children:v},b))})}),u>1&&o.jsx("div",{className:`top-banner__dots${(a?.[g]??"light")==="dark"?" top-banner__dots--dark":""}`,children:c.map((v,b)=>o.jsx("button",{type:"button",className:`top-banner__dot${b===g?" top-banner__dot--active":""}`,"aria-label":i("topBanner.dotAriaLabel",{count:u,index:b+1,defaultValue:`${u}\uAC1C \uC911 ${b+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":b===g,onClick:()=>m(b)},b))})]})}var i5=".ihabdevteam-core-scope .accordion-item{background:transparent;border-radius:var(--radius-m)}.ihabdevteam-core-scope .accordion-item__header{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;cursor:pointer;display:flex;gap:var(--spacing-s);min-height:56px;outline:none;padding:0 20px;transition:background-color .2s ease,border-color .2s ease}.ihabdevteam-core-scope .accordion-item__header:hover{background:var(--color-deepWhite);border-color:var(--color-main)}.ihabdevteam-core-scope .accordion-item__header:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .accordion-item__avatar{align-items:center;display:inline-flex;flex:none}.ihabdevteam-core-scope .accordion-item__title{flex:1;text-align:left}.ihabdevteam-core-scope .accordion-item__chevron{align-items:center;display:inline-flex;flex:none}.ihabdevteam-core-scope .accordion-item__chevron-icon{align-items:center;color:var(--color-lightGray);display:inline-flex}.ihabdevteam-core-scope .accordion-item__chevron-image{height:18px;opacity:.7;transition:transform .18s ease;width:18px}.ihabdevteam-core-scope .accordion-item.accordion-item--open{background:var(--color-main-a10);border-radius:var(--radius-m);overflow:hidden}.ihabdevteam-core-scope .accordion-item.accordion-item--open .accordion-item__header{background:var(--color-white);border:1px solid var(--color-main)}.ihabdevteam-core-scope .accordion-item.accordion-item--open .accordion-item__chevron-image{transform:rotate(180deg)}.ihabdevteam-core-scope .accordion-item__body p{margin:0}.ihabdevteam-core-scope .accordion-item__body{background:transparent;box-sizing:border-box;color:var(--color-darkGray);max-width:100%;overflow-wrap:break-word;padding:40px 32px;text-align:left;word-break:break-word}.ihabdevteam-core-scope .accordion-group--s48 .accordion-item__header{min-height:48px}.ihabdevteam-core-scope .accordion-group--s56 .accordion-item__header{min-height:56px}.ihabdevteam-core-scope .accordion-group--s72 .accordion-item__header{min-height:72px}.ihabdevteam-core-scope .accordion-group--s48 .accordion-item,.ihabdevteam-core-scope .accordion-group--s48 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s48 .accordion-item__header{border-radius:12px}.ihabdevteam-core-scope .accordion-group--s56 .accordion-item,.ihabdevteam-core-scope .accordion-group--s56 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s56 .accordion-item__header{border-radius:14px}.ihabdevteam-core-scope .accordion-group--s72 .accordion-item,.ihabdevteam-core-scope .accordion-group--s72 .accordion-item.accordion-item--open,.ihabdevteam-core-scope .accordion-group--s72 .accordion-item__header{border-radius:18px}.ihabdevteam-core-scope .accordion-group,.ihabdevteam-core-scope .accordion-group>.accordion-item{box-sizing:border-box;display:block;width:100%}.ihabdevteam-core-scope .accordion-group>.accordion-item+.accordion-item{margin-top:var(--spacing-s)}";Q(i5);function s5({title:e,body:t,open:a=!1,onToggle:r,avatar:n,titleClassName:i="body-2",bodyClassName:s="body-2",className:c=""}){const{t:u}=me.useTranslation();return o.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${c}`.trim(),children:[o.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),r?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const m=d.currentTarget.closest('[role="list"]');if(!m)return;const h=Array.from(m.querySelectorAll("[data-accordion-header]")),p=h.indexOf(d.currentTarget);(d.key==="ArrowDown"?h[p+1]:h[p-1])?.focus()}},children:[n&&o.jsx("div",{className:"accordion-item__avatar",children:n}),o.jsx("div",{className:`accordion-item__title ${i}`,children:e}),o.jsx("div",{className:"accordion-item__chevron",children:o.jsx(Pe,{icon:a?"chevron-up":"chevron-down",label:a?u("accordion.collapse","\uC811\uAE30"):u("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&o.jsx("div",{className:`accordion-item__body ${s}`,children:typeof t=="string"?o.jsx("p",{children:t}):t})]})}function fh({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:n}){const[i,s]=l.useState(t);return o.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((c,u)=>o.jsx(s5,{title:c.title,body:c.body,avatar:c.avatar,open:u===i,onToggle:()=>s(u===i?-1:u),bodyClassName:n},u))})}var l5=".ihabdevteam-core-scope .bottom-nav{align-items:flex-start;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);bottom:0;display:none;height:calc(72px + env(safe-area-inset-bottom));left:0;padding:8px calc(10px + env(safe-area-inset-right)) env(safe-area-inset-bottom) calc(10px + env(safe-area-inset-left));position:fixed;right:0;z-index:var(--z-nav)}.ihabdevteam-core-scope .bottom-nav__left{align-items:center;display:flex;flex-shrink:0}.ihabdevteam-core-scope .bottom-nav__divider{align-self:flex-start;background:var(--color-whiteLine);border-radius:1px;flex-shrink:0;height:24px;margin:14px 0 0;width:1px}.ihabdevteam-core-scope .bottom-nav__items{align-items:center;display:flex;flex:1;gap:10px;justify-content:center;overflow:hidden}.ihabdevteam-core-scope .bottom-nav__right{align-items:center;display:flex;flex-shrink:0}@media (max-width:767px){.ihabdevteam-core-scope .bottom-nav{display:flex}}@media (min-width:768px){.ihabdevteam-core-scope .bottom-nav{display:none}}.ihabdevteam-core-scope .bottom-nav-item{align-items:center;background:transparent!important;border:none!important;border-radius:10px!important;color:var(--color-lightGray);cursor:pointer;display:flex!important;flex-direction:column;height:52px!important;justify-content:center;padding:0!important;transition:background .16s ease,color .16s ease!important;width:52px!important}.ihabdevteam-core-scope .bottom-nav-item:hover:not(.is-selected){background:var(--color-darkWhite)!important}.ihabdevteam-core-scope .bottom-nav-item.is-selected{animation:bottom-nav-active-bg .36s cubic-bezier(.4,0,.2,1) forwards;background-color:var(--color-sub)!important;box-shadow:0 6px 12px rgba(12,24,36,.06);color:#fff!important}.ihabdevteam-core-scope .bottom-nav-item.is-selected *{color:#fff!important}.ihabdevteam-core-scope .bottom-nav-item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .bottom-nav-item:disabled,.ihabdevteam-core-scope .bottom-nav-item[disabled]{opacity:.6;pointer-events:none}@keyframes bottom-nav-active-bg{0%{background-color:var(--color-sub)}to{background-color:var(--color-main)}}";Q(l5);var c5=".ihabdevteam-core-scope .badge{align-items:center;background:var(--badge-color,var(--color-main));border-radius:999px;box-shadow:none;box-shadow:var(--badge-shadow,none);color:#fff;color:var(--badge-on-color,#fff);display:inline-flex;gap:6px;justify-content:center;line-height:1;vertical-align:middle;white-space:nowrap}.ihabdevteam-core-scope .badge--small{font-size:12px;height:20px;padding:0 10px}.ihabdevteam-core-scope .badge--medium{font-size:14px;height:28px;padding:0 14px}.ihabdevteam-core-scope .badge--large{font-size:16px;height:32px;padding:0 18px}.ihabdevteam-core-scope .badge__icon{align-items:center;display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .badge--default{--badge-color:var(--color-lightGray);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--main{--badge-color:var(--color-main);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--sub{--badge-color:var(--color-sub);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--danger{--badge-color:var(--color-error);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--disabled{--badge-color:var(--color-disabled);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--like{--badge-color:var(--color-like);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--success{--badge-color:var(--color-success);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--warning{--badge-color:var(--color-warn);--badge-on-color:#fff}.ihabdevteam-core-scope .badge--critical{--badge-color:#7c3aed;--badge-on-color:#fff}.ihabdevteam-core-scope .badge--outline{background:transparent;border:1px solid var(--badge-color);box-shadow:none;color:var(--badge-color)}.ihabdevteam-core-scope .badge--soft{background:color-mix(in srgb,var(--badge-color) 10%,transparent);box-shadow:none;color:var(--badge-color)}.ihabdevteam-core-scope .circle-badge{align-items:center;border:2px solid var(--color-pureWhite);border-radius:50%;box-sizing:border-box;display:inline-flex;flex-shrink:0;font-weight:700;justify-content:center;line-height:1;pointer-events:none;position:absolute;transition:background .12s,transform .12s;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:1}@keyframes circle-badge-pop{0%{opacity:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.ihabdevteam-core-scope .circle-badge--animate{animation:circle-badge-pop .24s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .circle-badge--animate{animation:none}}.ihabdevteam-core-scope .circle-badge--clickable{cursor:pointer;pointer-events:auto}.ihabdevteam-core-scope .circle-badge--clickable:hover{transform:scale(1.12)}.ihabdevteam-core-scope .circle-badge--top-right{right:-6px;top:-6px}.ihabdevteam-core-scope .circle-badge--top-left{left:-6px;top:-6px}.ihabdevteam-core-scope .circle-badge--inline{border:none;position:static}.ihabdevteam-core-scope .circle-badge--24{border-width:1px;font-size:11px;height:24px;width:24px}.ihabdevteam-core-scope .circle-badge--32{border-width:2px;font-size:14px;height:32px;width:32px}.ihabdevteam-core-scope .circle-badge--40{border-width:2px;font-size:16px;height:40px;width:40px}.ihabdevteam-core-scope .circle-badge--check,.ihabdevteam-core-scope .circle-badge--number{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .circle-badge--remove{background:var(--color-error);color:#fff}.ihabdevteam-core-scope .circle-badge--minus{background:var(--color-lightGray);color:#fff}.ihabdevteam-core-scope .circle-badge--24 svg{height:11px;width:11px}.ihabdevteam-core-scope .circle-badge--32 svg{height:15px;width:15px}.ihabdevteam-core-scope .circle-badge--40 svg{height:19px;width:19px}";Q(c5);function d5(){return o.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:o.jsx("polyline",{points:"2,6 5,9 10,3"})})}function u5(){return o.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[o.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),o.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function p5(){return o.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:o.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function ht(e){const{type:t="bar",size:a,className:r="","aria-label":n}=e;if(t==="dot"){const{icon:_,number:C,position:A="top-right",onClick:w,animate:S=!1}=e,N=C!==void 0?"number":_??"check",T=typeof a=="number"?a:32,E=xe("circle-badge",`circle-badge--${N}`,`circle-badge--${A}`,`circle-badge--${T}`,S?"circle-badge--animate":"",w?"circle-badge--clickable":"",r),W=C!==void 0?`${C}\uBC88\uC9F8 \uC120\uD0DD`:{check:"\uC120\uD0DD\uB428",remove:"\uC81C\uAC70",minus:"\uC81C\uC678"}[_??"check"];return o.jsxs("span",{className:E,onClick:w,onKeyDown:w?L=>{L.key!=="Enter"&&L.key!==" "||(L.preventDefault(),L.currentTarget.click())}:void 0,"aria-label":n??W,role:w?"button":void 0,tabIndex:w?0:void 0,children:[C!==void 0&&C,C===void 0&&_==="check"&&o.jsx(d5,{}),C===void 0&&_==="remove"&&o.jsx(u5,{}),C===void 0&&_==="minus"&&o.jsx(p5,{})]})}const{label:i,children:s,variant:c="default",fill:u="filled",minWidth:d,iconLeft:m,iconRight:h,color:p}=e,g=typeof a=="number"?"medium":a??"medium",v={small:"caption-2b",medium:"body-3b",large:"body-2b"}[g]??"body-2b",b={small:12,medium:14,large:16}[g]??14,y=xe("badge",`badge--${c}`,`badge--${g}`,u!=="filled"?`badge--${u}`:"",v,r),f=p?.startsWith("--")?`var(${p})`:p,x=d!==void 0||f?{...d!==void 0?{minWidth:typeof d=="number"?`${d}px`:d}:{},...f?{"--badge-color":f}:{}}:void 0;return o.jsxs("span",{className:y,style:x,children:[m&&o.jsx(Pe,{icon:m,size:b,className:"badge__icon"}),i??s,h&&o.jsx(Pe,{icon:h,size:b,className:"badge__icon"})]})}var h5=".ihabdevteam-core-scope .tooltip-menu{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:160px;padding:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-menu__header{align-items:center;border-bottom:1px solid var(--color-darkWhite);display:flex;gap:var(--spacing-xs);height:52px;padding:8px 12px}.ihabdevteam-core-scope .tooltip-menu__title{font-weight:600}.ihabdevteam-core-scope .tooltip-menu__columns{display:flex;gap:var(--spacing-s);padding:4px}.ihabdevteam-core-scope .tooltip-menu__column{display:flex;flex:1;flex-direction:column;gap:var(--spacing-xs);min-width:0}.ihabdevteam-core-scope .tooltip-menu__column-title{color:var(--color-lightGray);margin-bottom:4px}.ihabdevteam-core-scope .tooltip-menu__items{display:flex;flex-direction:column;gap:var(--spacing-l)}.ihabdevteam-core-scope .tooltip-menu--small{gap:2px;min-width:140px}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__items{gap:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__columns{gap:var(--spacing-xs);padding:2px}.ihabdevteam-core-scope .tooltip-menu--small .tooltip-menu__header{height:44px;padding:6px 10px}.ihabdevteam-core-scope .tooltip-menu__item{width:100%}.ihabdevteam-core-scope .tooltip-menu__item-icon{align-items:center;display:inline-flex;height:24px;justify-content:center;width:24px}.ihabdevteam-core-scope .tooltip-menu__label{flex:1}.ihabdevteam-core-scope .tooltip-menu__chev{align-items:center;display:inline-flex;justify-content:center;width:20px}@media (max-width:600px){.ihabdevteam-core-scope .tooltip-menu__columns{flex-direction:column}}";Q(h5);function hr({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:n}=me.useTranslation(),i=r==="small"?40:48,[s,c]=l.useState([{title:null,columns:e}]),u=s[s.length-1];l.useEffect(()=>{c(v=>{try{if(!Array.isArray(v)||v.length===0)return[{title:null,columns:e}];const b=v.slice(),y=b[0]&&typeof b[0].title<"u"?b[0].title:null;return b[0]={title:y,columns:e},b}catch{return[{title:null,columns:e}]}})},[e]);const d=l.useCallback(()=>c(v=>v.length>1?v.slice(0,v.length-1):v),[]),m=l.useRef(null),h=l.useRef(null),p=s.length;l.useEffect(()=>{h.current||(h.current=document.activeElement);let v=0,b=0;const y=()=>{const f=m.current?.querySelector("button:not([disabled])");if(f&&f.offsetParent){f.focus({preventScroll:!0});return}b++<20&&(v=requestAnimationFrame(y))};return v=requestAnimationFrame(y),()=>cancelAnimationFrame(v)},[p]),l.useEffect(()=>()=>{h.current?.focus?.({preventScroll:!0})},[]);const g=l.useCallback(v=>{if(v){if(Array.isArray(v.children)&&v.children.length){c(b=>[...b,{title:v.label||null,columns:[{title:null,items:v.children||[]}]}]);return}try{typeof v.onClick=="function"&&v.onClick()}catch{}try{v&&v.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t]);return o.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(s.length>1||u.title)&&o.jsxs("div",{className:"tooltip-menu__header",children:[s.length>1?o.jsx(ce,{size:i,type:"dot",icon:"chevron-left",ariaLabel:n("common.back","\uB4A4\uB85C"),onClick:d,variant:"transparent-gray",useBorder:!1}):null,o.jsx("div",{className:"tooltip-menu__title button-1",children:u.title})]}),o.jsx("div",{className:"tooltip-menu__columns",ref:m,children:u.columns&&u.columns.map((v,b)=>o.jsxs("div",{className:"tooltip-menu__column",children:[v.title?o.jsx("div",{className:"tooltip-menu__column-title body-3",children:v.title}):null,o.jsx("div",{className:"tooltip-menu__items",children:(v.items||[]).map((y,f)=>o.jsx(ce,{className:"tooltip-menu__item",size:i,type:y.label?"bar":"dot",icon:y.selected?"check":y.icon||"none",rightIcon:Array.isArray(y.children)&&y.children.length?"chevron-right":y.badgeCount?o.jsx(ht,{type:"dot",position:"inline",number:Math.min(y.badgeCount,99),size:24,"aria-label":`${y.badgeCount}`}):void 0,label:y.label,ariaLabel:y.label,onClick:()=>g(y),selected:y.selected,disabled:y.disabled,showTooltipInfo:y.tooltip||!1,useBorder:!1,align:"left"},f))})]},b))})]})}function So({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[n,i]=l.useState(!1),[s,c]=l.useState({}),u=l.useRef(null),d=l.useRef(null),m=l.useCallback(()=>{u.current&&c(e(u.current.getBoundingClientRect()))},[e]);l.useEffect(()=>{if(!n)return;m();const g=f=>{const x=f.target;r&&x.closest?.(r)||u.current?.contains(x)||d.current?.contains(x)||i(!1)};document.addEventListener("mousedown",g);const v=f=>{d.current?.contains(f.target)||(t==="reposition"?m():t==="close"&&i(!1))};t!=="ignore"&&window.addEventListener("scroll",v,!0);const b=()=>{a==="reposition"?m():a==="close"&&i(!1)};a!=="ignore"&&window.addEventListener("resize",b);const y=f=>{f.key==="Escape"&&i(!1)};return document.addEventListener("keydown",y),()=>{document.removeEventListener("mousedown",g),t!=="ignore"&&window.removeEventListener("scroll",v,!0),a!=="ignore"&&window.removeEventListener("resize",b),document.removeEventListener("keydown",y)}},[n,m,t,a,r]);const h=l.useCallback(()=>i(g=>!g),[]),p=l.useCallback(()=>i(!1),[]);return{open:n,setOpen:i,toggle:h,close:p,style:s,triggerRef:u,menuRef:d}}const m5=52,vh=10;function vl({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:n,moreItems:i=[]}){const{t:s}=me.useTranslation(),c=r==="manager"?"malgwi":"manager",u=r==="manager"?"arrow-left":"arrow-right",d=r==="manager"?s("nav.modeLabelMalgwi","\uB9D0\uADC0"):s("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),m=l.useRef(null),[h,p]=l.useState(0),g=e.length;l.useEffect(()=>{const D=m.current;if(!D||(p(D.clientWidth),typeof ResizeObserver>"u"))return;const j=new ResizeObserver(F=>p(F[0].contentRect.width));return j.observe(D),()=>j.disconnect()},[]);const v=h>0?Math.floor((h+vh)/(m5+vh)):g,b=h>0&&v<g,y=b?v:g,f=e.slice(0,y),x=e.slice(y),_=b||i.length>0,C=l.useCallback(D=>({position:"fixed",bottom:window.innerHeight-D.top+8,right:window.innerWidth-D.right,zIndex:1e4}),[]),{open:A,toggle:w,close:S,style:N,triggerRef:T,menuRef:E}=So({computeStyle:C,onScroll:"ignore",onResize:"ignore"}),W=l.useCallback(()=>n?.(c),[n,c]),L=l.useMemo(()=>x.find(D=>D.key===t)??i.find(D=>D.selected||D.key&&D.key===t),[x,t,i]),k=l.useMemo(()=>[{items:[...x.map(D=>({label:D.label,icon:D.icon,selected:D.key===t,closeOnSelect:!0,onClick:()=>{D.key&&a&&a(D.key),S()}})),...i.map(D=>({label:D.label,icon:D.icon,badgeCount:D.badgeCount,selected:D.selected??(!!D.key&&D.key===t),closeOnSelect:!0,onClick:()=>{D.onClick?.(),S()}}))]}],[x,i,t,a,S]);return o.jsxs("nav",{className:"bottom-nav","aria-label":s("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[n&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"bottom-nav__left",children:o.jsx(ce,{size:52,type:"dot",icon:u,ariaLabel:d,className:"bottom-nav-item",onClick:W})}),o.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),o.jsx("div",{className:"bottom-nav__items",ref:m,children:f.map(D=>o.jsx(ce,{size:52,type:"dot",icon:D.icon,ariaLabel:D.label,selected:D.key===t,disabled:D.state==="disabled",className:"bottom-nav-item",onClick:()=>D.key&&a?.(D.key)},D.key))}),_&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),o.jsx("div",{className:"bottom-nav__right",children:o.jsxs("div",{ref:T,children:[o.jsx(ce,{size:52,type:"dot",icon:L?.icon??"ellipsis",ariaLabel:L?.label??s("nav.more","\uB354\uBCF4\uAE30"),selected:!!L,className:"bottom-nav-item",onClick:w}),A&&qt.createPortal(o.jsx("div",{className:"tooltip-content",style:N,ref:E,children:o.jsx(hr,{columns:k,onClose:S})}),document.body)]})})]})]})}var b5=".ihabdevteam-core-scope .side-nav__menu{-webkit-overflow-scrolling:touch;background-clip:padding-box;border-right:1px solid transparent;display:flex;flex:1;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:0 0 0 12px;scrollbar-color:var(--color-darkWhite) transparent;scrollbar-gutter:stable;scrollbar-width:thin}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar-track{background:transparent}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar-thumb{background:var(--color-darkWhite);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .side-nav__menu::-webkit-scrollbar-thumb:hover{background:var(--color-lightGray,var(--color-lightGray))}.ihabdevteam-core-scope .side-nav__menu-list{display:flex;flex:1 0 auto;flex-direction:column;gap:4px;overflow:visible;padding:4px 0}.ihabdevteam-core-scope .side-nav__notification-wrap{align-self:flex-start;display:inline-flex;position:relative}.ihabdevteam-core-scope .side-nav__footer{align-items:left;display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-s);margin-top:var(--spacing-s);padding:0 0 var(--spacing-s) 0}.ihabdevteam-core-scope .side-nav__separator{background:var(--color-whiteLine);height:1px;margin:0 var(--spacing-s) var(--spacing-xs)}.ihabdevteam-core-scope .side-nav__separator--short{margin:4px var(--spacing-m);width:var(--spacing-xl)}@media (max-width:767px){.ihabdevteam-core-scope .side-nav__footer,.ihabdevteam-core-scope .side-nav__menu{display:none}}.ihabdevteam-core-scope .side-nav__item{align-items:center;background:transparent;border:none;border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;flex-shrink:0;font-family:var(--font-family);gap:var(--spacing-s);height:52px;justify-content:flex-start;padding:0 var(--spacing-m);text-align:left;width:100%}@keyframes ihabCoreSnSweep{0%{background-position:100% 0}to{background-position:0 0}}@keyframes ihabCoreSnIconBounce{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}.ihabdevteam-core-scope .side-nav__item.active{animation:ihabCoreSnSweep 1s cubic-bezier(.4,0,.2,1) forwards;background:linear-gradient(90deg,var(--color-main) 50%,var(--color-sub) 100%);background-position:0 0;background-size:200% 100%;box-shadow:var(--shadow-button);color:#fff}.ihabdevteam-core-scope .side-nav__item.active .side-nav__icon{animation:ihabCoreSnIconBounce .48s cubic-bezier(.4,0,.2,1) forwards;color:#fff}.ihabdevteam-core-scope .side-nav__icon{align-items:center;color:var(--color-lightGray);display:inline-flex;height:24px;justify-content:center;width:24px}.ihabdevteam-core-scope .side-nav__item.active .circle-badge{background:var(--color-pureWhite);color:var(--color-main)}.ihabdevteam-core-scope .side-nav__item .circle-badge--inline{border:1px solid var(--color-pureWhite)}.ihabdevteam-core-scope .side-nav__icon-wrap{display:inline-flex;flex:0 0 24px;position:relative}.ihabdevteam-core-scope .side-nav__icon{flex:0 0 24px}.ihabdevteam-core-scope .side-nav__icon img{display:block;height:20px;-o-object-fit:contain;object-fit:contain;width:20px}.ihabdevteam-core-scope .side-nav__icon-image{background-color:currentColor;background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:20px;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:20px}.ihabdevteam-core-scope .side-nav__item .side-nav__icon img{filter:brightness(0) saturate(0) opacity(.45);transition:filter .16s ease,opacity .16s ease}.ihabdevteam-core-scope .side-nav__item.active .side-nav__icon img{filter:brightness(0) invert(1)}.ihabdevteam-core-scope .side-nav__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .side-nav__item{transition:background-color .16s ease,color .16s ease,transform 80ms ease}.ihabdevteam-core-scope .side-nav__item:focus-visible:not(.active),.ihabdevteam-core-scope .side-nav__item:focus:not(.active),.ihabdevteam-core-scope .side-nav__item:hover:not(.active){background:var(--color-darkWhite)}.ihabdevteam-core-scope .side-nav__item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ihabdevteam-core-scope .side-nav__item.disabled,.ihabdevteam-core-scope .side-nav__item.disabled:focus,.ihabdevteam-core-scope .side-nav__item.disabled:hover{background:transparent;color:var(--color-lightGray);cursor:default;opacity:.6;pointer-events:none;transform:none}.ihabdevteam-core-scope .side-nav__item.disabled .side-nav__icon{color:var(--color-lightGray)}.ihabdevteam-core-scope .side-nav__item.disabled .side-nav__icon img{filter:none;opacity:.8}.ihabdevteam-core-scope .side-nav__item--child{height:40px;padding-left:30px}.ihabdevteam-core-scope .side-nav__item--child .side-nav__icon{height:20px;width:20px}.ihabdevteam-core-scope .side-nav__item--child .side-nav__label{font-weight:400}";Q(b5);function g5(e){const{t}=me.useTranslation(),{activeKey:a,unreadCount:r,onDebug:n,onNotification:i,onSetting:s,onHelp:c,onAccount:u}=e||{},d="default";return o.jsxs("div",{className:"side-nav__footer",children:[n&&o.jsx(ce,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:n,selected:a==="debug"}),o.jsxs("span",{className:"side-nav__notification-wrap",children:[o.jsx(ce,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"bell",ariaLabel:t("nav.notifications","\uC54C\uB9BC"),onClick:i,selected:a==="notifications"}),!!r&&o.jsx(ht,{type:"dot",number:Math.min(r,99),size:24})]}),o.jsx(ce,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:s,selected:a==="settings"}),o.jsx(ce,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:c,selected:a==="help"}),o.jsx(ce,{size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:d,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:u,selected:a==="account"})]})}function yh(e){const{item:t,itemKey:a,label:r,icon:n,active:i,onClick:s,style:c,state:u,labelStyle:d}=e||{},m=t?.key??a??"",h=t?.label??r??"",p=t?.icon??n??"",g=t?.badge??0,v=o.jsx("span",{className:"side-nav__icon-wrap",children:o.jsx(Pe,{icon:p,label:typeof h=="string"?h:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),b=u==="disabled",y=`side-nav__item ${i?"active":""} ${u||""} ${b?"disabled":""} ${t?.child?"side-nav__item--child":""}`,f=l.useCallback(x=>{if(!b){try{x.currentTarget.blur()}catch{}s?.(m,x.currentTarget)}},[b,m,s]);return o.jsxs("button",{className:y,onClick:f,"aria-label":typeof h=="string"?h:void 0,style:c,"aria-disabled":b,children:[v,o.jsx("span",{className:"side-nav__label button-1 f",style:d,children:h}),g>0&&o.jsx(ht,{type:"dot",position:"inline",number:Math.min(g,99),size:24,"aria-label":`${g}`}),u==="loading"&&o.jsx("span",{className:"side-nav__spinner","aria-label":"loading"})]})}function yl(e){const{t}=me.useTranslation(),{items:a=[],activeKey:r,onChange:n,unreadCount:i,onDebug:s,onNotification:c,onAccount:u,onSetting:d,onHelp:m,appMode:h,onAppModeChange:p}=e||{},g=l.useCallback(()=>p?.(h==="malgwi"?"manager":"malgwi"),[p,h]);return o.jsxs("nav",{"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[o.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(v=>!v.section&&(v.key||v.label)).map((v,b)=>o.jsxs(l.Fragment,{children:[v.divider&&o.jsx("div",{className:"side-nav__separator"}),o.jsx(yh,{item:v,active:v.key===r,state:v.disabled?"disabled":void 0,onClick:(y,f)=>{if(v.disabled)return;if(v.href){window.open(v.href,"_blank","noopener,noreferrer");try{f?.blur()}catch{}return}n?.(v.key);try{const _=document.querySelector(".content-area");_?_.scrollTop=0:window.scrollTo({top:0})}catch{}try{f?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const x=document.querySelector(".header");if(x&&!(typeof x.matches=="function"&&x.matches(":hover"))){x.classList.add("header--force-collapsed");const _=()=>{x.classList.remove("header--force-collapsed"),x.removeEventListener("mouseenter",_)};x.addEventListener("mouseenter",_)}}})]},v.key??`side-nav__item-${b}`)),p&&o.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),p&&o.jsx(yh,{item:{key:"__mode-switch__",label:h==="malgwi"?t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"):t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"),icon:h==="malgwi"?"arrow-right":"arrow-left"},onClick:g})]}),o.jsx(g5,{activeKey:r,unreadCount:i,onDebug:s,onNotification:c,onAccount:u,onSetting:d,onHelp:m})]})}var xl='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2080_3066)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="black"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="black"/>%0A<path d="M46.4288 17.8571H25.0002C15.138 17.8571 7.14307 25.852 7.14307 35.7143V57.1428C7.14307 67.0051 15.138 75 25.0002 75H46.4288C56.291 75 64.2859 67.0051 64.2859 57.1428V35.7143C64.2859 25.852 56.291 17.8571 46.4288 17.8571Z" fill="%234DCDC0"/>%0A<path d="M34.8607 50.7393C25.8285 60.6821 10.6142 61.6678 0.385667 53.1643C-0.0821902 52.775 -0.13219 52.0678 0.278524 51.6178L16.3535 33.925L34.8607 50.7393Z" fill="%234DCDC0"/>%0A<path d="M53.5714 25H32.1428C22.2821 25 14.2856 32.9964 14.2856 42.8571V64.2857C14.2856 74.1464 22.2821 82.1429 32.1428 82.1429H48.2535C49.2178 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7214 51.8928 85.6321C62.8392 84.675 71.4285 75.4821 71.4285 64.2857V42.8571C71.4285 32.9964 63.4321 25 53.5714 25Z" fill="%234DCDC0"/>%0A<path d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23499CDF"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="white"/>%0A<path d="M36.0715 57.1429C35.0287 57.1429 33.9822 56.875 33.0358 56.3286C32.1822 55.8357 31.8894 54.7429 32.3858 53.8893C32.8787 53.0357 33.9715 52.7429 34.8251 53.2393C35.8037 53.8036 37.043 53.6429 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3536 40.4322 35.9107 37.5072 35.7286C36.5215 35.6679 35.5715 35.8464 34.693 36.2679C33.8037 36.6929 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0429C34.5751 32.3714 36.1537 32.0679 37.7322 32.1643C42.4894 32.4607 46.3072 36.4286 46.4251 41.1964C46.4822 43.5286 45.6715 45.7786 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9357C41.8965 53.2464 41.3037 54.4357 40.368 55.375C39.2001 56.5429 37.6465 57.15 36.0751 57.15L36.0715 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2080_3066">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Cl='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7374)">%0A<path d="M237.151 26.0393V72.7214H216.65V26.0393H237.151ZM234.408 70.0464V28.7179H219.254V70.0464H234.408ZM261.495 76.3607H258.819V48.9679H247.575V75.4679H244.899V23.9821H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3607Z" fill="black"/>%0A<path d="M299.722 69.2571C302.076 68.775 304.031 68.1464 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.789 72.0357C297.435 72.4929 295.045 72.7214 292.623 72.7214H272.257V25.6964H275V69.975H292.623C294.998 69.975 297.364 69.7357 299.722 69.2536V69.2571ZM311.69 76.4321V23.6393H314.433V76.3643L311.69 76.4321Z" fill="black"/>%0A<path d="M340.556 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.329 62.2643 333.632 65.925C330.935 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.33 63.1107C334.617 59.3572 336.354 54.5179 337.542 48.5893C338.73 42.6643 339.369 36.0393 339.461 28.7143H324.992V26.0357H356.602V28.7143H342.201C342.155 35.9 341.605 42.3072 340.556 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="black"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="black"/>%0A<path d="M181.886 47.8714V57.275C179.097 58.5571 174.73 59.1964 168.791 59.1964H168.174V76.3607H158.299V59.1964H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8714H181.886ZM148.971 34.2786V24.875H177.634V47.05H167.76V34.2821H148.971V34.2786ZM194.64 76.3607H184.765V23.6393H194.64V76.3643V76.3607Z" fill="black"/>%0A<path d="M48.1549 17.8571H26.7511C16.9002 17.8571 8.91455 25.852 8.91455 35.7143V57.1428C8.91455 67.0051 16.9002 75 26.7511 75H48.1549C58.0058 75 65.9915 67.0051 65.9915 57.1428V35.7143C65.9915 25.852 58.0058 17.8571 48.1549 17.8571Z" fill="%234DCDC0"/>%0A<path d="M36.6007 50.7393C27.579 60.6821 12.3823 61.6678 2.1655 53.1643C1.69818 52.775 1.64824 52.0678 2.05848 51.6178L18.1149 33.925L36.6007 50.7393Z" fill="%234DCDC0"/>%0A<path d="M55.2897 25H33.8859C24.0365 25 16.0493 32.9964 16.0493 42.8571V64.2857C16.0493 74.1464 24.0365 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7214 53.6131 85.6321C64.5469 84.675 73.1262 75.4821 73.1262 64.2857V42.8571C73.1262 32.9964 65.139 25 55.2897 25Z" fill="%234DCDC0"/>%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23499CDF"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="white"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7374">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',f5='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65214)">%0A<path d="M57.1427 17.8571H35.7141C25.8518 17.8571 17.8569 25.852 17.8569 35.7143V57.1428C17.8569 67.0051 25.8518 75 35.7141 75H57.1427C67.0049 75 74.9998 67.0051 74.9998 57.1428V35.7143C74.9998 25.852 67.0049 17.8571 57.1427 17.8571Z" fill="%234DCDC0"/>%0A<path d="M45.575 50.7393C36.5429 60.6821 21.3286 61.6678 11.1 53.1643C10.6322 52.775 10.5822 52.0678 10.9929 51.6178L27.0679 33.925L45.575 50.7393Z" fill="%234DCDC0"/>%0A<path d="M64.2857 25H42.8571C32.9964 25 25 32.9964 25 42.8571V64.2857C25 74.1464 32.9964 82.1429 42.8571 82.1429H58.9679C59.9321 82.1429 60.7143 82.925 60.7143 83.8893C60.7143 84.9107 61.5893 85.7214 62.6071 85.6321C73.5536 84.675 82.1429 75.4821 82.1429 64.2857V42.8571C82.1429 32.9964 74.1464 25 64.2857 25Z" fill="%234DCDC0"/>%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23499CDF"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="white"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2359 35.6679 46.2859 35.8464 45.4073 36.2679C44.5145 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2002 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2175_65214">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',v5='.ihabdevteam-core-scope .header{background:var(--color-deepWhite);border-left:1px solid var(--color-whiteLine);border-right:1px solid var(--color-whiteLine);bottom:0;box-sizing:content-box;display:flex;flex-direction:column;isolation:isolate;left:0;overflow:visible;overscroll-behavior:none;position:fixed;top:0;z-index:var(--z-sidebar)}.ihabdevteam-core-scope .header__menu-button{background:transparent;border:none;display:none}.ihabdevteam-core-scope .header__bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);bottom:0;display:flex;height:56px;justify-content:center;left:0;padding:0;padding-bottom:calc(var(--spacing-content) + env(safe-area-inset-bottom));position:fixed;right:0}.ihabdevteam-core-scope .header__category-button{background:transparent;border:none}.ihabdevteam-core-scope .header:before{background:linear-gradient(160deg,var(--color-main) 0,var(--color-sub) 100%);content:"";inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .2s ease;z-index:-1}.ihabdevteam-core-scope .header--manager{border-right-color:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .header--manager:before{opacity:1}.ihabdevteam-core-scope .header--manager .side-nav__separator{background:hsla(0,0%,100%,.25)}.ihabdevteam-core-scope .header--manager .side-nav__icon,.ihabdevteam-core-scope .header--manager .side-nav__item{color:var(--color-deepWhite)}.ihabdevteam-core-scope .header--manager .side-nav__item:focus:not(.active),.ihabdevteam-core-scope .header--manager .side-nav__item:hover:not(.active){background:hsla(0,0%,100%,.15);color:#fff}.ihabdevteam-core-scope .header--manager .side-nav__item:focus:not(.active) .side-nav__icon,.ihabdevteam-core-scope .header--manager .side-nav__item:hover:not(.active) .side-nav__icon{color:#fff}.ihabdevteam-core-scope .header--manager .side-nav__item.active{animation:ihabCoreSnSweep 1s cubic-bezier(.4,0,.2,1) forwards;background:linear-gradient(90deg,var(--color-pureWhite) 50%,color-mix(in srgb,var(--color-main) 50%,#fff) 100%);background-position:0 0;background-size:200% 100%;box-shadow:var(--shadow-card);color:var(--color-darkGray)}.ihabdevteam-core-scope .header--manager .side-nav__item.active .side-nav__icon{animation:ihabCoreSnIconBounce .48s cubic-bezier(.4,0,.2,1) forwards;color:var(--color-lightGray)}.ihabdevteam-core-scope .header--manager .side-nav__item.active .side-nav__icon img{filter:none;opacity:1}.ihabdevteam-core-scope .header--manager .side-nav__footer [role=button],.ihabdevteam-core-scope .header--manager .side-nav__footer button{color:hsla(0,0%,100%,.55)}.ihabdevteam-core-scope .header--manager .side-nav__mode-switch{background:transparent;border-color:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .header--manager .side-nav__mode-switch:hover{background:hsla(0,0%,100%,.12);border-color:hsla(0,0%,100%,.35)}.ihabdevteam-core-scope .header--manager .side-nav__mode-switch-label{color:hsla(0,0%,100%,.7)}.ihabdevteam-core-scope .header--manager .side-nav__mode-switch-arrow{color:hsla(0,0%,100%,.35)}@media (min-width:1024px){.ihabdevteam-core-scope .header{width:220px}.ihabdevteam-core-scope .header__bottom,.ihabdevteam-core-scope .header__menu-button{display:none}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .header__branding{height:80px}.ihabdevteam-core-scope .header .side-nav__menu{padding:0 10px;transition:padding .18s ease}.ihabdevteam-core-scope .header .side-nav__item{border-radius:var(--radius-card);gap:0;padding:0 14px;transition:padding .18s ease,gap .18s ease}.ihabdevteam-core-scope .header:focus-within .side-nav__menu,.ihabdevteam-core-scope .header:hover .side-nav__menu{padding:0 10px}.ihabdevteam-core-scope .header:focus-within .side-nav__item,.ihabdevteam-core-scope .header:hover .side-nav__item{gap:10px;padding:0 16px}.ihabdevteam-core-scope .header .side-nav__label{display:inline-block;max-width:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateX(-6px);transition:max-width .18s ease,opacity .18s ease,transform .18s ease;white-space:nowrap}.ihabdevteam-core-scope .header{overflow:visible;transition:width .18s ease;width:72px}.ihabdevteam-core-scope .header:focus-within,.ihabdevteam-core-scope .header:hover{width:220px}.ihabdevteam-core-scope .header:focus-within .side-nav__label,.ihabdevteam-core-scope .header:hover .side-nav__label{max-width:200px;opacity:1;pointer-events:auto;transform:translateX(0)}.ihabdevteam-core-scope .header.header--force-collapsed{width:72px}.ihabdevteam-core-scope .header.header--force-collapsed .side-nav__label{max-width:0;opacity:0;pointer-events:none;transform:translateX(-6px)}.ihabdevteam-core-scope .header.header--force-collapsed:hover{width:72px}}@media (max-width:767px){.ihabdevteam-core-scope .header{align-items:center;border-bottom:1px solid var(--color-whiteLine);border-left:none;border-right:none;flex-direction:row;height:64px;justify-content:space-between;left:0;position:fixed;right:0;top:0;width:100%}.ihabdevteam-core-scope .header__top{align-items:center;display:flex;flex:1}.ihabdevteam-core-scope .header__branding{height:auto}.ihabdevteam-core-scope .header__menu-button{display:inline-flex}.ihabdevteam-core-scope .header__bi{align-items:center;display:flex;gap:var(--spacing-xs);padding:0 calc(12px + env(safe-area-inset-right)) 0 calc(12px + env(safe-area-inset-left));width:100%}.ihabdevteam-core-scope .header__bi .header__menu-button{margin-left:auto}.ihabdevteam-core-scope .header__bottom{display:none}}.ihabdevteam-core-scope .brand-identity__root{align-items:center;display:flex;height:100px;justify-content:center}.ihabdevteam-core-scope .brand-identity__image{height:48px;-o-object-fit:contain;object-fit:contain;width:auto}@media (min-width:1024px){.ihabdevteam-core-scope .brand-identity__root{height:100px}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .brand-identity__root{height:100px}}@media (max-width:767px){.ihabdevteam-core-scope .brand-identity__root{height:64px;padding:10px}.ihabdevteam-core-scope .brand-identity__image{height:40px}}';Q(v5);function _l({appMode:e}){const{t}=me.useTranslation(),a=e==="manager",r=a?Cl:xl,n=f5,i=oa("(min-width: 768px) and (max-width: 1023px)");return o.jsx("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:i?o.jsx("img",{src:n,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image"}):o.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"})})}function wl({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:n,unreadCount:i,onDebug:s,onNotification:c,onAccount:u,onSetting:d,onHelp:m,appMode:h,onAppModeChange:p}){const{t:g}=me.useTranslation(),v=oa("(max-width: 767px)"),b=l.useMemo(()=>{const N=[];return s&&N.push({key:"debug",icon:"terminal",label:g("nav.debug","\uB514\uBC84\uADF8"),onClick:s}),c&&N.push({key:"notifications",icon:"bell",label:g("nav.notifications","\uC54C\uB9BC"),badgeCount:i,onClick:c}),d&&N.push({key:"settings",icon:"settings",label:g("nav.settings","\uC124\uC815"),onClick:d}),m&&N.push({key:"help",icon:"message-circle-question-mark",label:g("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:m}),u&&N.push({key:"account",icon:"user-round",label:g("nav.account","\uACC4\uC815"),onClick:u}),N},[g,s,c,d,m,u,i]),y=l.useCallback(N=>({position:"fixed",top:N.bottom+8,right:Math.max(8,window.innerWidth-N.right),zIndex:1e4}),[]),{open:f,toggle:x,close:_,style:C,triggerRef:A,menuRef:w}=So({computeStyle:y,onScroll:"ignore",onResize:"ignore"}),S=l.useMemo(()=>[{items:b.map(N=>({label:N.label,icon:N.icon,badgeCount:N.badgeCount,selected:N.selected??(!!N.key&&N.key===e),closeOnSelect:!0,onClick:()=>{N.onClick?.(),_()}}))}],[b,e,_]);return o.jsxs("aside",{className:`header${h==="manager"?" header--manager":""}`,children:[o.jsxs("div",{className:"header__bi",children:[o.jsx(_l,{appMode:h}),o.jsxs("div",{className:"header__menu-button",ref:A,children:[o.jsx(ce,{size:48,type:"dot",shape:"pill",variant:"default",icon:"menu",ariaLabel:g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:x}),f&&qt.createPortal(o.jsx("div",{className:"tooltip-content",style:C,ref:w,children:o.jsx(hr,{columns:S,onClose:_})}),document.body)]})]}),o.jsx(yl,{items:a,activeKey:e??void 0,onChange:t,unreadCount:i,onDebug:s,onNotification:c,onAccount:u,onSetting:d,onHelp:m,appMode:h,onAppModeChange:p}),v&&o.jsx(vl,{items:a,activeKey:e??void 0,onChange:t,appMode:h,onAppModeChange:p})]})}const xh=wl;var y5='.ihabdevteam-core-scope .payment-plan__card{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;display:flex;flex:1 1 340px;flex-direction:column;gap:28px;max-width:360px;min-width:min(340px,100%);padding:20px;position:relative;text-align:left;transition:box-shadow .2s ease,transform .2s ease;width:100%}.ihabdevteam-core-scope .payment-plan__card:hover{box-shadow:var(--shadow-dropdown);transform:translateY(-4px)}.ihabdevteam-core-scope .payment-plan__card-badge{position:absolute;right:32px;top:32px}.ihabdevteam-core-scope .payment-plan__pricing-card{cursor:pointer;display:flex;justify-content:center}.ihabdevteam-core-scope .payment-plan__title{color:var(--color-black);display:flex;flex-direction:column;margin:0}.ihabdevteam-core-scope .payment-plan__quote{color:var(--color-sub);margin:0 0 4px;min-height:1.4em}.ihabdevteam-core-scope .payment-plan__title-heading{margin:0}.ihabdevteam-core-scope .payment-plan__subtitle{color:var(--color-gray);line-height:1.5;margin:8px 0 0;text-align:left}.ihabdevteam-core-scope .payment-plan__box,.ihabdevteam-core-scope .payment-plan__box-title{display:block}.ihabdevteam-core-scope .payment-plan__box-list{color:var(--color-lightGray);padding-left:18px}.ihabdevteam-core-scope .payment-plan__box-list li{margin-bottom:4px}.ihabdevteam-core-scope .payment-plan__contact-button{width:100%}.ihabdevteam-core-scope .payment-plan__feature-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:12px 0 0;padding:0}.ihabdevteam-core-scope .payment-plan__feature-item{align-items:center;color:var(--color-darkGray);display:flex;gap:10px;line-height:1.45}.ihabdevteam-core-scope .payment-plan__feature-check{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center}.ihabdevteam-core-scope .payment-plan__card-pricing{display:flex;flex-direction:column;gap:6px;margin-top:auto;text-align:left;width:100%}.ihabdevteam-core-scope .payment-plan__pricing-list{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .payment-plan__pricing-row{grid-row-gap:4px;align-items:center;background:var(--plan-color,var(--color-darkWhite));border:1px solid transparent;border-radius:var(--radius-s);box-sizing:border-box;color:#fff;cursor:pointer;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:14px 18px;row-gap:4px;transition:filter .15s ease,transform .15s ease,box-shadow .15s ease;width:100%}.ihabdevteam-core-scope .payment-plan__pricing-row--static{cursor:default;pointer-events:none}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight{background:var(--color-white);border:1px solid var(--plan-color,var(--color-main));color:var(--color-darkGray)}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-current,.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-row-price{color:var(--plan-color,var(--color-main))}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-original{color:var(--color-lightGray)}.ihabdevteam-core-scope .payment-plan__pricing-row--highlight .payment-plan__pricing-badge{color:var(--plan-color,var(--color-main))}.ihabdevteam-core-scope .payment-plan__pricing-row:hover{box-shadow:var(--shadow-dropdown);filter:brightness(1.04);transform:translateY(-2px)}.ihabdevteam-core-scope .payment-plan__pricing-row-title{display:contents}.ihabdevteam-core-scope .payment-plan__pricing-row-label{grid-column:1;grid-row:1;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-badge{color:hsla(0,0%,100%,.9);grid-column:2;grid-row:1;margin:0;text-align:right;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-row-price{align-items:center;color:#fff;display:flex;gap:var(--spacing-xs);grid-column:1/-1;grid-row:2;justify-content:flex-end;margin:0;text-align:right}.ihabdevteam-core-scope .payment-plan__pricing-original{color:var(--color-white-a80);margin:0;text-decoration:line-through;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-current{color:#fff;margin:0;white-space:nowrap}.ihabdevteam-core-scope .payment-plan__pricing-symbol{font-weight:600;margin-right:2px}.ihabdevteam-core-scope .payment-plan__list{grid-gap:var(--spacing-l);align-items:stretch;display:grid;gap:var(--spacing-l);grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),360px));justify-content:center;margin:0 auto var(--spacing-page);width:100%}.ihabdevteam-core-scope .payment-plan__list>.payment-plan__card{align-self:stretch}.ihabdevteam-core-scope .payment-plan__card-content,.ihabdevteam-core-scope .payment-plan__card-inner{min-height:0}.ihabdevteam-core-scope .payment-plan__card.recommended{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .payment-plan__recommended-badge{background:var(--color-main);border-radius:var(--radius-m);color:#fff;font-weight:700;left:50%;padding:4px 14px;position:absolute;top:-12px;transform:translateX(-50%);white-space:nowrap}.ihabdevteam-core-scope .payment-plan__name{font-weight:800;margin:0 0 8px}.ihabdevteam-core-scope .payment-plan__price{font-weight:800;margin:0 0 4px}.ihabdevteam-core-scope .payment-plan__period{color:var(--color-gray);display:inline}.ihabdevteam-core-scope .payment-plan__features{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:20px 0;padding:0}.ihabdevteam-core-scope .payment-plan__feature{align-items:center;color:var(--color-darkGray);display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .payment-plan__feature:before{color:var(--color-success);content:"\u2713";font-weight:700}.ihabdevteam-core-scope .payment-plan__button{border:none;border-radius:var(--radius-card);cursor:pointer;font-weight:700;padding:14px;transition:all .12s;width:100%}.ihabdevteam-core-scope .payment-plan__button--primary{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .payment-plan__button--primary:hover{background:var(--color-infoLink)}.ihabdevteam-core-scope .payment-plan__button--outline{background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);color:var(--color-darkGray)}.ihabdevteam-core-scope .payment-plan__button--outline:hover{border-color:var(--color-main);color:var(--color-main)}@media (max-width:767px){.ihabdevteam-core-scope .payment-plan__list{align-items:center;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .payment-plan__list>.payment-plan__card{align-self:center;flex:none;max-width:360px;width:100%}}';Q(y5);function Ch(e){if(!(e==null||e===""))return ar(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}function x5(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function C5(e){if(e.durationDays&&e.durationDays>0){const n=e.durationDays;return n%365===0?`${n/365}\uB144`:`${n}\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*$/);return r?r[1].replace(/\s+/g,""):a||"\uC774\uC6A9\uAD8C"}function _5(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 kl(e){return{type:e.type??x5(e),plan:C5(e),label:e.label,price:Ch(e.price),originalPrice:Ch(e.originalPrice),discountLabel:e.discountLabel}}var w5='.ihabdevteam-core-scope .pass-card-frame{container-type:inline-size;height:188px;max-width:100%;width:300px}.ihabdevteam-core-scope .pass-card{border-radius:16px;box-sizing:border-box;display:flex;flex-direction:column;height:188px;overflow:hidden;padding:var(--spacing-l);position:relative;width:300px}.ihabdevteam-core-scope .pass-card-frame>.pass-card{aspect-ratio:auto;border-radius:5.33cqw;height:100%;padding:6.67cqw;width:100%}.ihabdevteam-core-scope .pass-card--clickable{cursor:pointer}@media (max-width:360px){.ihabdevteam-core-scope .pass-card,.ihabdevteam-core-scope .pass-card-frame{max-width:300px;width:100%}}.ihabdevteam-core-scope .pass-card--active{box-shadow:0 4px 16px rgba(0,0,0,.08)}.ihabdevteam-core-scope .pass-card--pending{box-shadow:0 2px 8px rgba(0,0,0,.05)}.ihabdevteam-core-scope .pass-card--expired{--color-main:var(--color-disabled);--color-sub:var(--color-whiteLine);--pass-card-expired-shape:var(--color-whiteLine);box-shadow:none}.ihabdevteam-core-scope [data-theme=dark] .pass-card--expired{--pass-card-expired-shape:hsla(0,0%,100%,.18)}@media (prefers-color-scheme:dark){.ihabdevteam-core-scope :root:not([data-theme=light]):not([data-theme=dark]) .pass-card--expired{--pass-card-expired-shape:hsla(0,0%,100%,.18)}}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg{background:var(--color-darkWhite)}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg__symbol{background:var(--pass-card-expired-shape)}.ihabdevteam-core-scope .pass-card--expired .pass-card__copyright,.ihabdevteam-core-scope .pass-card--expired .pass-card__plan,.ihabdevteam-core-scope .pass-card--expired .pass-card__price-area,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage-percent,.ihabdevteam-core-scope .pass-card--expired .pass-card__usage-remaining{color:var(--color-gray)}.ihabdevteam-core-scope .pass-card.pass-card--expired:after{box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.5),inset -1px -1px 0 color-mix(in srgb,var(--color-gray) 10%,transparent)}.ihabdevteam-core-scope .pass-card:after{border-radius:inherit;box-shadow:inset 1px 1px 0 hsla(0,0%,100%,.5),inset -1px -1px 0 rgba(73,156,223,.2);content:"";inset:0;pointer-events:none;position:absolute;z-index:2}.ihabdevteam-core-scope .pass-card__top{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;margin-top:-1.67cqw;position:relative;z-index:1}.ihabdevteam-core-scope .pass-card__top-left{align-items:flex-start;display:flex;flex-direction:column;gap:0}.ihabdevteam-core-scope .pass-card__logo{height:10.67cqw;-o-object-fit:contain;object-fit:contain;width:auto}.ihabdevteam-core-scope .pass-card__plan{color:var(--pass-card-text,var(--color-pureBlack));display:flex;flex-direction:column;gap:0;margin-top:-.67cqw;position:relative;text-align:left;z-index:1}.ihabdevteam-core-scope .pass-card__plan .h0{font-size:13.33cqw;line-height:1.3}.ihabdevteam-core-scope .pass-card .pass-card__plan-number{font-size:17.33cqw;letter-spacing:-1cqw;line-height:1}.ihabdevteam-core-scope .pass-card__plan .h5b{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__plan-unit{margin-left:.67cqw;position:relative;top:-.67cqw}.ihabdevteam-core-scope .pass-card__plan-suffix{margin-left:.67cqw;margin-top:0}.ihabdevteam-core-scope .pass-card .pass-card__copyright{color:var(--pass-card-text,var(--color-black));font-size:3.67cqw;line-height:1.36;margin:auto 0 0;position:relative;text-align:left;z-index:1}.ihabdevteam-core-scope .pass-card__price-area{align-items:flex-end;bottom:4.67cqw;display:flex;flex-direction:column;gap:0;position:absolute;right:6.67cqw;z-index:1}.ihabdevteam-core-scope .pass-card__price-area .h1{font-size:10.67cqw;line-height:1.375}.ihabdevteam-core-scope .pass-card__price-area .h5{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__usage{align-items:flex-end;bottom:4.67cqw;color:var(--pass-card-text,var(--color-black));display:flex;flex-direction:column;gap:0;position:absolute;right:6.67cqw;z-index:1}.ihabdevteam-core-scope .pass-card__usage-percent{align-items:baseline;display:inline-flex;font-size:3.67cqw;gap:0;line-height:1.36;opacity:.9}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-remaining{font-size:5cqw;line-height:1.53;opacity:.9}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-value{font-size:10.67cqw;line-height:1.2}.ihabdevteam-core-scope .pass-card__usage .pass-card__usage-symbol{font-size:5cqw;line-height:1.53}.ihabdevteam-core-scope .pass-card__discount{color:var(--pass-card-text,var(--color-pureBlack));font-size:4.67cqw;line-height:1.2;text-align:right;white-space:pre-line}.ihabdevteam-core-scope .pass-card__price{align-items:baseline;color:var(--pass-card-text,var(--color-pureBlack));display:inline-flex;gap:2cqw;text-align:right}.ihabdevteam-core-scope .pass-card__price-original{color:color-mix(in srgb,var(--pass-card-text,var(--color-pureBlack)) 75%,transparent);font-size:4.67cqw;line-height:1.57;text-decoration:line-through;text-decoration-thickness:1px}';Q(w5);var k5='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7326)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23FAFAFA"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23FAFAFA"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23FAFAFA"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23FAFAFA"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7326">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',S5='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 200 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="200" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M96.43,48.35v-24.1h30.62v24.1h-30.62ZM142.98,69.15v7.21h-44.76v-15.72h34.46v-2.13h-34.6v-7.21h44.35v15.72h-34.33v2.13h34.88,0ZM106.25,32.56v7.41h11.05v-7.41h-11.05ZM148.33,40.39h-5.9v9.06h-9.89v-25.81h9.89v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M185.54,47.87v9.4c-2.79,1.28-7.16,1.92-13.11,1.92h-.62v17.16h-9.89v-17.16h-12.22v-9.4h22.86c5.86,0,10.18-.64,12.98-1.92h0ZM152.59,34.28v-9.4h28.7v22.17h-9.89v-12.77h-18.81ZM198.31,76.36h-9.89V23.64h9.89v52.73h0Z"/>%0A <path class="st1" d="M46.43,17.86h-21.43c-9.86,0-17.86,7.99-17.86,17.86v21.43c0,9.86,7.99,17.86,17.86,17.86h21.43c9.86,0,17.86-7.99,17.86-17.86v-21.43c0-9.86-7.99-17.86-17.86-17.86Z"/>%0A <path class="st1" d="M34.86,50.74c-9.03,9.94-24.25,10.93-34.48,2.42-.47-.39-.52-1.1-.11-1.55l16.07-17.69,18.51,16.81Z"/>%0A <path class="st1" d="M53.57,25h-21.43c-9.86,0-17.86,8-17.86,17.86v21.43c0,9.86,8,17.86,17.86,17.86h16.11c.96,0,1.75.78,1.75,1.75,0,1.02.88,1.83,1.89,1.74,10.95-.96,19.54-10.15,19.54-21.35v-21.43c0-9.86-8-17.86-17.86-17.86Z"/>%0A <path class="st2" d="M25,25c-5.92,0-10.71,4.8-10.71,10.71v28.57c0,3.09.79,6,2.17,8.54,2.54,1.39,5.45,2.17,8.54,2.17h28.57c5.92,0,10.71-4.8,10.71-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.54-1.39-5.45-2.17-8.54-2.17h-28.57Z"/>%0A <path class="st3" d="M25.36,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M36.07,57.14c-1.04,0-2.09-.27-3.04-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.59-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.33-4.44,2.91-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.35-5.56-.99-.06-1.94.12-2.81.54-.89.43-1.96.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.76.3,8.58,4.26,8.69,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',A5='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7325)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23111111"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23111111"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23111111"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23111111"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23111111"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7325">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',T5='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7395)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23FAFAFA"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23FAFAFA"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23FAFAFA"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23FAFAFA"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23FAFAFA"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7395">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',B5='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 371 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="371" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M237.15,26.04v46.68h-20.5V26.04h20.5ZM234.41,70.05V28.72h-15.15v41.33h15.15ZM261.49,76.36h-2.68v-27.39h-11.24v26.5h-2.68V23.98h2.68v22.31h11.24v-22.65h2.68v52.73h0Z"/>%0A <path class="st3" d="M299.72,69.26c2.35-.48,4.31-1.11,5.86-1.89v2.75c-1.51.82-3.44,1.46-5.79,1.92-2.35.46-4.74.69-7.17.69h-20.37V25.7h2.74v44.28h17.62c2.38,0,4.74-.24,7.1-.72h0ZM311.69,76.43V23.64h2.74v52.73l-2.74.07Z"/>%0A <path class="st3" d="M340.56,47.94l17.62,22.52-2.13,1.65-16.18-20.94c-1.46,6.18-3.54,11.1-6.24,14.76-2.7,3.66-5.9,5.93-9.6,6.8v-2.75c3.25-.82,6.01-3.11,8.3-6.86,2.29-3.75,4.02-8.59,5.21-14.52,1.19-5.92,1.83-12.55,1.92-19.87h-14.47v-2.68h31.61v2.68h-14.4c-.05,7.19-.6,13.59-1.64,19.22h0ZM369.22,76.36h-2.74v-28.9h-14.06v-2.68h14.06v-21.14h2.74v52.73Z"/>%0A <path class="st3" d="M92.88,48.35v-24.1h30.58v24.1h-30.58ZM139.37,69.15v7.21h-44.71v-15.72h34.42v-2.13h-34.56v-7.21h44.3v15.72h-34.28v2.13h34.83,0ZM102.68,32.56v7.41h11.04v-7.41h-11.04ZM144.72,40.39h-5.9v9.06h-9.88v-25.81h9.88v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M181.89,47.87v9.4c-2.79,1.28-7.16,1.92-13.1,1.92h-.62v17.16h-9.88v-17.16h-12.2v-9.4h22.83c5.85,0,10.17-.64,12.96-1.92h0ZM148.97,34.28v-9.4h28.66v22.17h-9.87v-12.77h-18.79ZM194.64,76.36h-9.88V23.64h9.88v52.73h0Z"/>%0A <path class="st1" d="M48.15,17.86h-21.4c-9.85,0-17.84,7.99-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h21.4c9.85,0,17.84-7.99,17.84-17.86v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st1" d="M36.6,50.74c-9.02,9.94-24.22,10.93-34.44,2.42-.47-.39-.52-1.1-.11-1.55l16.06-17.69,18.49,16.81Z"/>%0A <path class="st1" d="M55.29,25h-21.4c-9.85,0-17.84,8-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h16.09c.96,0,1.74.78,1.74,1.75,0,1.02.87,1.83,1.89,1.74,10.93-.96,19.51-10.15,19.51-21.35v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st2" d="M26.75,25c-5.91,0-10.7,4.8-10.7,10.71v28.57c0,3.09.79,6,2.17,8.54,2.53,1.39,5.44,2.17,8.53,2.17h28.54c5.91,0,10.7-4.8,10.7-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.53-1.39-5.44-2.17-8.53-2.17h-28.54Z"/>%0A <path class="st3" d="M27.11,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M37.81,57.14c-1.04,0-2.09-.27-3.03-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.58-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.32-4.44,2.9-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.34-5.56-.99-.06-1.93.12-2.81.54-.89.43-1.95.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.75.3,8.57,4.26,8.68,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',N5='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7394)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23111111"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23111111"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23111111"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23111111"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23111111"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23111111"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23111111"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7394">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',D5=".ihabdevteam-core-scope .pass-card-bg{border-radius:inherit;inset:0;overflow:hidden;pointer-events:none;position:absolute}:where(.ihabdevteam-core-scope){--pass-card-symbol-opacity:1}.ihabdevteam-core-scope .pass-card-bg__symbol{background:var(--symbol-url) center /contain no-repeat;height:48px;-webkit-mask:var(--symbol-url) center /contain no-repeat;mask:var(--symbol-url) center /contain no-repeat;position:absolute;right:12px;top:12px;width:48px}";Q(D5);var E5=".ihabdevteam-core-scope .pass-card-bg-two-circle{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg-two-circle__c1,.ihabdevteam-core-scope .pass-card-bg-two-circle__c3{border-radius:50%;opacity:.75;opacity:var(--pass-card-symbol-opacity,.75);position:absolute}.ihabdevteam-core-scope .pass-card-bg-two-circle__c1{background:var(--color-main);height:340px;right:-150px;top:-140px;width:340px}.ihabdevteam-core-scope .pass-card-bg-two-circle__c3{background:var(--color-sub);bottom:-90px;height:220px;right:-50px;width:220px}.ihabdevteam-core-scope .pass-card-bg-two-circle__symbol{background:var(--color-darkWhite)}";Q(E5);var _h='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7305)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7179 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7179 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7305">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Fa={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},Sl=new WeakMap;function j5(e){if(e)return Sl.get(e)}function ga(e,t){e&&(e.style.setProperty(Fa.text,t.text),e.style.setProperty(Fa.sub,t.sub),t.copyrightColor&&e.style.setProperty(Fa.copyright,t.copyrightColor),Sl.set(e,t))}function fa(e){e&&(e.style.removeProperty(Fa.text),e.style.removeProperty(Fa.sub),e.style.removeProperty(Fa.copyright),Sl.delete(e))}const Al={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function Tl(e={}){const t=lt(Al,ga,fa);return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg-two-circle__c1"}),o.jsx("div",{className:"pass-card-bg-two-circle__c3"}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${_h}")`}})]})}const wh="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464Z";var L5=".ihabdevteam-core-scope .pass-card-bg-sound-move{background:var(--color-pureWhite)}.ihabdevteam-core-scope .pass-card-bg-sound-move__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";Q(L5);var mr='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65181)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="url(%23paint0_linear_2175_65181)"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2175_65181" x1="29.6392" y1="29.6393" x2="75.2535" y2="75.2536" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2175_65181">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const M5={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},P5=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function kh(e={}){const t=lt(M5,ga,fa),a="var(--color-main)",r=270,n=170;return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[o.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:P5.map(({scale:i,opacity:s},c)=>o.jsx("g",{transform:`translate(${r} ${n}) scale(${i}) translate(-50 -50)`,opacity:s,children:o.jsx("path",{d:wh,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}var R5=".ihabdevteam-core-scope .pass-card-bg-sound-move-v1{background:linear-gradient(135deg,var(--color-main),var(--color-sub))}.ihabdevteam-core-scope .pass-card-bg-sound-move-v1__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";Q(R5);const $5={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},z5=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function I5(e={}){const t=lt($5,ga,fa),a="#ffffff",r=270,n=170;return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[o.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:z5.map(({scale:i,opacity:s},c)=>o.jsx("g",{transform:`translate(${r} ${n}) scale(${i}) translate(-50 -50)`,opacity:s,children:o.jsx("path",{d:wh,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},c))}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${_h}")`}})]})}var O5=".ihabdevteam-core-scope .pass-card-bg-talk{align-items:center;background:var(--color-pureWhite);display:flex;justify-content:center}.ihabdevteam-core-scope .pass-card-bg-talk__shape{height:76px;position:absolute;width:76px}.ihabdevteam-core-scope .pass-card-bg-talk__shape--left{background:var(--color-main);border-radius:42px 42px 42px 4px;transform:translateX(-18px)}.ihabdevteam-core-scope .pass-card-bg-talk__shape--right{background:var(--color-sub);border-radius:50%;opacity:.7;transform:translateX(18px)}";Q(O5);const F5={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function W5(e={}){const t=lt(F5,ga,fa);return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),o.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}const H5={Logo_speechear_kr:{"":xl,_white:k5,_textWhite:S5,_black:A5},Logo_speechearManager_kr:{"":Cl,_white:T5,_textWhite:B5,_black:N5}};function V5(e,t){if(e)return H5[e]?.[t??""]??void 0}const G5={speechear:xl,manager:Cl},q5={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},Sh=10;function Y5(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 n=Math.floor(e/60);return n>0?t("passCard.remainingMinute",{n}):t("passCard.remainingSecond",{n:Math.floor(e)})}function U5(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),n=a==="\uC624\uD508\uD2B9\uAC00"||a===Ca.t("passCard.specialLabel");return r?o.jsx(W5,{}):n?o.jsx(I5,{}):o.jsx(kh,{})}return o.jsx(Tl,{})}function Bl({product:e,showPrice:t=!1,plan:a,type:r,endDate:n,remainingSeconds:i,state:s="active",bg:c,bgOnly:u=!1,textColor:d,subColor:m,copyrightColor:h,logoSrc:p,label:g,price:v,originalPrice:b,discountLabel:y,onUse:f,onRefund:x,onDelete:_}){const{t:C}=me.useTranslation(),A=e?kl(e):void 0,w=r??A?.type??"speechear",S=a??A?.plan??"\uC774\uC6A9\uAD8C",N=g??A?.label,T=v??(t?A?.price:void 0),E=b??(t?A?.originalPrice:void 0),W=y??A?.discountLabel,L=l.useMemo(()=>{if(T)return null;const Y=e?.durationDays??_5(e?.code);if(!Y||Y<=0)return null;const de=Y*86400;let fe;if(i!=null)fe=i;else if((s==="active"||s==="expired")&&n){const Ae=new Date(n).getTime();if(Number.isNaN(Ae))return null;const P=new Date;P.setHours(0,0,0,0);const oe=new Date(Ae);oe.setHours(0,0,0,0);const re=Math.round((oe.getTime()-P.getTime())/864e5);fe=Math.max(0,re)*86400}else s==="expired"?fe=0:fe=de;const Se=Math.max(0,Math.min(100,Math.floor(Math.min(fe,de)/de*100)));return s==="pending"&&Se>=100?null:{percent:Se,remainingLabel:Y5(fe,C)}},[T,s,n,i,e?.durationDays,e?.code,C]),k=l.useRef(null),[D,j]=l.useState({}),[F,ee]=l.useState(null),Z=!!(f||x||_),J=l.useRef(!1),M=l.useRef(void 0),[R,z]=l.useState(p);l.useLayoutEffect(()=>{z(p)},[p]),l.useLayoutEffect(()=>{const Y=k.current;Y&&(d!==void 0&&Y.style.setProperty("--pass-card-text",d),m!==void 0&&Y.style.setProperty("--pass-card-sub",m),h!==void 0&&Y.style.setProperty("--pass-card-copyright",h))},[d,m,h]),l.useLayoutEffect(()=>{const Y=k.current;if(!Y)return;const de=j5(Y);if(!p){const fe=q5[w],Se=s==="expired"?"_black":de?.logoColor??"",Ae=V5(fe,Se);z(Ae)}},[c,p,w,s]);const H=Y=>{const de=k.current;if(!de)return null;const{left:fe,top:Se,width:Ae,height:P}=de.getBoundingClientRect(),oe=(Y.clientX-fe)/Ae-.5;return{rotateX:-((Y.clientY-Se)/P-.5)*Sh,rotateY:oe*Sh}},$=(Y,de)=>{const fe=de*-.7,Se=Y*.7+10,Ae=20+(Math.abs(Y)+Math.abs(de))*.4;return`${fe}px ${Se}px ${Ae}px rgba(0, 0, 0, 0.18)`},q=l.useCallback(Y=>{J.current=!0,clearTimeout(M.current),M.current=setTimeout(()=>{J.current=!1},200);const de=H(Y);de&&j({transform:`perspective(800px) rotateX(${de.rotateX}deg) rotateY(${de.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:$(de.rotateX,de.rotateY),transition:"transform 0.25s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.25s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),O=l.useCallback(Y=>{const de=H(Y);if(!de)return;const fe=J.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";j({transform:`perspective(800px) rotateX(${de.rotateX}deg) rotateY(${de.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:$(de.rotateX,de.rotateY),transition:fe})},[]),G=l.useCallback(()=>{clearTimeout(M.current),J.current=!1,j({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)"})},[]),I=l.useCallback(()=>ee(null),[]),ne=l.useMemo(()=>{const Y=S.replace("\uC774\uC6A9\uAD8C","").trim(),de=Y.match(/^(.*?)(일|년)$/);return de?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"h0 pass-card__plan-number",children:de[1]}),o.jsx("span",{className:"h5b pass-card__plan-unit",children:de[2]==="\uB144"?C("passCard.unitYear","\uB144"):C("passCard.unitDay","\uC77C")})]}):o.jsx("span",{className:"h0",children:Y})},[S,C]),X=l.useMemo(()=>{const Y=ar(T);if(!Y)return null;const de=Y.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!de)return o.jsx("span",{className:"h1",children:Y});const[,fe,Se,Ae]=de;return o.jsxs(o.Fragment,{children:[fe&&o.jsx("span",{className:"h5 pass-card__price-symbol",children:fe}),o.jsx("span",{className:"h1 pass-card__price-amount",children:Se}),Ae.trim()&&o.jsx("span",{className:"h5 pass-card__price-symbol",children:Ae.trim()})]})},[T]),te=l.useCallback(()=>{Z&&ee(Y=>{if(Y)return null;const de=k.current?.getBoundingClientRect();if(!de)return null;const fe=50;return{left:de.left,right:de.right,width:de.width,height:de.height,x:de.x,y:de.y+fe,top:de.top+fe,bottom:de.bottom+fe}})},[Z]),pe=l.useCallback(Y=>{Z&&(Y.key==="Enter"||Y.key===" ")&&(Y.preventDefault(),te())},[Z,te]),ae=[{items:[...f?[{label:C("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{f(),ee(null)},closeOnSelect:!0}]:[],...x?[{label:C("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{x(),ee(null)},closeOnSelect:!0}]:[],..._?[{label:C("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{_(),ee(null)},closeOnSelect:!0}]:[]]}];return o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"pass-card-frame",children:o.jsxs("div",{ref:k,className:`pass-card pass-card--${s}${Z?" pass-card--clickable":""}`,style:D,onMouseEnter:q,onMouseMove:O,onMouseLeave:G,onClick:te,onKeyDown:Z?pe:void 0,role:Z?"button":void 0,tabIndex:Z?0:void 0,children:[c??U5(w,S,N),!u&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"pass-card__top",children:o.jsxs("div",{className:"pass-card__top-left",children:[o.jsx("img",{src:R??G5[w],className:"pass-card__logo",alt:w==="manager"?C("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):C("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),o.jsxs("div",{className:"pass-card__plan",children:[o.jsx("div",{children:ne}),o.jsx("span",{className:"h5b pass-card__plan-suffix",children:N?C("passCard.labeledPlan",{label:N}):C("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),T?o.jsxs("div",{className:"pass-card__price-area",children:[W&&o.jsx("span",{className:"pass-card__discount body-3",children:W}),o.jsxs("div",{className:"pass-card__price",children:[E&&o.jsx("span",{className:"pass-card__price-original body-3",children:ar(E)}),X]})]}):L?o.jsxs("div",{className:"pass-card__usage",children:[o.jsx("span",{className:"h5b pass-card__usage-remaining",children:L.remainingLabel}),o.jsxs("span",{className:"pass-card__usage-percent",children:[o.jsx("span",{className:"h1 pass-card__usage-value",children:L.percent}),o.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):o.jsx("div",{className:"pass-card__copyright caption-2",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),F&&o.jsx(Sa,{anchorRect:F,onClose:I,children:o.jsx(hr,{columns:ae,onClose:I,size:"small"})})]})}var K5=".ihabdevteam-core-scope .pass-card-bg-sound-line{background:linear-gradient(60deg,var(--color-pureWhite) 0,color-mix(in srgb,var(--color-sub) 15%,var(--color-pureWhite)) 100%)}.ihabdevteam-core-scope .pass-card-bg-sound-line__svg{height:100%;inset:0;pointer-events:none;position:absolute;width:100%}";Q(K5);const Z5={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function X5(e={}){const t=`passcard-sound-line-grad-${l.useId()}`,a=lt(Z5,ga,fa);return o.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[o.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:[o.jsx("defs",{children:o.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[o.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),o.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),o.jsx("g",{transform:"translate(25, 45)",children:o.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"})})]}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}var Q5=".ihabdevteam-core-scope .pass-card-bg-talk-v1{align-items:center;background:var(--color-pureWhite);display:flex;justify-content:center}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape{height:76px;position:absolute;width:76px}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape--left{background:linear-gradient(70deg,var(--color-main),var(--color-sub));border-radius:999px;height:92px;transform:translateX(0) rotate(120deg);width:180px}.ihabdevteam-core-scope .pass-card-bg-talk-v1__shape--right{background:var(--color-sub);border-radius:50%;height:60px;opacity:1;transform:translate(38px,12px);width:60px}";Q(Q5);const J5={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function e3(e={}){const t=lt(J5,ga,fa);return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),o.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}function t3(e,t){if(e){if(t==="manager_pro")return o.jsx(e3,{});if(t==="manager_standard")return o.jsx(X5,{});if(t==="manager_lite")return o.jsx(kh,{})}}function a3(e){const t=ar(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,n,i]=a;return o.jsxs(o.Fragment,{children:[r&&o.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),n,i.trim()&&o.jsx("span",{className:"payment-plan__pricing-symbol h4",children:i.trim()})]})}function Ah(e){const{t}=me.useTranslation(),{plan:a,onSelect:r,period:n="monthly",ownedCodes:i}=e||{},s=f=>!!f&&!!i?.includes(f),c=(a.tiers||[]).some(f=>/오픈\s*특가/.test(f.label??"")&&s(f.code)),u=f=>{const x=f.prices?f.prices[n]:f.price;return x?(a.tiers||[]).some(_=>!!_.badge&&_.originals?.[n]===x):!1},d=a.colorToken?`var(--color-${a.colorToken})`:"var(--color-gray)",m=t("payment.plan.freePrice","\uBB34\uB8CC"),h=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),p=f=>f.prices?f.prices[n]:f.price,g=(a.tiers||[]).length>0&&(a.tiers||[]).every(f=>{const x=p(f);return x==="\uBB34\uB8CC"||x===m||x==="0\uC6D0"}),v=(a.tiers||[]).length>0&&(a.tiers||[]).every(f=>{const x=p(f);return x==="\uBB38\uC758"||x===h}),b=a.group==="org",y=b?"manager":"speechear";return o.jsxs("div",{className:"payment-plan__card",style:{borderColor:d,"--plan-color":d},children:[a.cardBadge&&o.jsx("div",{className:"payment-plan__card-badge",children:o.jsx(ht,{label:a.cardBadge,variant:"main",size:"medium",fill:"soft"})}),o.jsxs("div",{className:"payment-plan__title",children:[o.jsx("p",{className:"payment-plan__quote body-3b",style:{color:d},children:a.quote||"\xA0"}),o.jsx("h3",{className:"payment-plan__title-heading h1",children:a.tier??a.title}),o.jsx("p",{className:"payment-plan__subtitle body-3",children:a.subtitle})]}),o.jsxs("div",{className:"payment-plan__box",children:[o.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),o.jsx("ul",{className:"payment-plan__feature-list",children:(a.recommendedFor||[]).map((f,x)=>o.jsxs("li",{className:"payment-plan__feature-item body-3",children:[o.jsx(Pe,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:d}}),f]},x))})]}),o.jsxs("div",{className:"payment-plan__box",children:[o.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),o.jsx("ul",{className:"payment-plan__feature-list",children:(a.features||[]).map((f,x)=>o.jsxs("li",{className:"payment-plan__feature-item body-3",children:[o.jsx(Pe,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:d}}),f]},x))})]}),o.jsx("div",{className:"payment-plan__card-pricing",children:g?null:v?o.jsx(ce,{className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>a.tiers?.[0]&&r?.({...a.tiers[0],productId:a.id,productTitle:a.title})}):o.jsx(o.Fragment,{children:o.jsx("div",{className:"payment-plan__pricing-list",children:(a.tiers||[]).map(f=>{const x=f.label||"\uC774\uC6A9\uAD8C",_=/오픈\s*특가/.test(x),C=_||f.openPromo===!0,A=x.replace(/^오픈\s*특가\s*/,"")||"\uC774\uC6A9\uAD8C",w=f.prices?f.prices[n]:f.price,S=f.badge?C?`\uC624\uD508 \uD2B9\uAC00
818
+ ${f.badge}`:f.badge:void 0;if(_&&s(f.code))return null;if(!f.badge&&!c)return u(f)?null:o.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${f.highlight?" payment-plan__pricing-row--highlight":""}`,children:[o.jsx("div",{className:"payment-plan__pricing-row-title",children:o.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:f.label})}),o.jsx("div",{className:"payment-plan__pricing-row-price",children:o.jsx("span",{className:"payment-plan__pricing-current h1",children:a3(w)})})]},f.id);const N=a.tier??(b?a.title:void 0),T=o.jsx(Bl,{showPrice:!0,product:{type:y,code:f.code,name:A,label:N,price:w,originalPrice:f.originals?.[n]??void 0,discountLabel:S},bg:t3(b,a.id)}),E=()=>r?.({...f,productId:a.id,productTitle:a.title,preview:T});return o.jsx("div",{className:"payment-plan__pricing-card",onClick:E,onKeyDown:r?W=>{W.target===W.currentTarget&&(W.key==="Enter"||W.key===" ")&&(W.preventDefault(),E())}:void 0,role:r?"button":void 0,tabIndex:r?0:void 0,children:T},f.id)})})})})]})}function Th({variant:e="default"}){return o.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),o.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),o.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var o3=".ihabdevteam-core-scope .pass-card-bg-ihab{background:var(--color-white)}.ihabdevteam-core-scope .pass-card-bg-ihab__symbol{bottom:-24px;height:140px;-o-object-fit:contain;object-fit:contain;opacity:.06;position:absolute;right:-24px;width:140px}.ihabdevteam-core-scope .pass-card-bg-ihab__symbol-top{transform:translate(-48px) rotate(-90deg);transform-origin:top right;width:126.72px}";Q(o3);var Nl='data:image/svg+xml,<svg width="264" height="100" viewBox="0 0 264 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2079_3030)">%0A<path d="M60.9019 24.7464C54.4446 18.2821 45.5257 14.2857 35.6757 14.2857C25.8256 14.2857 23.2106 24.5964 16.7569 31.0607C10.2996 37.5214 0 40.1857 0 50C0 59.8143 3.99211 68.7893 10.4494 75.2536C16.9067 81.7178 25.8256 85.7143 35.6757 85.7143C45.5257 85.7143 54.4446 81.7178 60.9019 75.2536C67.3592 68.7893 71.3513 59.8607 71.3513 50C71.3513 40.1393 67.3592 31.2107 60.9019 24.7464ZM48.2906 62.6286C45.0619 65.8607 40.6025 67.8571 35.6757 67.8571C30.7489 67.8571 26.2894 65.8571 23.0608 62.6286C19.8321 59.3964 17.8378 54.9321 17.8378 50C17.8378 45.0678 19.8357 40.6036 23.0608 37.3714C26.2894 34.1393 30.7489 32.1428 35.6757 32.1428C40.6025 32.1428 45.0619 34.1428 48.2906 37.3714C51.5192 40.6036 53.5135 45.0678 53.5135 50C53.5135 54.9321 51.5157 59.3964 48.2906 62.6286Z" fill="url(%23paint0_linear_2079_3030)"/>%0A<path d="M106.735 74.8322H93.6274V24.8322H106.735V74.8322Z" fill="%23111111"/>%0A<path d="M113.495 24.8322H126.602V44.5143H145.022V24.8322H158.197V74.8322H145.022V55.15H126.602V74.8322H113.495V24.8322Z" fill="%23111111"/>%0A<path d="M163.027 74.8322L179.652 24.8322H197.519L214.076 74.8322H199.934L196.969 65.025H180.205L177.241 74.8322H163.031H163.027ZM193.933 55.0786L188.76 38.2964H188.346L183.241 55.0786H193.933Z" fill="%23111111"/>%0A<path d="M218.906 24.8322H240.29C251.674 24.8322 257.675 29.7357 257.675 37.4C257.675 42.925 253.743 47.1393 248.085 48.3107V48.7929C254.364 49 259.605 53.6286 259.605 60.7393C259.605 68.8893 252.983 74.8286 242.081 74.8286H218.902V24.8322H218.906ZM244.157 40.1643C244.157 36.9857 241.674 35.1929 238.085 35.1929H232.013V45.1393H237.878C241.535 45.1393 244.157 43.3429 244.157 40.1679V40.1643ZM245.741 59.0857C245.741 55.425 243.119 53.3536 238.913 53.3536H232.013V64.2643H238.706C243.397 64.2643 245.741 62.4679 245.741 59.0857Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2079_3030" x1="15.337" y1="29.6393" x2="60.9512" y2="75.2042" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2079_3030">%0A<rect width="264" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Dl={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function Bh(){const e=lt(Dl,ga,fa);return o.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${Nl}")`}})})}var r3=".ihabdevteam-core-scope .pass-card-bg-left-color-grid{background:var(--color-white)}.ihabdevteam-core-scope .pass-card-bg-left-color-grid__bar{background:linear-gradient(120deg,var(--color-main),var(--color-sub));border-radius:16px 0 0 16px;height:100%;left:0;position:absolute;top:0;width:76%}.ihabdevteam-core-scope .pass-card-bg-left-color-grid__grid{--grid-line:rgba(73,156,223,.06);background-image:linear-gradient(rgba(73,156,223,.06) 1px,transparent 0),linear-gradient(90deg,rgba(73,156,223,.06) 1px,transparent 0);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:24px 24px;inset:0;position:absolute}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg-left-color-grid__grid{--grid-line:transparent}.ihabdevteam-core-scope .pass-card--expired .pass-card-bg-left-color-grid__bar{background:var(--pass-card-expired-shape)}";Q(r3);const El={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function Nh(e={}){const t=lt(El,ga,fa);return o.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[o.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),o.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),o.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${mr}")`}})]})}var n3=".ihabdevteam-core-scope .sound-compass{align-items:center;display:flex;flex-direction:column;width:100%}.ihabdevteam-core-scope .sound-compass__status{color:var(--color-lightGray);font-size:13px;letter-spacing:-.01em;margin-bottom:12px}.ihabdevteam-core-scope .sound-compass__svg{left:0;overflow:visible;position:absolute;top:0}.ihabdevteam-core-scope .sound-compass__speaker-btn{--scb-idle-bg:var(--color-deepWhite);--scb-idle-border:var(--color-whiteLine);--scb-idle-fg:var(--color-lightGray);--scb-active-bg:var(--color-main);--scb-active-border:var(--color-main);--scb-active-fg:#fff;--scb-played-bg:var(--color-sub);--scb-played-border:var(--color-sub);--scb-played-fg:#fff;--scb-wrong-bg:#ef4444;--scb-wrong-border:#ef4444;--scb-wrong-fg:#fff;all:unset;align-items:center;border-radius:50%;border-style:solid;border-width:1px;box-sizing:border-box;display:flex;flex-direction:column;gap:1px;justify-content:center;position:relative;transition:background-color .15s,border-color .15s,color .15s;z-index:1}.ihabdevteam-core-scope .sound-compass__speaker-btn--idle{background:var(--scb-idle-bg);border-color:var(--scb-idle-border);color:var(--scb-idle-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--active{background:var(--scb-active-bg);border-color:var(--scb-active-border);color:var(--scb-active-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--correct,.ihabdevteam-core-scope .sound-compass__speaker-btn--played{background:var(--scb-played-bg);border-color:var(--scb-played-border);color:var(--scb-played-fg)}.ihabdevteam-core-scope .sound-compass__speaker-btn--wrong{background:var(--scb-wrong-bg);border-color:var(--scb-wrong-border);color:var(--scb-wrong-fg)}.ihabdevteam-core-scope .sound-compass__speaker-number{color:inherit;font-weight:700;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .sound-compass__compass-wrap{flex-shrink:0;margin-bottom:24px;overflow:visible;position:relative}.ihabdevteam-core-scope .sound-compass__center{align-items:center;background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:50%;color:var(--color-lightGray);display:flex;justify-content:center;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%)}@keyframes sound-compass-pulse{0%{opacity:0;transform:scale(.95)}8%{opacity:.45;transform:scale(1.05)}to{opacity:0;transform:scale(2.8)}}.ihabdevteam-core-scope .sound-compass__pulse{animation:sound-compass-pulse 1s cubic-bezier(.33,1,.68,1) infinite;background:var(--color-main);border-radius:50%;height:40px;left:0;pointer-events:none;position:absolute;top:0;width:40px}.ihabdevteam-core-scope .sound-compass__speaker-pos{position:absolute}";Q(n3);const jl=(e,t,a)=>e+(t-e)*a;function Dh({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:r=null,playedIds:n,selectedId:i=null,answerId:s=null,showFeedback:c=!1,clickable:u=!1,onSelectSpeaker:d,buttonSize:m=40,showIcon:h=!0}){const p=Math.max(0,Math.min(1,a)),g=t/2,v=110/300,b=.18,y=$=>t*(v+($-1)*b),f=$=>{const q=y($.row??1),O=$.angleDeg*Math.PI/180;return{x:g+q*Math.cos(O),y:g+q*Math.sin(O)}},x=Math.max(...e.map($=>$.row??1),1),_=t*.08,C=t*.1,A=t*.24,w=t-2*_,S=t-C-A,N=t-A/2,T=l.useMemo(()=>[...new Set(e.map($=>$.deg))].sort(($,q)=>$-q),[e]),E=T.length,W=Math.max(68,E>1?w/(E-1):0),L=l.useMemo(()=>new Map(T.map(($,q)=>[$,q])),[T]),k=$=>{const q=L.get($.deg)??0,O=g+(q-(E-1)/2)*W,G=x>1?Math.min(68,S/(x-1)):0,I=G*(x-1),ne=C+(S-I)/2,X=x===1?C+S*.4:ne+(x-($.row??1))*G;return{x:O,y:X}},D=$=>{const q=f($),O=k($);return{x:jl(q.x,O.x,p),y:jl(q.y,O.y,p)}},j={x:g,y:jl(g,N,p)},F=Math.round(m*1.2),ee=Math.round(Math.max(16,Math.min(80,m*.7))),Z=[],J=new Map;for(const $ of e){const q=$.row??1;J.has(q)||J.set(q,[]),J.get(q).push($)}for(const[$,q]of J.entries()){if(q.length<2)continue;const O=[...q].sort((ae,Y)=>ae.deg-Y.deg),G=O.map(ae=>D(ae)),I=O.map(ae=>ae.deg),ne=I[I.length-1]-I[0],X=ne/(I.length-1),te=360-ne,pe=O.length>=3&&X>0&&te<=X*1.5;Z.push({key:`arc-${$}`,d:`M ${G[0].x} ${G[0].y} `+G.slice(1).map(ae=>`L ${ae.x} ${ae.y}`).join(" ")+(pe?` L ${G[0].x} ${G[0].y}`:"")})}const M=l.useMemo(()=>new Set(n??[]),[n]),R=$=>{if(r===$.id)return"active";if(c){if($.id===s)return"correct";if($.id===i&&i!==s)return"wrong"}return M.has($.id)?"played":"idle"},z=$=>r===$.id||c&&$.id===s,H=($,q)=>{switch($){case"played":case"correct":return o.jsx(Gc,{size:q});case"wrong":return o.jsx(ad,{size:q});default:return o.jsx(td,{size:q})}};return o.jsx("div",{className:"sound-compass",children:o.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[o.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[p===0&&e.map($=>{const{x:q,y:O}=D($);return o.jsx("line",{x1:j.x,y1:j.y,x2:q,y2:O,stroke:"#dde3ec",strokeWidth:"1"},$.id)}),Z.map($=>o.jsx("path",{d:$.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},$.key))]}),o.jsx("div",{className:"sound-compass__center",style:{width:F,height:F,left:j.x,top:j.y},children:o.jsx(ed,{size:ee,color:"currentColor",strokeWidth:1.5})}),e.map(($,q)=>{const{x:O,y:G}=D($),I=R($),ne=z($),X={pointerEvents:u?"auto":"none",cursor:u?"pointer":"default",zIndex:I!=="idle"?10:1},te=m,pe=Math.round(Math.max(10,Math.min(56,te*.38))),ae=Math.round(Math.max(7,Math.min(18,te*.2))),Y=Math.round(Math.max(10,Math.min(56,te*.4)));return o.jsxs("div",{className:"sound-compass__speaker-pos",style:{...X,left:O-te/2,top:G-te/2},onClick:()=>u&&d?.($.id),children:[ne&&o.jsx("div",{className:"sound-compass__pulse",style:{width:te,height:te}}),o.jsxs("button",{type:"button",tabIndex:-1,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${I}`,style:{width:te,height:te},"aria-label":$.label,children:[h&&H(I,pe),o.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:h?ae:Y},children:q+1})]})]},$.id)})]})})}function Eh(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:n,playMs:i=1100,feedbackMs:s=1500}={}){const[c,u]=l.useState([]),[d,m]=l.useState(0),[h,p]=l.useState("idle"),[g,v]=l.useState(null),[b,y]=l.useState([]),[f,x]=l.useState(null),[_,C]=l.useState(0),A=l.useRef(0),w=l.useCallback(M=>{A.current=typeof M=="function"?M(A.current):M,C(A.current)},[]),S=l.useRef(r),N=l.useRef(n);l.useEffect(()=>{S.current=r,N.current=n},[r,n]);const T=l.useRef([]),E=()=>{T.current.forEach(clearTimeout),T.current=[]},W=(M,R)=>{T.current.push(setTimeout(R,M))};l.useEffect(()=>()=>E(),[]);const L=c[d]?.id??null,k=l.useCallback(()=>{E(),p("playing"),y([]),x(null),w(0);let M=0;e.forEach((R,z)=>{W(M,()=>{m(z),v(R.id),S.current?.(R)}),W(M+1e3,()=>{v(null),y(H=>[...H,R.id])}),M+=1300}),W(M,()=>{p("done"),N.current?.({score:0,total:e.length})})},[e,w]),D=l.useCallback((M,R)=>{if(R>=M.length){p("done"),N.current?.({score:A.current,total:M.length});return}m(R),x(null),p("playing"),v(M[R].id),S.current?.(M[R]),W(i,()=>{v(null),p("waiting")})},[i]),j=l.useCallback(()=>{E();const M=ze(e);u(M),w(0),y([]),D(M,0)},[e,D,w]),F=l.useCallback(()=>{t==="playback"?(u(e),k()):j()},[t,e,k,j]),ee=l.useCallback(()=>{E(),p("idle"),v(null),y([]),x(null),m(0),w(0),u([])},[w]);l.useEffect(()=>{a?F():ee()},[t,e.length,a]);const Z=l.useCallback(M=>{h!=="waiting"||t==="playback"||(x(M),M===c[d]?.id&&w(R=>R+1),t==="exam"?(p("playing"),W(400,()=>D(c,d+1))):(p("feedback"),W(s,()=>D(c,d+1))))},[h,t,c,d,D,s,w]),J=t==="playback"?e.length:c.length;return{bind:{activeSpeakerId:g,playedIds:b,selectedId:f,answerId:L,showFeedback:h==="feedback",clickable:h==="waiting",onSelectSpeaker:Z},index:d,total:J,score:_,phase:h,done:h==="done",start:F,reset:ee}}function jh({children:e,position:t="top-left",size:a=24,className:r=""}){return o.jsx("span",{className:xe("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${t}`,r),children:e})}var i3=".ihabdevteam-core-scope .shortcut-badge{align-items:center;display:inline-flex;gap:4px;pointer-events:none;z-index:10}.ihabdevteam-core-scope .shortcut-badge--top-left{left:0;position:absolute;top:0;transform:translate(-25%,-25%)}.ihabdevteam-core-scope .shortcut-badge--top-right{position:absolute;right:0;top:0;transform:translate(25%,-25%)}.ihabdevteam-core-scope .shortcut-badge--bottom-left{bottom:0;left:0;position:absolute;transform:translate(-25%,25%)}.ihabdevteam-core-scope .shortcut-badge--bottom-right{bottom:0;position:absolute;right:0;transform:translate(25%,25%)}.ihabdevteam-core-scope .shortcut-badge__group{align-items:center;display:inline-flex;gap:4px}.ihabdevteam-core-scope .shortcut-badge__plus{color:var(--color-lightGray);font-size:11px;line-height:1}.ihabdevteam-core-scope .shortcut-badge__key{align-items:center;background:var(--color-lightBlack);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-white);display:inline-flex;font-family:inherit;font-size:11px;font-weight:400;justify-content:center;line-height:1;min-height:24px;min-width:24px;padding:0 5px;white-space:nowrap}";Q(i3);function Lh({keys:e,anchor:t="top-right",className:a=""}){const r=Array.isArray(e)?e:[e];return o.jsx("span",{className:xe("shortcut-badge",`shortcut-badge--${t}`,a),children:r.map((n,i)=>o.jsxs("span",{className:"shortcut-badge__group",children:[i>0&&o.jsx("span",{className:"shortcut-badge__plus",children:"+"}),o.jsx("kbd",{className:"shortcut-badge__key",children:n})]},`${n}-${i}`))})}var s3=".ihabdevteam-core-scope .divider--horizontal{align-items:center;border:none;border-top:1px solid var(--color-whiteLine);display:flex;width:100%}.ihabdevteam-core-scope .divider--vertical{border:none;border-left:1px solid var(--color-whiteLine);display:inline-block;height:1em;vertical-align:middle;width:1px}.ihabdevteam-core-scope .divider--labeled{border-top:none;gap:var(--spacing-s)}.ihabdevteam-core-scope .divider__line{background:var(--color-whiteLine);flex:1 1 auto;height:1px}.ihabdevteam-core-scope .divider__label{color:var(--color-gray);flex:0 0 auto;white-space:nowrap}";Q(s3);function Mh({orientation:e="horizontal",label:t,className:a=""}){const r=xe("divider",`divider--${e}`,t&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?o.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):t?o.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[o.jsx("span",{className:"divider__line"}),o.jsx("span",{className:"divider__label caption-1",children:t}),o.jsx("span",{className:"divider__line"})]}):o.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}var l3='.ihabdevteam-core-scope .radio{align-items:center;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .radio input{height:0;opacity:0;position:absolute;width:0}.ihabdevteam-core-scope .radio__dot{background:var(--color-pureWhite);border:1.5px solid var(--color-whiteLine);border-radius:50%;display:inline-block;flex-shrink:0;height:20px;position:relative;transition:border-color .15s,background .15s;width:20px}.ihabdevteam-core-scope .radio__dot:before{background:var(--color-pureWhite);border-radius:50%;content:"";inset:4px;position:absolute;transform:scale(0);transition:transform .15s}.ihabdevteam-core-scope .radio input:checked+.radio__dot{background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .radio input:checked+.radio__dot:before{transform:scale(1)}.ihabdevteam-core-scope .radio:not(.radio--disabled):hover .radio__dot{border-color:var(--color-main)}.ihabdevteam-core-scope .radio input:focus-visible+.radio__dot{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .radio__label{color:var(--color-black)}.ihabdevteam-core-scope .radio--disabled{cursor:not-allowed;opacity:.45}';Q(l3);function Ll({checked:e,onChange:t,name:a,value:r,disabled:n=!1,label:i,className:s=""}){const c=l.useId();return o.jsxs("label",{className:`radio${n?" radio--disabled":""} ${s}`.trim(),htmlFor:c,children:[o.jsx("input",{id:c,type:"radio",name:a,value:r,checked:e,disabled:n,onChange:u=>t?.(u.target.checked)}),o.jsx("span",{className:"radio__dot"}),i&&o.jsx("span",{className:"radio__label body-2",children:i})]})}var c3=".ihabdevteam-core-scope .radio-group{display:flex}.ihabdevteam-core-scope .radio-group--vertical{flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .radio-group--horizontal{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-l)}";Q(c3);function Ph({options:e,value:t,onChange:a,name:r,disabled:n=!1,direction:i="vertical",className:s=""}){const c=l.useId(),u=r??`radio-group-${c}`;return o.jsx("div",{className:`radio-group radio-group--${i} ${s}`.trim(),role:"radiogroup",children:e.map(d=>o.jsx(Ll,{name:u,value:d.value,checked:t===d.value,disabled:n||d.disabled,label:d.label,onChange:m=>{m&&a?.(d.value)}},d.value))})}var d3=".ihabdevteam-core-scope .alert{align-items:flex-start;background:color-mix(in srgb,var(--alert-color) 10%,transparent);border:1px solid color-mix(in srgb,var(--alert-color) 25%,transparent);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-s);padding:var(--spacing-m)}.ihabdevteam-core-scope .alert__icon{align-items:center;color:var(--alert-color);display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .alert__body{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-width:0}.ihabdevteam-core-scope .alert__header{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .alert__message--indented{margin-left:calc(20px + var(--spacing-xs))}.ihabdevteam-core-scope .alert__title{color:var(--color-black)}.ihabdevteam-core-scope .alert__message{color:var(--color-darkGray)}.ihabdevteam-core-scope .alert__dismiss{align-items:center;background:transparent;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:18px;height:20px;justify-content:center;line-height:1;padding:0;width:20px}.ihabdevteam-core-scope .alert__dismiss:hover{color:var(--color-darkGray)}.ihabdevteam-core-scope .alert--info{--alert-color:var(--color-main)}.ihabdevteam-core-scope .alert--success{--alert-color:var(--color-success)}.ihabdevteam-core-scope .alert--warning{--alert-color:var(--color-warn)}.ihabdevteam-core-scope .alert--danger{--alert-color:var(--color-error)}";Q(d3);const u3={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function Rh({tone:e="info",title:t,message:a,children:r,dismissible:n=!1,onDismiss:i,className:s=""}){const{t:c}=me.useTranslation(),[u,d]=l.useState(!1),m=l.useCallback(()=>{d(!0),i?.()},[i]);if(u)return null;const h=xe("alert",`alert--${e}`,s),p=!!t,g=!!(a||r);return o.jsxs("div",{className:h,role:"alert",children:[o.jsxs("div",{className:"alert__body",children:[o.jsxs("div",{className:"alert__header",children:[o.jsx(Pe,{icon:u3[e],size:20,className:"alert__icon"}),p&&o.jsx("span",{className:"alert__title body-2",children:t}),!p&&g&&o.jsx("div",{className:"alert__message body-3",children:a??r})]}),p&&g&&o.jsx("div",{className:"alert__message alert__message--indented body-3",children:a??r})]}),n&&o.jsx("button",{type:"button",className:"alert__dismiss",onClick:m,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}var p3=".ihabdevteam-core-scope .search-summary{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);box-shadow:var(--shadow-card);box-sizing:border-box;color:var(--color-gray);display:inline-flex;gap:var(--spacing-xs);max-width:100%;padding:30px 20px;text-align:left}.ihabdevteam-core-scope .search-summary__icon{color:currentColor;display:inline-flex;flex-shrink:0}.ihabdevteam-core-scope .search-summary__text{min-width:0;overflow-wrap:anywhere;word-break:keep-all}.ihabdevteam-core-scope .search-summary__em{color:var(--color-main)}.ihabdevteam-core-scope .search-summary--ready{background:var(--color-white);color:var(--color-deepGray)}.ihabdevteam-core-scope .search-summary--ready .search-summary__em{color:var(--color-main)}.ihabdevteam-core-scope .search-summary--guide{background:var(--color-deepWhite);color:var(--color-gray)}.ihabdevteam-core-scope .search-summary--error{background:var(--color-white);color:var(--color-error)}.ihabdevteam-core-scope .search-summary--error .search-summary__em{color:var(--color-error)}";Q(p3);const h3={ready:"search",guide:"info",error:"circle-alert"};function m3(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const r=[];let n=0,i=0;for(const s of a){const c=e.indexOf(s,n);c<0||(c>n&&r.push(e.slice(n,c)),r.push(o.jsx("strong",{className:"search-summary__em body-2",children:s},i++)),n=c+s.length)}return n<e.length&&r.push(e.slice(n)),r}function $h({status:e="guide",label:t,children:a,emphasis:r,icon:n,className:i=""}){const s=n===!1?null:n??h3[e],c=xe("search-summary",`search-summary--${e}`,i),u=t??a,d=typeof u=="string"&&r&&r.length>0?m3(u,r):u;return o.jsxs("div",{className:c,role:"status","aria-live":"polite",children:[s!=null&&o.jsx(Pe,{icon:s,size:18,className:"search-summary__icon"}),o.jsx("span",{className:"search-summary__text body-2",children:d})]})}var b3=".ihabdevteam-core-scope .tabs{display:flex;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .tabs__list{border-bottom:1px solid var(--color-whiteLine);display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .tabs__tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-gray);cursor:pointer;padding:0 var(--spacing-xs);transition:color .15s,border-color .15s;white-space:nowrap}.ihabdevteam-core-scope .tabs__list--32 .tabs__tab{height:32px}.ihabdevteam-core-scope .tabs__list--40 .tabs__tab{height:40px}.ihabdevteam-core-scope .tabs__list--48 .tabs__tab{height:48px}.ihabdevteam-core-scope .tabs__tab:hover:not(:disabled){color:var(--color-darkGray)}.ihabdevteam-core-scope .tabs__tab:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .tabs__tab--active{border-bottom-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .tabs__tab:disabled{color:var(--color-disabled);cursor:not-allowed}.ihabdevteam-core-scope .tabs__panel{outline:none}.ihabdevteam-core-scope .tabs__panel:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}";Q(b3);function zh({items:e=[],value:t,onChange:a,className:r="",size:n=40}){const{t:i}=me.useTranslation(),s=l.useRef(null),c=t??e[0]?.key,u=()=>Array.from(s.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),d=(p,g=u())=>{if(g.length===0)return;const v=(p%g.length+g.length)%g.length;g[v]?.focus(),g[v]?.click()},m=p=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(p.key))return;p.preventDefault();const g=u(),v=g.indexOf(p.currentTarget);p.key==="ArrowRight"||p.key==="ArrowDown"?d(v+1,g):p.key==="ArrowLeft"||p.key==="ArrowUp"?d(v-1,g):p.key==="Home"?d(0,g):d(g.length-1,g)},h=e.find(p=>p.key===c);return o.jsxs("div",{className:`tabs ${r}`.trim(),children:[o.jsx("div",{ref:s,className:`tabs__list tabs__list--${n}`,role:"tablist","aria-label":i("tabs.ariaLabel","\uD0ED"),children:e.map(p=>o.jsx("button",{id:`tabs__tab-${p.key}`,type:"button",role:"tab","aria-selected":p.key===c,"aria-controls":`tabs__panel-${p.key}`,disabled:p.disabled,tabIndex:p.key===c?0:-1,className:`tabs__tab body-2${p.key===c?" tabs__tab--active":""}`,onClick:()=>a?.(p.key),onKeyDown:m,children:p.label},p.key))}),h&&o.jsx("div",{id:`tabs__panel-${h.key}`,role:"tabpanel","aria-labelledby":`tabs__tab-${h.key}`,tabIndex:0,className:"tabs__panel",children:h.panel},h.key)]})}var g3=".ihabdevteam-core-scope .avatar{align-items:center;background:var(--color-lightGray-a10);color:var(--color-gray);display:inline-flex;flex-shrink:0;height:var(--avatar-size);justify-content:center;overflow:hidden;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--avatar-size)}.ihabdevteam-core-scope .avatar--circle{border-radius:50%}.ihabdevteam-core-scope .avatar--rounded-square{border-radius:var(--radius-card)}.ihabdevteam-core-scope .avatar--xs{--avatar-size:24px}.ihabdevteam-core-scope .avatar--sm{--avatar-size:32px}.ihabdevteam-core-scope .avatar--md{--avatar-size:40px}.ihabdevteam-core-scope .avatar--lg{--avatar-size:56px}.ihabdevteam-core-scope .avatar--xl{--avatar-size:80px}.ihabdevteam-core-scope .avatar__image{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.ihabdevteam-core-scope .avatar__initials{font-size:calc(var(--avatar-size)*.4);font-weight:600;line-height:1}.ihabdevteam-core-scope .avatar__icon{align-items:center;display:inline-flex;justify-content:center}";Q(g3);const f3={xs:12,sm:16,md:20,lg:28,xl:36};function v3(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 Ih({src:e,name:t,size:a="md",shape:r="circle",className:n=""}){const{t:i}=me.useTranslation(),[s,c]=l.useState(!1),u=t?v3(t):"",d=!!e&&!s,m=!d&&!!u,h=t||i("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return o.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${n}`.trim(),role:"img","aria-label":h,children:[d&&o.jsx("img",{className:"avatar__image",src:e,alt:h,onError:()=>c(!0)}),!d&&m&&o.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:u}),!d&&!m&&o.jsx(Pe,{icon:"user-round",size:f3[a],className:"avatar__icon"})]})}var y3=".ihabdevteam-core-scope .file-upload{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .file-upload__dropzone{align-items:center;background:var(--color-deepWhite);border:1px dashed var(--color-whiteLine);border-radius:var(--radius-card);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-xs);justify-content:center;padding:var(--spacing-xl);position:relative;transition:border-color .15s,background .15s}.ihabdevteam-core-scope .file-upload__dropzone:hover:not(.file-upload__dropzone--disabled){border-color:var(--color-main)}.ihabdevteam-core-scope .file-upload__dropzone:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .file-upload__dropzone--dragging{background:var(--color-main-a10);border-color:var(--color-main)}.ihabdevteam-core-scope .file-upload__dropzone--disabled{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .file-upload__icon{color:var(--color-gray)}.ihabdevteam-core-scope .file-upload__prompt{color:var(--color-gray);text-align:center}.ihabdevteam-core-scope .file-upload__browse-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-pureWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);color:var(--color-main);cursor:pointer;padding:var(--spacing-xs) var(--spacing-m)}.ihabdevteam-core-scope .file-upload__browse-button:disabled{color:var(--color-disabled);cursor:not-allowed}.ihabdevteam-core-scope .file-upload__input{height:1px;opacity:0;overflow:hidden;pointer-events:none;position:absolute;width:1px}.ihabdevteam-core-scope .file-upload__list{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .file-upload__list-item{align-items:center;background:var(--color-deepWhite);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-s);justify-content:space-between;padding:var(--spacing-xs) var(--spacing-s)}.ihabdevteam-core-scope .file-upload__file-name{color:var(--color-darkGray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .file-upload__remove-button{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;flex-shrink:0;justify-content:center}.ihabdevteam-core-scope .file-upload__remove-button:hover{color:var(--color-error)}";Q(y3);function x3(e,t){if(!t)return!0;const a=t.split(",").map(i=>i.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),n=e.type.toLowerCase();return a.some(i=>{const s=i.toLowerCase();return s.startsWith(".")?r.endsWith(s):s.endsWith("/*")?n.startsWith(s.slice(0,-1)):n===s})}function Oh({onFilesSelected:e,accept:t,multiple:a=!1,disabled:r=!1,showFileList:n=!0,files:i,onRemove:s,className:c=""}){const{t:u}=me.useTranslation(),d=l.useRef(null),[m,h]=l.useState(!1),[p,g]=l.useState([]),v=i??p,b=w=>{if(!w||w.length===0)return;const S=Array.from(w).filter(T=>x3(T,t));if(S.length===0)return;const N=a?S:S.slice(0,1);if(i===void 0){const T=a?[...v,...N]:N;g(T),e?.(T)}else e?.(N)},y=w=>{w.preventDefault(),!r&&h(!0)},f=w=>{w.preventDefault(),h(!1)},x=w=>{w.preventDefault(),h(!1),!r&&b(w.dataTransfer.files)},_=w=>{b(w.target.files),w.target.value=""},C=()=>{r||d.current?.click()},A=w=>{if(s){s(w);return}if(i===void 0){const S=v.filter((N,T)=>T!==w);g(S),e?.(S)}};return o.jsxs("div",{className:`file-upload ${c}`.trim(),children:[o.jsxs("div",{className:xe("file-upload__dropzone",m&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:C,onKeyDown:w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),C())},onDragOver:y,onDragLeave:f,onDrop:x,children:[o.jsx(Pe,{icon:"upload",size:24,className:"file-upload__icon"}),o.jsx("span",{className:"file-upload__prompt body-2",children:u("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),o.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:w=>{w.stopPropagation(),C()},children:u("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),o.jsx("input",{ref:d,type:"file",className:"file-upload__input",accept:t,multiple:a,disabled:r,onChange:_,tabIndex:-1})]}),n&&v.length>0&&o.jsx("ul",{className:"file-upload__list",children:v.map((w,S)=>o.jsxs("li",{className:"file-upload__list-item body-3",children:[o.jsx("span",{className:"file-upload__file-name body-3",children:w.name}),o.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":u("fileUpload.removeAriaLabel",{name:w.name}),onClick:()=>A(S),children:o.jsx(Pe,{icon:"x",size:14})})]},`${w.name}-${S}`))})]})}var C3=".ihabdevteam-core-scope .breadcrumb{align-items:center;display:inline-flex}.ihabdevteam-core-scope .breadcrumb__list{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .breadcrumb__item{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .breadcrumb__link{align-items:center;background:none;border:none;color:var(--color-gray);cursor:pointer;display:inline-flex;justify-content:center;margin:0;min-height:24px;min-width:24px;padding:0}.ihabdevteam-core-scope .breadcrumb__link:hover{color:var(--color-main);text-decoration:underline}.ihabdevteam-core-scope .breadcrumb__link:focus-visible{border-radius:var(--radius-xs);outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .breadcrumb__current{color:var(--color-darkGray)}.ihabdevteam-core-scope .breadcrumb__separator{align-items:center;color:var(--color-disabled);display:inline-flex;flex-shrink:0}";Q(C3);function Fh({items:e,className:t=""}){return o.jsx("nav",{className:`breadcrumb ${t}`.trim(),"aria-label":"breadcrumb",children:o.jsx("ol",{className:"breadcrumb__list",children:e.map((a,r)=>{const n=r===e.length-1;return o.jsxs("li",{className:"breadcrumb__item",children:[n?o.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:a.label}):o.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:a.onClick,children:a.label}),!n&&o.jsx(Pe,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},r)})})})}var _3=".ihabdevteam-core-scope .rating{--rating-color:var(--color-warn);--rating-empty-color:var(--color-whiteLine);align-items:center;display:inline-flex;gap:2px}.ihabdevteam-core-scope .rating__item{align-items:center;background:none;border:none;display:inline-flex;justify-content:center;line-height:0;margin:0;padding:0}.ihabdevteam-core-scope .rating__item--interactive{cursor:pointer}.ihabdevteam-core-scope .rating__item--interactive:focus-visible{border-radius:var(--radius-xs);outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .rating--readOnly .rating__item{cursor:default}.ihabdevteam-core-scope .rating__star-wrap{display:inline-flex;line-height:0;position:relative}.ihabdevteam-core-scope .rating__star--empty{color:var(--rating-empty-color)}.ihabdevteam-core-scope .rating__star--empty svg{fill:var(--rating-empty-color)}.ihabdevteam-core-scope .rating__star-fill{display:inline-flex;height:100%;left:0;overflow:hidden;position:absolute;top:0;white-space:nowrap;width:100%}.ihabdevteam-core-scope .rating__star-fill--half{width:50%}.ihabdevteam-core-scope .rating__star--filled{color:var(--rating-color)}.ihabdevteam-core-scope .rating__star--filled svg{fill:var(--rating-color)}";Q(_3);const w3={small:14,medium:20,large:28};function Wh({value:e,onChange:t,max:a=5,readOnly:r=!1,size:n="medium",ariaLabel:i,className:s=""}){const{t:c}=me.useTranslation(),u=r||!t,[d,m]=l.useState(null),h=d??e,p=w3[n],g=y=>{u||t?.(y)},v=y=>{u||m(y)},b=()=>{u||m(null)};return o.jsx("div",{className:`rating rating--${n}${u?" rating--readOnly":""} ${s}`.trim(),role:u?"img":"radiogroup","aria-label":u?c("rating.valueLabel",{value:e,max:a}):i??c("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:b,children:Array.from({length:a},(y,f)=>{const x=f+1,_=Math.max(0,Math.min(1,h-f)),C=_>0&&_<1,A=o.jsxs("span",{className:"rating__star-wrap",children:[o.jsx(Pe,{icon:"star",size:p,className:"rating__star rating__star--empty"}),_>0&&o.jsx("span",{className:`rating__star-fill${C?" rating__star-fill--half":""}`,children:o.jsx(Pe,{icon:"star",size:p,className:"rating__star rating__star--filled"})})]});return u?o.jsx("span",{className:"rating__item","aria-hidden":"true",children:A},x):o.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":e===x,"aria-label":c("rating.starLabel",{n:x}),onClick:()=>g(x),onMouseEnter:()=>v(x),children:A},x)})})}var k3=".ihabdevteam-core-scope .color-picker{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.ihabdevteam-core-scope .color-picker__swatch{align-items:center;border:none;cursor:pointer;display:inline-flex;justify-content:center;padding:0;position:relative;transition:transform .12s,box-shadow .12s}.ihabdevteam-core-scope .color-picker__swatch--32{border-radius:8px;height:32px;width:32px}.ihabdevteam-core-scope .color-picker__swatch--40{border-radius:10px;height:40px;width:40px}.ihabdevteam-core-scope .color-picker__swatch--48{border-radius:12px;height:48px;width:48px}.ihabdevteam-core-scope .color-picker__swatch:hover{transform:scale(1.08)}.ihabdevteam-core-scope .color-picker__swatch:focus-visible{outline:2px solid var(--color-main);outline-offset:2px}.ihabdevteam-core-scope .color-picker__check{color:#fff}.ihabdevteam-core-scope .color-picker__check svg{display:block}";Q(k3);const S3=20,A3=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function Hh({value:e,onChange:t,palette:a=A3,size:r=40,className:n=""}){const{t:i}=me.useTranslation();return o.jsx("div",{className:`color-picker ${n}`.trim(),role:"group",children:a.map(s=>{const c=e?.toLowerCase()===s.toLowerCase();return o.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:s},onClick:()=>t(s),"aria-pressed":c,"aria-label":c?`${s} ${i("colorPicker.selected","\uC120\uD0DD\uB428")}`:s,children:c&&o.jsx(Pe,{icon:"check",size:S3,className:"color-picker__check"})},s)})})}var T3=".ihabdevteam-core-scope .count-tile{background:var(--color-deepWhite);border:1px solid var(--color-darkWhite);border-radius:16px;box-sizing:border-box;flex-shrink:0;height:72px;padding:12px;position:relative;transition:border-color .15s,background .15s;width:72px}.ihabdevteam-core-scope .count-tile__icon{color:var(--color-main);left:12px;position:absolute;top:12px}.ihabdevteam-core-scope .count-tile__count{bottom:12px;color:var(--color-darkGray);line-height:1;position:absolute;right:12px}.ihabdevteam-core-scope .count-tile--clickable{cursor:pointer}.ihabdevteam-core-scope .count-tile--clickable:hover{background:var(--color-white)}@media (max-width:767px){.ihabdevteam-core-scope .count-tile{border-radius:14px;height:60px;padding:10px;width:60px}.ihabdevteam-core-scope .count-tile__icon{left:8px;top:8px}.ihabdevteam-core-scope .count-tile__count{bottom:8px;right:8px}}";Q(T3);function Vh({icon:e,count:t,title:a,className:r="",onClick:n,onMouseEnter:i,onMouseLeave:s}){const c=xe("count-tile",n&&"count-tile--clickable",r);return o.jsxs("div",{className:c,onClick:n,onKeyDown:n?u=>{u.key!=="Enter"&&u.key!==" "||(u.preventDefault(),u.currentTarget.click())}:void 0,onMouseEnter:i,onMouseLeave:s,role:n?"button":"img",tabIndex:n?0:void 0,"aria-label":a?`${a} ${t}`:String(t),children:[o.jsx(Pe,{icon:e,size:20,className:"count-tile__icon"}),o.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]})}var B3=".ihabdevteam-core-scope .dialog{align-items:center;background:rgba(16,24,32,.6);display:flex;inset:0;justify-content:center;padding:32px;position:fixed;z-index:2200;z-index:var(--z-modal,2200)}@supports (color:rgb(0 0 0/0)) and (top:var(--f )){.ihabdevteam-core-scope .dialog{background:var(--color-popupBlock,rgba(16,24,32,.6))}}.ihabdevteam-core-scope .dialog__surface{background:#fff;background:var(--color-pureWhite,#fff);border-radius:20px;border-radius:var(--radius-dialog,20px);box-shadow:var(--shadow-popup);max-height:calc(100vh - 64px);outline:none;overflow:auto;position:relative;width:100%}.ihabdevteam-core-scope .dialog__surface--sm{max-width:420px}.ihabdevteam-core-scope .dialog__surface--md{max-width:640px}.ihabdevteam-core-scope .dialog__surface--lg{max-width:1000px}.ihabdevteam-core-scope .dialog__surface--full{background:none;box-shadow:none;max-width:1000px;overflow:visible}.ihabdevteam-core-scope .dialog__header{padding:24px 24px 0}.ihabdevteam-core-scope .dialog__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .dialog__close{align-items:center;background:none;border:0;border-radius:999px;border-radius:var(--radius-full,999px);color:var(--color-gray);cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:12px;top:12px;transition:background .15s ease,color .15s ease;width:40px}.ihabdevteam-core-scope .dialog__close:hover{background:var(--color-darkWhite);color:var(--color-black)}.ihabdevteam-core-scope .dialog__close>svg{height:20px;width:20px}.ihabdevteam-core-scope .dialog__surface--full .dialog__close{background:hsla(0,0%,100%,.1);color:var(--color-pureWhite);right:0;top:-48px}.ihabdevteam-core-scope .dialog__surface--full .dialog__close:hover{background:hsla(0,0%,100%,.2)}.ihabdevteam-core-scope .dialog__body{padding:24px}.ihabdevteam-core-scope .dialog__surface--full .dialog__body{padding:0}@media (max-width:639px){.ihabdevteam-core-scope .dialog{padding:16px}.ihabdevteam-core-scope .dialog__body{padding:20px}}";Q(B3);function N3(){return o.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:o.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function Gh({open:e,onClose:t,ariaLabel:a,title:r,children:n,size:i="md",closeOnBackdrop:s=!0,closeOnEscape:c=!0,showClose:u=!0,className:d,contentClassName:m}){const{t:h}=me.useTranslation(),p=l.useId(),g=l.useRef(null),v=l.useRef(null),b=l.useCallback(()=>t(),[t]);return l.useEffect(()=>{if(!e){v.current?.focus(),v.current=null;return}v.current=document.activeElement;const{overflow:y}=document.body.style;document.body.style.overflow="hidden",g.current?.focus();const f=c?gl(b):void 0;return()=>{f?.(),document.body.style.overflow=y}},[e,c,b]),!e||typeof document>"u"?null:qt.createPortal(o.jsx("div",{className:xe("dialog",d),onClick:s?b:void 0,children:o.jsxs("div",{ref:g,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?p:void 0,tabIndex:-1,className:xe("dialog__surface",`dialog__surface--${i}`,m),onClick:y=>y.stopPropagation(),children:[r?o.jsx("div",{className:"dialog__header",children:o.jsx("h2",{id:p,className:"dialog__title h4b",children:r})}):null,u?o.jsx("button",{type:"button",className:"dialog__close","aria-label":h("common.close","\uB2EB\uAE30"),onClick:b,children:o.jsx(N3,{})}):null,o.jsx("div",{className:"dialog__body",children:n})]})}),document.body)}var D3=".ihabdevteam-core-scope .board{width:100%}.ihabdevteam-core-scope .board__head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--spacing-m);justify-content:space-between;margin-bottom:var(--spacing-m)}.ihabdevteam-core-scope .board__title{color:var(--color-text-primary);font-size:var(--text-body-2-size);font-weight:500;line-height:var(--text-body-2-line);margin:0}.ihabdevteam-core-scope .board__toolbar{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .board__table{border-collapse:collapse;border-top:1px solid var(--color-text-primary);text-align:left;width:100%}.ihabdevteam-core-scope .board__caption{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .board__th{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:var(--text-body-3-size);font-weight:500;line-height:var(--text-body-3-line);padding:14px 0}.ihabdevteam-core-scope .board__row{border-bottom:1px solid var(--color-border);transition:background .15s ease;transition:background var(--duration-fast,.15s) var(--ease-out,ease)}.ihabdevteam-core-scope .board__row:hover{background:var(--color-surface-raised)}.ihabdevteam-core-scope .board__td{color:var(--color-text-primary);font-size:var(--text-body-3-size);line-height:var(--text-body-3-line);padding:var(--spacing-m) 0}.ihabdevteam-core-scope .board__cell--left{text-align:left}.ihabdevteam-core-scope .board__cell--center{text-align:center}.ihabdevteam-core-scope .board__cell--right{text-align:right}.ihabdevteam-core-scope .board__state{color:var(--color-text-secondary);font-size:var(--text-body-3-size);padding:56px 0;text-align:center}";Q(D3);function qh({columns:e,rows:t,rowKey:a,title:r,toolbar:n,empty:i="\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",loading:s,caption:c,className:u=""}){const d=!s&&t.length===0;return o.jsxs("div",{className:xe("board",u),children:[r||n?o.jsxs("div",{className:"board__head",children:[r?o.jsx("h2",{className:"board__title",children:r}):o.jsx("span",{}),n?o.jsx("div",{className:"board__toolbar",children:n}):null]}):null,o.jsxs("table",{className:"board__table",children:[c?o.jsx("caption",{className:"board__caption",children:c}):null,o.jsx("thead",{children:o.jsx("tr",{children:e.map(m=>o.jsx("th",{scope:"col",className:xe("board__th",`board__cell--${m.headerAlign??m.align??"left"}`),style:m.width?{width:m.width}:void 0,children:m.header},m.key))})}),o.jsx("tbody",{children:s?o.jsx("tr",{children:o.jsx("td",{className:"board__state",colSpan:e.length,children:s})}):d?o.jsx("tr",{children:o.jsx("td",{className:"board__state",colSpan:e.length,children:i})}):t.map((m,h)=>o.jsx("tr",{className:"board__row",children:e.map(p=>o.jsx("td",{className:xe("board__td",`board__cell--${p.align??"left"}`),children:p.render(m,h)},p.key))},a(m,h)))})]})]})}var E3=".ihabdevteam-core-scope .person-card{display:flex;flex-direction:column}.ihabdevteam-core-scope .person-card__photo{background:var(--color-surface-raised);border-radius:var(--radius-full);flex-shrink:0;margin-inline:auto;max-width:100%;overflow:hidden}.ihabdevteam-core-scope .person-card__photo>*,.ihabdevteam-core-scope .person-card__photo>img{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.ihabdevteam-core-scope .person-card__name{color:var(--color-text-primary);font-size:var(--text-h4-size);font-weight:var(--text-h4-weight-bold);line-height:var(--text-h4-line);margin-top:var(--spacing-xl);text-align:center}.ihabdevteam-core-scope .person-card__role{color:var(--color-darkGray);font-size:var(--text-body-3-size);font-weight:var(--text-body-3-weight);line-height:var(--text-body-3-line);margin-top:6px;text-align:center}.ihabdevteam-core-scope .person-card__credentials{display:flex;flex-direction:column;gap:var(--spacing-xs);list-style:none;margin:var(--spacing-xl) auto 0;max-width:100%;padding:0;text-align:left;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .person-card__credentials>li{color:var(--color-darkGray);font-size:var(--text-body-3-size);line-height:var(--text-body-3-line)}@media (max-width:767px){.ihabdevteam-core-scope .person-card__credentials,.ihabdevteam-core-scope .person-card__name{margin-top:var(--spacing-l)}}";Q(E3);function Yh({name:e,role:t,photo:a,media:r,credentials:n,size:i=190,className:s=""}){return o.jsxs("div",{className:xe("person-card",s),children:[o.jsx("div",{className:"person-card__photo",style:{width:i,height:i},children:r??(a?o.jsx("img",{src:a,alt:t?`${e} ${t}`:e}):null)}),o.jsx("h3",{className:"person-card__name",children:e}),t?o.jsx("p",{className:"person-card__role",children:t}):null,n?.length?o.jsx("ul",{className:"person-card__credentials",children:n.map(c=>o.jsx("li",{children:c},c))}):null]})}var j3=".ihabdevteam-core-scope .timeline{display:flex;flex-direction:column;gap:56px}.ihabdevteam-core-scope .timeline__title{color:var(--color-text-primary);font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);letter-spacing:var(--text-h1-spacing);line-height:var(--text-h1-line);margin:0}.ihabdevteam-core-scope .timeline__rows{border-top:1px solid var(--color-border);list-style:none;margin:var(--spacing-m) 0 0;padding:0}.ihabdevteam-core-scope .timeline__row{border-bottom:1px solid var(--color-border);display:flex;gap:40px;padding:var(--spacing-l) 0}.ihabdevteam-core-scope .timeline__label{color:var(--color-text-primary);flex-shrink:0;font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight-bold);line-height:var(--text-body-2-line);padding-top:1px;width:28px}.ihabdevteam-core-scope .timeline__items{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .timeline__items>p{color:var(--color-text-primary);font-size:var(--text-body-2-size);font-weight:var(--text-body-2-weight);line-height:var(--text-body-2-line);margin:0}@media (max-width:767px){.ihabdevteam-core-scope .timeline{gap:40px}.ihabdevteam-core-scope .timeline__row{gap:var(--spacing-xl)}}";Q(j3);function Uh({groups:e,className:t=""}){return o.jsx("div",{className:xe("timeline",t),children:e.map(a=>o.jsxs("section",{className:"timeline__group",children:[o.jsx("h3",{className:"timeline__title",children:a.title}),o.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,n)=>o.jsxs("li",{className:"timeline__row",children:[r.label?o.jsx("span",{className:"timeline__label",children:r.label}):null,o.jsx("div",{className:"timeline__items",children:r.items.map((i,s)=>o.jsx("p",{children:i},s))})]},`${r.label??""}-${n}`))})]},a.title))})}var L3=".ihabdevteam-core-scope .publication-card{background:var(--color-surface-raised);border-radius:var(--radius-m);box-sizing:border-box;display:flex;flex-direction:column;padding:36px var(--spacing-xl) 32px;position:relative}.ihabdevteam-core-scope .publication-card__badge{height:88px;pointer-events:none;position:absolute;right:var(--spacing-xl);top:0}.ihabdevteam-core-scope .publication-card__badge>*,.ihabdevteam-core-scope .publication-card__badge>img{height:100%;width:auto}.ihabdevteam-core-scope .publication-card__title{color:var(--color-text-primary);font-size:var(--text-h4-size);font-weight:var(--text-h4-weight-bold);line-height:var(--text-h4-line);margin:0;padding-right:96px;position:relative;z-index:1}.ihabdevteam-core-scope .publication-card__kind{color:var(--color-darkGray);font-size:var(--text-body-3-size);font-weight:var(--text-body-3-weight);line-height:var(--text-body-3-line);margin:var(--spacing-m) 0 0}.ihabdevteam-core-scope .publication-card__body{color:var(--color-darkGray);font-size:var(--text-caption-1-size);line-height:1.65;margin:var(--spacing-m) 0 0}@media (max-width:767px){.ihabdevteam-core-scope .publication-card{padding:32px var(--spacing-l) 28px}.ihabdevteam-core-scope .publication-card__kind{margin-top:var(--spacing-m)}}.ihabdevteam-core-scope .publication-card__footer{margin-top:auto;padding-top:var(--spacing-l)}";Q(L3);function Kh({title:e,kind:t,body:a,badge:r,badgeSrc:n,footer:i,width:s,className:c=""}){const u=r??(n?o.jsx("img",{src:n,alt:""}):null);return o.jsxs("div",{className:xe("publication-card",c),style:s?{width:s,flexShrink:0}:void 0,children:[u?o.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:u}):null,o.jsx("h3",{className:"publication-card__title",children:e}),t?o.jsx("p",{className:"publication-card__kind",children:t}):null,o.jsx("p",{className:"publication-card__body",children:a}),i?o.jsx("div",{className:"publication-card__footer",children:i}):null]})}var M3="@keyframes splash-logo{0%{opacity:0;transform:scale(.92)}18%{opacity:1;transform:scale(1)}75%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.04)}}.ihabdevteam-core-scope .splash-logo{align-items:center;background:var(--color-pureWhite);display:flex;inset:0;justify-content:center;position:absolute;z-index:1000;z-index:var(--z-modal,1000)}.ihabdevteam-core-scope .splash-logo__image{animation:splash-logo 3s cubic-bezier(.4,0,.2,1) forwards;animation:splash-logo var(--splash-logo-duration,3s) cubic-bezier(.4,0,.2,1) forwards;height:80px;height:var(--splash-logo-height,80px);width:auto}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .splash-logo__image{animation:none;opacity:1}}";Q(M3);function Zh({logo:e,alt:t,onDone:a,durationMs:r=3e3}){const n=Ks(a);return l.useEffect(()=>{if(!n.current)return;const i=setTimeout(()=>n.current?.(),r);return()=>clearTimeout(i)},[r,n]),o.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:o.jsx("img",{src:e,alt:t,className:"splash-logo__image"})})}var P3='.ihabdevteam-core-scope .section-header{text-align:center}.ihabdevteam-core-scope .section-header__eyebrow{align-items:center;display:flex;font-size:var(--text-caption-1-size);font-weight:600;gap:10px;justify-content:center;letter-spacing:.18em;line-height:var(--text-caption-1-line);margin:0}.ihabdevteam-core-scope .section-header__index{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.6}.ihabdevteam-core-scope .section-header__rule{background:currentColor;height:1px;opacity:.3;width:24px}.ihabdevteam-core-scope .section-header__title{font-family:inherit;font-family:var(--font-display,inherit);font-size:clamp(2rem,1.35rem + 2.1vw,2.9rem);font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:0}.ihabdevteam-core-scope .section-header__eyebrow+.section-header__title{margin-top:var(--spacing-xl)}.ihabdevteam-core-scope .section-header__description{font-size:var(--text-body-2-size);line-height:1.9;margin-top:var(--spacing-m)}.ihabdevteam-core-scope .section-header--dark .section-header__eyebrow{color:var(--color-main)}.ihabdevteam-core-scope .section-header--dark .section-header__title{color:var(--color-text-primary)}.ihabdevteam-core-scope .section-header--dark .section-header__description{color:var(--color-darkGray)}.ihabdevteam-core-scope .section-header--light .section-header__eyebrow{color:hsla(0,0%,100%,.85)}.ihabdevteam-core-scope .section-header--light .section-header__title{color:var(--color-pureWhite)}.ihabdevteam-core-scope .section-header--light .section-header__description{color:hsla(0,0%,100%,.85)}';Q(P3);function Xh({eyebrow:e,eyebrowIndex:t,title:a,description:r,level:n=2,tone:i="dark",className:s=""}){const c=n===1?"h1":"h2";return o.jsxs("div",{className:xe("section-header",`section-header--${i}`,s),children:[e?o.jsxs("p",{className:"section-header__eyebrow",children:[t?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"section-header__index",children:t}),o.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?o.jsx(c,{className:"section-header__title",children:a}):null,r?o.jsx("div",{className:"section-header__description",children:r}):null]})}var R3=".ihabdevteam-core-scope .company-meta{align-items:center;color:var(--color-gray);display:flex;flex-direction:column;font-size:var(--text-caption-1-size);gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.ihabdevteam-core-scope .company-meta__item{align-items:center;display:flex}.ihabdevteam-core-scope .company-meta__divider{color:var(--color-whiteLine);display:none;padding-inline:var(--spacing-m)}@media (min-width:640px){.ihabdevteam-core-scope .company-meta{flex-direction:row;gap:0}.ihabdevteam-core-scope .company-meta__divider{display:inline}}";Q(R3);function Qh({items:e,className:t=""}){return o.jsx("ul",{className:xe("company-meta",t),children:e.map((a,r)=>o.jsxs("li",{className:"company-meta__item",children:[r>0?o.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function Ml({value:e,onChange:t,suggestions:a,openOnFocus:r=!1}){const n=l.useId(),[i,s]=l.useState(!1),[c,u]=l.useState(-1),d=l.useRef(null),m=l.useMemo(()=>{if(!a.length)return[];const b=e??"";return b?a.filter(y=>y.toLowerCase().includes(b.toLowerCase())):r?a:[]},[a,e,r]);l.useEffect(()=>{i||u(-1)},[i]),l.useEffect(()=>()=>{d.current&&clearTimeout(d.current)},[]);const h=l.useCallback(b=>{t?.(b),s(!1)},[t]),p=l.useCallback(()=>s(!0),[]),g=l.useCallback(()=>{d.current=setTimeout(()=>s(!1),120)},[]),v=l.useCallback(b=>{b.key==="ArrowDown"?(b.preventDefault(),s(!0),u(y=>Math.min(m.length-1,y+1))):b.key==="ArrowUp"?(b.preventDefault(),u(y=>Math.max(-1,y-1))):b.key==="Enter"?c>=0&&!b.nativeEvent.isComposing&&h(m[c]):b.key==="Escape"&&i&&(b.preventDefault(),s(!1))},[m,c,i,h]);return{listId:n,open:i,activeIdx:c,filtered:m,handleFocus:p,handleBlur:g,handleKeyDown:v,handleSelect:h}}var $3=".ihabdevteam-core-scope .text-field{box-sizing:border-box;display:inline-flex;flex-direction:column;gap:6px;position:relative}.ihabdevteam-core-scope .text-field--full-width{display:flex;width:100%}.ihabdevteam-core-scope .text-field__label{align-items:center;color:var(--color-darkGray);display:flex;gap:4px}.ihabdevteam-core-scope .text-field__required{color:var(--color-main);line-height:1}.ihabdevteam-core-scope .text-field__wrap{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:12px;box-sizing:border-box;display:flex;overflow:hidden;position:relative;transition:border-color .12s,background .12s,box-shadow .12s}.ihabdevteam-core-scope .text-field--s32 .text-field__wrap{border-radius:8px}.ihabdevteam-core-scope .text-field--s40 .text-field__wrap{border-radius:10px}.ihabdevteam-core-scope .text-field--s48 .text-field__wrap{border-radius:12px}.ihabdevteam-core-scope .text-field--s64 .text-field__wrap{border-radius:14px}.ihabdevteam-core-scope .text-field__wrap:focus-within{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10)}.ihabdevteam-core-scope .text-field--error .text-field__wrap{border-color:var(--color-error)}.ihabdevteam-core-scope .text-field--error .text-field__wrap:focus-within{box-shadow:0 0 0 3px var(--color-error-a10)}.ihabdevteam-core-scope .text-field--disabled .text-field__wrap{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .text-field--readonly .text-field__input{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .text-field--readonly .text-field__wrap{border-color:var(--color-darkWhite)}.ihabdevteam-core-scope .text-field__input{background:transparent;border:none;box-sizing:border-box;color:var(--color-darkGray);flex:1;margin:0;min-width:0;outline:none;padding:0 12px}.ihabdevteam-core-scope .text-field__input::-moz-placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .text-field__input::placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .text-field__input:disabled{cursor:not-allowed}.ihabdevteam-core-scope .text-field__input[readonly]{cursor:default}.ihabdevteam-core-scope .text-field__input--textarea{align-self:stretch;line-height:1.6;min-height:80px;padding:10px 12px;resize:vertical}.ihabdevteam-core-scope .text-field__input--auto{align-self:stretch;line-height:1.5;overflow:hidden;padding:0 12px;resize:none}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__wrap,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__wrap{align-items:flex-start}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__clear,.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__icon,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__clear,.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__icon{margin-top:var(--spacing-s)}.ihabdevteam-core-scope .text-field--s32 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:30px}.ihabdevteam-core-scope .text-field--s40 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:38px}.ihabdevteam-core-scope .text-field--s48 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:46px}.ihabdevteam-core-scope .text-field--s64 .text-field__input:not(.text-field__input--textarea):not(.text-field__input--auto){height:62px;line-height:normal}.ihabdevteam-core-scope .text-field--display .text-field__input{font-weight:700;text-align:center}.ihabdevteam-core-scope .text-field--display .text-field__input::-moz-placeholder{color:transparent}.ihabdevteam-core-scope .text-field--display .text-field__input::placeholder{color:transparent}.ihabdevteam-core-scope .text-field--display .text-field__placeholder{align-items:center;color:var(--color-lightGray);display:flex;font-weight:400;inset:0;justify-content:center;pointer-events:none;position:absolute}.ihabdevteam-core-scope .text-field--display .text-field__input:not(:-moz-placeholder)~.text-field__placeholder{display:none}.ihabdevteam-core-scope .text-field--display .text-field__input:not(:placeholder-shown)~.text-field__placeholder{display:none}.ihabdevteam-core-scope .text-field--display.text-field--s48 .text-field__input{font-size:22px}.ihabdevteam-core-scope .text-field--display.text-field--s48 .text-field__placeholder{font-size:15px}.ihabdevteam-core-scope .text-field--display.text-field--s64 .text-field__input{font-size:28px;letter-spacing:-.3px}.ihabdevteam-core-scope .text-field--display.text-field--s64 .text-field__placeholder{font-size:16px}.ihabdevteam-core-scope .text-field--s32 .text-field__input--auto{height:30px;min-height:30px;padding-bottom:3px;padding-top:3px}.ihabdevteam-core-scope .text-field--s40 .text-field__input--auto{height:38px;min-height:38px;padding-bottom:7px;padding-top:7px}.ihabdevteam-core-scope .text-field--s48 .text-field__input--auto{height:46px;min-height:46px;padding-bottom:11px;padding-top:11px}.ihabdevteam-core-scope .text-field__icon{align-items:center;color:var(--color-lightGray);display:inline-flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .text-field__icon--left{margin-left:var(--spacing-s)}.ihabdevteam-core-scope .text-field__icon--right{margin-right:var(--spacing-s)}.ihabdevteam-core-scope .text-field__icon-svg{display:block}.ihabdevteam-core-scope .text-field--has-left-icon .text-field__input{padding-left:6px}.ihabdevteam-core-scope .text-field--has-right-icon .text-field__input{padding-right:6px}.ihabdevteam-core-scope .text-field--s32 .text-field__icon{height:16px;width:16px}.ihabdevteam-core-scope .text-field--s32 .text-field__input{font-size:14px;line-height:22px}.ihabdevteam-core-scope .text-field__clear{flex-shrink:0;margin-right:10px}.ihabdevteam-core-scope .text-field__suggestions{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);box-shadow:var(--shadow-dropdown);left:0;margin-top:var(--spacing-xs);max-height:220px;overflow:auto;padding:4px 0;position:absolute;right:0;top:100%;z-index:var(--z-dropdown)}.ihabdevteam-core-scope .text-field__suggestion{color:var(--color-darkGray);cursor:pointer;padding:8px 12px}.ihabdevteam-core-scope .text-field__suggestion.is-active,.ihabdevteam-core-scope .text-field__suggestion:hover{background:var(--color-deepWhite);color:var(--color-main)}.ihabdevteam-core-scope .text-field__footer{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .text-field__helper{color:var(--color-lightGray);flex:1}.ihabdevteam-core-scope .text-field--error .text-field__helper{color:var(--color-error)}.ihabdevteam-core-scope .text-field__count{color:var(--color-gray);flex-shrink:0;margin-right:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ihabdevteam-core-scope .text-field--has-right-icon .text-field__count,.ihabdevteam-core-scope .text-field:has(.text-field__clear) .text-field__count{margin-right:8px}.ihabdevteam-core-scope .text-field__count--over{color:var(--color-error)}.ihabdevteam-core-scope .text-field:has(.text-field__input--textarea) .text-field__count{bottom:6px;margin:0;pointer-events:none;position:absolute;right:20px}.ihabdevteam-core-scope .text-field:has(.text-field__input--auto) .text-field__count{align-self:flex-end;margin-bottom:var(--spacing-s)}";Q($3);function Wa(e){const{value:t,defaultValue:a,name:r,inputRef:n,onChange:i,label:s,ariaLabel:c,required:u,placeholder:d,type:m="text",disabled:h=!1,readOnly:p=!1,error:g,helperText:v,maxLength:b,size:y=48,variant:f="input",fullWidth:x=!1,newline:_=!1,multiline:C=!1,rows:A=3,leftIcon:w,rightIcon:S,clearable:N=!1,list:T,showCount:E=!0,className:W="",onFocus:L,onBlur:k,onKeyDown:D,onEnter:j,inputMode:F,autoComplete:ee,autoFocus:Z,suggestions:J,openOnFocus:M=!1}=e,{t:R}=me.useTranslation(),z=l.useId(),H=`tf-${z}`,$=`tf-helper-${z}`,q=l.useRef(null),O=Ml({value:t??"",onChange:i,suggestions:J??[],openOnFocus:M}),G=l.useCallback(P=>{q.current=P,typeof n=="function"?n(P):n&&(n.current=P)},[n]),I=t!==void 0,ne=I&&m==="password",X=(t??"").length;l.useEffect(()=>{const P=q.current;if(!ne||!P)return;const oe=t??"";P.value!==oe&&(P.value=oe)},[ne,t]),l.useEffect(()=>{if(!_||!q.current)return;const P=q.current;P.style.height="",P.scrollHeight>P.clientHeight&&(P.style.height=`${P.scrollHeight}px`)},[t,_]);const te=b!=null&&X>b,pe=y===32?16:20,ae=xe("text-field",`text-field--s${y}`,f==="display"?"text-field--display":"",x?"text-field--full-width":"",h?"text-field--disabled":"",p?"text-field--readonly":"",g?"text-field--error":"",w?"text-field--has-left-icon":"",S||N?"text-field--has-right-icon":"",W),Y={id:H,...ne?{}:I?{value:t}:{defaultValue:a},ref:G,placeholder:d,name:r,disabled:h,readOnly:p,autoFocus:Z,tabIndex:p?-1:void 0,maxLength:b,list:T,inputMode:F,autoComplete:ee,"aria-label":!s&&c?c:void 0,"aria-required":u,"aria-invalid":!!g,"aria-describedby":v||g?$:void 0,role:J?"combobox":void 0,"aria-autocomplete":J?"list":void 0,"aria-haspopup":J?"listbox":void 0,"aria-expanded":J?O.open:void 0,"aria-controls":J?O.listId:void 0,"aria-activedescendant":J&&O.activeIdx>=0?`${O.listId}-option-${O.activeIdx}`:void 0,onChange:P=>i?.(P.target.value),onFocus:(P=>{L?.(P),J&&O.handleFocus()}),onBlur:(P=>{k?.(P),J&&O.handleBlur()}),onKeyDown:(P=>{j&&P.key==="Enter"&&!P.nativeEvent.isComposing&&(P.preventDefault(),j()),D?.(P),J&&O.handleKeyDown(P)})},de=N&&!h&&!p&&X>0,fe=()=>_?o.jsx("textarea",{...Y,className:"text-field__input text-field__input--auto body-2",rows:1}):C?o.jsx("textarea",{...Y,className:"text-field__input text-field__input--textarea body-2",rows:A}):o.jsx("input",{...Y,type:m,className:"text-field__input body-2"}),Se=f==="display"&&!_&&!C&&!!d,Ae=()=>o.jsxs(o.Fragment,{children:[fe(),Se&&o.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:d})]});return o.jsxs("div",{className:ae,children:[s&&o.jsxs("label",{htmlFor:H,className:"text-field__label caption-1",children:[s,u&&o.jsx("span",{className:"text-field__required",children:"*"})]}),o.jsxs("div",{className:"text-field__wrap",children:[w&&o.jsx("span",{className:"text-field__icon text-field__icon--left",children:o.jsx(Pe,{icon:w,label:"",className:"",svgClassName:"text-field__icon-svg",size:pe})}),Ae(),b!=null&&E&&o.jsxs("span",{className:`text-field__count caption-2${te?" text-field__count--over":""}`,children:[X,"/",b]}),de&&o.jsx(ce,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:R("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:P=>{P.preventDefault()},onClick:()=>i?.(""),tabIndex:-1}),S&&!de&&o.jsx("span",{className:"text-field__icon text-field__icon--right",children:o.jsx(Pe,{icon:S,label:"",className:"",svgClassName:"text-field__icon-svg",size:pe})})]}),J&&O.open&&O.filtered.length>0&&o.jsx("ul",{id:O.listId,className:"text-field__suggestions",role:"listbox",children:O.filtered.map((P,oe)=>o.jsx("li",{id:`${O.listId}-option-${oe}`,role:"option","aria-selected":oe===O.activeIdx,className:`text-field__suggestion body-2${oe===O.activeIdx?" is-active":""}`,onMouseDown:re=>re.preventDefault(),onClick:()=>{O.handleSelect(P),q.current?.focus()},children:P},`${P}-${oe}`))}),(v||g)&&o.jsx("div",{className:"text-field__footer",children:o.jsx("span",{id:$,className:"text-field__helper caption-1",role:g?"alert":void 0,children:g||v})})]})}var z3=".ihabdevteam-core-scope .dropdown{display:inline-block;position:relative}.ihabdevteam-core-scope .dropdown--block{display:block;width:100%}.ihabdevteam-core-scope .dropdown--block .dropdown__trigger{min-width:0}.ihabdevteam-core-scope .dropdown--s40 .dropdown__trigger{border-radius:10px;height:40px}.ihabdevteam-core-scope .dropdown--s48 .dropdown__trigger{border-radius:12px;height:48px}.ihabdevteam-core-scope .dropdown__trigger{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:12px;box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;font-family:var(--font-family);gap:var(--spacing-xs);height:48px;justify-content:space-between;min-width:120px;padding:0 12px;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s;white-space:nowrap;width:100%}.ihabdevteam-core-scope .dropdown__trigger:hover:not(:disabled){border-color:var(--color-main)}.ihabdevteam-core-scope .dropdown__trigger:focus-visible{border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10);outline:none}.ihabdevteam-core-scope .dropdown__trigger:disabled{background:var(--color-deepWhite);cursor:default;opacity:.5}.ihabdevteam-core-scope .dropdown--open .dropdown__trigger{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10)}.ihabdevteam-core-scope .dropdown--error .dropdown__trigger{border:1px solid var(--color-error)}.ihabdevteam-core-scope .dropdown--error .dropdown__trigger:hover:not(:disabled),.ihabdevteam-core-scope .dropdown--error.dropdown--open .dropdown__trigger{border-color:var(--color-error);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-error) 15%,transparent)}.ihabdevteam-core-scope .dropdown__trigger-label{flex:1;overflow:hidden;text-overflow:ellipsis}.ihabdevteam-core-scope .dropdown__trigger-label--placeholder{color:var(--color-lightGray)}.ihabdevteam-core-scope .dropdown__chevron{color:var(--color-gray);flex-shrink:0;height:16px;transition:transform .2s;width:16px}.ihabdevteam-core-scope .dropdown--open .dropdown__chevron{transform:rotate(180deg)}.ihabdevteam-core-scope .dropdown__menu{animation:dropdown-appear .12s ease;background:var(--color-white);border:1.5px solid var(--color-whiteLine);border-radius:var(--radius-card);box-shadow:var(--shadow-dropdown);box-sizing:border-box;max-height:260px;overflow-y:auto;overscroll-behavior-y:contain;padding:6px}.ihabdevteam-core-scope .dropdown__menu--up{bottom:calc(100% + 6px);top:auto}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ihabdevteam-core-scope .dropdown__option{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;font-family:var(--font-family);gap:var(--spacing-xs);padding:9px 12px;text-align:left;transition:background .1s,color .1s;white-space:nowrap;width:100%}.ihabdevteam-core-scope .dropdown__option:hover{background:var(--color-deepWhite)}.ihabdevteam-core-scope .dropdown__option--active{background:var(--color-main-a10);color:var(--color-main)}.ihabdevteam-core-scope .dropdown__option--disabled{cursor:default;opacity:.4;pointer-events:none}.ihabdevteam-core-scope .dropdown__option-check{align-items:center;color:var(--color-main);display:flex;flex-shrink:0;height:14px;justify-content:center;width:14px}.ihabdevteam-core-scope .dropdown__option-check svg{height:14px;width:14px}.ihabdevteam-core-scope .dropdown__divider{background:var(--color-darkWhite);height:1px;margin:4px 0}";Q(z3);function Ut({options:e,value:t,onChange:a,placeholder:r,disabled:n=!1,block:i=!1,size:s=48,error:c=!1,className:u="",ariaLabel:d}){const{t:m}=me.useTranslation(),h=r??m("dropdown.placeholder","\uC120\uD0DD"),p=l.useId(),g=l.useRef(null),v=l.useCallback(k=>{const D=window.innerHeight-k.bottom<260&&k.top>260;return{position:"fixed",left:k.left,minWidth:k.width,...D?{bottom:window.innerHeight-k.top+6}:{top:k.bottom+6},zIndex:9999}},[]),{open:b,setOpen:y,toggle:f,style:x,triggerRef:_,menuRef:C}=So({computeStyle:v}),[A,w]=l.useState(-1),S=l.useCallback(()=>w(-1),[]),N=e.find(k=>k.value===t);l.useEffect(()=>{if(b){const k=e.findIndex(D=>D.value===t);w(k>=0?k:0),requestAnimationFrame(()=>{const D=C.current;if(!D)return;const j=D.querySelectorAll(".dropdown__option")[k];j&&(D.scrollTop=Math.max(0,j.offsetTop-D.clientHeight/2+j.clientHeight/2))})}},[b,e,t,C]);const T=l.useCallback(()=>{n||f()},[n,f]),E=l.useCallback(k=>{k.disabled||(a?.(k.value),y(!1))},[a,y]),W=l.useCallback(k=>{if(!n){if(!b){(k.key==="Enter"||k.key===" "||k.key==="ArrowDown")&&(k.preventDefault(),y(!0));return}if(k.key==="Escape"){k.preventDefault(),y(!1);return}k.key==="ArrowDown"?(k.preventDefault(),w(D=>{let j=D+1;for(;j<e.length&&e[j].disabled;)j++;return j<e.length?j:D})):k.key==="ArrowUp"?(k.preventDefault(),w(D=>{let j=D-1;for(;j>=0&&e[j].disabled;)j--;return j>=0?j:D})):k.key==="Enter"&&A>=0&&(k.preventDefault(),E(e[A]))}},[n,b,e,A,E,y]),L=b?o.jsx("div",{ref:C,id:p,className:"dropdown__menu",role:"listbox",style:x,onMouseLeave:S,children:e.map((k,D)=>o.jsxs("button",{id:`${p}-option-${D}`,type:"button",role:"option","aria-selected":k.value===t,className:xe("dropdown__option body-2",k.value===t?"dropdown__option--active":"",D===A?"dropdown__option--active":"",k.disabled?"dropdown__option--disabled":""),onMouseDown:j=>j.preventDefault(),onClick:()=>E(k),onMouseEnter:()=>w(D),disabled:k.disabled,children:[o.jsx("span",{className:"dropdown__option-check",children:k.value===t&&o.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:o.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),k.label]},k.value))}):null;return o.jsxs("div",{ref:g,className:xe("dropdown",`dropdown--s${s}`,b?"dropdown--open":"",i?"dropdown--block":"",c?"dropdown--error":"",u),onKeyDown:W,children:[o.jsxs("button",{ref:_,type:"button",className:"dropdown__trigger","aria-haspopup":"listbox","aria-expanded":b,"aria-controls":b?p:void 0,"aria-activedescendant":b&&A>=0?`${p}-option-${A}`:void 0,"aria-label":d,"aria-invalid":c||void 0,disabled:n,onClick:T,children:[o.jsx("span",{className:`dropdown__trigger-label body-2${N?"":" dropdown__trigger-label--placeholder"}`,children:N?N.label:h}),o.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:o.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&qt.createPortal(L,g.current?.closest(".ihabdevteam-core-scope")??document.body)]})}var I3=".ihabdevteam-core-scope .pagination{align-items:center;display:flex;gap:4px}.ihabdevteam-core-scope .pagination__info{color:var(--color-darkGray);font-weight:600;min-width:48px;text-align:center}";Q(I3);function br({page:e,totalPages:t,onChange:a,prevLabel:r,nextLabel:n,className:i=""}){const{t:s}=me.useTranslation(),c=r??s("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),u=n??s("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=()=>a(Math.max(1,e-1)),m=()=>a(Math.min(t,e+1));return o.jsxs("div",{className:xe("pagination",i),children:[o.jsx(ce,{size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:c,disabled:e<=1,onClick:d}),o.jsxs("span",{className:"pagination__info body-3",children:[e," / ",t]}),o.jsx(ce,{size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:u,disabled:e>=t,onClick:m})]})}var O3=".ihabdevteam-core-scope .segmented-control{background:var(--color-darkWhite);display:inline-flex;flex-shrink:0;flex-wrap:wrap;gap:var(--spacing-xs);overflow:hidden;padding:4px}.ihabdevteam-core-scope .segmented-control--pill{border-radius:999px}.ihabdevteam-core-scope .segmented-control--rounded{border-radius:12px}.ihabdevteam-core-scope .segmented-control .button{min-width:96px}.ihabdevteam-core-scope .segmented-control--32 .button{min-width:64px}.ihabdevteam-core-scope .segmented-control--40 .button{min-width:80px}.ihabdevteam-core-scope .segmented-control--48 .button{min-width:96px}.ihabdevteam-core-scope .segmented-control--no-bg{background:transparent;padding:0}.ihabdevteam-core-scope .segmented-control--full{display:flex;flex-wrap:nowrap;width:100%}.ihabdevteam-core-scope .segmented-control--full .button{flex:1 1 0;min-width:0}@media (max-width:767px){.ihabdevteam-core-scope .segmented-control{flex-shrink:1;min-width:0}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(4):last-child){border-radius:14px;display:grid;grid-template-columns:repeat(2,1fr);width:100%}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(4):last-child)>.button{justify-content:center;width:100%}.ihabdevteam-core-scope .segmented-control--pill:has(>.button:nth-child(5)){border-radius:14px}.ihabdevteam-core-scope .segmented-control:has(>.button:nth-child(5)){justify-content:center}}";Q(O3);function Ha(e){const{t}=me.useTranslation(),{options:a=[],value:r=a[0]?.key,onChange:n=h=>{},className:i="",size:s=48,shape:c="pill",useBG:u=!0,fullWidth:d=!1,ariaLabel:m}=e||{};return o.jsx("div",{className:xe("segmented-control",`segmented-control--${c}`,`segmented-control--${s}`,d&&"segmented-control--full",!u&&"segmented-control--no-bg",i),role:"radiogroup","aria-label":m??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(h=>o.jsx(ce,{role:"radio","aria-checked":h.key===r,label:h.label,count:h.count,disabled:h.disabled,className:h.key===r?"is-selected":"",onClick:()=>{h.disabled||n(h.key)},size:s,shape:c,useBorder:!1,useBG:!1},h.key))})}var F3=".ihabdevteam-core-scope .toolbar{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-s);min-height:64px;padding-bottom:8px;padding-top:8px;width:100%}.ihabdevteam-core-scope .toolbar__row{display:contents}.ihabdevteam-core-scope .toolbar__row-end{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s);justify-content:flex-end;margin-left:auto}.ihabdevteam-core-scope .toolbar__count{color:var(--color-gray);flex-shrink:0;margin:0;white-space:nowrap}.ihabdevteam-core-scope .toolbar .toolbar__search{flex-shrink:0;min-width:200px}@media (max-width:767px){.ihabdevteam-core-scope .toolbar{align-items:stretch;flex-direction:column;flex-wrap:wrap;padding-bottom:12px;padding-top:12px}.ihabdevteam-core-scope .toolbar__row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s)}.ihabdevteam-core-scope .toolbar .toolbar__search{flex:1;min-width:150px}}.ihabdevteam-core-scope .toolbar__count-highlight{color:var(--color-main)}.ihabdevteam-core-scope .toolbar__divider{align-self:stretch;height:auto;margin:8px 0}@media (max-width:767px){.ihabdevteam-core-scope .toolbar__divider{display:none}}";Q(F3);function mn({count:e,search:t,segment:a,filters:r,pageSize:n,pagination:i,actions:s,className:c}){const{t:u}=me.useTranslation(),d=e!=null&&o.jsxs("p",{className:"toolbar__count body-1",children:[e.prefix??u("common.totalPrefix","\uCD1D "),o.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),m=!!(t||r?.length||n||i||s);return o.jsxs("div",{className:xe("toolbar",c),children:[o.jsxs("div",{className:"toolbar__row",children:[d,a&&(Array.isArray(a)?a:[a]).map((h,p)=>o.jsx(Ha,{size:40,...h},h.ariaLabel??p))]}),m&&o.jsx("div",{className:"toolbar__row",children:o.jsxs("div",{className:"toolbar__row-end",children:[t&&o.jsx(Wa,{className:"toolbar__search",size:40,value:t.value,onChange:t.onChange,placeholder:t.placeholder??u("common.search","\uAC80\uC0C9"),ariaLabel:t.placeholder??u("common.search","\uAC80\uC0C9"),clearable:!0}),r?.map((h,p)=>o.jsx(Ut,{size:40,options:h.options,value:h.value,onChange:h.onChange,ariaLabel:h.ariaLabel},p)),n&&o.jsx(Ut,{size:40,options:n.options,value:n.value,onChange:n.onChange,ariaLabel:n.ariaLabel??u("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),i&&o.jsx(br,{page:i.page,totalPages:i.total,onChange:i.onChange,prevLabel:i.prevLabel,nextLabel:i.nextLabel}),s]})})]})}var W3=".ihabdevteam-core-scope .code-box{background:#eff8ff;background:var(--color-code-bg,#eff8ff);border:1px solid rgba(4,34,51,.06);border-radius:10px;color:#042233;color:var(--color-code-text,#042233);margin:0;overflow:hidden;padding:16px 20px}.ihabdevteam-core-scope .code-box__header{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:40px}.ihabdevteam-core-scope .code-box__title{align-items:center;color:rgba(4,34,51,.75);display:flex;letter-spacing:.02em}.ihabdevteam-core-scope .code-box__copy{flex-shrink:0}.ihabdevteam-core-scope .code-box__inner{background:transparent;color:#042233;color:var(--color-code-text,#042233);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Roboto Mono,Courier New,monospace;font-size:13px;line-height:1.6;margin:0;overflow-wrap:anywhere;overflow-x:auto;padding:8px 0 0;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-box__inner code{display:block;font-family:inherit;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-box--small .code-box__inner{font-size:12px}.ihabdevteam-core-scope .code-token{overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.ihabdevteam-core-scope .code-token.keyword{color:#6b46ff;font-weight:600}.ihabdevteam-core-scope .code-token.string{color:#0a9d58}.ihabdevteam-core-scope .code-token.comment{color:#6b7280;font-style:italic}.ihabdevteam-core-scope .code-token.command{color:#0b78d1}.ihabdevteam-core-scope .code-token.number{color:#d97706}.ihabdevteam-core-scope .code-token.operator{color:#dc2626}.ihabdevteam-core-scope .code-token.identifier,.ihabdevteam-core-scope .code-token.punctuation{color:#042233;color:var(--color-code-text,#042233)}";Q(W3);function Jh(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(Jh).join(""):""}function H3(e){let t=e.replace(/\r\n/g,`
819
819
  `).replace(/\r/g,`
820
820
  `);t=t.replace(/^\n+/,"").replace(/\n+$/,"");const a=t.split(`
821
821
  `).map(i=>i.replace(/\t/g," ")),r=a.filter(i=>i.trim().length>0),n=r.length>0?Math.min(...r.map(i=>i.match(/^ */)?.[0].length??0)):0;return a.map(i=>i.slice(n)).join(`
822
822
  `)}const V3=new Set(["pnpm","npm","yarn","node","git","curl","docker","cat","ls","cd","rm","mv","cp","echo","export"]),G3=/^(?:const|let|var|function|return|if|else|for|while|switch|case|break|import|from|export|class|new|try|catch|finally|throw|await|async|null|true|false|this|typeof|instanceof)\b/;function q3(e,t){let a=e;const r=[],n=/sh|bash/.test(t.toLowerCase()),i=(s,c)=>r.push({type:s,content:c});for(;a.length>0;){const s=a.match(/^\s+/);if(s){i("whitespace",s[0]),a=a.slice(s[0].length);continue}if(!n&&a.startsWith("//")){const v=a.indexOf(`
823
823
  `),b=v===-1?a:a.slice(0,v);i("comment",b),a=a.slice(b.length);continue}if(n&&a.startsWith("#")){const v=a.indexOf(`
824
- `),b=v===-1?a:a.slice(0,v);i("comment",b),a=a.slice(b.length);continue}const c=a.match(/^\/\*[\s\S]*?\*\//);if(c){i("comment",c[0]),a=a.slice(c[0].length);continue}const u=a.match(/^(`(?:\\.|[^`])*`|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*')/);if(u){i("string",u[0]),a=a.slice(u[0].length);continue}const d=a.match(/^\d+(?:\.\d+)?/);if(d){i("number",d[0]),a=a.slice(d[0].length);continue}const m=a.match(G3);if(m){i("keyword",m[0]),a=a.slice(m[0].length);continue}const h=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(h){const v=h[0];i(n&&V3.has(v)?"command":"identifier",v),a=a.slice(v.length);continue}const p=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(p){i("operator",p[0]),a=a.slice(p[0].length);continue}const g=a.match(/^[()[\]{};.,]/);if(g){i("punctuation",g[0]),a=a.slice(1);continue}i("other",a[0]),a=a.slice(1)}return r}function em({children:e,language:t="bash",title:a="",showCopy:r=!0,size:n="default",className:i=""}){const{t:s}=me.useTranslation(),[c,u]=l.useState(!1),d=H3(Jh(e)),m=l.useRef(null);l.useEffect(()=>()=>{m.current&&clearTimeout(m.current)},[]);const h=async()=>{try{if(!await as(d))return;u(!0),m.current&&clearTimeout(m.current),m.current=setTimeout(()=>u(!1),2e3)}catch{}},p=q3(d,t),g=n==="small"?"caption-1":"body-3";return o.jsxs("div",{className:ye("code-box",n==="small"?"code-box--small":"",i),children:[(a||r)&&o.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":s("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[o.jsx("div",{className:"code-box__title caption-1",children:a}),r&&o.jsx(le,{className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:c?"check":"copy",onClick:h,ariaLabel:c?s("common.copied","\uBCF5\uC0AC\uB428"):s("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),o.jsx("pre",{className:"code-box__inner","data-lang":t,children:o.jsx("code",{children:p.map((v,b)=>o.jsx("span",{className:`code-token ${v.type} ${g}`,children:v.content},b))})})]})}var Y3=".ihabdevteam-core-scope .loader-spinner{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .loader-spinner__svg{animation:loader-rotate 1s linear infinite;transform-origin:center}.ihabdevteam-core-scope .loader-spinner__bg{stroke:rgba(0,0,0,.08)}.ihabdevteam-core-scope .loader-spinner__fg{stroke:var(--color-main);stroke-dasharray:125;stroke-dashoffset:80;animation:loader-dash 1.2s ease-in-out infinite}@keyframes loader-rotate{to{transform:rotate(1turn)}}@keyframes loader-dash{0%{stroke-dashoffset:125}50%{stroke-dashoffset:35}to{stroke-dashoffset:125}}.ihabdevteam-core-scope .loader-bar{background:rgba(0,0,0,.06);border-radius:999px;height:8px;overflow:hidden;width:100%}.ihabdevteam-core-scope .loader-bar__inner{background:var(--color-main);height:100%;transition:width .22s cubic-bezier(.2,.8,.2,1);width:0}.ihabdevteam-core-scope .core-loader-spinner{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .core-loader-spinner__svg{animation:core-loader-rotate 1s linear infinite;transform-origin:center}.ihabdevteam-core-scope .core-loader-spinner__bg{stroke:rgba(0,0,0,.08)}.ihabdevteam-core-scope .core-loader-spinner__fg{stroke:var(--color-main);stroke-dasharray:125;stroke-dashoffset:80;animation:core-loader-dash 1.2s ease-in-out infinite}@keyframes core-loader-rotate{to{transform:rotate(1turn)}}@keyframes core-loader-dash{0%{stroke-dashoffset:125}50%{stroke-dashoffset:35}to{stroke-dashoffset:125}}.ihabdevteam-core-scope .core-loader-bar{background:rgba(0,0,0,.06);border-radius:999px;height:8px;overflow:hidden;width:100%}.ihabdevteam-core-scope .core-loader-bar__inner{background:var(--color-main);height:100%;transition:width .22s cubic-bezier(.2,.8,.2,1);width:0}.ihabdevteam-core-scope .page-loading-center{display:flex;justify-content:center;padding:40px 0}";Q(Y3);function Ao(e){const{variant:t="spinner",size:a=24,progress:r=null,label:n}=e||{};if(t==="bar"){const s=Math.max(0,Math.min(100,Number(r)||0));return o.jsx("div",{className:"loader-bar",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":s,"aria-label":n||"Loading",children:o.jsx("div",{className:"loader-bar__inner",style:{width:`${s}%`}})})}const i=typeof a=="number"?`${a}px`:a;return o.jsx("div",{className:"loader-spinner",style:{width:i,height:i},role:"status","aria-label":n||"Loading",children:o.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:a,height:a,children:[o.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),o.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})})}var U3='.ihabdevteam-core-scope .toggle{align-items:center;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .toggle input{height:0;opacity:0;position:absolute;width:0}.ihabdevteam-core-scope .toggle__slider{background:#e2e8f0;background:var(--color-whiteLine,#e2e8f0);border-radius:26px;display:inline-block;flex-shrink:0;height:26px;position:relative;transition:background .2s;width:44px}.ihabdevteam-core-scope .toggle__slider:before{background:var(--color-pureWhite);border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.15);content:"";height:20px;left:3px;position:absolute;top:3px;transition:transform .2s;width:20px}.ihabdevteam-core-scope .toggle input:checked+.toggle__slider{background:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .toggle input:checked+.toggle__slider:before{transform:translateX(18px)}.ihabdevteam-core-scope .toggle input:focus-visible+.toggle__slider{outline:2px solid var(--color-main,var(--color-main));outline-offset:2px}.ihabdevteam-core-scope .toggle__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .toggle--disabled{cursor:not-allowed;opacity:.45}';Q(U3);function Pl({checked:e,onChange:t,disabled:a=!1,label:r,ariaLabel:n,labelPosition:i="right",className:s="",id:c}){const u=r&&o.jsx("span",{className:"toggle__label body-3",children:r});return o.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${s}`.trim(),children:[i==="left"&&u,o.jsx("input",{id:c,type:"checkbox",checked:e,disabled:a,onChange:d=>t?.(d.target.checked),"aria-label":!r&&n?n:void 0}),o.jsx("span",{className:"toggle__slider"}),i==="right"&&u]})}var K3=`.ihabdevteam-core-scope .checkbox{align-items:center;cursor:pointer;display:inline-flex;gap:8px;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .checkbox--disabled{cursor:not-allowed;opacity:.4}.ihabdevteam-core-scope .checkbox__input{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .checkbox__box{background:var(--color-white,var(--color-pureWhite));border:1.5px solid var(--color-whiteLine);border-radius:8px;border-radius:var(--radius-sm,8px);flex-shrink:0;height:24px;position:relative;transition:border-color .15s,background .15s;width:24px}.ihabdevteam-core-scope .checkbox__input:checked+.checkbox__box{background:var(--color-main,var(--color-main));border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:checked+.checkbox__box:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m4 9 3.5 3.5L14 6'/%3E%3C/svg%3E") 50%/cover no-repeat;content:"";inset:0;position:absolute}.ihabdevteam-core-scope .checkbox__input:indeterminate+.checkbox__box{background:var(--color-main,var(--color-main));border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:indeterminate+.checkbox__box:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-width='2' d='M4.5 9h9'/%3E%3C/svg%3E") 50%/cover no-repeat;content:"";inset:0;position:absolute}.ihabdevteam-core-scope .checkbox:not(.checkbox--disabled):hover .checkbox__box{border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:focus-visible+.checkbox__box{outline:2px solid var(--color-main,var(--color-main));outline-offset:2px}.ihabdevteam-core-scope .checkbox--large .checkbox__box{border-radius:10px;border-radius:var(--radius-s,10px);height:30px;width:30px}.ihabdevteam-core-scope .checkbox--small .checkbox__box{border-radius:4px;border-radius:var(--radius-xs,4px);height:16px;width:16px}.ihabdevteam-core-scope .checkbox__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .checkbox--small .checkbox__label{font-size:13px}`;Q(K3);function Rl({checked:e=!1,onChange:t,disabled:a,indeterminate:r,label:n,size:i="medium",className:s,title:c,ariaLabel:u}){const d=l.useRef(null),m=l.useId();return l.useEffect(()=>{d.current&&(d.current.indeterminate=!!r)},[r]),o.jsxs("label",{className:ye("checkbox",i==="small"&&"checkbox--small",i==="large"&&"checkbox--large",a&&"checkbox--disabled",s),htmlFor:m,title:c,children:[o.jsx("input",{ref:d,id:m,type:"checkbox",className:"checkbox__input",checked:e,onChange:h=>t?.(h.target.checked),disabled:a,"aria-label":!n&&u?u:void 0}),o.jsx("span",{className:"checkbox__box"}),n&&o.jsx("span",{className:"checkbox__label body-3",children:n})]})}var Z3=".ihabdevteam-core-scope .bulk-bar{align-items:center;background:var(--color-pureWhite,var(--color-pureWhite));border:1px solid var(--color-main);border-radius:12px;border-radius:var(--radius-m,12px);bottom:24px;box-shadow:0 4px 20px rgba(0,0,0,.12);box-sizing:border-box;color:#1a1a1a;color:var(--color-gray900,#1a1a1a);display:flex;gap:12px;justify-content:space-between;margin-top:16px;min-height:60px;opacity:0;padding:10px 16px;pointer-events:none;position:sticky;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease}.ihabdevteam-core-scope .bulk-bar--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.ihabdevteam-core-scope .bulk-bar__count{color:#1a1a1a;color:var(--color-gray900,#1a1a1a);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .bulk-bar__count b{color:var(--color-main)}.ihabdevteam-core-scope .bulk-bar__actions{display:flex;flex-shrink:0;gap:8px}.ihabdevteam-core-scope .bulk-bar__chips{align-items:center;display:flex;flex-wrap:wrap;gap:8px;gap:var(--spacing-xs,8px);min-width:0}.ihabdevteam-core-scope .bulk-bar__chips .button{white-space:nowrap}@media (max-width:767px){.ihabdevteam-core-scope .bulk-bar{flex-wrap:wrap}.ihabdevteam-core-scope .bulk-bar__actions{flex-wrap:wrap;justify-content:flex-end;width:100%}}.ihabdevteam-core-scope .bulk-bar__actions--stacked{align-items:stretch;flex-direction:column}";Q(Z3);function tm({count:e,actions:t,onClear:a,clearLabel:r="\uC120\uD0DD \uD574\uC81C",visible:n,content:i,max:s}){const{t:c}=me.useTranslation(),u=n!==void 0?n:e>0,d=l.useRef(null),[m,h]=l.useState(!1);return l.useEffect(()=>{const p=d.current;if(!p)return;const g=()=>{const b=p.firstElementChild??p,y=Array.from(b.children);if(y.length<2){h(!1);return}const f=y[0].offsetTop;h(y.some(x=>x.offsetTop!==f))};if(g(),typeof ResizeObserver>"u")return;const v=new ResizeObserver(g);return v.observe(p),()=>v.disconnect()},[i,e]),o.jsxs("div",{className:`bulk-bar ${u?"bulk-bar--visible":""}`,children:[o.jsx("span",{ref:d,className:"bulk-bar__count body-2",children:i??o.jsx("b",{children:c("common.selectedCount",{count:e})})}),s!==void 0&&o.jsx(ht,{size:"small",fill:"soft",variant:"main",label:`${e} / ${s}`}),o.jsxs("div",{className:`bulk-bar__actions${m?" bulk-bar__actions--stacked":""}`,children:[o.jsx(le,{size:40,label:r,onClick:a}),t.map((p,g)=>o.jsx(le,{size:40,variant:p.variant??"default",icon:p.icon,label:p.label,onClick:p.onClick},g))]})]})}function $l(e){const t=()=>{if(e){const[h,p]=e.split("-");return{y:+h,m:+p-1}}const m=new Date;return{y:m.getFullYear(),m:m.getMonth()}},[a,r]=l.useState(()=>t().y),[n,i]=l.useState(()=>t().m),s=l.useRef(e);l.useEffect(()=>{if(e===s.current)return;s.current=e;const m=t();r(m.y),i(m.m)},[e]);const c=l.useCallback(()=>{n===0?(r(m=>m-1),i(11)):i(m=>m-1)},[n]),u=l.useCallback(()=>{n===11?(r(m=>m+1),i(0)):i(m=>m+1)},[n]),d=l.useCallback((m,h)=>{r(m),i(h)},[]);return{viewY:a,viewM:n,prevMonth:c,nextMonth:u,setViewYM:d}}var X3=".ihabdevteam-core-scope .date-picker{position:relative;width:100%}.ihabdevteam-core-scope .date-picker__trigger{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;justify-content:space-between;padding:0 12px;text-align:left;transition:border-color .12s,background .12s,box-shadow .12s;width:100%}.ihabdevteam-core-scope .date-picker--s40 .date-picker__trigger{border-radius:10px;height:40px}.ihabdevteam-core-scope .date-picker--s48 .date-picker__trigger{border-radius:12px;height:48px}.ihabdevteam-core-scope .date-picker--s64 .date-picker__trigger{border-radius:14px;height:64px}.ihabdevteam-core-scope .date-picker--open .date-picker__trigger,.ihabdevteam-core-scope .date-picker__trigger:focus{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10);outline:none}.ihabdevteam-core-scope .date-picker__trigger:disabled{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .date-picker__placeholder{color:var(--color-lightGray);white-space:nowrap}.ihabdevteam-core-scope .date-picker__value{color:var(--color-darkGray);white-space:nowrap}.ihabdevteam-core-scope .date-picker__icon{color:var(--color-lightGray);flex-shrink:0;transition:color .12s}.ihabdevteam-core-scope .date-picker--open .date-picker__icon{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__dropdown{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);box-sizing:border-box;left:0;min-width:260px;padding:12px;position:absolute;top:calc(100% + 6px);z-index:200}.ihabdevteam-core-scope .date-picker__nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.ihabdevteam-core-scope .date-picker__nav-dropdown{flex:1;margin:0 4px}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger{background:transparent!important;border:none!important;border-radius:6px!important;box-shadow:none!important;gap:4px!important;height:32px!important;justify-content:center!important;transition:background .12s,color .12s!important}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger:hover,.ihabdevteam-core-scope .date-picker__nav-dropdown.dropdown--open .dropdown__trigger{background:var(--color-deepWhite)!important}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger-label{color:var(--color-darkGray)!important;flex:initial!important;font-weight:600!important}.ihabdevteam-core-scope .date-picker__nav-btn{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:8px;color:var(--color-darkGray);cursor:pointer;display:flex;height:28px;justify-content:center;transition:border-color .12s,color .12s;width:28px}.ihabdevteam-core-scope .date-picker__nav-btn:hover{border-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .date-picker__grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.ihabdevteam-core-scope .date-picker__dow{color:var(--color-lightGray);font-weight:600;padding:4px 0 6px;text-align:center}.ihabdevteam-core-scope .date-picker__dow:first-child{color:var(--color-error)}.ihabdevteam-core-scope .date-picker__dow:last-child{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day{align-items:center;aspect-ratio:1;background:transparent;border:none;border-radius:6px;color:var(--color-darkGray);cursor:pointer;display:flex;justify-content:center;transition:background .1s,color .1s;width:100%}.ihabdevteam-core-scope .date-picker__day:hover:not(:disabled){background:var(--color-main-a10);color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--sun:hover:not(:disabled){color:var(--color-error)}.ihabdevteam-core-scope .date-picker__day--sat:hover:not(:disabled){color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--sun{color:var(--color-error)}.ihabdevteam-core-scope .date-picker__day--sat{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--today{font-weight:700;outline:1.5px solid var(--color-main);outline-offset:-1.5px}.ihabdevteam-core-scope .date-picker__day--selected{background:var(--color-main)!important;color:#fff!important;font-weight:700}.ihabdevteam-core-scope .date-picker__day--disabled{cursor:not-allowed;opacity:.3}";Q(X3);const Q3=["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"];function J3(e,t){return new Date(e,t+1,0).getDate()}function e8(e,t){return new Date(e,t,1).getDay()}function bn(e,t,a){return`${e}-${String(t+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function t8(e){if(!e)return"";const[t,a,r]=e.split("-");return`${t}. ${a}. ${r}.`}function a8(e,t,a){const r=t?+t.split("-")[0]:e-10,n=a?+a.split("-")[0]:e+10,i=[];for(let s=r;s<=n;s++)for(let c=0;c<12;c++){const u=`${s}-${String(c+1).padStart(2,"0")}`;t&&u<t.slice(0,7)||a&&u>a.slice(0,7)||i.push({value:u,label:`${s}\uB144 ${c+1}\uC6D4`})}return i}function am({value:e,onChange:t,size:a=48,min:r,max:n,disabled:i,placeholder:s="\uB0A0\uC9DC \uC120\uD0DD",className:c}){const{t:u}=me.useTranslation(),d=new Date,{viewY:m,viewM:h,prevMonth:p,nextMonth:g,setViewYM:v}=$l(e),b=l.useCallback(k=>{const N=window.innerHeight-k.bottom,j=300,F=N<j&&k.top>j;return{position:"fixed",left:k.left,width:k.width,minWidth:260,...F?{bottom:window.innerHeight-k.top+6}:{top:k.bottom+6},zIndex:9999}},[]),{open:y,setOpen:f,toggle:x,style:_,triggerRef:C,menuRef:A}=So({computeStyle:b,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"}),w=l.useCallback(k=>{t(bn(m,h,k)),f(!1)},[m,h,t,f]),S=k=>{const N=bn(m,h,k);return!!(r&&N<r||n&&N>n)},D=[];for(let k=0;k<e8(m,h);k++)D.push(null);for(let k=1;k<=J3(m,h);k++)D.push(k);const T=a===64?20:a===40?16:18,E=a8(m,r,n),W=`${m}-${String(h+1).padStart(2,"0")}`,M=y?qt.createPortal(o.jsxs("div",{ref:A,className:"date-picker__dropdown",style:_,children:[o.jsxs("div",{className:"date-picker__nav",children:[o.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:p,"aria-label":u("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:o.jsx(qc,{size:16,strokeWidth:2})}),o.jsx(Ut,{className:"date-picker__nav-dropdown",ariaLabel:u("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:E,value:W,onChange:k=>{const[N,j]=k.split("-");v(+N,+j-1)},block:!0,size:40}),o.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:g,"aria-label":u("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:o.jsx(Yc,{size:16,strokeWidth:2})})]}),o.jsxs("div",{className:"date-picker__grid",children:[Q3.map(k=>o.jsx("div",{className:"date-picker__dow caption-1",children:k},k)),D.map((k,N)=>{if(k===null)return o.jsx("div",{},`e${N}`);const j=bn(m,h,k),F=j===e,te=j===bn(d.getFullYear(),d.getMonth(),d.getDate()),Z=S(k),ee=N%7;return o.jsx("button",{type:"button",disabled:Z,onClick:()=>!Z&&w(k),className:ye("date-picker__day caption-1",F&&"date-picker__day--selected",te&&!F&&"date-picker__day--today",Z&&"date-picker__day--disabled",ee===0&&"date-picker__day--sun",ee===6&&"date-picker__day--sat"),children:k},k)})]})]}),document.body):null;return o.jsxs("div",{className:ye("date-picker",`date-picker--s${a}`,y&&"date-picker--open",c),children:[o.jsxs("button",{ref:C,type:"button",className:"date-picker__trigger body-2",onClick:()=>!i&&x(),disabled:i,"aria-haspopup":"true","aria-expanded":y,children:[o.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?t8(e):s}),o.jsx(od,{size:T,className:"date-picker__icon",strokeWidth:1.5})]}),M]})}var o8=".ihabdevteam-core-scope .month-dropdown .dropdown__trigger{max-width:200px;min-width:200px;width:200px}.ihabdevteam-core-scope .month-dropdown .dropdown__menu{max-height:280px;overflow-y:auto;scrollbar-color:var(--color-darkWhite) transparent;scrollbar-width:thin}.ihabdevteam-core-scope .month-dropdown .dropdown__menu::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .month-dropdown .dropdown__menu::-webkit-scrollbar-thumb{background:var(--color-darkWhite);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .manager-bar-chart-wrap{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .manager-bar-chart-gridline{background:var(--color-darkWhite);height:1px;left:0;pointer-events:none;position:absolute;right:0;z-index:-1}.ihabdevteam-core-scope .manager-bar-chart-gridline__label{color:var(--color-deepGray);font-size:11px;left:0;position:absolute;top:100%;white-space:nowrap}.ihabdevteam-core-scope .manager-bar-chart-inner{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-scroll{-webkit-overflow-scrolling:touch;flex:1;overflow-x:auto;overflow-y:visible;scrollbar-width:none}.ihabdevteam-core-scope .manager-bar-chart-scroll::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .manager-bar-chart-area{display:flex;flex-direction:column;min-width:-moz-max-content;min-width:max-content}.ihabdevteam-core-scope .manager-bar-chart-area svg{display:block}.ihabdevteam-core-scope .manager-bar-chart-x-axis{color:var(--color-deepGray);display:flex;font-size:11px;padding-top:6px}.ihabdevteam-core-scope .manager-bar-chart-x-axis__label{align-items:center;display:flex;flex:1;flex-direction:column;gap:1px;justify-content:flex-start;min-width:0;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .manager-bar-chart-x-axis__label--future .caption-1{color:var(--color-whiteLine)}.ihabdevteam-core-scope .manager-bar-chart-x-axis__main{position:relative}.ihabdevteam-core-scope .manager-bar-chart-x-axis__today-dot{border-radius:50%;height:8px;position:absolute;right:calc(100% + 3px);top:50%;transform:translateY(-50%);width:8px}.ihabdevteam-core-scope .manager-bar-chart-plot{align-items:flex-end;display:flex;gap:0;isolation:isolate;position:relative}.ihabdevteam-core-scope .manager-bar-chart-col{align-items:flex-end;display:flex;flex:1;gap:2px;height:100%;justify-content:center}.ihabdevteam-core-scope .manager-bar-chart-stack{display:flex;flex-direction:column-reverse;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-bar{border-radius:6px 6px 0 0;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-stack-segment{width:100%}.ihabdevteam-core-scope .manager-bar-chart-detail-btn{margin-left:auto}";Q(o8);var r8=".ihabdevteam-core-scope .manager-section{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-card);margin-bottom:14px;min-width:320px;padding:20px}.ihabdevteam-core-scope .manager-section__head{align-items:flex-start;display:flex;gap:var(--spacing-xs);justify-content:space-between;margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .chart-section-icon{display:inline-flex;opacity:.35}.ihabdevteam-core-scope .chart-section-icon-inner{color:var(--color-darkGray);height:22px;width:22px}@media (max-width:767px){.ihabdevteam-core-scope .manager-section__head{align-items:flex-start;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .manager-section-controls{flex-wrap:wrap}.ihabdevteam-core-scope .manager-section-controls .segmented-control{flex-wrap:nowrap}.ihabdevteam-core-scope .manager-section{min-width:0;padding:18px}}.ihabdevteam-core-scope .manager-section-controls{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-loading{align-items:center;display:flex;justify-content:center;min-height:186px}.ihabdevteam-core-scope .barchart-sub-row{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .barchart-total{align-items:baseline;display:flex;gap:4px}.ihabdevteam-core-scope .barchart-total--stacked{align-items:flex-start;flex-direction:column;gap:0}.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__label,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__num,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__unit,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__value{line-height:1.1;margin:0}.ihabdevteam-core-scope .barchart-total__label{color:var(--color-gray)}.ihabdevteam-core-scope .barchart-total__value{align-items:baseline;display:flex;gap:4px}.ihabdevteam-core-scope .barchart-total__num{color:var(--color-black)}.ihabdevteam-core-scope .barchart-total__unit{color:var(--color-gray)}.ihabdevteam-core-scope .manager-bar-chart-legend{align-items:flex-end;color:var(--color-gray);display:flex;flex-direction:column;font-size:12px;gap:6px;padding-right:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-legend-item{align-items:center;display:inline-flex}.ihabdevteam-core-scope .manager-bar-chart-legend-dot{border-radius:50%;display:inline-block;height:8px;margin-right:4px;width:8px}.ihabdevteam-core-scope .manager-section--compact{min-width:160px;padding:20px}.ihabdevteam-core-scope .manager-section--compact .manager-section__head{margin-bottom:4px;min-height:28px}.ihabdevteam-core-scope .chart-section-title--small{color:var(--color-deepGray)}.ihabdevteam-core-scope .manager-section--compact .barchart-total__num{font-size:32px;line-height:1}.ihabdevteam-core-scope .manager-section--compact .barchart-total{flex-shrink:0}.ihabdevteam-core-scope .manager-section--compact .barchart-sub-row{margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .manager-section--compact .manager-bar-chart-legend{align-items:stretch;flex:1 1 auto;min-width:0}.ihabdevteam-core-scope .manager-section--compact .manager-bar-chart-legend-item{display:flex;justify-content:flex-end;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.ihabdevteam-core-scope .manager-section--full{flex:1 1 100%;width:100%}@media (max-width:767px){.ihabdevteam-core-scope .manager-section--compact{min-width:0}}";Q(r8);function gn({items:e,className:t}){return o.jsx("div",{className:t?`manager-bar-chart-legend ${t}`:"manager-bar-chart-legend",children:e.map((a,r)=>o.jsxs("span",{className:"manager-bar-chart-legend-item",children:[o.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},r))})}function gr({label:e,children:t}){return e?o.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[o.jsx("span",{className:"barchart-total__label body-3",children:e}),o.jsx("span",{className:"barchart-total__value",children:t})]}):o.jsx("div",{className:"barchart-total",children:t})}function fn({title:e,titleClassName:t="h3",headRight:a,subRow:r,className:n,children:i}){return o.jsxs("section",{className:n?`manager-section ${n}`:"manager-section",children:[o.jsxs("div",{className:"manager-section__head",children:[o.jsx("div",{className:t,children:e}),a]}),r&&o.jsx("div",{className:"barchart-sub-row",children:r}),i]})}function ao(e,t){const a=new Date(e,t,1).getDay();return 1+(8-(a===0?7:a))%7}function n8(){const e=new Date;let t=e.getFullYear(),a=e.getMonth(),r=e.getDate();if(r<ao(t,a)){const s=new Date(t,a,0);t=s.getFullYear(),a=s.getMonth(),r=s.getDate()}const n=Math.floor((r-ao(t,a))/7),i=`${t}\uB144 ${a+1}\uC6D4`;return{monthKey:i,value:`${i}#${n}`}}function om(e){const t=new Date,a=`${t.getFullYear()}\uB144 ${t.getMonth()+1}\uC6D4`,r=new Map;r.set(a,[]);for(const i of e){if(isNaN(i.date.getTime()))continue;const s=`${i.date.getFullYear()}\uB144 ${i.date.getMonth()+1}\uC6D4`;r.has(s)||r.set(s,[]),r.get(s).push(i)}const n={};for(const[i,s]of r){const c=i.match(/^(\d+)년 (\d+)월$/);if(!c)continue;const u=Number(c[1]),d=Number(c[2])-1,m=new Date(u,d+1,0).getDate(),h=u===t.getFullYear()&&d===t.getMonth(),p=t.getDate(),g=s.reduce((_,C)=>Math.max(_,C.parts?.length??0),0),v=new Array(m+1).fill(0),b=new Array(m+1).fill(0),y=Array.from({length:m+1},()=>new Array(g).fill(0));for(const _ of s){const C=_.date.getDate();if(v[C]+=_.a,b[C]+=_.b,_.parts)for(let A=0;A<g;A++)y[C][A]+=_.parts[A]??0}const f=[];for(let _=1;_<=m;_++){const C=h&&_>p;f.push({label:String(_),a:C&&v[_]===0&&b[_]===0?-1:v[_],b:b[_],...g?{parts:y[_]}:{}})}const x=[];for(let _=ao(u,d);_<=m;_+=7){const C=Math.min(_+6,m);let A=0,w=0;const S=new Array(g).fill(0);for(let D=_;D<=C;D++){A+=v[D],w+=b[D];for(let T=0;T<g;T++)S[T]+=y[D][T]}x.push({label:`${x.length+1}\uC8FC`,sublabel:`[${_}\uC77C~${C}\uC77C]`,a:A,b:w,...g?{parts:S}:{}})}n[i]={weekly:x,daily:f}}return n}function i8(){const e=new Date,t=e.getFullYear(),a=e.getMonth()+1,r=[];for(let n=2024;n<=t;n++){const i=n===t?a:12;for(let s=1;s<=i;s++){const c=`${n}\uB144 ${s}\uC6D4`;r.push({value:c,label:c,year:n,month:s})}}return r.reverse()}const s8=i8(),rm=["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"];function zl(e){const{t,i18n:a}=me.useTranslation(),[r,n]=l.useState("week"),i=l.useMemo(()=>s8.filter(T=>T.value in e),[e]),s=l.useMemo(()=>{const T=[];for(const E of i){const W=new Date(E.year,E.month,0).getDate(),M=ao(E.year,E.month-1),k=Math.ceil((W-M+1)/7);for(let N=k-1;N>=0;N--)T.push({value:`${E.value}#${N}`,monthKey:E.value,year:E.year,month:E.month,week:N})}return T},[i]),c=l.useCallback(T=>{const E=t("calendar.yearMonth",{year:T.year,month:T.month});return a.language?.startsWith("ko")?`${E} ${rm[T.week]??`${T.week+1}`}\uC8FC`:`${E} Week ${T.week+1}`},[t,a.language]),u=l.useMemo(()=>i.map(T=>({value:T.value,label:t("calendar.yearMonth",{year:T.year,month:T.month})})),[t,i]),d=l.useMemo(()=>s.map(T=>({value:T.value,label:c(T)})),[s,c]),m=l.useMemo(()=>n8(),[]),h=l.useMemo(()=>i.find(T=>T.value===m.monthKey)?.value??i[0]?.value??"",[i,m]),p=l.useMemo(()=>s.find(T=>T.value===m.value)?.value??s[0]?.value??"",[s,m]),[g,v]=l.useState(""),[b,y]=l.useState("");l.useEffect(()=>{i.find(T=>T.value===g)||v(h)},[i,g,h]),l.useEffect(()=>{s.find(T=>T.value===b)||y(p)},[s,b,p]);const f=r==="month"?u:d,x=r==="month"?g:b,_=r==="month"?v:y,C=l.useMemo(()=>{const T=t("calendar.dow",{returnObjects:!0});return Array.isArray(T)?T:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[t]),A=f.findIndex(T=>T.value===x),w=l.useCallback(()=>{const T=f.findIndex(E=>E.value===x);T<f.length-1&&_(f[T+1].value)},[f,x,_]),S=l.useCallback(()=>{const T=f.findIndex(E=>E.value===x);T>0&&_(f[T-1].value)},[f,x,_]),D=l.useMemo(()=>[{key:"week",label:t("manager.chart.periodWeek","\uC8FC")},{key:"month",label:t("manager.chart.periodMonth","\uC6D4")}],[t]);return{period:r,setPeriod:n,range:x,setRange:_,activeOptions:f,activeIdx:A,handlePrev:w,handleNext:S,periodOptions:D,monthRange:g,weekRange:b,weekRanges:s,DOW:C}}function l8({data:e,colorA:t,colorB:a,labelA:r,labelB:n,barWidth:i=10,height:s=140,maxOverride:c,tightMax:u,seriesColors:d,seriesLabels:m,rateLabels:h}){const p=!a,g=!!(d&&d.length>0),v=l.useMemo(()=>g?Math.max(0,...e.filter(S=>S.a!==-1).map(S=>(S.parts??[]).reduce((D,T)=>D+Math.max(0,T),0))):Math.max(0,...e.filter(S=>S.a!==-1).flatMap(S=>p?[S.a]:[S.a,S.b])),[e,p,g]),b=l.useMemo(()=>c??(u?v>0?v:10:Math.ceil(v/10)*10||10),[v,c,u]),y=s,f=g||p?1:2,x=l.useMemo(()=>{const S=Math.max(1,e.length);return Math.max(8,Math.min(i,Math.round(120/(S*f)+6)))},[e.length,f,i]),_=l.useMemo(()=>{const S=Math.round(b/2);return S!==b?[b,S,0]:[b,0]},[b]),[C,A]=l.useState(null),w=l.useCallback(()=>A(null),[]);return o.jsxs("div",{className:"manager-bar-chart-wrap",children:[o.jsx("div",{className:"manager-bar-chart-inner",children:o.jsx("div",{className:"manager-bar-chart-scroll",children:o.jsxs("div",{className:"manager-bar-chart-area",children:[o.jsxs("div",{className:"manager-bar-chart-plot",style:{height:y},children:[_.slice(0,-1).map((S,D)=>o.jsx("div",{className:"manager-bar-chart-gridline",style:{top:D*(y/(_.length-1))},children:o.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:S})},D)),e.map((S,D)=>{const T=S.a===-1,E=T?0:S.a/b*y,W=T?0:S.b/b*y,M=S.parts??[];return o.jsx("div",{className:"manager-bar-chart-col",style:{cursor:T?"default":"pointer"},onMouseEnter:T?void 0:k=>{const N=k.currentTarget.getBoundingClientRect(),j=g?(m??[]).map((F,te)=>`${F}: ${M[te]??0}`).filter((F,te)=>(M[te]??0)>0).join(" / ")||`${(m??[]).join(" / ")}: 0`:h&&!p?`${r} ${S.a}% / ${n} ${S.b}%`:h&&S.rawB!==void 0?`${h.total} ${S.rawB} / ${h.done} ${S.rawA??0}`:p?`${r}: ${S.a}`:`${r}: ${S.a} / ${n}: ${S.b}`;A({rect:{left:N.left,top:N.top,right:N.right,bottom:N.bottom,width:N.width,height:N.height},text:j})},onMouseLeave:w,children:!T&&(g?o.jsx("div",{className:"manager-bar-chart-stack",style:{flex:`0 1 ${x}px`,maxWidth:x},children:(()=>{const k=M.reduce((N,j,F)=>j>0?F:N,-1);return M.map((N,j)=>N>0?o.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:N/b*y,background:(d??[])[j],borderRadius:j===k?"6px 6px 0 0":void 0}},j):null)})()}):o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"manager-bar-chart-bar",style:{flex:`0 1 ${x}px`,maxWidth:x,height:E,background:t}}),!p&&o.jsx("div",{className:"manager-bar-chart-bar",style:{flex:`0 1 ${x}px`,maxWidth:x,height:W,background:a}})]}))},D)})]}),o.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((S,D)=>{const T=S.a===-1;return o.jsxs("span",{className:`manager-bar-chart-x-axis__label${T?" manager-bar-chart-x-axis__label--future":""}`,children:[o.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[S.isToday&&o.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:t}}),S.label]}),S.sublabel&&o.jsx("span",{className:"caption-1",children:S.sublabel})]},D)})})]})})}),C&&o.jsx(aa,{anchorRect:C.rect,text:C.text})]})}function Il({control:e}){const{t}=me.useTranslation(),a=t("calendar.prevMonth","\uC774\uC804 \uB2EC"),r=t("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),{activeOptions:n,activeIdx:i,range:s,setRange:c,handlePrev:u,handleNext:d,periodOptions:m,period:h,setPeriod:p}=e;return o.jsxs("div",{className:"manager-section-controls",children:[o.jsx(le,{size:32,type:"dot",icon:"chevron-left",ariaLabel:a,showTooltipInfo:a,disabled:i===n.length-1,onClick:u}),o.jsx(Ut,{value:s,onChange:c,options:n,size:40,className:"month-dropdown",ariaLabel:t("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),o.jsx(le,{size:32,type:"dot",icon:"chevron-right",ariaLabel:r,showTooltipInfo:r,disabled:i<=0,onClick:d}),o.jsx(Ha,{ariaLabel:t("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:m,value:h,onChange:g=>p(g),size:32})]})}function c8(e,t,a,r){const{period:n,monthRange:i,weekRange:s,weekRanges:c,DOW:u}=t,d=r?.startsWith("ko"),m=new Date,h=m.getFullYear(),p=m.getMonth()+1,g=m.getDate();if(n==="month"){const y=e[i]??{weekly:[],daily:[]},f=i.match(/^(\d+)년 (\d+)월$/),x=f?Number(f[1]):null,_=f?Number(f[2]):null,C=x&&_?ao(x,_-1):1;return y.weekly.map((A,w)=>{const S=w+1;let D=A.label,T=!1,E=!1;if(x&&_){const W=C+w*7,M=new Date(x,_-1,W+6),k=M.getMonth()+1,N=M.getDate(),j=k===_?`${N}`:`${k}/${N}`;D=a("manager.chart.weekRange",{start:W,end:j}),T=h===x&&p===_&&g>=W&&g<=W+6,E=x>h||x===h&&(_>p||_===p&&W>g)}return{...A,label:D,sublabel:d?`${rm[S-1]??S}\uC8FC`:`Week ${S}`,isToday:T,a:E?-1:A.a,b:E?0:A.b}})}const v=c.find(y=>y.value===s);if(!v)return[];const b=new Date(v.year,v.month-1,ao(v.year,v.month-1)+v.week*7);return Array.from({length:7},(y,f)=>{const x=new Date(b);x.setDate(b.getDate()+f);const _=x.getMonth()+1,C=x.getDate(),A=x.getFullYear(),w=(e[`${A}\uB144 ${_}\uC6D4`]?.daily??[])[C-1],S=_===v.month&&A===v.year,D=w?.a===-1||x>new Date(h,m.getMonth(),g);return{label:S?`${C}`:`${_}/${C}`,sublabel:u[x.getDay()]??"",a:D?-1:w&&w.a>0?w.a:0,b:D?0:w&&w.b>0?w.b:0,isToday:A===h&&_===p&&C===g,...w?.parts?{parts:D?w.parts.map(()=>0):w.parts}:{}}})}const d8={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function nm({size:e="medium",titleKey:t,data:a,colorA:r,colorB:n,labelAKey:i,labelBKey:s,showTotal:c=!1,totalUnitKey:u,totalLabelKey:d,control:m,hideControls:h=!1,rate:p=!1,tightMax:g=!1,avgMode:v=!1,totalFormat:b,series:y,loading:f=!1,onDetail:x}){const{t:_,i18n:C}=me.useTranslation(),A=d8[e],w=zl(a),S=m??w,D=l.useMemo(()=>c8(a,S,_,C.language),[a,S,_,C.language]),T=l.useMemo(()=>p?D.map(k=>({...k,a:k.a===-1?-1:k.b>0?Math.round(k.a/k.b*100):0,b:k.a===-1?0:s&&k.parts&&k.parts[1]>0?Math.round(k.parts[0]/k.parts[1]*100):0,rawA:k.a===-1?-1:k.a,rawB:k.b})):D,[D,p,s]),E=l.useMemo(()=>{if(p||v){const k=(S.period==="week"?D:a[S.monthRange]?.daily??[]).filter(j=>j.a!==-1);if(k.length===0)return 0;const N=p?k.reduce((j,F)=>j+(F.b>0?F.a/F.b*100:0),0):k.reduce((j,F)=>j+(F.a>0?F.a:0),0);return Math.round(N/k.length)}return T.reduce((k,N)=>k+(N.a>0?N.a:0)+(s&&N.b>0?N.b:0),0)},[T,D,p,v,s,S.period,S.monthRange,a]),W=y&&y.length>0?y.map(k=>({color:k.color,label:k.label})):[{color:r,label:_(i)},...s?[{color:n,label:_(s)}]:[]],M=e==="small";return o.jsx(fn,{className:M?"manager-section--compact":e==="large"?"manager-section--full":void 0,title:_(t),titleClassName:M?"h5 chart-section-title--small":void 0,headRight:M?void 0:o.jsxs(o.Fragment,{children:[!h&&o.jsx(Il,{control:S}),x&&o.jsx("span",{className:"manager-bar-chart-detail-btn",children:o.jsx(le,{size:32,type:"dot",icon:"list",ariaLabel:_("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),onClick:x})})]}),subRow:o.jsxs(o.Fragment,{children:[c?p||v||d&&b?o.jsx(gr,{label:M?void 0:`${_(S.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${_(d??i)}`,children:b?(b(E).match(/(\d+|[^\d]+)/g)??[]).map((k,N)=>/\d/.test(k)?o.jsx("span",{className:"barchart-total__num h0",children:k},N):o.jsx("span",{className:"barchart-total__unit h5",children:k},N)):o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"barchart-total__num h0",children:E}),u&&o.jsx("span",{className:"barchart-total__unit h5",children:_(u)})]})}):o.jsxs(gr,{children:[o.jsx("span",{className:"barchart-total__num h0",children:E}),o.jsx("span",{className:"barchart-total__unit h5",children:_(i)}),u&&o.jsx("span",{className:"barchart-total__unit h5",children:_(u)})]}):o.jsx("span",{}),o.jsx(gn,{items:W,className:"caption-1"})]}),children:f?o.jsx("div",{className:"manager-bar-chart-loading",children:o.jsx(Ao,{size:32})}):o.jsx(l8,{data:T,colorA:r,colorB:s?n:void 0,labelA:_(i),labelB:s?_(s):void 0,barWidth:A.barWidth,height:A.height,maxOverride:p?100:void 0,tightMax:g,seriesColors:y?.map(k=>k.color),seriesLabels:y?.map(k=>k.label),rateLabels:p?{total:_("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:_("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0})})}function im(e){if(e.period==="month"){const i=e.monthRange.match(/^(\d+)년 (\d+)월$/),s=new Date,c=i?Number(i[1]):s.getFullYear(),u=i?Number(i[2]):s.getMonth()+1;return{from:new Date(c,u-1,1,0,0,0),to:new Date(c,u,0,23,59,59)}}const t=e.weekRanges.find(i=>i.value===e.weekRange);if(!t){const i=new Date;return{from:i,to:i}}const a=ao(t.year,t.month-1),r=new Date(t.year,t.month-1,a+t.week*7,0,0,0),n=new Date(r);return n.setDate(r.getDate()+6),n.setHours(23,59,59),{from:r,to:n}}var u8=".ihabdevteam-core-scope .ring-chart{flex-shrink:0;position:relative}.ihabdevteam-core-scope .ring-chart svg{display:block}.ihabdevteam-core-scope .ring-chart__center{align-items:center;display:flex;flex-direction:column;inset:0;justify-content:center;pointer-events:none;position:absolute}.ihabdevteam-core-scope .ring-chart__center--small{transform:translateY(6.5px)}.ihabdevteam-core-scope .ring-chart__center--medium{transform:translateY(7.5px)}.ihabdevteam-core-scope .ring-chart__center--large{transform:translateY(8.5px)}.ihabdevteam-core-scope .ring-chart__pct{color:var(--color-darkGray);line-height:1}.ihabdevteam-core-scope .ring-chart__label{color:var(--color-lightGray)}.ihabdevteam-core-scope .ring-chart__label--tight{margin-top:-2px}.ihabdevteam-core-scope .ring-chart-section-body{display:flex;justify-content:center}.ihabdevteam-core-scope .ring-chart-section-body--offset{justify-content:flex-end}";Q(u8);const sm={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function lm({done:e,total:t,segments:a,color:r="var(--color-main)",size:n="medium",strokeWidth:i,label:s="%",hideCenter:c=!1,hideLabel:u=!1}){const d=typeof n=="number"?n:sm[n].diameter,m=i??(typeof n=="number"?12:sm[n].strokeWidth),h=d/2,p=(d-m)/2,g=2*Math.PI*p;if(a&&a.length>0){const f=a.reduce((x,_)=>{const C=x.length>0?x[x.length-1].acc:0,A=Math.max(0,Math.min(_.ratio,1-C));return x.push({color:_.color,rotate:-90+C*360,dash:g*A,acc:C+A}),x},[]);return o.jsx("div",{className:"ring-chart",style:{width:d,height:d},children:o.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[o.jsx("circle",{cx:h,cy:h,r:p,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:m}),f.map((x,_)=>x.dash>0&&o.jsx("circle",{cx:h,cy:h,r:p,fill:"none",stroke:x.color,strokeWidth:m,strokeDasharray:`${x.dash} ${g}`,strokeLinecap:"round",transform:`rotate(${x.rotate} ${h} ${h})`},_))]})})}const v=(t??0)>0?Math.min((e??0)/t,1):0,b=g*v,y=g-b;return o.jsxs("div",{className:"ring-chart",style:{width:d,height:d},children:[o.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[o.jsx("circle",{cx:h,cy:h,r:p,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:m}),v>0&&o.jsx("circle",{cx:h,cy:h,r:p,fill:"none",stroke:r,strokeWidth:m,strokeDasharray:`${b} ${y}`,strokeLinecap:v<.02||v>.98?"butt":"round",transform:`rotate(-90 ${h} ${h})`})]}),!c&&o.jsxs("div",{className:`ring-chart__center${u?"":` ${d<=96?"ring-chart__center--small":n==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[o.jsx("span",{className:`ring-chart__pct ${d<=96?"h2":"h1"}`,children:Math.round(v*100)}),!u&&o.jsx("span",{className:`ring-chart__label ${d<=96?"caption-2":"caption-1"}${d<=96||n==="medium"?" ring-chart__label--tight":""}`,children:s})]})]})}function cm({titleKey:e,headRight:t,icon:a,showTotal:r,totalLabelKey:n,legend:i,loading:s,className:c,...u}){const{t:d}=me.useTranslation();if(!e)return o.jsx(lm,{...u});const m=(u.total??0)>0?Math.round(Math.min((u.done??0)/u.total,1)*100):0,h=u.size==="small",p=u.size==="large",g=[c,h?"manager-section--compact":p?"manager-section--full":""].filter(Boolean).join(" ")||void 0,v=a&&o.jsx("span",{className:"chart-section-icon",children:o.jsx(Pe,{icon:a,className:"chart-section-icon-inner"})});return o.jsx(fn,{className:g,title:d(e),titleClassName:h?"h5 chart-section-title--small":void 0,headRight:v||(h?void 0:t),subRow:(r||i)&&o.jsxs(o.Fragment,{children:[r?o.jsxs(gr,{label:!h&&n?d(n):void 0,children:[o.jsx("span",{className:"barchart-total__num h0",children:m}),o.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):o.jsx("span",{}),i&&o.jsx(gn,{items:i})]}),children:s?o.jsx("div",{className:"manager-bar-chart-loading",children:o.jsx(Ao,{size:32})}):o.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:o.jsx(lm,{...u,hideCenter:h||u.hideCenter})})})}var p8=".ihabdevteam-core-scope .manager-stat-card{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-card);container-type:inline-size;display:flex;flex-direction:column;gap:4px;justify-content:flex-start;min-width:160px;padding:20px}.ihabdevteam-core-scope .manager-stat-card--clickable{border:1px solid transparent;cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease}.ihabdevteam-core-scope .manager-stat-card--clickable:hover{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .manager-stat-card__label-row{align-items:center;display:flex;justify-content:space-between;min-height:28px}.ihabdevteam-core-scope .manager-stat-card__label{color:var(--color-deepGray)}.ihabdevteam-core-scope .manager-stat-card__icon{display:inline-flex;opacity:.35}.ihabdevteam-core-scope .manager-stat-card__icon-inner{color:var(--color-darkGray);height:22px;width:22px}.ihabdevteam-core-scope .manager-stat-card__content{align-items:flex-start;display:flex;flex:1;flex-direction:column;gap:var(--spacing-xs);justify-content:space-between}.ihabdevteam-core-scope .manager-stat-card__left{align-items:flex-start;display:flex;flex:1;flex-direction:row;gap:8px;text-align:left}.ihabdevteam-core-scope .manager-stat-card__value{color:var(--color-black);flex-shrink:0;font-size:32px;font-weight:700;letter-spacing:-.5px;line-height:1;white-space:nowrap}.ihabdevteam-core-scope .manager-stat-card__change{font-size:12px;font-weight:500;line-height:1.2;margin-top:1px;min-width:0}.ihabdevteam-core-scope .manager-stat-card__change--up{color:var(--color-sub)}.ihabdevteam-core-scope .manager-stat-card__change--down{color:var(--color-error)}.ihabdevteam-core-scope .manager-stat-card__change--neutral{color:var(--color-gray)}@media (max-width:767px){.ihabdevteam-core-scope .manager-stat-card{padding:12px 14px 16px}.ihabdevteam-core-scope .manager-stat-card__value{font-size:24px}}";Q(p8);function dm({label:e,value:t,change:a,changeType:r,icon:n,tooltip:i,onClick:s}){const c=l.useRef(null),{anchorRect:u,openAt:d,close:m}=_o(),h=l.useCallback(()=>{i&&c.current&&d(c.current)},[i,d]),p=r??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),g=a===void 0?void 0:a>0?`+${a}`:`${a}`,v=l.useCallback(b=>{s&&(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),s())},[s]);return o.jsxs("div",{ref:c,className:`manager-stat-card${s?" manager-stat-card--clickable":""}`,onClick:s,onKeyDown:s?v:void 0,onPointerEnter:h,onPointerLeave:m,onFocus:h,onBlur:m,role:s?"button":void 0,tabIndex:s?0:void 0,"aria-label":s?`${e} ${t}`:void 0,children:[i&&u&&o.jsx(aa,{anchorRect:{left:u.left,top:u.top+21,right:u.right,bottom:u.bottom,width:u.width,height:u.height},text:i}),o.jsxs("div",{className:"manager-stat-card__label-row",children:[o.jsx("span",{className:"manager-stat-card__label h5",children:e}),n&&o.jsx("span",{className:"manager-stat-card__icon",children:o.jsx(Pe,{icon:n,className:"manager-stat-card__icon-inner"})})]}),o.jsx("div",{className:"manager-stat-card__content",children:o.jsxs("div",{className:"manager-stat-card__left",children:[o.jsx("div",{className:"manager-stat-card__value h2",children:t}),g&&o.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${p??"neutral"} caption-1`,children:g})]})})]})}var h8='.ihabdevteam-core-scope .slider{--slider-thumb:40px;--slider-fill:calc(var(--slider-thumb)/2 + var(--slider-ratio, 0)*(100% - var(--slider-thumb)));--slider-fill-color:var(--color-main);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border-radius:999px;cursor:pointer;margin:0;outline:none}.ihabdevteam-core-scope .slider:disabled{--slider-fill-color:var(--color-gray);cursor:not-allowed}.ihabdevteam-core-scope .slider:focus-visible{outline:2px solid var(--color-main);outline-offset:4px}.ihabdevteam-core-scope .slider--horizontal{background:linear-gradient(to right,var(--slider-fill-color) var(--slider-fill),var(--color-darkWhite) var(--slider-fill));height:var(--slider-thumb);width:100%}.ihabdevteam-core-scope .slider--vertical{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to top,var(--slider-fill-color) var(--slider-fill),var(--color-darkWhite) var(--slider-fill));direction:rtl;height:160px;width:var(--slider-thumb);writing-mode:vertical-lr}.ihabdevteam-core-scope .slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-white);border:2px solid var(--slider-fill-color);border-radius:50%;box-shadow:var(--shadow-dropdown);cursor:pointer;height:var(--slider-thumb);width:var(--slider-thumb)}.ihabdevteam-core-scope .slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.ihabdevteam-core-scope .slider::-moz-range-thumb{background:var(--color-white);border:2px solid var(--slider-fill-color);border-radius:50%;box-shadow:var(--shadow-dropdown);cursor:pointer;height:var(--slider-thumb);width:var(--slider-thumb)}.ihabdevteam-core-scope .slider::-moz-range-track{background:transparent}.ihabdevteam-core-scope .slider--static{pointer-events:none}.ihabdevteam-core-scope .slider--static::-webkit-slider-thumb{visibility:hidden}.ihabdevteam-core-scope .slider--static::-moz-range-thumb{visibility:hidden}.ihabdevteam-core-scope .slider-wrap{align-items:center;display:flex;gap:10px}.ihabdevteam-core-scope .slider-wrap--label-left,.ihabdevteam-core-scope .slider-wrap--label-right{flex-direction:row}.ihabdevteam-core-scope .slider-wrap--label-left>.slider,.ihabdevteam-core-scope .slider-wrap--label-left>.slider-track-group,.ihabdevteam-core-scope .slider-wrap--label-right>.slider,.ihabdevteam-core-scope .slider-wrap--label-right>.slider-track-group{flex:1;min-width:0}.ihabdevteam-core-scope .slider-wrap--label-bottom,.ihabdevteam-core-scope .slider-wrap--label-top{flex-direction:column;gap:6px}.ihabdevteam-core-scope .slider-wrap--label-left .slider-wrap__value,.ihabdevteam-core-scope .slider-wrap--label-top .slider-wrap__value{order:-1}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-left,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-left{align-items:flex-start}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-center,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-center{align-items:center}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-right,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-right{align-items:flex-end}.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-bottom>.slider,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-bottom>.slider-track-group,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-top>.slider,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-top>.slider-track-group{align-self:stretch}.ihabdevteam-core-scope .slider-wrap__value{font-feature-settings:"tnum";color:var(--color-main);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}.ihabdevteam-core-scope .slider-wrap--label-left .slider-wrap__value,.ihabdevteam-core-scope .slider-wrap--label-right .slider-wrap__value{min-width:2.5em;text-align:right}.ihabdevteam-core-scope .slider-track-group{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .slider-track-group--horizontal{flex-direction:row}.ihabdevteam-core-scope .slider-track-group--horizontal .slider{flex:1;min-width:0}.ihabdevteam-core-scope .slider-track-group--vertical{flex-direction:column}.ihabdevteam-core-scope .slider-wrap__minmax{font-feature-settings:"tnum";color:var(--color-lightGray);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}';Q(h8);function Ol({value:e,onChange:t,min:a=0,max:r=100,step:n=1,orientation:i="horizontal",size:s=24,disabled:c=!1,ariaLabel:u,length:d,className:m,label:h,formatValue:p,labelPos:g,labelAlign:v="right",showMinMax:b=!1,minLabel:y,maxLabel:f,showBgTick:x=!1,showFillTick:_=!1,tickStep:C,tickShape:A="dot"}){const w=Math.min(r,Math.max(a,e)),S=r>a?(w-a)/(r-a):0,D=i==="vertical",T=!t,E=H=>t?.(Number(H.target.value)),W=typeof d=="number"?`${d}px`:d,M={"--slider-ratio":String(S),"--slider-thumb":`${s}px`,...W?D?{height:W}:{width:W}:{}},k=C??n,N=(x||_)&&k>0&&r>a?Math.floor((r-a)/k+1e-6):0;if(N>0&&N<=100){const H=A!=="dash",$=Y=>H?`radial-gradient(circle, ${Y} 0.5px, transparent 1px)`:D?`linear-gradient(to bottom, transparent calc(50% - 2px), ${Y} calc(50% - 2px), ${Y} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${Y} calc(50% - 2px), ${Y} calc(50% + 2px), transparent calc(50% + 2px))`,q=H?"2px":"4px",I=[],G=[],z=[];for(let Y=0;Y<=N;Y++){const J=Y*k/(r-a);if(J>1+1e-6)break;const ue=`${((D?1-J:J)*100).toFixed(4)}%`,pe=J<=S+1e-6;if(pe?!_:!x)continue;const ae=pe?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";I.push($(ae)),G.push(D?`${q} var(--slider-thumb)`:`var(--slider-thumb) ${q}`),z.push(D?`center ${ue}`:`${ue} center`)}I.push(D?"linear-gradient(to top, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))":"linear-gradient(to right, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))"),G.push("100% 100%"),z.push("0 0"),M.backgroundImage=I.join(", "),M.backgroundSize=G.join(", "),M.backgroundPosition=z.join(", "),M.backgroundRepeat="no-repeat"}const j=o.jsx("input",{type:"range",className:ye("slider",`slider--${i}`,T&&"slider--static",!h&&!b&&m),min:a,max:r,step:n,value:w,disabled:c,readOnly:T,tabIndex:T?-1:void 0,"aria-label":u,"aria-orientation":i,onChange:E,style:M});if(!h&&!b)return j;const F=o.jsx("span",{className:"slider-wrap__minmax caption-1",children:y??a}),te=o.jsx("span",{className:"slider-wrap__minmax caption-1",children:f??r}),Z=b?o.jsxs("div",{className:ye("slider-track-group",`slider-track-group--${i}`,!h&&m),children:[D?te:F,j,D?F:te]}):j;if(!h)return Z;const ee=g??(D?"bottom":"right"),L=`${Math.round(r>a?(w-a)/(r-a)*100:0)}%`,R=p?p(w):h==="percent"?L:h==="count"?`${w} / ${r}`:String(w),O=o.jsx("span",{className:"slider-wrap__value body-3b",children:R});return o.jsxs("div",{className:ye("slider-wrap",`slider-wrap--${i}`,`slider-wrap--label-${ee}`,`slider-wrap--align-${v}`,m),children:[Z,O]})}var m8='.ihabdevteam-core-scope .audio-meter{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .audio-meter__track{--meter-level:0;background:var(--color-darkWhite);border-radius:999px;flex-shrink:0;overflow:hidden;position:relative}.ihabdevteam-core-scope .audio-meter__fill{inset:0;position:absolute}.ihabdevteam-core-scope .audio-meter__value{font-feature-settings:"tnum";color:var(--color-gray);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;width:40px}.ihabdevteam-core-scope .audio-meter--horizontal .audio-meter__track{height:8px;width:120px}.ihabdevteam-core-scope .audio-meter--horizontal .audio-meter__fill{background:linear-gradient(to right,var(--color-success) 0,var(--color-success) 55%,var(--color-warn) 80%,var(--color-error) 100%);transform:scaleX(var(--meter-level));transform-origin:left}.ihabdevteam-core-scope .audio-meter--vertical{flex-direction:column}.ihabdevteam-core-scope .audio-meter--vertical .audio-meter__track{height:120px;width:8px}.ihabdevteam-core-scope .audio-meter--vertical .audio-meter__fill{background:linear-gradient(to top,var(--color-success) 0,var(--color-success) 55%,var(--color-warn) 80%,var(--color-error) 100%);transform:scaleY(var(--meter-level));transform-origin:bottom}.ihabdevteam-core-scope .audio-meter.audio-meter--label-left,.ihabdevteam-core-scope .audio-meter.audio-meter--label-right{flex-direction:row}.ihabdevteam-core-scope .audio-meter.audio-meter--label-bottom,.ihabdevteam-core-scope .audio-meter.audio-meter--label-top{flex-direction:column}.ihabdevteam-core-scope .audio-meter--label-left .audio-meter__value,.ihabdevteam-core-scope .audio-meter--label-top .audio-meter__value{order:-1}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-left,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-left{align-items:flex-start}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-center,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-center{align-items:center}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-right,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-right{align-items:flex-end}';Q(m8);const b8=.86,g8=250,Fl=(e,t,a,r)=>{const n=Math.round(Math.min(r,Math.max(a,e-t)));return`${n<0?"-":"+"}${Math.abs(n)} dB`};function vn({analyser:e,audioElement:t,orientation:a="horizontal",length:r,label:n,labelPos:i,labelAlign:s="right",floorDb:c=-60,refDb:u=-35,displayMin:d=-5,displayMax:m=25,className:h,ariaLabel:p}){const g=l.useRef(null),v=l.useRef(null),b=l.useRef(null);l.useEffect(()=>{const _=e??Ho(t),C=g.current;if(!_||!C){C?.style.setProperty("--meter-level","0"),v.current&&(v.current.textContent=Fl(c,u,d,m));return}Wo();const A=new Float32Array(_.fftSize);let w=0,S=0,D=0,T=0,E=null;const W=M=>{const k=ti(_,A);w=k>w?k:w*b8;const N=w>1e-5?20*Math.log10(w):-1/0,j=Math.max(c,N),F=j-u,te=Math.min(1,Math.max(0,(F-d)/(m-d)));if(C.style.setProperty("--meter-level",te.toFixed(3)),v.current&&(S+=j,D+=1,M-T>=g8)){const Z=S/D;E=E==null?Z:E*.6+Z*.4,v.current.textContent=Fl(E,u,d,m),S=0,D=0,T=M}b.current=requestAnimationFrame(W)};return b.current=requestAnimationFrame(W),()=>{b.current!=null&&cancelAnimationFrame(b.current),b.current=null}},[e,t,c,u,d,m]);const y=typeof r=="number"?`${r}px`:r,f=o.jsx("div",{className:"audio-meter__track",style:y?a==="vertical"?{height:y}:{width:y}:{},children:o.jsx("div",{ref:g,className:"audio-meter__fill"})}),x=i??(a==="vertical"?"bottom":"right");return o.jsxs("div",{className:ye("audio-meter",`audio-meter--${a}`,n&&`audio-meter--label-${x}`,n&&`audio-meter--align-${s}`,h),role:"meter","aria-label":p,children:[f,n&&o.jsx("span",{ref:v,className:"audio-meter__value caption-2",children:Fl(c,u,d,m)})]})}const Wl=500;function Hl({message:e,position:t,duration:a,onClose:r}){const[n,i]=l.useState(!1),[s,c]=l.useState(!1),u=l.useRef(s),d=l.useRef(n);l.useEffect(()=>{u.current=s},[s]),l.useEffect(()=>{d.current=n},[n]);const m=l.useRef(null),h=l.useRef(""),p=l.useRef(r);l.useEffect(()=>{p.current=r});const g=a,v=l.useRef(null),b=l.useRef(null),y=l.useRef(null),f=l.useRef(null),x=l.useRef(null);return l.useEffect(()=>{if(e!==h.current&&(v.current&&(clearTimeout(v.current),v.current=null),b.current&&(clearTimeout(b.current),b.current=null)),e){if(d.current)return g>0&&!v.current&&(v.current=setTimeout(()=>{i(!1),b.current=setTimeout(()=>{c(!1);try{p.current()}catch{}},Wl)},g)),h.current=e,()=>{};const _=()=>{const C=m.current;if(C)try{C.classList.remove("is-visible"),C.style.transition="none",t==="top"?C.style.transform="translateX(-50%) translateY(-16px)":C.style.transform="translateX(-50%) translateY(16px)",C.style.opacity="0",C.offsetWidth,C.style.transition="",C.classList.add("is-visible"),x.current&&clearTimeout(x.current),x.current=setTimeout(()=>{x.current=null;try{C.style.opacity="",C.style.transform="",C.style.transition=""}catch{}},60)}catch{}};u.current?(_(),i(!0)):(c(!0),y.current=requestAnimationFrame(()=>{f.current=requestAnimationFrame(()=>{_(),i(!0)})})),g>0&&(v.current=setTimeout(()=>{i(!1),b.current=setTimeout(()=>{c(!1);try{p.current()}catch{}},Wl)},g))}else i(!1),b.current=setTimeout(()=>c(!1),Wl);return h.current=e,()=>{v.current&&clearTimeout(v.current),b.current&&clearTimeout(b.current),y.current&&cancelAnimationFrame(y.current),f.current&&cancelAnimationFrame(f.current),x.current&&clearTimeout(x.current),v.current=null,b.current=null,y.current=null,f.current=null,x.current=null}},[e,g,t]),{mounted:s,showing:n,popupRef:m}}var f8=".ihabdevteam-core-scope .toast{left:50%;pointer-events:none;position:fixed;transform:translateX(-50%);will-change:transform,opacity;z-index:var(--z-toast)}.ihabdevteam-core-scope .toast__inner{align-items:center;background:var(--color-main);border-radius:var(--radius-m);box-shadow:var(--shadow-popup);box-sizing:border-box;color:#fff;display:flex;justify-content:center;margin:0;max-width:min(520px,calc(100vw - 32px));min-height:60px;min-width:min(360px,calc(100vw - 32px));overflow:hidden;padding:var(--spacing-content);pointer-events:auto;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .toast__inner--normal{background:linear-gradient(var(--color-white),var(--color-white)) padding-box,linear-gradient(135deg,var(--color-main),var(--color-sub)) border-box;border:2px solid transparent;color:var(--color-black)}.ihabdevteam-core-scope .toast__inner--notice{background:linear-gradient(135deg,var(--color-main),var(--color-sub));color:#fff}.ihabdevteam-core-scope .toast__inner--warning{background:var(--color-error);color:#fff}.ihabdevteam-core-scope .toast--top{opacity:0;top:18px;transform:translateX(-50%) translateY(-100%);transition:transform .26s cubic-bezier(.22,.9,.3,1),opacity .18s ease-out}.ihabdevteam-core-scope .toast--top.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}.ihabdevteam-core-scope .toast--bottom{bottom:18px;opacity:0;transform:translateX(-50%) translateY(100%);transition:transform .26s cubic-bezier(.22,.9,.3,1),opacity .18s ease-out}.ihabdevteam-core-scope .toast--bottom.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}";Q(f8);function oo({message:e="",position:t="top",type:a="normal",onClose:r=()=>{},duration:n=2e3}){const{mounted:i,showing:s,popupRef:c}=Hl({message:e,position:t,duration:n,onClose:r});if(!i)return null;const u=a==="notice"||a==="warning"?a:"normal",d=o.jsx("div",{ref:c,className:`toast toast--${t} ${s?"is-visible":""}`,role:"status","aria-live":"polite",children:o.jsx("div",{className:`toast__inner toast__inner--${u} body-2`,children:e})});return typeof document<"u"?qt.createPortal(d,document.body):d}var v8='.ihabdevteam-core-scope .progress-bar{flex-shrink:0}.ihabdevteam-core-scope .progress-bar__track{background:var(--progress-bar-track,var(--color-darkWhite));border-radius:999px;height:8px;height:var(--progress-bar-height,8px);overflow:hidden;width:100%}.ihabdevteam-core-scope .progress-bar__fill{background:var(--progress-bar-fill,var(--color-main));border-radius:inherit;height:100%;transition:width .3s ease;transition:width var(--progress-bar-duration,.3s) ease}.ihabdevteam-core-scope .progress-bar__label{font-feature-settings:"tnum";color:var(--progress-bar-label-color,var(--color-gray));font-variant-numeric:tabular-nums}.ihabdevteam-core-scope .progress-bar--4{--progress-bar-height:4px}.ihabdevteam-core-scope .progress-bar--8{--progress-bar-height:8px}.ihabdevteam-core-scope .progress-bar--16{--progress-bar-height:16px}.ihabdevteam-core-scope .progress-bar--24{--progress-bar-height:24px}.ihabdevteam-core-scope .progress-bar--32{--progress-bar-height:32px}.ihabdevteam-core-scope .progress-bar--label-left,.ihabdevteam-core-scope .progress-bar--label-right{align-items:center;display:flex;gap:10px}.ihabdevteam-core-scope .progress-bar--label-left>.progress-bar__track,.ihabdevteam-core-scope .progress-bar--label-right>.progress-bar__track{flex:1;min-width:0}.ihabdevteam-core-scope .progress-bar--label-left .progress-bar__label{order:-1}.ihabdevteam-core-scope .progress-bar--label-bottom,.ihabdevteam-core-scope .progress-bar--label-top{display:flex;flex-direction:column;gap:6px}.ihabdevteam-core-scope .progress-bar--label-top .progress-bar__label{order:-1}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-left,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-left{align-items:flex-start}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-center,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-center{align-items:center}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-right,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-right{align-items:flex-end}.ihabdevteam-core-scope .progress-bar--label-bottom>.progress-bar__track,.ihabdevteam-core-scope .progress-bar--label-top>.progress-bar__track{align-self:stretch}.ihabdevteam-core-scope .progress-bar--label-inside{position:relative}.ihabdevteam-core-scope .progress-bar--label-inside .progress-bar__label{pointer-events:none;position:absolute;top:50%}.ihabdevteam-core-scope .progress-bar--label-on-fill .progress-bar__label{color:var(--progress-bar-label-color-on-fill,var(--color-deepWhite))}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-left .progress-bar__label{left:10px;transform:translateY(-50%)}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-center .progress-bar__label{left:50%;transform:translate(-50%,-50%)}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-right .progress-bar__label{right:10px;transform:translateY(-50%)}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .progress-bar__fill{transition:none}}';Q(v8);const y8=24;function um({value:e,max:t=100,size:a=8,color:r,trackColor:n,label:i,formatValue:s,labelPos:c,labelAlign:u="right",ariaLabel:d,className:m}){const h=Number.isFinite(t)&&t>0?t:1,p=Math.max(0,Math.min(Number.isFinite(e)?e:0,h)),g=p/h*100,v=c??(a>=y8?"inside":"bottom"),b=v==="center"?"inside":v,y=b==="inside"&&(u==="left"?g>=15:u==="center"?g>=50:g>=85),f={};return r&&(f["--progress-bar-fill"]=r),n&&(f["--progress-bar-track"]=n),o.jsxs("div",{className:ye("progress-bar",`progress-bar--${a}`,`progress-bar--label-${b}`,i&&`progress-bar--align-${u}`,i&&y&&"progress-bar--label-on-fill",m),style:f,children:[o.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":p,"aria-valuemin":0,"aria-valuemax":h,"aria-label":d,children:o.jsx("div",{className:"progress-bar__fill",style:{width:`${g}%`}})}),i&&o.jsx("span",{className:"progress-bar__label caption-1b",children:s?s(p):i==="percent"?`${Math.round(g)}%`:i==="raw"?String(p):`${p} / ${h}`})]})}var x8=".ihabdevteam-core-scope .progress-indicator{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .progress-indicator-dot{align-items:center;background:var(--pi-inactive-bg,var(--color-whiteLine));border-radius:var(--radius-card);color:var(--pi-inactive-color,var(--color-gray));display:inline-flex;height:28px;justify-content:center;width:52px}.ihabdevteam-core-scope .progress-indicator-dot.done{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .progress-indicator-dot.active{background:var(--color-sub);color:#fff}@media (max-width:1024px){.ihabdevteam-core-scope .progress-indicator{gap:6px}.ihabdevteam-core-scope .progress-indicator-dot{height:28px;width:44px}}@media (max-width:767px){.ihabdevteam-core-scope .progress-indicator--mobile .progress-indicator-dot{height:28px;padding:0 12px;width:auto}}";Q(x8);const C8="rgba(255, 255, 255, 0.16)";function Vl({max:e,index:t,inactiveBg:a,inactiveColor:r,transparent:n}){const{t:i}=me.useTranslation(),s=oa("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const c=Number.isInteger(t)?Math.max(0,Math.min(t,e-1)):0,u=i("progress.steps",{current:c+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),d={};return a&&(d["--pi-inactive-bg"]=a),r&&(d["--pi-inactive-color"]=r),n&&(a||(d["--pi-inactive-bg"]=C8),r||(d["--pi-inactive-color"]="var(--color-white)")),s?o.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:d,role:"list","aria-label":u,children:o.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[c+1," / ",e]})}):o.jsx("div",{className:"progress-indicator",style:d,role:"list","aria-label":u,children:Array.from({length:e}).map((m,h)=>o.jsx("span",{role:"listitem","aria-current":h===c?"step":void 0,className:`progress-indicator-dot ${h<c?" done":h===c?" active":""} body-3`,children:h+1},h))})}function _8(e){if(!e)return[];const t=[];let a=0,r="";for(const n of e.trim()){if(n==="("?a++:n===")"&&a--,/\s/.test(n)&&a===0){r&&(t.push(r),r="");continue}r+=n}return r&&t.push(r),t}var w8=".ihabdevteam-core-scope .table-wrap{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);overflow-x:auto}.ihabdevteam-core-scope .table{width:100%}.ihabdevteam-core-scope .table-header{align-items:center;border-bottom:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;gap:8px;padding:0 16px;text-align:left;width:100%}.ihabdevteam-core-scope .table-header[role=button]{cursor:pointer;transition:background .15s}.ihabdevteam-core-scope .table-header[role=button]:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-header__chevron{align-items:center;color:var(--color-gray);display:flex;flex-shrink:0}.ihabdevteam-core-scope .table-header__title{color:var(--color-darkGray)}.ihabdevteam-core-scope .table-header__count{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .table-header__actions{align-items:center;display:flex;flex-shrink:0;gap:4px;margin-left:auto}.ihabdevteam-core-scope .table-header__action-button{background:none;border:none;border-radius:4px;color:var(--color-gray);cursor:pointer;line-height:1;padding:2px 6px;transition:background .12s,color .12s}.ihabdevteam-core-scope .table-header__action-button:hover{background:var(--color-darkWhite);color:var(--color-main)}.ihabdevteam-core-scope .table-header__action-button--delete:hover{background:#ffeef0;background:var(--color-error-bg,#ffeef0);color:#e03131;color:var(--color-error,#e03131)}.ihabdevteam-core-scope .table-wrap--collapsed .table-header{border-bottom:none}.ihabdevteam-core-scope .table-wrap--dragover{outline:2px dashed var(--color-main);outline-offset:-2px}.ihabdevteam-core-scope .table-wrap--dragover .table-header{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-fields{border-bottom:1px solid var(--color-whiteLine);display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-template-columns:var(--table-grid-cols,repeat(auto-fit,minmax(80px,1fr)))}.ihabdevteam-core-scope .table-body{display:flex;flex-direction:column}.ihabdevteam-core-scope .table-row-wrap{border-bottom:1px solid var(--color-darkWhite);display:flex;flex-direction:column}.ihabdevteam-core-scope .table-row-wrap:last-child{border-bottom:none}.ihabdevteam-core-scope .table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-template-columns:var(--table-grid-cols,repeat(auto-fit,minmax(80px,1fr)))}.ihabdevteam-core-scope .table-row-expand{background:var(--color-darkWhite);border-top:1px solid var(--color-whiteLine);display:flex;flex-wrap:wrap;gap:12px;padding:16px 20px}.ihabdevteam-core-scope .table-wrap--small .table-fields,.ihabdevteam-core-scope .table-wrap--small .table-header,.ihabdevteam-core-scope .table-wrap--small .table-row{min-height:48px}.ihabdevteam-core-scope .table-wrap--medium .table-fields,.ihabdevteam-core-scope .table-wrap--medium .table-header,.ihabdevteam-core-scope .table-wrap--medium .table-row{min-height:56px}.ihabdevteam-core-scope .table-wrap--large .table-fields,.ihabdevteam-core-scope .table-wrap--large .table-header,.ihabdevteam-core-scope .table-wrap--large .table-row{min-height:64px}.ihabdevteam-core-scope .table-fields.table-fields--groups{min-height:34px}.ihabdevteam-core-scope .table-row--clickable{cursor:pointer;transition:background .1s,box-shadow .1s}.ihabdevteam-core-scope .table-row--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-row--draggable{cursor:grab}.ihabdevteam-core-scope .table-row--draggable:active{cursor:grabbing}.ihabdevteam-core-scope .table-row--dragging{opacity:.4}.ihabdevteam-core-scope .table-row--empty,.ihabdevteam-core-scope .table-row--loading{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .table-row--empty{color:var(--color-lightGray);padding:0 20px}.ihabdevteam-core-scope .table-wrap--small .table-row--empty{min-height:48px}.ihabdevteam-core-scope .table-wrap--medium .table-row--empty{min-height:56px}.ihabdevteam-core-scope .table-wrap--large .table-row--empty{min-height:64px}";Q(w8);var k8=".ihabdevteam-core-scope .table-cell{align-items:center;color:var(--color-darkGray);display:flex;min-width:0;overflow:hidden;overflow-wrap:break-word;padding:0 16px;word-break:break-word}";Q(k8);var S8='.ihabdevteam-core-scope .table-field{align-items:center;color:var(--color-gray);cursor:pointer;display:flex;gap:0;min-width:0;overflow:hidden;padding:0 16px;text-align:left;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ihabdevteam-core-scope .table-field--resizable{position:relative}.ihabdevteam-core-scope .table-field__resizer{align-items:center;cursor:col-resize;display:flex;height:100%;justify-content:flex-end;position:absolute;right:0;top:0;touch-action:none;width:10px;z-index:3}.ihabdevteam-core-scope .table-field__resizer:after{background:var(--color-whiteLine);content:"";height:55%;transition:background-color .12s,width .12s,height .12s;width:1px}.ihabdevteam-core-scope .table-field__resizer:active:after,.ihabdevteam-core-scope .table-field__resizer:hover:after{background:var(--color-main);height:100%;width:2px}.ihabdevteam-core-scope .table-field--sorted,.ihabdevteam-core-scope .table-field:hover{color:var(--color-main)}.ihabdevteam-core-scope .table-field__sort-arrow{flex-shrink:0}';Q(S8);function A8({children:e,className:t,style:a}){return o.jsx("div",{className:t?`table-cell ${t}`:"table-cell",style:a,children:e})}function Gl({variant:e="default",children:t,className:a,draggable:r,onClick:n,onMouseEnter:i,onMouseLeave:s,onDragStart:c,onDragEnd:u,expandedContent:d}){const m=l.useCallback(h=>{n&&h.target===h.currentTarget&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),n())},[n]);return e==="loading"?o.jsx("div",{className:"table-row-wrap",children:o.jsx("div",{className:"table-row table-row--loading",children:o.jsx(Ao,{size:28})})}):e==="empty"?o.jsx("div",{className:"table-row-wrap",children:o.jsx("div",{className:"table-row table-row--empty body-3",children:t})}):o.jsxs("div",{className:"table-row-wrap",children:[o.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:r,onClick:n,onKeyDown:n?m:void 0,onMouseEnter:i,onMouseLeave:s,onDragStart:c,onDragEnd:u,role:n?"button":void 0,tabIndex:n?0:void 0,children:t}),d&&o.jsx("div",{className:"table-row-expand",children:d})]})}function T8({dir:e}){return o.jsx(e==="asc"?nd:rd,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function B8({children:e,onClick:t,className:a,sortDir:r,onResizeStart:n}){const i=l.useCallback(s=>{t&&s.target===s.currentTarget&&(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),t())},[t]);return o.jsxs("div",{onClick:t,onKeyDown:t?i:void 0,role:t?"button":void 0,tabIndex:t?0:void 0,"aria-sort":r?r==="asc"?"ascending":"descending":void 0,className:ye("table-field body-3",a,r?"table-field--sorted":"",n?"table-field--resizable":""),children:[e,r&&o.jsx(T8,{dir:r}),n&&o.jsx("span",{className:"table-field__resizer",onPointerDown:n,onClick:s=>s.stopPropagation(),"aria-hidden":"true"})]})}function yn({fields:e=[],headerGroups:t,items:a=[],renderRow:r,onRowClick:n,onRowMouseEnter:i,onRowMouseLeave:s,onRowDragStart:c,onRowDragEnd:u,draggingId:d,gridTemplateColumns:m,resizable:h=!1,resizeMode:p="grow",resizeStorageKey:g,size:v="small",title:b,count:y,collapsed:f=!1,onToggleCollapse:x,headerActions:_,empty:C,loading:A,dragOver:w=!1,onDragOver:S,onDragLeave:D,onDrop:T,renderExpandedRow:E,expandedId:W}){const{t:M}=me.useTranslation(),k=48,N=g?`table-cols:${g}`:null,j=l.useRef(null),F=l.useRef(null),[te,Z]=l.useState(()=>{if(!N||typeof window>"u")return null;try{const Y=JSON.parse(window.localStorage.getItem(N)??"null");return Array.isArray(Y)&&Y.every(J=>typeof J=="number")?Y:null}catch{return null}}),ee=l.useRef(te);l.useEffect(()=>{ee.current=te},[te]);const L=l.useCallback(Y=>{const J=F.current;J&&Z(ue=>{if(!ue)return ue;const pe=[...ue];if(J.next!=null&&J.startWNext!=null){const ae=Y.clientX-J.startX,X=Math.max(k-J.startW,Math.min(J.startWNext-k,ae));pe[J.index]=J.startW+X,pe[J.next]=J.startWNext-X}else pe[J.index]=Math.max(k,J.startW+(Y.clientX-J.startX));return pe})},[]),R=l.useCallback(()=>{if(F.current=null,window.removeEventListener("pointermove",L),window.removeEventListener("pointerup",R),document.body.style.cursor="",document.body.style.userSelect="",N&&ee.current)try{window.localStorage.setItem(N,JSON.stringify(ee.current))}catch{}},[L,N]),O=l.useCallback((Y,J)=>{J.preventDefault(),J.stopPropagation();const ue=j.current;if(!ue)return;const pe=Array.from(ue.children).map(X=>X.getBoundingClientRect().width),ae=p==="fit"?e.findIndex((X,ce)=>ce>Y&&X.resizable!==!1):-1;F.current=ae>=0?{index:Y,startX:J.clientX,startW:pe[Y],next:ae,startWNext:pe[ae]}:{index:Y,startX:J.clientX,startW:pe[Y]},Z(pe),window.addEventListener("pointermove",L),window.addEventListener("pointerup",R),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[L,R,p,e]);l.useEffect(()=>()=>{F.current&&(window.removeEventListener("pointermove",L),window.removeEventListener("pointerup",R),document.body.style.cursor="",document.body.style.userSelect="")},[L,R]);const H=_8(m),$=Y=>/^\d+(\.\d+)?px$/.test(H[Y]??""),q=Y=>p==="fit"&&!$(Y)?"fr":"px",I=te&&te.length===e.length&&(p==="fit"||a.length>0)?e.map((Y,J)=>Y.resizable===!1&&H[J]?H[J]:`${te[J]}${q(J)}`).join(" "):m,G=I?{"--table-grid-cols":I}:void 0,z=b!==void 0;return o.jsx("div",{className:`table-wrap table-wrap--${v}${w?" table-wrap--dragover":""}${f?" table-wrap--collapsed":""}`,style:G,onDragOver:S,onDragLeave:D,onDrop:T,children:o.jsxs("div",{className:"table body-2",children:[z&&o.jsxs("div",{className:"table-header",onClick:x,role:x?"button":void 0,tabIndex:x?0:void 0,"aria-expanded":x?!f:void 0,onKeyDown:x?Y=>{(Y.key==="Enter"||Y.key===" ")&&(Y.preventDefault(),x())}:void 0,children:[x&&o.jsx(le,{size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:f?"chevron-right":"chevron-down",ariaLabel:f?M("common.expand","\uD3BC\uCE58\uAE30"):M("common.collapse","\uC811\uAE30"),className:"table-header__chevron"}),o.jsx("span",{className:"table-header__title h5b",children:b}),y!==void 0&&o.jsx("span",{className:"table-header__count body-3b",children:y}),_&&o.jsx("span",{className:"table-header__actions",onClick:Y=>Y.stopPropagation(),children:_})]}),!f&&o.jsxs(o.Fragment,{children:[t&&t.length>0&&o.jsx("div",{className:"table-fields table-fields--groups",children:t.map((Y,J)=>o.jsx("div",{className:ye("table-field body-3",Y.className),style:{gridColumn:`span ${Y.span}`},children:Y.label},J))}),o.jsx("div",{className:"table-fields",ref:j,children:e.map((Y,J)=>o.jsx(B8,{onClick:Y.onClick,className:Y.className,sortDir:Y.sortDir,onResizeStart:h&&J<e.length-1&&Y.resizable!==!1&&(p!=="fit"||e.some((ue,pe)=>pe>J&&ue.resizable!==!1))?ue=>O(J,ue):void 0,children:Y.label},J))}),o.jsx("div",{className:"table-body",children:A?o.jsx(Gl,{variant:"loading"}):a.length===0&&C?o.jsx(Gl,{variant:"empty",children:C}):a.map((Y,J)=>{const ue=d!=null&&Y.id===d,pe=W!=null&&(W instanceof Set?W.has(Y.id):Y.id===W);return o.jsx(Gl,{className:`${n?" table-row--clickable":""}${c?" table-row--draggable":""}${ue?" table-row--dragging":""}`.trim(),draggable:!!c,onClick:n?()=>n(Y):void 0,onMouseEnter:i?ae=>i(Y,ae):void 0,onMouseLeave:s?ae=>s(Y,ae):void 0,onDragStart:c?ae=>c(Y,ae):void 0,onDragEnd:u?ae=>u(Y,ae):void 0,expandedContent:pe&&E?E(Y):void 0,children:r(Y).map((ae,X)=>o.jsx(A8,{className:ae.className,style:ae.style,children:ae.content},X))},String(Y.id??J))})})]})]})})}function pm(e){switch(e){case"\uBCF4\uCCAD\uAE30":return"main";case"\uC778\uACF5\uC640\uC6B0":return"sub";default:return"default"}}var N8=".ihabdevteam-core-scope .dlp-popup .popup-panel{max-width:600px}.ihabdevteam-core-scope .dlp-empty{color:var(--color-gray);padding:32px 20px;text-align:center}.ihabdevteam-core-scope .dlp-table{border-collapse:collapse;font-size:13px;width:100%}.ihabdevteam-core-scope .dlp-table thead tr{border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .dlp-table th{color:var(--color-lightGray);font-weight:500;padding:8px 12px;text-align:left;white-space:nowrap}.ihabdevteam-core-scope .dlp-row{border-bottom:1px solid var(--color-darkWhite);cursor:pointer;transition:background .1s}.ihabdevteam-core-scope .dlp-row:hover{background:#f5f5f5;background:var(--color-hoverBg,#f5f5f5)}.ihabdevteam-core-scope .dlp-row:last-child{border-bottom:none}.ihabdevteam-core-scope .dlp-table td{color:var(--color-darkGray);padding:10px 12px;vertical-align:middle}.ihabdevteam-core-scope .dlp-date{color:var(--color-lightGray);white-space:nowrap}.ihabdevteam-core-scope .dlp-delete{background:none;border:none;border-radius:4px;color:var(--color-lightGray);cursor:pointer;font-size:12px;padding:4px 8px;transition:color .1s,background .1s}.ihabdevteam-core-scope .dlp-delete:hover{background:#fdecea;background:var(--color-errorBg,#fdecea);color:#e53935;color:var(--color-error,#e53935)}.ihabdevteam-core-scope .dlp-side-table{margin-top:0}.ihabdevteam-core-scope .dlp-side-pick{display:flex;justify-content:flex-start;margin-bottom:8px}.ihabdevteam-core-scope .dlp-worn-check{align-items:center;display:inline-flex}.ihabdevteam-core-scope .dlp-row-actions{align-items:center;display:flex;justify-content:flex-end}.ihabdevteam-core-scope .dlp-worn-side{color:#3b82f6;color:var(--color-main,#3b82f6);font-weight:600}";Q(N8);function hm(e,t){return t!=="wornAt"?String(e[t]??""):e.wornYear?`${e.wornYear}-${e.wornMonth.padStart(2,"0")}-${e.wornDay.padStart(2,"0")}`:""}function mm({rows:e,onSelect:t,onDelete:a,onWear:r,onRelease:n,onAdd:i}){const{t:s}=me.useTranslation(),c=v=>v==="\uC88C"?s("device.direction.left","\uC88C"):s("device.direction.right","\uC6B0"),{\uC815\uB82C:u,\uCE78:d}=ol(),m=l.useMemo(()=>{if(!u)return e;const{key:v,asc:b}=u;return[...e].sort((y,f)=>{const x=v==="worn"?Number(f.worn)-Number(y.worn):hm(y,v).localeCompare(hm(f,v),"ko");return b?x:-x})},[e,u]),{pageRows:h,pageSizeProps:p,paginationProps:g}=al(m,u);return o.jsxs("div",{className:"dlp-side-table",children:[o.jsx(mn,{count:{value:e.length,unit:s("customers.device.unit","\uAC1C")},pageSize:p,pagination:g,actions:i&&o.jsx(le,{size:40,type:"bar",variant:"main",icon:"plus",label:s("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:i})}),o.jsx(yn,{resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...d(s("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},d(s("device.direction.label","\uBC29\uD5A5"),"side"),d(s("device.deviceType","\uC885\uB958"),"device"),d(s("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),d(s("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),d(s("device.productName","\uC81C\uD488\uBA85"),"productName"),d(s("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...a?[{label:"",resizable:!1}]:[]],items:h.map((v,b)=>({id:v.id??`${v.side}-${b}`,row:v})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${a?" 80px":""}`,renderRow:({row:v})=>[{content:o.jsx("span",{className:"dlp-worn-check",onClick:b=>b.stopPropagation(),children:o.jsx(Rl,{checked:v.worn,disabled:!r||!n,ariaLabel:v.worn?s("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):s("customers.device.wear","\uCC29\uC6A9"),onChange:b=>{b?r?.(v):n?.(v)}})})},{content:o.jsx("span",{children:c(v.side)})},{content:v.device?o.jsx(ht,{size:"small",variant:pm(v.device),fill:"soft",label:v.device}):o.jsx("span",{})},{content:o.jsx("span",{children:v.brand})},{content:o.jsx("span",{children:v.fitType||"-"})},{content:o.jsx("span",{children:v.productName||"-"})},{content:o.jsx("span",{className:"dlp-date",children:v.wornYear?`${v.wornYear}.${v.wornMonth}.${v.wornDay}`:"-"})},...a?[{content:o.jsx("span",{className:"dlp-row-actions",children:o.jsx(le,{size:28,type:"bar",variant:"transparent-gray",label:s("common.delete","\uC0AD\uC81C"),onClick:b=>{b?.stopPropagation(),a(v)}})})}]:[]],onRowClick:({row:v})=>t(v),empty:s("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}var D8=`.ihabdevteam-core-scope .calendar-nav{align-items:center;display:flex;gap:var(--spacing-m);justify-content:center;margin-bottom:var(--spacing-m);position:relative}.ihabdevteam-core-scope .calendar-nav__legend{align-items:center;color:var(--color-gray);display:flex;gap:6px;position:absolute;right:0}.ihabdevteam-core-scope .calendar-nav__legend-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.ihabdevteam-core-scope .calendar-nav__legend-dot--main{background:var(--color-main)}.ihabdevteam-core-scope .calendar-nav__legend-dot--sub{background:var(--color-sub)}.ihabdevteam-core-scope .calendar-nav__legend-dot--disabled{background:var(--color-disabled)}.ihabdevteam-core-scope .calendar-nav__button{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);color:var(--color-darkGray);cursor:pointer;display:flex;font-size:18px;height:32px;line-height:1;transition:border-color .15s,color .15s;width:32px}.ihabdevteam-core-scope .calendar-nav__button:hover{border-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .calendar-nav__title{color:var(--color-darkGray);font-weight:700;min-width:100px;text-align:center}.ihabdevteam-core-scope .calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.ihabdevteam-core-scope .calendar-day-header{color:var(--color-lightGray);font-weight:600;padding:6px 0;text-align:center}.ihabdevteam-core-scope .calendar-day-header:first-child{color:var(--color-error)}.ihabdevteam-core-scope .calendar-day-header:last-child{color:var(--color-main)}.ihabdevteam-core-scope .calendar-cell{background:transparent;border-radius:var(--radius-s);box-sizing:border-box;cursor:default;min-height:118px;min-width:118px;padding:8px}.ihabdevteam-core-scope .calendar-cell.empty{background:transparent;cursor:default}
824
+ `),b=v===-1?a:a.slice(0,v);i("comment",b),a=a.slice(b.length);continue}const c=a.match(/^\/\*[\s\S]*?\*\//);if(c){i("comment",c[0]),a=a.slice(c[0].length);continue}const u=a.match(/^(`(?:\\.|[^`])*`|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*')/);if(u){i("string",u[0]),a=a.slice(u[0].length);continue}const d=a.match(/^\d+(?:\.\d+)?/);if(d){i("number",d[0]),a=a.slice(d[0].length);continue}const m=a.match(G3);if(m){i("keyword",m[0]),a=a.slice(m[0].length);continue}const h=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(h){const v=h[0];i(n&&V3.has(v)?"command":"identifier",v),a=a.slice(v.length);continue}const p=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(p){i("operator",p[0]),a=a.slice(p[0].length);continue}const g=a.match(/^[()[\]{};.,]/);if(g){i("punctuation",g[0]),a=a.slice(1);continue}i("other",a[0]),a=a.slice(1)}return r}function em({children:e,language:t="bash",title:a="",showCopy:r=!0,size:n="default",className:i=""}){const{t:s}=me.useTranslation(),[c,u]=l.useState(!1),d=H3(Jh(e)),m=l.useRef(null);l.useEffect(()=>()=>{m.current&&clearTimeout(m.current)},[]);const h=async()=>{try{if(!await as(d))return;u(!0),m.current&&clearTimeout(m.current),m.current=setTimeout(()=>u(!1),2e3)}catch{}},p=q3(d,t),g=n==="small"?"caption-1":"body-3";return o.jsxs("div",{className:xe("code-box",n==="small"?"code-box--small":"",i),children:[(a||r)&&o.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":s("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[o.jsx("div",{className:"code-box__title caption-1",children:a}),r&&o.jsx(ce,{className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:c?"check":"copy",onClick:h,ariaLabel:c?s("common.copied","\uBCF5\uC0AC\uB428"):s("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),o.jsx("pre",{className:"code-box__inner","data-lang":t,children:o.jsx("code",{children:p.map((v,b)=>o.jsx("span",{className:`code-token ${v.type} ${g}`,children:v.content},b))})})]})}var Y3=".ihabdevteam-core-scope .loader-spinner{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .loader-spinner__svg{animation:loader-rotate 1s linear infinite;transform-origin:center}.ihabdevteam-core-scope .loader-spinner__bg{stroke:rgba(0,0,0,.08)}.ihabdevteam-core-scope .loader-spinner__fg{stroke:var(--color-main);stroke-dasharray:125;stroke-dashoffset:80;animation:loader-dash 1.2s ease-in-out infinite}@keyframes loader-rotate{to{transform:rotate(1turn)}}@keyframes loader-dash{0%{stroke-dashoffset:125}50%{stroke-dashoffset:35}to{stroke-dashoffset:125}}.ihabdevteam-core-scope .loader-bar{background:rgba(0,0,0,.06);border-radius:999px;height:8px;overflow:hidden;width:100%}.ihabdevteam-core-scope .loader-bar__inner{background:var(--color-main);height:100%;transition:width .22s cubic-bezier(.2,.8,.2,1);width:0}.ihabdevteam-core-scope .core-loader-spinner{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .core-loader-spinner__svg{animation:core-loader-rotate 1s linear infinite;transform-origin:center}.ihabdevteam-core-scope .core-loader-spinner__bg{stroke:rgba(0,0,0,.08)}.ihabdevteam-core-scope .core-loader-spinner__fg{stroke:var(--color-main);stroke-dasharray:125;stroke-dashoffset:80;animation:core-loader-dash 1.2s ease-in-out infinite}@keyframes core-loader-rotate{to{transform:rotate(1turn)}}@keyframes core-loader-dash{0%{stroke-dashoffset:125}50%{stroke-dashoffset:35}to{stroke-dashoffset:125}}.ihabdevteam-core-scope .core-loader-bar{background:rgba(0,0,0,.06);border-radius:999px;height:8px;overflow:hidden;width:100%}.ihabdevteam-core-scope .core-loader-bar__inner{background:var(--color-main);height:100%;transition:width .22s cubic-bezier(.2,.8,.2,1);width:0}.ihabdevteam-core-scope .page-loading-center{display:flex;justify-content:center;padding:40px 0}";Q(Y3);function Ao(e){const{variant:t="spinner",size:a=24,progress:r=null,label:n}=e||{};if(t==="bar"){const s=Math.max(0,Math.min(100,Number(r)||0));return o.jsx("div",{className:"loader-bar",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":s,"aria-label":n||"Loading",children:o.jsx("div",{className:"loader-bar__inner",style:{width:`${s}%`}})})}const i=typeof a=="number"?`${a}px`:a;return o.jsx("div",{className:"loader-spinner",style:{width:i,height:i},role:"status","aria-label":n||"Loading",children:o.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:a,height:a,children:[o.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),o.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})})}var U3='.ihabdevteam-core-scope .toggle{align-items:center;cursor:pointer;display:inline-flex;gap:var(--spacing-xs);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .toggle input{height:0;opacity:0;position:absolute;width:0}.ihabdevteam-core-scope .toggle__slider{background:#e2e8f0;background:var(--color-whiteLine,#e2e8f0);border-radius:26px;display:inline-block;flex-shrink:0;height:26px;position:relative;transition:background .2s;width:44px}.ihabdevteam-core-scope .toggle__slider:before{background:var(--color-pureWhite);border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.15);content:"";height:20px;left:3px;position:absolute;top:3px;transition:transform .2s;width:20px}.ihabdevteam-core-scope .toggle input:checked+.toggle__slider{background:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .toggle input:checked+.toggle__slider:before{transform:translateX(18px)}.ihabdevteam-core-scope .toggle input:focus-visible+.toggle__slider{outline:2px solid var(--color-main,var(--color-main));outline-offset:2px}.ihabdevteam-core-scope .toggle__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .toggle--disabled{cursor:not-allowed;opacity:.45}';Q(U3);function Pl({checked:e,onChange:t,disabled:a=!1,label:r,ariaLabel:n,labelPosition:i="right",className:s="",id:c}){const u=r&&o.jsx("span",{className:"toggle__label body-3",children:r});return o.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${s}`.trim(),children:[i==="left"&&u,o.jsx("input",{id:c,type:"checkbox",checked:e,disabled:a,onChange:d=>t?.(d.target.checked),"aria-label":!r&&n?n:void 0}),o.jsx("span",{className:"toggle__slider"}),i==="right"&&u]})}var K3=`.ihabdevteam-core-scope .checkbox{align-items:center;cursor:pointer;display:inline-flex;gap:8px;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .checkbox--disabled{cursor:not-allowed;opacity:.4}.ihabdevteam-core-scope .checkbox__input{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ihabdevteam-core-scope .checkbox__box{background:var(--color-white,var(--color-pureWhite));border:1.5px solid var(--color-whiteLine);border-radius:8px;border-radius:var(--radius-sm,8px);flex-shrink:0;height:24px;position:relative;transition:border-color .15s,background .15s;width:24px}.ihabdevteam-core-scope .checkbox__input:checked+.checkbox__box{background:var(--color-main,var(--color-main));border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:checked+.checkbox__box:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m4 9 3.5 3.5L14 6'/%3E%3C/svg%3E") 50%/cover no-repeat;content:"";inset:0;position:absolute}.ihabdevteam-core-scope .checkbox__input:indeterminate+.checkbox__box{background:var(--color-main,var(--color-main));border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:indeterminate+.checkbox__box:after{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 18 18'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-width='2' d='M4.5 9h9'/%3E%3C/svg%3E") 50%/cover no-repeat;content:"";inset:0;position:absolute}.ihabdevteam-core-scope .checkbox:not(.checkbox--disabled):hover .checkbox__box{border-color:var(--color-main,var(--color-main))}.ihabdevteam-core-scope .checkbox__input:focus-visible+.checkbox__box{outline:2px solid var(--color-main,var(--color-main));outline-offset:2px}.ihabdevteam-core-scope .checkbox--large .checkbox__box{border-radius:10px;border-radius:var(--radius-s,10px);height:30px;width:30px}.ihabdevteam-core-scope .checkbox--small .checkbox__box{border-radius:4px;border-radius:var(--radius-xs,4px);height:16px;width:16px}.ihabdevteam-core-scope .checkbox__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .checkbox--small .checkbox__label{font-size:13px}`;Q(K3);function Rl({checked:e=!1,onChange:t,disabled:a,indeterminate:r,label:n,size:i="medium",className:s,title:c,ariaLabel:u}){const d=l.useRef(null),m=l.useId();return l.useEffect(()=>{d.current&&(d.current.indeterminate=!!r)},[r]),o.jsxs("label",{className:xe("checkbox",i==="small"&&"checkbox--small",i==="large"&&"checkbox--large",a&&"checkbox--disabled",s),htmlFor:m,title:c,children:[o.jsx("input",{ref:d,id:m,type:"checkbox",className:"checkbox__input",checked:e,onChange:h=>t?.(h.target.checked),disabled:a,"aria-label":!n&&u?u:void 0}),o.jsx("span",{className:"checkbox__box"}),n&&o.jsx("span",{className:"checkbox__label body-3",children:n})]})}var Z3=".ihabdevteam-core-scope .bulk-bar{align-items:center;background:var(--color-pureWhite,var(--color-pureWhite));border:1px solid var(--color-main);border-radius:12px;border-radius:var(--radius-m,12px);bottom:24px;box-shadow:0 4px 20px rgba(0,0,0,.12);box-sizing:border-box;color:#1a1a1a;color:var(--color-gray900,#1a1a1a);display:flex;gap:12px;justify-content:space-between;margin-top:16px;min-height:60px;opacity:0;padding:10px 16px;pointer-events:none;position:sticky;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease}.ihabdevteam-core-scope .bulk-bar--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.ihabdevteam-core-scope .bulk-bar__count{color:#1a1a1a;color:var(--color-gray900,#1a1a1a);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .bulk-bar__count b{color:var(--color-main)}.ihabdevteam-core-scope .bulk-bar__actions{display:flex;flex-shrink:0;gap:8px}.ihabdevteam-core-scope .bulk-bar__chips{align-items:center;display:flex;flex-wrap:wrap;gap:8px;gap:var(--spacing-xs,8px);min-width:0}.ihabdevteam-core-scope .bulk-bar__chips .button{white-space:nowrap}@media (max-width:767px){.ihabdevteam-core-scope .bulk-bar{flex-wrap:wrap}.ihabdevteam-core-scope .bulk-bar__actions{flex-wrap:wrap;justify-content:flex-end;width:100%}}.ihabdevteam-core-scope .bulk-bar__actions--stacked{align-items:stretch;flex-direction:column}";Q(Z3);function tm({count:e,actions:t,onClear:a,clearLabel:r="\uC120\uD0DD \uD574\uC81C",visible:n,content:i,max:s}){const{t:c}=me.useTranslation(),u=n!==void 0?n:e>0,d=l.useRef(null),[m,h]=l.useState(!1);return l.useEffect(()=>{const p=d.current;if(!p)return;const g=()=>{const b=p.firstElementChild??p,y=Array.from(b.children);if(y.length<2){h(!1);return}const f=y[0].offsetTop;h(y.some(x=>x.offsetTop!==f))};if(g(),typeof ResizeObserver>"u")return;const v=new ResizeObserver(g);return v.observe(p),()=>v.disconnect()},[i,e]),o.jsxs("div",{className:`bulk-bar ${u?"bulk-bar--visible":""}`,children:[o.jsx("span",{ref:d,className:"bulk-bar__count body-2",children:i??o.jsx("b",{children:c("common.selectedCount",{count:e})})}),s!==void 0&&o.jsx(ht,{size:"small",fill:"soft",variant:"main",label:`${e} / ${s}`}),o.jsxs("div",{className:`bulk-bar__actions${m?" bulk-bar__actions--stacked":""}`,children:[o.jsx(ce,{size:40,label:r,onClick:a}),t.map((p,g)=>o.jsx(ce,{size:40,variant:p.variant??"default",icon:p.icon,label:p.label,onClick:p.onClick},g))]})]})}function $l(e){const t=()=>{if(e){const[h,p]=e.split("-");return{y:+h,m:+p-1}}const m=new Date;return{y:m.getFullYear(),m:m.getMonth()}},[a,r]=l.useState(()=>t().y),[n,i]=l.useState(()=>t().m),s=l.useRef(e);l.useEffect(()=>{if(e===s.current)return;s.current=e;const m=t();r(m.y),i(m.m)},[e]);const c=l.useCallback(()=>{n===0?(r(m=>m-1),i(11)):i(m=>m-1)},[n]),u=l.useCallback(()=>{n===11?(r(m=>m+1),i(0)):i(m=>m+1)},[n]),d=l.useCallback((m,h)=>{r(m),i(h)},[]);return{viewY:a,viewM:n,prevMonth:c,nextMonth:u,setViewYM:d}}var X3=".ihabdevteam-core-scope .date-picker{position:relative;width:100%}.ihabdevteam-core-scope .date-picker__trigger{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);box-sizing:border-box;color:var(--color-darkGray);cursor:pointer;display:flex;justify-content:space-between;padding:0 12px;text-align:left;transition:border-color .12s,background .12s,box-shadow .12s;width:100%}.ihabdevteam-core-scope .date-picker--s40 .date-picker__trigger{border-radius:10px;height:40px}.ihabdevteam-core-scope .date-picker--s48 .date-picker__trigger{border-radius:12px;height:48px}.ihabdevteam-core-scope .date-picker--s64 .date-picker__trigger{border-radius:14px;height:64px}.ihabdevteam-core-scope .date-picker--open .date-picker__trigger,.ihabdevteam-core-scope .date-picker__trigger:focus{background:var(--color-white);border-color:var(--color-main);box-shadow:0 0 0 3px var(--color-main-a10);outline:none}.ihabdevteam-core-scope .date-picker__trigger:disabled{cursor:not-allowed;opacity:.5}.ihabdevteam-core-scope .date-picker__placeholder{color:var(--color-lightGray);white-space:nowrap}.ihabdevteam-core-scope .date-picker__value{color:var(--color-darkGray);white-space:nowrap}.ihabdevteam-core-scope .date-picker__icon{color:var(--color-lightGray);flex-shrink:0;transition:color .12s}.ihabdevteam-core-scope .date-picker--open .date-picker__icon{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__dropdown{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.1);box-sizing:border-box;left:0;min-width:260px;padding:12px;position:absolute;top:calc(100% + 6px);z-index:200}.ihabdevteam-core-scope .date-picker__nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.ihabdevteam-core-scope .date-picker__nav-dropdown{flex:1;margin:0 4px}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger{background:transparent!important;border:none!important;border-radius:6px!important;box-shadow:none!important;gap:4px!important;height:32px!important;justify-content:center!important;transition:background .12s,color .12s!important}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger:hover,.ihabdevteam-core-scope .date-picker__nav-dropdown.dropdown--open .dropdown__trigger{background:var(--color-deepWhite)!important}.ihabdevteam-core-scope .date-picker__nav-dropdown .dropdown__trigger-label{color:var(--color-darkGray)!important;flex:initial!important;font-weight:600!important}.ihabdevteam-core-scope .date-picker__nav-btn{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:8px;color:var(--color-darkGray);cursor:pointer;display:flex;height:28px;justify-content:center;transition:border-color .12s,color .12s;width:28px}.ihabdevteam-core-scope .date-picker__nav-btn:hover{border-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .date-picker__grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.ihabdevteam-core-scope .date-picker__dow{color:var(--color-lightGray);font-weight:600;padding:4px 0 6px;text-align:center}.ihabdevteam-core-scope .date-picker__dow:first-child{color:var(--color-error)}.ihabdevteam-core-scope .date-picker__dow:last-child{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day{align-items:center;aspect-ratio:1;background:transparent;border:none;border-radius:6px;color:var(--color-darkGray);cursor:pointer;display:flex;justify-content:center;transition:background .1s,color .1s;width:100%}.ihabdevteam-core-scope .date-picker__day:hover:not(:disabled){background:var(--color-main-a10);color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--sun:hover:not(:disabled){color:var(--color-error)}.ihabdevteam-core-scope .date-picker__day--sat:hover:not(:disabled){color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--sun{color:var(--color-error)}.ihabdevteam-core-scope .date-picker__day--sat{color:var(--color-main)}.ihabdevteam-core-scope .date-picker__day--today{font-weight:700;outline:1.5px solid var(--color-main);outline-offset:-1.5px}.ihabdevteam-core-scope .date-picker__day--selected{background:var(--color-main)!important;color:#fff!important;font-weight:700}.ihabdevteam-core-scope .date-picker__day--disabled{cursor:not-allowed;opacity:.3}";Q(X3);const Q3=["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"];function J3(e,t){return new Date(e,t+1,0).getDate()}function e8(e,t){return new Date(e,t,1).getDay()}function bn(e,t,a){return`${e}-${String(t+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function t8(e){if(!e)return"";const[t,a,r]=e.split("-");return`${t}. ${a}. ${r}.`}function a8(e,t,a){const r=t?+t.split("-")[0]:e-10,n=a?+a.split("-")[0]:e+10,i=[];for(let s=r;s<=n;s++)for(let c=0;c<12;c++){const u=`${s}-${String(c+1).padStart(2,"0")}`;t&&u<t.slice(0,7)||a&&u>a.slice(0,7)||i.push({value:u,label:`${s}\uB144 ${c+1}\uC6D4`})}return i}function am({value:e,onChange:t,size:a=48,min:r,max:n,disabled:i,placeholder:s="\uB0A0\uC9DC \uC120\uD0DD",className:c}){const{t:u}=me.useTranslation(),d=new Date,{viewY:m,viewM:h,prevMonth:p,nextMonth:g,setViewYM:v}=$l(e),b=l.useCallback(k=>{const D=window.innerHeight-k.bottom,j=300,F=D<j&&k.top>j;return{position:"fixed",left:k.left,width:k.width,minWidth:260,...F?{bottom:window.innerHeight-k.top+6}:{top:k.bottom+6},zIndex:9999}},[]),{open:y,setOpen:f,toggle:x,style:_,triggerRef:C,menuRef:A}=So({computeStyle:b,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"}),w=l.useCallback(k=>{t(bn(m,h,k)),f(!1)},[m,h,t,f]),S=k=>{const D=bn(m,h,k);return!!(r&&D<r||n&&D>n)},N=[];for(let k=0;k<e8(m,h);k++)N.push(null);for(let k=1;k<=J3(m,h);k++)N.push(k);const T=a===64?20:a===40?16:18,E=a8(m,r,n),W=`${m}-${String(h+1).padStart(2,"0")}`,L=y?qt.createPortal(o.jsxs("div",{ref:A,className:"date-picker__dropdown",style:_,children:[o.jsxs("div",{className:"date-picker__nav",children:[o.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:p,"aria-label":u("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:o.jsx(qc,{size:16,strokeWidth:2})}),o.jsx(Ut,{className:"date-picker__nav-dropdown",ariaLabel:u("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:E,value:W,onChange:k=>{const[D,j]=k.split("-");v(+D,+j-1)},block:!0,size:40}),o.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:g,"aria-label":u("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:o.jsx(Yc,{size:16,strokeWidth:2})})]}),o.jsxs("div",{className:"date-picker__grid",children:[Q3.map(k=>o.jsx("div",{className:"date-picker__dow caption-1",children:k},k)),N.map((k,D)=>{if(k===null)return o.jsx("div",{},`e${D}`);const j=bn(m,h,k),F=j===e,ee=j===bn(d.getFullYear(),d.getMonth(),d.getDate()),Z=S(k),J=D%7;return o.jsx("button",{type:"button",disabled:Z,onClick:()=>!Z&&w(k),className:xe("date-picker__day caption-1",F&&"date-picker__day--selected",ee&&!F&&"date-picker__day--today",Z&&"date-picker__day--disabled",J===0&&"date-picker__day--sun",J===6&&"date-picker__day--sat"),children:k},k)})]})]}),document.body):null;return o.jsxs("div",{className:xe("date-picker",`date-picker--s${a}`,y&&"date-picker--open",c),children:[o.jsxs("button",{ref:C,type:"button",className:"date-picker__trigger body-2",onClick:()=>!i&&x(),disabled:i,"aria-haspopup":"true","aria-expanded":y,children:[o.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?t8(e):s}),o.jsx(od,{size:T,className:"date-picker__icon",strokeWidth:1.5})]}),L]})}var o8=".ihabdevteam-core-scope .month-dropdown .dropdown__trigger{max-width:200px;min-width:200px;width:200px}.ihabdevteam-core-scope .month-dropdown .dropdown__menu{max-height:280px;overflow-y:auto;scrollbar-color:var(--color-darkWhite) transparent;scrollbar-width:thin}.ihabdevteam-core-scope .month-dropdown .dropdown__menu::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .month-dropdown .dropdown__menu::-webkit-scrollbar-thumb{background:var(--color-darkWhite);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .manager-bar-chart-wrap{display:flex;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .manager-bar-chart-gridline{background:var(--color-darkWhite);height:1px;left:0;pointer-events:none;position:absolute;right:0;z-index:-1}.ihabdevteam-core-scope .manager-bar-chart-gridline__label{color:var(--color-deepGray);font-size:11px;left:0;position:absolute;top:100%;white-space:nowrap}.ihabdevteam-core-scope .manager-bar-chart-inner{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-scroll{-webkit-overflow-scrolling:touch;flex:1;overflow-x:auto;overflow-y:visible;scrollbar-width:none}.ihabdevteam-core-scope .manager-bar-chart-scroll::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .manager-bar-chart-area{display:flex;flex-direction:column;min-width:-moz-max-content;min-width:max-content}.ihabdevteam-core-scope .manager-bar-chart-area svg{display:block}.ihabdevteam-core-scope .manager-bar-chart-x-axis{color:var(--color-deepGray);display:flex;font-size:11px;padding-top:6px}.ihabdevteam-core-scope .manager-bar-chart-x-axis__label{align-items:center;display:flex;flex:1;flex-direction:column;gap:1px;justify-content:flex-start;min-width:0;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .manager-bar-chart-x-axis__label--future .caption-1{color:var(--color-whiteLine)}.ihabdevteam-core-scope .manager-bar-chart-x-axis__main{position:relative}.ihabdevteam-core-scope .manager-bar-chart-x-axis__today-dot{border-radius:50%;height:8px;position:absolute;right:calc(100% + 3px);top:50%;transform:translateY(-50%);width:8px}.ihabdevteam-core-scope .manager-bar-chart-plot{align-items:flex-end;display:flex;gap:0;isolation:isolate;position:relative}.ihabdevteam-core-scope .manager-bar-chart-col{align-items:flex-end;display:flex;flex:1;gap:2px;height:100%;justify-content:center}.ihabdevteam-core-scope .manager-bar-chart-stack{display:flex;flex-direction:column-reverse;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-bar{border-radius:6px 6px 0 0;min-width:0}.ihabdevteam-core-scope .manager-bar-chart-stack-segment{width:100%}.ihabdevteam-core-scope .manager-bar-chart-detail-btn{margin-left:auto}";Q(o8);var r8=".ihabdevteam-core-scope .manager-section{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-card);margin-bottom:14px;min-width:320px;padding:20px}.ihabdevteam-core-scope .manager-section__head{align-items:flex-start;display:flex;gap:var(--spacing-xs);justify-content:space-between;margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .chart-section-icon{display:inline-flex;opacity:.35}.ihabdevteam-core-scope .chart-section-icon-inner{color:var(--color-darkGray);height:22px;width:22px}@media (max-width:767px){.ihabdevteam-core-scope .manager-section__head{align-items:flex-start;flex-direction:column;gap:var(--spacing-s)}.ihabdevteam-core-scope .manager-section-controls{flex-wrap:wrap}.ihabdevteam-core-scope .manager-section-controls .segmented-control{flex-wrap:nowrap}.ihabdevteam-core-scope .manager-section{min-width:0;padding:18px}}.ihabdevteam-core-scope .manager-section-controls{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-loading{align-items:center;display:flex;justify-content:center;min-height:186px}.ihabdevteam-core-scope .barchart-sub-row{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .barchart-total{align-items:baseline;display:flex;gap:4px}.ihabdevteam-core-scope .barchart-total--stacked{align-items:flex-start;flex-direction:column;gap:0}.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__label,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__num,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__unit,.ihabdevteam-core-scope .barchart-total--stacked .barchart-total__value{line-height:1.1;margin:0}.ihabdevteam-core-scope .barchart-total__label{color:var(--color-gray)}.ihabdevteam-core-scope .barchart-total__value{align-items:baseline;display:flex;gap:4px}.ihabdevteam-core-scope .barchart-total__num{color:var(--color-black)}.ihabdevteam-core-scope .barchart-total__unit{color:var(--color-gray)}.ihabdevteam-core-scope .manager-bar-chart-legend{align-items:flex-end;color:var(--color-gray);display:flex;flex-direction:column;font-size:12px;gap:6px;padding-right:var(--spacing-xs)}.ihabdevteam-core-scope .manager-bar-chart-legend-item{align-items:center;display:inline-flex}.ihabdevteam-core-scope .manager-bar-chart-legend-dot{border-radius:50%;display:inline-block;height:8px;margin-right:4px;width:8px}.ihabdevteam-core-scope .manager-section--compact{min-width:160px;padding:20px}.ihabdevteam-core-scope .manager-section--compact .manager-section__head{margin-bottom:4px;min-height:28px}.ihabdevteam-core-scope .chart-section-title--small{color:var(--color-deepGray)}.ihabdevteam-core-scope .manager-section--compact .barchart-total__num{font-size:32px;line-height:1}.ihabdevteam-core-scope .manager-section--compact .barchart-total{flex-shrink:0}.ihabdevteam-core-scope .manager-section--compact .barchart-sub-row{margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .manager-section--compact .manager-bar-chart-legend{align-items:stretch;flex:1 1 auto;min-width:0}.ihabdevteam-core-scope .manager-section--compact .manager-bar-chart-legend-item{display:flex;justify-content:flex-end;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.ihabdevteam-core-scope .manager-section--full{flex:1 1 100%;width:100%}@media (max-width:767px){.ihabdevteam-core-scope .manager-section--compact{min-width:0}}";Q(r8);function gn({items:e,className:t}){return o.jsx("div",{className:t?`manager-bar-chart-legend ${t}`:"manager-bar-chart-legend",children:e.map((a,r)=>o.jsxs("span",{className:"manager-bar-chart-legend-item",children:[o.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},r))})}function gr({label:e,children:t}){return e?o.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[o.jsx("span",{className:"barchart-total__label body-3",children:e}),o.jsx("span",{className:"barchart-total__value",children:t})]}):o.jsx("div",{className:"barchart-total",children:t})}function fn({title:e,titleClassName:t="h3",headRight:a,subRow:r,className:n,children:i}){return o.jsxs("section",{className:n?`manager-section ${n}`:"manager-section",children:[o.jsxs("div",{className:"manager-section__head",children:[o.jsx("div",{className:t,children:e}),a]}),r&&o.jsx("div",{className:"barchart-sub-row",children:r}),i]})}function ao(e,t){const a=new Date(e,t,1).getDay();return 1+(8-(a===0?7:a))%7}function n8(){const e=new Date;let t=e.getFullYear(),a=e.getMonth(),r=e.getDate();if(r<ao(t,a)){const s=new Date(t,a,0);t=s.getFullYear(),a=s.getMonth(),r=s.getDate()}const n=Math.floor((r-ao(t,a))/7),i=`${t}\uB144 ${a+1}\uC6D4`;return{monthKey:i,value:`${i}#${n}`}}function om(e){const t=new Date,a=`${t.getFullYear()}\uB144 ${t.getMonth()+1}\uC6D4`,r=new Map;r.set(a,[]);for(const i of e){if(isNaN(i.date.getTime()))continue;const s=`${i.date.getFullYear()}\uB144 ${i.date.getMonth()+1}\uC6D4`;r.has(s)||r.set(s,[]),r.get(s).push(i)}const n={};for(const[i,s]of r){const c=i.match(/^(\d+)년 (\d+)월$/);if(!c)continue;const u=Number(c[1]),d=Number(c[2])-1,m=new Date(u,d+1,0).getDate(),h=u===t.getFullYear()&&d===t.getMonth(),p=t.getDate(),g=s.reduce((_,C)=>Math.max(_,C.parts?.length??0),0),v=new Array(m+1).fill(0),b=new Array(m+1).fill(0),y=Array.from({length:m+1},()=>new Array(g).fill(0));for(const _ of s){const C=_.date.getDate();if(v[C]+=_.a,b[C]+=_.b,_.parts)for(let A=0;A<g;A++)y[C][A]+=_.parts[A]??0}const f=[];for(let _=1;_<=m;_++){const C=h&&_>p;f.push({label:String(_),a:C&&v[_]===0&&b[_]===0?-1:v[_],b:b[_],...g?{parts:y[_]}:{}})}const x=[];for(let _=ao(u,d);_<=m;_+=7){const C=Math.min(_+6,m);let A=0,w=0;const S=new Array(g).fill(0);for(let N=_;N<=C;N++){A+=v[N],w+=b[N];for(let T=0;T<g;T++)S[T]+=y[N][T]}x.push({label:`${x.length+1}\uC8FC`,sublabel:`[${_}\uC77C~${C}\uC77C]`,a:A,b:w,...g?{parts:S}:{}})}n[i]={weekly:x,daily:f}}return n}function i8(){const e=new Date,t=e.getFullYear(),a=e.getMonth()+1,r=[];for(let n=2024;n<=t;n++){const i=n===t?a:12;for(let s=1;s<=i;s++){const c=`${n}\uB144 ${s}\uC6D4`;r.push({value:c,label:c,year:n,month:s})}}return r.reverse()}const s8=i8(),rm=["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"];function zl(e){const{t,i18n:a}=me.useTranslation(),[r,n]=l.useState("week"),i=l.useMemo(()=>s8.filter(T=>T.value in e),[e]),s=l.useMemo(()=>{const T=[];for(const E of i){const W=new Date(E.year,E.month,0).getDate(),L=ao(E.year,E.month-1),k=Math.ceil((W-L+1)/7);for(let D=k-1;D>=0;D--)T.push({value:`${E.value}#${D}`,monthKey:E.value,year:E.year,month:E.month,week:D})}return T},[i]),c=l.useCallback(T=>{const E=t("calendar.yearMonth",{year:T.year,month:T.month});return a.language?.startsWith("ko")?`${E} ${rm[T.week]??`${T.week+1}`}\uC8FC`:`${E} Week ${T.week+1}`},[t,a.language]),u=l.useMemo(()=>i.map(T=>({value:T.value,label:t("calendar.yearMonth",{year:T.year,month:T.month})})),[t,i]),d=l.useMemo(()=>s.map(T=>({value:T.value,label:c(T)})),[s,c]),m=l.useMemo(()=>n8(),[]),h=l.useMemo(()=>i.find(T=>T.value===m.monthKey)?.value??i[0]?.value??"",[i,m]),p=l.useMemo(()=>s.find(T=>T.value===m.value)?.value??s[0]?.value??"",[s,m]),[g,v]=l.useState(""),[b,y]=l.useState("");l.useEffect(()=>{i.find(T=>T.value===g)||v(h)},[i,g,h]),l.useEffect(()=>{s.find(T=>T.value===b)||y(p)},[s,b,p]);const f=r==="month"?u:d,x=r==="month"?g:b,_=r==="month"?v:y,C=l.useMemo(()=>{const T=t("calendar.dow",{returnObjects:!0});return Array.isArray(T)?T:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[t]),A=f.findIndex(T=>T.value===x),w=l.useCallback(()=>{const T=f.findIndex(E=>E.value===x);T<f.length-1&&_(f[T+1].value)},[f,x,_]),S=l.useCallback(()=>{const T=f.findIndex(E=>E.value===x);T>0&&_(f[T-1].value)},[f,x,_]),N=l.useMemo(()=>[{key:"week",label:t("manager.chart.periodWeek","\uC8FC")},{key:"month",label:t("manager.chart.periodMonth","\uC6D4")}],[t]);return{period:r,setPeriod:n,range:x,setRange:_,activeOptions:f,activeIdx:A,handlePrev:w,handleNext:S,periodOptions:N,monthRange:g,weekRange:b,weekRanges:s,DOW:C}}function l8({data:e,colorA:t,colorB:a,labelA:r,labelB:n,barWidth:i=10,height:s=140,maxOverride:c,tightMax:u,seriesColors:d,seriesLabels:m,rateLabels:h}){const p=!a,g=!!(d&&d.length>0),v=l.useMemo(()=>g?Math.max(0,...e.filter(S=>S.a!==-1).map(S=>(S.parts??[]).reduce((N,T)=>N+Math.max(0,T),0))):Math.max(0,...e.filter(S=>S.a!==-1).flatMap(S=>p?[S.a]:[S.a,S.b])),[e,p,g]),b=l.useMemo(()=>c??(u?v>0?v:10:Math.ceil(v/10)*10||10),[v,c,u]),y=s,f=g||p?1:2,x=l.useMemo(()=>{const S=Math.max(1,e.length);return Math.max(8,Math.min(i,Math.round(120/(S*f)+6)))},[e.length,f,i]),_=l.useMemo(()=>{const S=Math.round(b/2);return S!==b?[b,S,0]:[b,0]},[b]),[C,A]=l.useState(null),w=l.useCallback(()=>A(null),[]);return o.jsxs("div",{className:"manager-bar-chart-wrap",children:[o.jsx("div",{className:"manager-bar-chart-inner",children:o.jsx("div",{className:"manager-bar-chart-scroll",children:o.jsxs("div",{className:"manager-bar-chart-area",children:[o.jsxs("div",{className:"manager-bar-chart-plot",style:{height:y},children:[_.slice(0,-1).map((S,N)=>o.jsx("div",{className:"manager-bar-chart-gridline",style:{top:N*(y/(_.length-1))},children:o.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:S})},N)),e.map((S,N)=>{const T=S.a===-1,E=T?0:S.a/b*y,W=T?0:S.b/b*y,L=S.parts??[];return o.jsx("div",{className:"manager-bar-chart-col",style:{cursor:T?"default":"pointer"},onMouseEnter:T?void 0:k=>{const D=k.currentTarget.getBoundingClientRect(),j=g?(m??[]).map((F,ee)=>`${F}: ${L[ee]??0}`).filter((F,ee)=>(L[ee]??0)>0).join(" / ")||`${(m??[]).join(" / ")}: 0`:h&&!p?`${r} ${S.a}% / ${n} ${S.b}%`:h&&S.rawB!==void 0?`${h.total} ${S.rawB} / ${h.done} ${S.rawA??0}`:p?`${r}: ${S.a}`:`${r}: ${S.a} / ${n}: ${S.b}`;A({rect:{left:D.left,top:D.top,right:D.right,bottom:D.bottom,width:D.width,height:D.height},text:j})},onMouseLeave:w,children:!T&&(g?o.jsx("div",{className:"manager-bar-chart-stack",style:{flex:`0 1 ${x}px`,maxWidth:x},children:(()=>{const k=L.reduce((D,j,F)=>j>0?F:D,-1);return L.map((D,j)=>D>0?o.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:D/b*y,background:(d??[])[j],borderRadius:j===k?"6px 6px 0 0":void 0}},j):null)})()}):o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"manager-bar-chart-bar",style:{flex:`0 1 ${x}px`,maxWidth:x,height:E,background:t}}),!p&&o.jsx("div",{className:"manager-bar-chart-bar",style:{flex:`0 1 ${x}px`,maxWidth:x,height:W,background:a}})]}))},N)})]}),o.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((S,N)=>{const T=S.a===-1;return o.jsxs("span",{className:`manager-bar-chart-x-axis__label${T?" manager-bar-chart-x-axis__label--future":""}`,children:[o.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[S.isToday&&o.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:t}}),S.label]}),S.sublabel&&o.jsx("span",{className:"caption-1",children:S.sublabel})]},N)})})]})})}),C&&o.jsx(aa,{anchorRect:C.rect,text:C.text})]})}function Il({control:e}){const{t}=me.useTranslation(),a=t("calendar.prevMonth","\uC774\uC804 \uB2EC"),r=t("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),{activeOptions:n,activeIdx:i,range:s,setRange:c,handlePrev:u,handleNext:d,periodOptions:m,period:h,setPeriod:p}=e;return o.jsxs("div",{className:"manager-section-controls",children:[o.jsx(ce,{size:32,type:"dot",icon:"chevron-left",ariaLabel:a,showTooltipInfo:a,disabled:i===n.length-1,onClick:u}),o.jsx(Ut,{value:s,onChange:c,options:n,size:40,className:"month-dropdown",ariaLabel:t("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),o.jsx(ce,{size:32,type:"dot",icon:"chevron-right",ariaLabel:r,showTooltipInfo:r,disabled:i<=0,onClick:d}),o.jsx(Ha,{ariaLabel:t("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:m,value:h,onChange:g=>p(g),size:32})]})}function c8(e,t,a,r){const{period:n,monthRange:i,weekRange:s,weekRanges:c,DOW:u}=t,d=r?.startsWith("ko"),m=new Date,h=m.getFullYear(),p=m.getMonth()+1,g=m.getDate();if(n==="month"){const y=e[i]??{weekly:[],daily:[]},f=i.match(/^(\d+)년 (\d+)월$/),x=f?Number(f[1]):null,_=f?Number(f[2]):null,C=x&&_?ao(x,_-1):1;return y.weekly.map((A,w)=>{const S=w+1;let N=A.label,T=!1,E=!1;if(x&&_){const W=C+w*7,L=new Date(x,_-1,W+6),k=L.getMonth()+1,D=L.getDate(),j=k===_?`${D}`:`${k}/${D}`;N=a("manager.chart.weekRange",{start:W,end:j}),T=h===x&&p===_&&g>=W&&g<=W+6,E=x>h||x===h&&(_>p||_===p&&W>g)}return{...A,label:N,sublabel:d?`${rm[S-1]??S}\uC8FC`:`Week ${S}`,isToday:T,a:E?-1:A.a,b:E?0:A.b}})}const v=c.find(y=>y.value===s);if(!v)return[];const b=new Date(v.year,v.month-1,ao(v.year,v.month-1)+v.week*7);return Array.from({length:7},(y,f)=>{const x=new Date(b);x.setDate(b.getDate()+f);const _=x.getMonth()+1,C=x.getDate(),A=x.getFullYear(),w=(e[`${A}\uB144 ${_}\uC6D4`]?.daily??[])[C-1],S=_===v.month&&A===v.year,N=w?.a===-1||x>new Date(h,m.getMonth(),g);return{label:S?`${C}`:`${_}/${C}`,sublabel:u[x.getDay()]??"",a:N?-1:w&&w.a>0?w.a:0,b:N?0:w&&w.b>0?w.b:0,isToday:A===h&&_===p&&C===g,...w?.parts?{parts:N?w.parts.map(()=>0):w.parts}:{}}})}const d8={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function nm({size:e="medium",titleKey:t,data:a,colorA:r,colorB:n,labelAKey:i,labelBKey:s,showTotal:c=!1,totalUnitKey:u,totalLabelKey:d,control:m,hideControls:h=!1,rate:p=!1,tightMax:g=!1,avgMode:v=!1,totalFormat:b,series:y,loading:f=!1,onDetail:x}){const{t:_,i18n:C}=me.useTranslation(),A=d8[e],w=zl(a),S=m??w,N=l.useMemo(()=>c8(a,S,_,C.language),[a,S,_,C.language]),T=l.useMemo(()=>p?N.map(k=>({...k,a:k.a===-1?-1:k.b>0?Math.round(k.a/k.b*100):0,b:k.a===-1?0:s&&k.parts&&k.parts[1]>0?Math.round(k.parts[0]/k.parts[1]*100):0,rawA:k.a===-1?-1:k.a,rawB:k.b})):N,[N,p,s]),E=l.useMemo(()=>{if(p||v){const k=(S.period==="week"?N:a[S.monthRange]?.daily??[]).filter(j=>j.a!==-1);if(k.length===0)return 0;const D=p?k.reduce((j,F)=>j+(F.b>0?F.a/F.b*100:0),0):k.reduce((j,F)=>j+(F.a>0?F.a:0),0);return Math.round(D/k.length)}return T.reduce((k,D)=>k+(D.a>0?D.a:0)+(s&&D.b>0?D.b:0),0)},[T,N,p,v,s,S.period,S.monthRange,a]),W=y&&y.length>0?y.map(k=>({color:k.color,label:k.label})):[{color:r,label:_(i)},...s?[{color:n,label:_(s)}]:[]],L=e==="small";return o.jsx(fn,{className:L?"manager-section--compact":e==="large"?"manager-section--full":void 0,title:_(t),titleClassName:L?"h5 chart-section-title--small":void 0,headRight:L?void 0:o.jsxs(o.Fragment,{children:[!h&&o.jsx(Il,{control:S}),x&&o.jsx("span",{className:"manager-bar-chart-detail-btn",children:o.jsx(ce,{size:32,type:"dot",icon:"list",ariaLabel:_("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30"),onClick:x})})]}),subRow:o.jsxs(o.Fragment,{children:[c?p||v||d&&b?o.jsx(gr,{label:L?void 0:`${_(S.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${_(d??i)}`,children:b?(b(E).match(/(\d+|[^\d]+)/g)??[]).map((k,D)=>/\d/.test(k)?o.jsx("span",{className:"barchart-total__num h0",children:k},D):o.jsx("span",{className:"barchart-total__unit h5",children:k},D)):o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"barchart-total__num h0",children:E}),u&&o.jsx("span",{className:"barchart-total__unit h5",children:_(u)})]})}):o.jsxs(gr,{children:[o.jsx("span",{className:"barchart-total__num h0",children:E}),o.jsx("span",{className:"barchart-total__unit h5",children:_(i)}),u&&o.jsx("span",{className:"barchart-total__unit h5",children:_(u)})]}):o.jsx("span",{}),o.jsx(gn,{items:W,className:"caption-1"})]}),children:f?o.jsx("div",{className:"manager-bar-chart-loading",children:o.jsx(Ao,{size:32})}):o.jsx(l8,{data:T,colorA:r,colorB:s?n:void 0,labelA:_(i),labelB:s?_(s):void 0,barWidth:A.barWidth,height:A.height,maxOverride:p?100:void 0,tightMax:g,seriesColors:y?.map(k=>k.color),seriesLabels:y?.map(k=>k.label),rateLabels:p?{total:_("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:_("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0})})}function im(e){if(e.period==="month"){const i=e.monthRange.match(/^(\d+)년 (\d+)월$/),s=new Date,c=i?Number(i[1]):s.getFullYear(),u=i?Number(i[2]):s.getMonth()+1;return{from:new Date(c,u-1,1,0,0,0),to:new Date(c,u,0,23,59,59)}}const t=e.weekRanges.find(i=>i.value===e.weekRange);if(!t){const i=new Date;return{from:i,to:i}}const a=ao(t.year,t.month-1),r=new Date(t.year,t.month-1,a+t.week*7,0,0,0),n=new Date(r);return n.setDate(r.getDate()+6),n.setHours(23,59,59),{from:r,to:n}}var u8=".ihabdevteam-core-scope .ring-chart{flex-shrink:0;position:relative}.ihabdevteam-core-scope .ring-chart svg{display:block}.ihabdevteam-core-scope .ring-chart__center{align-items:center;display:flex;flex-direction:column;inset:0;justify-content:center;pointer-events:none;position:absolute}.ihabdevteam-core-scope .ring-chart__center--small{transform:translateY(6.5px)}.ihabdevteam-core-scope .ring-chart__center--medium{transform:translateY(7.5px)}.ihabdevteam-core-scope .ring-chart__center--large{transform:translateY(8.5px)}.ihabdevteam-core-scope .ring-chart__pct{color:var(--color-darkGray);line-height:1}.ihabdevteam-core-scope .ring-chart__label{color:var(--color-lightGray)}.ihabdevteam-core-scope .ring-chart__label--tight{margin-top:-2px}.ihabdevteam-core-scope .ring-chart-section-body{display:flex;justify-content:center}.ihabdevteam-core-scope .ring-chart-section-body--offset{justify-content:flex-end}";Q(u8);const sm={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function lm({done:e,total:t,segments:a,color:r="var(--color-main)",size:n="medium",strokeWidth:i,label:s="%",hideCenter:c=!1,hideLabel:u=!1}){const d=typeof n=="number"?n:sm[n].diameter,m=i??(typeof n=="number"?12:sm[n].strokeWidth),h=d/2,p=(d-m)/2,g=2*Math.PI*p;if(a&&a.length>0){const f=a.reduce((x,_)=>{const C=x.length>0?x[x.length-1].acc:0,A=Math.max(0,Math.min(_.ratio,1-C));return x.push({color:_.color,rotate:-90+C*360,dash:g*A,acc:C+A}),x},[]);return o.jsx("div",{className:"ring-chart",style:{width:d,height:d},children:o.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[o.jsx("circle",{cx:h,cy:h,r:p,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:m}),f.map((x,_)=>x.dash>0&&o.jsx("circle",{cx:h,cy:h,r:p,fill:"none",stroke:x.color,strokeWidth:m,strokeDasharray:`${x.dash} ${g}`,strokeLinecap:"round",transform:`rotate(${x.rotate} ${h} ${h})`},_))]})})}const v=(t??0)>0?Math.min((e??0)/t,1):0,b=g*v,y=g-b;return o.jsxs("div",{className:"ring-chart",style:{width:d,height:d},children:[o.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[o.jsx("circle",{cx:h,cy:h,r:p,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:m}),v>0&&o.jsx("circle",{cx:h,cy:h,r:p,fill:"none",stroke:r,strokeWidth:m,strokeDasharray:`${b} ${y}`,strokeLinecap:v<.02||v>.98?"butt":"round",transform:`rotate(-90 ${h} ${h})`})]}),!c&&o.jsxs("div",{className:`ring-chart__center${u?"":` ${d<=96?"ring-chart__center--small":n==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[o.jsx("span",{className:`ring-chart__pct ${d<=96?"h2":"h1"}`,children:Math.round(v*100)}),!u&&o.jsx("span",{className:`ring-chart__label ${d<=96?"caption-2":"caption-1"}${d<=96||n==="medium"?" ring-chart__label--tight":""}`,children:s})]})]})}function cm({titleKey:e,headRight:t,icon:a,showTotal:r,totalLabelKey:n,legend:i,loading:s,className:c,...u}){const{t:d}=me.useTranslation();if(!e)return o.jsx(lm,{...u});const m=(u.total??0)>0?Math.round(Math.min((u.done??0)/u.total,1)*100):0,h=u.size==="small",p=u.size==="large",g=[c,h?"manager-section--compact":p?"manager-section--full":""].filter(Boolean).join(" ")||void 0,v=a&&o.jsx("span",{className:"chart-section-icon",children:o.jsx(Pe,{icon:a,className:"chart-section-icon-inner"})});return o.jsx(fn,{className:g,title:d(e),titleClassName:h?"h5 chart-section-title--small":void 0,headRight:v||(h?void 0:t),subRow:(r||i)&&o.jsxs(o.Fragment,{children:[r?o.jsxs(gr,{label:!h&&n?d(n):void 0,children:[o.jsx("span",{className:"barchart-total__num h0",children:m}),o.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):o.jsx("span",{}),i&&o.jsx(gn,{items:i})]}),children:s?o.jsx("div",{className:"manager-bar-chart-loading",children:o.jsx(Ao,{size:32})}):o.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:o.jsx(lm,{...u,hideCenter:h||u.hideCenter})})})}var p8=".ihabdevteam-core-scope .manager-stat-card{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-card);container-type:inline-size;display:flex;flex-direction:column;gap:4px;justify-content:flex-start;min-width:160px;padding:20px}.ihabdevteam-core-scope .manager-stat-card--clickable{border:1px solid transparent;cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease}.ihabdevteam-core-scope .manager-stat-card--clickable:hover{border-color:var(--color-main);box-shadow:var(--shadow-dropdown)}.ihabdevteam-core-scope .manager-stat-card__label-row{align-items:center;display:flex;justify-content:space-between;min-height:28px}.ihabdevteam-core-scope .manager-stat-card__label{color:var(--color-deepGray)}.ihabdevteam-core-scope .manager-stat-card__icon{display:inline-flex;opacity:.35}.ihabdevteam-core-scope .manager-stat-card__icon-inner{color:var(--color-darkGray);height:22px;width:22px}.ihabdevteam-core-scope .manager-stat-card__content{align-items:flex-start;display:flex;flex:1;flex-direction:column;gap:var(--spacing-xs);justify-content:space-between}.ihabdevteam-core-scope .manager-stat-card__left{align-items:flex-start;display:flex;flex:1;flex-direction:row;gap:8px;text-align:left}.ihabdevteam-core-scope .manager-stat-card__value{color:var(--color-black);flex-shrink:0;font-size:32px;font-weight:700;letter-spacing:-.5px;line-height:1;white-space:nowrap}.ihabdevteam-core-scope .manager-stat-card__change{font-size:12px;font-weight:500;line-height:1.2;margin-top:1px;min-width:0}.ihabdevteam-core-scope .manager-stat-card__change--up{color:var(--color-sub)}.ihabdevteam-core-scope .manager-stat-card__change--down{color:var(--color-error)}.ihabdevteam-core-scope .manager-stat-card__change--neutral{color:var(--color-gray)}@media (max-width:767px){.ihabdevteam-core-scope .manager-stat-card{padding:12px 14px 16px}.ihabdevteam-core-scope .manager-stat-card__value{font-size:24px}}";Q(p8);function dm({label:e,value:t,change:a,changeType:r,icon:n,tooltip:i,onClick:s}){const c=l.useRef(null),{anchorRect:u,openAt:d,close:m}=_o(),h=l.useCallback(()=>{i&&c.current&&d(c.current)},[i,d]),p=r??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),g=a===void 0?void 0:a>0?`+${a}`:`${a}`,v=l.useCallback(b=>{s&&(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),s())},[s]);return o.jsxs("div",{ref:c,className:`manager-stat-card${s?" manager-stat-card--clickable":""}`,onClick:s,onKeyDown:s?v:void 0,onPointerEnter:h,onPointerLeave:m,onFocus:h,onBlur:m,role:s?"button":void 0,tabIndex:s?0:void 0,"aria-label":s?`${e} ${t}`:void 0,children:[i&&u&&o.jsx(aa,{anchorRect:{left:u.left,top:u.top+21,right:u.right,bottom:u.bottom,width:u.width,height:u.height},text:i}),o.jsxs("div",{className:"manager-stat-card__label-row",children:[o.jsx("span",{className:"manager-stat-card__label h5",children:e}),n&&o.jsx("span",{className:"manager-stat-card__icon",children:o.jsx(Pe,{icon:n,className:"manager-stat-card__icon-inner"})})]}),o.jsx("div",{className:"manager-stat-card__content",children:o.jsxs("div",{className:"manager-stat-card__left",children:[o.jsx("div",{className:"manager-stat-card__value h2",children:t}),g&&o.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${p??"neutral"} caption-1`,children:g})]})})]})}var h8='.ihabdevteam-core-scope .slider{--slider-thumb:40px;--slider-fill:calc(var(--slider-thumb)/2 + var(--slider-ratio, 0)*(100% - var(--slider-thumb)));--slider-fill-color:var(--color-main);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border-radius:999px;cursor:pointer;margin:0;outline:none}.ihabdevteam-core-scope .slider:disabled{--slider-fill-color:var(--color-gray);cursor:not-allowed}.ihabdevteam-core-scope .slider:focus-visible{outline:2px solid var(--color-main);outline-offset:4px}.ihabdevteam-core-scope .slider--horizontal{background:linear-gradient(to right,var(--slider-fill-color) var(--slider-fill),var(--color-darkWhite) var(--slider-fill));height:var(--slider-thumb);width:100%}.ihabdevteam-core-scope .slider--vertical{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to top,var(--slider-fill-color) var(--slider-fill),var(--color-darkWhite) var(--slider-fill));direction:rtl;height:160px;width:var(--slider-thumb);writing-mode:vertical-lr}.ihabdevteam-core-scope .slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-white);border:2px solid var(--slider-fill-color);border-radius:50%;box-shadow:var(--shadow-dropdown);cursor:pointer;height:var(--slider-thumb);width:var(--slider-thumb)}.ihabdevteam-core-scope .slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.ihabdevteam-core-scope .slider::-moz-range-thumb{background:var(--color-white);border:2px solid var(--slider-fill-color);border-radius:50%;box-shadow:var(--shadow-dropdown);cursor:pointer;height:var(--slider-thumb);width:var(--slider-thumb)}.ihabdevteam-core-scope .slider::-moz-range-track{background:transparent}.ihabdevteam-core-scope .slider--static{pointer-events:none}.ihabdevteam-core-scope .slider--static::-webkit-slider-thumb{visibility:hidden}.ihabdevteam-core-scope .slider--static::-moz-range-thumb{visibility:hidden}.ihabdevteam-core-scope .slider-wrap{align-items:center;display:flex;gap:10px}.ihabdevteam-core-scope .slider-wrap--label-left,.ihabdevteam-core-scope .slider-wrap--label-right{flex-direction:row}.ihabdevteam-core-scope .slider-wrap--label-left>.slider,.ihabdevteam-core-scope .slider-wrap--label-left>.slider-track-group,.ihabdevteam-core-scope .slider-wrap--label-right>.slider,.ihabdevteam-core-scope .slider-wrap--label-right>.slider-track-group{flex:1;min-width:0}.ihabdevteam-core-scope .slider-wrap--label-bottom,.ihabdevteam-core-scope .slider-wrap--label-top{flex-direction:column;gap:6px}.ihabdevteam-core-scope .slider-wrap--label-left .slider-wrap__value,.ihabdevteam-core-scope .slider-wrap--label-top .slider-wrap__value{order:-1}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-left,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-left{align-items:flex-start}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-center,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-center{align-items:center}.ihabdevteam-core-scope .slider-wrap--label-bottom.slider-wrap--align-right,.ihabdevteam-core-scope .slider-wrap--label-top.slider-wrap--align-right{align-items:flex-end}.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-bottom>.slider,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-bottom>.slider-track-group,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-top>.slider,.ihabdevteam-core-scope .slider-wrap--horizontal.slider-wrap--label-top>.slider-track-group{align-self:stretch}.ihabdevteam-core-scope .slider-wrap__value{font-feature-settings:"tnum";color:var(--color-main);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}.ihabdevteam-core-scope .slider-wrap--label-left .slider-wrap__value,.ihabdevteam-core-scope .slider-wrap--label-right .slider-wrap__value{min-width:2.5em;text-align:right}.ihabdevteam-core-scope .slider-track-group{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .slider-track-group--horizontal{flex-direction:row}.ihabdevteam-core-scope .slider-track-group--horizontal .slider{flex:1;min-width:0}.ihabdevteam-core-scope .slider-track-group--vertical{flex-direction:column}.ihabdevteam-core-scope .slider-wrap__minmax{font-feature-settings:"tnum";color:var(--color-lightGray);flex-shrink:0;font-variant-numeric:tabular-nums;white-space:nowrap}';Q(h8);function Ol({value:e,onChange:t,min:a=0,max:r=100,step:n=1,orientation:i="horizontal",size:s=24,disabled:c=!1,ariaLabel:u,length:d,className:m,label:h,formatValue:p,labelPos:g,labelAlign:v="right",showMinMax:b=!1,minLabel:y,maxLabel:f,showBgTick:x=!1,showFillTick:_=!1,tickStep:C,tickShape:A="dot"}){const w=Math.min(r,Math.max(a,e)),S=r>a?(w-a)/(r-a):0,N=i==="vertical",T=!t,E=H=>t?.(Number(H.target.value)),W=typeof d=="number"?`${d}px`:d,L={"--slider-ratio":String(S),"--slider-thumb":`${s}px`,...W?N?{height:W}:{width:W}:{}},k=C??n,D=(x||_)&&k>0&&r>a?Math.floor((r-a)/k+1e-6):0;if(D>0&&D<=100){const H=A!=="dash",$=ne=>H?`radial-gradient(circle, ${ne} 0.5px, transparent 1px)`:N?`linear-gradient(to bottom, transparent calc(50% - 2px), ${ne} calc(50% - 2px), ${ne} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${ne} calc(50% - 2px), ${ne} calc(50% + 2px), transparent calc(50% + 2px))`,q=H?"2px":"4px",O=[],G=[],I=[];for(let ne=0;ne<=D;ne++){const X=ne*k/(r-a);if(X>1+1e-6)break;const te=`${((N?1-X:X)*100).toFixed(4)}%`,pe=X<=S+1e-6;if(pe?!_:!x)continue;const ae=pe?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";O.push($(ae)),G.push(N?`${q} var(--slider-thumb)`:`var(--slider-thumb) ${q}`),I.push(N?`center ${te}`:`${te} center`)}O.push(N?"linear-gradient(to top, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))":"linear-gradient(to right, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))"),G.push("100% 100%"),I.push("0 0"),L.backgroundImage=O.join(", "),L.backgroundSize=G.join(", "),L.backgroundPosition=I.join(", "),L.backgroundRepeat="no-repeat"}const j=o.jsx("input",{type:"range",className:xe("slider",`slider--${i}`,T&&"slider--static",!h&&!b&&m),min:a,max:r,step:n,value:w,disabled:c,readOnly:T,tabIndex:T?-1:void 0,"aria-label":u,"aria-orientation":i,onChange:E,style:L});if(!h&&!b)return j;const F=o.jsx("span",{className:"slider-wrap__minmax caption-1",children:y??a}),ee=o.jsx("span",{className:"slider-wrap__minmax caption-1",children:f??r}),Z=b?o.jsxs("div",{className:xe("slider-track-group",`slider-track-group--${i}`,!h&&m),children:[N?ee:F,j,N?F:ee]}):j;if(!h)return Z;const J=g??(N?"bottom":"right"),M=`${Math.round(r>a?(w-a)/(r-a)*100:0)}%`,R=p?p(w):h==="percent"?M:h==="count"?`${w} / ${r}`:String(w),z=o.jsx("span",{className:"slider-wrap__value body-3b",children:R});return o.jsxs("div",{className:xe("slider-wrap",`slider-wrap--${i}`,`slider-wrap--label-${J}`,`slider-wrap--align-${v}`,m),children:[Z,z]})}var m8='.ihabdevteam-core-scope .audio-meter{align-items:center;display:inline-flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .audio-meter__track{--meter-level:0;background:var(--color-darkWhite);border-radius:999px;flex-shrink:0;overflow:hidden;position:relative}.ihabdevteam-core-scope .audio-meter__fill{inset:0;position:absolute}.ihabdevteam-core-scope .audio-meter__value{font-feature-settings:"tnum";color:var(--color-gray);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;width:40px}.ihabdevteam-core-scope .audio-meter--horizontal .audio-meter__track{height:8px;width:120px}.ihabdevteam-core-scope .audio-meter--horizontal .audio-meter__fill{background:linear-gradient(to right,var(--color-success) 0,var(--color-success) 55%,var(--color-warn) 80%,var(--color-error) 100%);transform:scaleX(var(--meter-level));transform-origin:left}.ihabdevteam-core-scope .audio-meter--vertical{flex-direction:column}.ihabdevteam-core-scope .audio-meter--vertical .audio-meter__track{height:120px;width:8px}.ihabdevteam-core-scope .audio-meter--vertical .audio-meter__fill{background:linear-gradient(to top,var(--color-success) 0,var(--color-success) 55%,var(--color-warn) 80%,var(--color-error) 100%);transform:scaleY(var(--meter-level));transform-origin:bottom}.ihabdevteam-core-scope .audio-meter.audio-meter--label-left,.ihabdevteam-core-scope .audio-meter.audio-meter--label-right{flex-direction:row}.ihabdevteam-core-scope .audio-meter.audio-meter--label-bottom,.ihabdevteam-core-scope .audio-meter.audio-meter--label-top{flex-direction:column}.ihabdevteam-core-scope .audio-meter--label-left .audio-meter__value,.ihabdevteam-core-scope .audio-meter--label-top .audio-meter__value{order:-1}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-left,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-left{align-items:flex-start}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-center,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-center{align-items:center}.ihabdevteam-core-scope .audio-meter--label-bottom.audio-meter--align-right,.ihabdevteam-core-scope .audio-meter--label-top.audio-meter--align-right{align-items:flex-end}';Q(m8);const b8=.86,g8=250,Fl=(e,t,a,r)=>{const n=Math.round(Math.min(r,Math.max(a,e-t)));return`${n<0?"-":"+"}${Math.abs(n)} dB`};function vn({analyser:e,audioElement:t,orientation:a="horizontal",length:r,label:n,labelPos:i,labelAlign:s="right",floorDb:c=-60,refDb:u=-35,displayMin:d=-5,displayMax:m=25,className:h,ariaLabel:p}){const g=l.useRef(null),v=l.useRef(null),b=l.useRef(null);l.useEffect(()=>{const _=e??Ho(t),C=g.current;if(!_||!C){C?.style.setProperty("--meter-level","0"),v.current&&(v.current.textContent=Fl(c,u,d,m));return}Wo();const A=new Float32Array(_.fftSize);let w=0,S=0,N=0,T=0,E=null;const W=L=>{const k=ti(_,A);w=k>w?k:w*b8;const D=w>1e-5?20*Math.log10(w):-1/0,j=Math.max(c,D),F=j-u,ee=Math.min(1,Math.max(0,(F-d)/(m-d)));if(C.style.setProperty("--meter-level",ee.toFixed(3)),v.current&&(S+=j,N+=1,L-T>=g8)){const Z=S/N;E=E==null?Z:E*.6+Z*.4,v.current.textContent=Fl(E,u,d,m),S=0,N=0,T=L}b.current=requestAnimationFrame(W)};return b.current=requestAnimationFrame(W),()=>{b.current!=null&&cancelAnimationFrame(b.current),b.current=null}},[e,t,c,u,d,m]);const y=typeof r=="number"?`${r}px`:r,f=o.jsx("div",{className:"audio-meter__track",style:y?a==="vertical"?{height:y}:{width:y}:{},children:o.jsx("div",{ref:g,className:"audio-meter__fill"})}),x=i??(a==="vertical"?"bottom":"right");return o.jsxs("div",{className:xe("audio-meter",`audio-meter--${a}`,n&&`audio-meter--label-${x}`,n&&`audio-meter--align-${s}`,h),role:"meter","aria-label":p,children:[f,n&&o.jsx("span",{ref:v,className:"audio-meter__value caption-2",children:Fl(c,u,d,m)})]})}const Wl=500;function Hl({message:e,position:t,duration:a,onClose:r}){const[n,i]=l.useState(!1),[s,c]=l.useState(!1),u=l.useRef(s),d=l.useRef(n);l.useEffect(()=>{u.current=s},[s]),l.useEffect(()=>{d.current=n},[n]);const m=l.useRef(null),h=l.useRef(""),p=l.useRef(r);l.useEffect(()=>{p.current=r});const g=a,v=l.useRef(null),b=l.useRef(null),y=l.useRef(null),f=l.useRef(null),x=l.useRef(null);return l.useEffect(()=>{if(e!==h.current&&(v.current&&(clearTimeout(v.current),v.current=null),b.current&&(clearTimeout(b.current),b.current=null)),e){if(d.current)return g>0&&!v.current&&(v.current=setTimeout(()=>{i(!1),b.current=setTimeout(()=>{c(!1);try{p.current()}catch{}},Wl)},g)),h.current=e,()=>{};const _=()=>{const C=m.current;if(C)try{C.classList.remove("is-visible"),C.style.transition="none",t==="top"?C.style.transform="translateX(-50%) translateY(-16px)":C.style.transform="translateX(-50%) translateY(16px)",C.style.opacity="0",C.offsetWidth,C.style.transition="",C.classList.add("is-visible"),x.current&&clearTimeout(x.current),x.current=setTimeout(()=>{x.current=null;try{C.style.opacity="",C.style.transform="",C.style.transition=""}catch{}},60)}catch{}};u.current?(_(),i(!0)):(c(!0),y.current=requestAnimationFrame(()=>{f.current=requestAnimationFrame(()=>{_(),i(!0)})})),g>0&&(v.current=setTimeout(()=>{i(!1),b.current=setTimeout(()=>{c(!1);try{p.current()}catch{}},Wl)},g))}else i(!1),b.current=setTimeout(()=>c(!1),Wl);return h.current=e,()=>{v.current&&clearTimeout(v.current),b.current&&clearTimeout(b.current),y.current&&cancelAnimationFrame(y.current),f.current&&cancelAnimationFrame(f.current),x.current&&clearTimeout(x.current),v.current=null,b.current=null,y.current=null,f.current=null,x.current=null}},[e,g,t]),{mounted:s,showing:n,popupRef:m}}var f8=".ihabdevteam-core-scope .toast{left:50%;pointer-events:none;position:fixed;transform:translateX(-50%);will-change:transform,opacity;z-index:var(--z-toast)}.ihabdevteam-core-scope .toast__inner{align-items:center;background:var(--color-main);border-radius:var(--radius-m);box-shadow:var(--shadow-popup);box-sizing:border-box;color:#fff;display:flex;justify-content:center;margin:0;max-width:min(520px,calc(100vw - 32px));min-height:60px;min-width:min(360px,calc(100vw - 32px));overflow:hidden;padding:var(--spacing-content);pointer-events:auto;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .toast__inner--normal{background:linear-gradient(var(--color-white),var(--color-white)) padding-box,linear-gradient(135deg,var(--color-main),var(--color-sub)) border-box;border:2px solid transparent;color:var(--color-black)}.ihabdevteam-core-scope .toast__inner--notice{background:linear-gradient(135deg,var(--color-main),var(--color-sub));color:#fff}.ihabdevteam-core-scope .toast__inner--warning{background:var(--color-error);color:#fff}.ihabdevteam-core-scope .toast--top{opacity:0;top:18px;transform:translateX(-50%) translateY(-100%);transition:transform .26s cubic-bezier(.22,.9,.3,1),opacity .18s ease-out}.ihabdevteam-core-scope .toast--top.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}.ihabdevteam-core-scope .toast--bottom{bottom:18px;opacity:0;transform:translateX(-50%) translateY(100%);transition:transform .26s cubic-bezier(.22,.9,.3,1),opacity .18s ease-out}.ihabdevteam-core-scope .toast--bottom.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}";Q(f8);function oo({message:e="",position:t="top",type:a="normal",onClose:r=()=>{},duration:n=2e3}){const{mounted:i,showing:s,popupRef:c}=Hl({message:e,position:t,duration:n,onClose:r});if(!i)return null;const u=a==="notice"||a==="warning"?a:"normal",d=o.jsx("div",{ref:c,className:`toast toast--${t} ${s?"is-visible":""}`,role:"status","aria-live":"polite",children:o.jsx("div",{className:`toast__inner toast__inner--${u} body-2`,children:e})});return typeof document<"u"?qt.createPortal(d,document.body):d}var v8='.ihabdevteam-core-scope .progress-bar{flex-shrink:0}.ihabdevteam-core-scope .progress-bar__track{background:var(--progress-bar-track,var(--color-darkWhite));border-radius:999px;height:8px;height:var(--progress-bar-height,8px);overflow:hidden;width:100%}.ihabdevteam-core-scope .progress-bar__fill{background:var(--progress-bar-fill,var(--color-main));border-radius:inherit;height:100%;transition:width .3s ease;transition:width var(--progress-bar-duration,.3s) ease}.ihabdevteam-core-scope .progress-bar__label{font-feature-settings:"tnum";color:var(--progress-bar-label-color,var(--color-gray));font-variant-numeric:tabular-nums}.ihabdevteam-core-scope .progress-bar--4{--progress-bar-height:4px}.ihabdevteam-core-scope .progress-bar--8{--progress-bar-height:8px}.ihabdevteam-core-scope .progress-bar--16{--progress-bar-height:16px}.ihabdevteam-core-scope .progress-bar--24{--progress-bar-height:24px}.ihabdevteam-core-scope .progress-bar--32{--progress-bar-height:32px}.ihabdevteam-core-scope .progress-bar--label-left,.ihabdevteam-core-scope .progress-bar--label-right{align-items:center;display:flex;gap:10px}.ihabdevteam-core-scope .progress-bar--label-left>.progress-bar__track,.ihabdevteam-core-scope .progress-bar--label-right>.progress-bar__track{flex:1;min-width:0}.ihabdevteam-core-scope .progress-bar--label-left .progress-bar__label{order:-1}.ihabdevteam-core-scope .progress-bar--label-bottom,.ihabdevteam-core-scope .progress-bar--label-top{display:flex;flex-direction:column;gap:6px}.ihabdevteam-core-scope .progress-bar--label-top .progress-bar__label{order:-1}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-left,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-left{align-items:flex-start}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-center,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-center{align-items:center}.ihabdevteam-core-scope .progress-bar--label-bottom.progress-bar--align-right,.ihabdevteam-core-scope .progress-bar--label-top.progress-bar--align-right{align-items:flex-end}.ihabdevteam-core-scope .progress-bar--label-bottom>.progress-bar__track,.ihabdevteam-core-scope .progress-bar--label-top>.progress-bar__track{align-self:stretch}.ihabdevteam-core-scope .progress-bar--label-inside{position:relative}.ihabdevteam-core-scope .progress-bar--label-inside .progress-bar__label{pointer-events:none;position:absolute;top:50%}.ihabdevteam-core-scope .progress-bar--label-on-fill .progress-bar__label{color:var(--progress-bar-label-color-on-fill,var(--color-deepWhite))}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-left .progress-bar__label{left:10px;transform:translateY(-50%)}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-center .progress-bar__label{left:50%;transform:translate(-50%,-50%)}.ihabdevteam-core-scope .progress-bar--label-inside.progress-bar--align-right .progress-bar__label{right:10px;transform:translateY(-50%)}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .progress-bar__fill{transition:none}}';Q(v8);const y8=24;function um({value:e,max:t=100,size:a=8,color:r,trackColor:n,label:i,formatValue:s,labelPos:c,labelAlign:u="right",ariaLabel:d,className:m}){const h=Number.isFinite(t)&&t>0?t:1,p=Math.max(0,Math.min(Number.isFinite(e)?e:0,h)),g=p/h*100,v=c??(a>=y8?"inside":"bottom"),b=v==="center"?"inside":v,y=b==="inside"&&(u==="left"?g>=15:u==="center"?g>=50:g>=85),f={};return r&&(f["--progress-bar-fill"]=r),n&&(f["--progress-bar-track"]=n),o.jsxs("div",{className:xe("progress-bar",`progress-bar--${a}`,`progress-bar--label-${b}`,i&&`progress-bar--align-${u}`,i&&y&&"progress-bar--label-on-fill",m),style:f,children:[o.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":p,"aria-valuemin":0,"aria-valuemax":h,"aria-label":d,children:o.jsx("div",{className:"progress-bar__fill",style:{width:`${g}%`}})}),i&&o.jsx("span",{className:"progress-bar__label caption-1b",children:s?s(p):i==="percent"?`${Math.round(g)}%`:i==="raw"?String(p):`${p} / ${h}`})]})}var x8=".ihabdevteam-core-scope .progress-indicator{align-items:center;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .progress-indicator-dot{align-items:center;background:var(--pi-inactive-bg,var(--color-whiteLine));border-radius:var(--radius-card);color:var(--pi-inactive-color,var(--color-gray));display:inline-flex;height:28px;justify-content:center;width:52px}.ihabdevteam-core-scope .progress-indicator-dot.done{background:var(--color-main);color:#fff}.ihabdevteam-core-scope .progress-indicator-dot.active{background:var(--color-sub);color:#fff}@media (max-width:1024px){.ihabdevteam-core-scope .progress-indicator{gap:6px}.ihabdevteam-core-scope .progress-indicator-dot{height:28px;width:44px}}@media (max-width:767px){.ihabdevteam-core-scope .progress-indicator--mobile .progress-indicator-dot{height:28px;padding:0 12px;width:auto}}.ihabdevteam-core-scope .progress-indicator--dot{gap:var(--spacing-xs)}.ihabdevteam-core-scope .progress-indicator-dot--dot{background:var(--pi-inactive-bg,var(--color-darkWhite));border-radius:var(--radius-full);height:8px;transition:width .2s ease-out,background .2s ease-out;width:8px}.ihabdevteam-core-scope .progress-indicator-dot--dot.done{background:color-mix(in srgb,var(--color-main) 40%,transparent)}.ihabdevteam-core-scope .progress-indicator-dot--dot.active{background:var(--color-main);width:24px}@media (prefers-reduced-motion:reduce){.ihabdevteam-core-scope .progress-indicator-dot--dot{transition:none}}";Q(x8);const C8="rgba(255, 255, 255, 0.16)";function Vl({max:e,index:t,inactiveBg:a,inactiveColor:r,transparent:n,variant:i="numbered",announce:s=!1}){const{t:c}=me.useTranslation(),u=oa("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const d=Number.isInteger(t)?Math.max(0,Math.min(t,e-1)):0,m=c("progress.steps",{current:d+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),h={};return a&&(h["--pi-inactive-bg"]=a),r&&(h["--pi-inactive-color"]=r),n&&(a||(h["--pi-inactive-bg"]=C8),r||(h["--pi-inactive-color"]="var(--color-white)")),i==="dot"?o.jsx("div",{className:"progress-indicator progress-indicator--dot",style:h,role:s?"status":"img","aria-label":m,children:Array.from({length:e}).map((p,g)=>o.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${g<d?" done":g===d?" active":""}`},g))}):u?o.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:h,role:"list","aria-label":m,children:o.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[d+1," / ",e]})}):o.jsx("div",{className:"progress-indicator",style:h,role:"list","aria-label":m,children:Array.from({length:e}).map((p,g)=>o.jsx("span",{role:"listitem","aria-current":g===d?"step":void 0,className:`progress-indicator-dot ${g<d?" done":g===d?" active":""} body-3`,children:g+1},g))})}function _8(e){if(!e)return[];const t=[];let a=0,r="";for(const n of e.trim()){if(n==="("?a++:n===")"&&a--,/\s/.test(n)&&a===0){r&&(t.push(r),r="");continue}r+=n}return r&&t.push(r),t}var w8=".ihabdevteam-core-scope .table-wrap{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);overflow-x:auto}.ihabdevteam-core-scope .table{width:100%}.ihabdevteam-core-scope .table-header{align-items:center;border-bottom:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;gap:8px;padding:0 16px;text-align:left;width:100%}.ihabdevteam-core-scope .table-header[role=button]{cursor:pointer;transition:background .15s}.ihabdevteam-core-scope .table-header[role=button]:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-header__chevron{align-items:center;color:var(--color-gray);display:flex;flex-shrink:0}.ihabdevteam-core-scope .table-header__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .table-header__title{color:var(--color-darkGray)}.ihabdevteam-core-scope .table-header__count{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .table-header__actions{align-items:center;display:flex;flex-shrink:0;gap:4px;margin-left:auto}.ihabdevteam-core-scope .table-header__action-button{background:none;border:none;border-radius:4px;color:var(--color-gray);cursor:pointer;line-height:1;padding:2px 6px;transition:background .12s,color .12s}.ihabdevteam-core-scope .table-header__action-button:hover{background:var(--color-darkWhite);color:var(--color-main)}.ihabdevteam-core-scope .table-header__action-button--delete:hover{background:#ffeef0;background:var(--color-error-bg,#ffeef0);color:#e03131;color:var(--color-error,#e03131)}.ihabdevteam-core-scope .table-wrap--collapsed .table-header{border-bottom:none}.ihabdevteam-core-scope .table-wrap--dragover{outline:2px dashed var(--color-main);outline-offset:-2px}.ihabdevteam-core-scope .table-wrap--dragover .table-header{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-fields{border-bottom:1px solid var(--color-whiteLine);display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-template-columns:var(--table-grid-cols,repeat(auto-fit,minmax(80px,1fr)))}.ihabdevteam-core-scope .table-body{display:flex;flex-direction:column}.ihabdevteam-core-scope .table-row-wrap{border-bottom:1px solid var(--color-darkWhite);display:flex;flex-direction:column}.ihabdevteam-core-scope .table-row-wrap:last-child{border-bottom:none}.ihabdevteam-core-scope .table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-template-columns:var(--table-grid-cols,repeat(auto-fit,minmax(80px,1fr)))}.ihabdevteam-core-scope .table-row-expand{background:var(--color-darkWhite);border-top:1px solid var(--color-whiteLine);display:flex;flex-wrap:wrap;gap:12px;padding:16px 20px}.ihabdevteam-core-scope .table-wrap--small .table-fields,.ihabdevteam-core-scope .table-wrap--small .table-header,.ihabdevteam-core-scope .table-wrap--small .table-row{min-height:48px}.ihabdevteam-core-scope .table-wrap--medium .table-fields,.ihabdevteam-core-scope .table-wrap--medium .table-header,.ihabdevteam-core-scope .table-wrap--medium .table-row{min-height:56px}.ihabdevteam-core-scope .table-wrap--large .table-fields,.ihabdevteam-core-scope .table-wrap--large .table-header,.ihabdevteam-core-scope .table-wrap--large .table-row{min-height:64px}.ihabdevteam-core-scope .table-fields.table-fields--groups{min-height:34px}.ihabdevteam-core-scope .table-row--clickable{cursor:pointer;transition:background .1s,box-shadow .1s}.ihabdevteam-core-scope .table-row--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .table-row--draggable{cursor:grab}.ihabdevteam-core-scope .table-row--draggable:active{cursor:grabbing}.ihabdevteam-core-scope .table-row--dragging{opacity:.4}.ihabdevteam-core-scope .table-row--empty,.ihabdevteam-core-scope .table-row--loading{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .table-row--empty{color:var(--color-lightGray);padding:0 20px}.ihabdevteam-core-scope .table-wrap--small .table-row--empty{min-height:48px}.ihabdevteam-core-scope .table-wrap--medium .table-row--empty{min-height:56px}.ihabdevteam-core-scope .table-wrap--large .table-row--empty{min-height:64px}";Q(w8);var k8=".ihabdevteam-core-scope .table-cell{align-items:center;color:var(--color-darkGray);display:flex;min-width:0;overflow:hidden;overflow-wrap:break-word;padding:0 16px;word-break:break-word}";Q(k8);var S8='.ihabdevteam-core-scope .table-field{align-items:center;color:var(--color-gray);cursor:pointer;display:flex;gap:0;min-width:0;overflow:hidden;padding:0 16px;text-align:left;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ihabdevteam-core-scope .table-field--resizable{position:relative}.ihabdevteam-core-scope .table-field__resizer{align-items:center;cursor:col-resize;display:flex;height:100%;justify-content:flex-end;position:absolute;right:0;top:0;touch-action:none;width:10px;z-index:3}.ihabdevteam-core-scope .table-field__resizer:after{background:var(--color-whiteLine);content:"";height:55%;transition:background-color .12s,width .12s,height .12s;width:1px}.ihabdevteam-core-scope .table-field__resizer:active:after,.ihabdevteam-core-scope .table-field__resizer:hover:after{background:var(--color-main);height:100%;width:2px}.ihabdevteam-core-scope .table-field--sorted,.ihabdevteam-core-scope .table-field:hover{color:var(--color-main)}.ihabdevteam-core-scope .table-field__sort-arrow{flex-shrink:0}';Q(S8);function A8({children:e,className:t,style:a}){return o.jsx("div",{className:t?`table-cell ${t}`:"table-cell",style:a,children:e})}function Gl({variant:e="default",children:t,className:a,draggable:r,onClick:n,onMouseEnter:i,onMouseLeave:s,onDragStart:c,onDragEnd:u,expandedContent:d}){const m=l.useCallback(h=>{n&&h.target===h.currentTarget&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),n())},[n]);return e==="loading"?o.jsx("div",{className:"table-row-wrap",children:o.jsx("div",{className:"table-row table-row--loading",children:o.jsx(Ao,{size:28})})}):e==="empty"?o.jsx("div",{className:"table-row-wrap",children:o.jsx("div",{className:"table-row table-row--empty body-3",children:t})}):o.jsxs("div",{className:"table-row-wrap",children:[o.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:r,onClick:n,onKeyDown:n?m:void 0,onMouseEnter:i,onMouseLeave:s,onDragStart:c,onDragEnd:u,role:n?"button":void 0,tabIndex:n?0:void 0,children:t}),d&&o.jsx("div",{className:"table-row-expand",children:d})]})}function T8({dir:e}){return o.jsx(e==="asc"?nd:rd,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function B8({children:e,onClick:t,className:a,sortDir:r,onResizeStart:n}){const i=l.useCallback(s=>{t&&s.target===s.currentTarget&&(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),t())},[t]);return o.jsxs("div",{onClick:t,onKeyDown:t?i:void 0,role:t?"button":void 0,tabIndex:t?0:void 0,"aria-sort":r?r==="asc"?"ascending":"descending":void 0,className:xe("table-field body-3",a,r?"table-field--sorted":"",n?"table-field--resizable":""),children:[e,r&&o.jsx(T8,{dir:r}),n&&o.jsx("span",{className:"table-field__resizer",onPointerDown:n,onClick:s=>s.stopPropagation(),"aria-hidden":"true"})]})}function yn({fields:e=[],headerGroups:t,items:a=[],renderRow:r,onRowClick:n,onRowMouseEnter:i,onRowMouseLeave:s,onRowDragStart:c,onRowDragEnd:u,draggingId:d,gridTemplateColumns:m,resizable:h=!1,resizeMode:p="grow",resizeStorageKey:g,size:v="small",title:b,icon:y,count:f,collapsed:x=!1,onToggleCollapse:_,headerActions:C,empty:A,loading:w,dragOver:S=!1,onDragOver:N,onDragLeave:T,onDrop:E,renderExpandedRow:W,expandedId:L}){const{t:k}=me.useTranslation(),D=48,j=g?`table-cols:${g}`:null,F=l.useRef(null),ee=l.useRef(null),[Z,J]=l.useState(()=>{if(!j||typeof window>"u")return null;try{const X=JSON.parse(window.localStorage.getItem(j)??"null");return Array.isArray(X)&&X.every(te=>typeof te=="number")?X:null}catch{return null}}),M=l.useRef(Z);l.useEffect(()=>{M.current=Z},[Z]);const R=l.useCallback(X=>{const te=ee.current;te&&J(pe=>{if(!pe)return pe;const ae=[...pe];if(te.next!=null&&te.startWNext!=null){const Y=X.clientX-te.startX,de=Math.max(D-te.startW,Math.min(te.startWNext-D,Y));ae[te.index]=te.startW+de,ae[te.next]=te.startWNext-de}else ae[te.index]=Math.max(D,te.startW+(X.clientX-te.startX));return ae})},[]),z=l.useCallback(()=>{if(ee.current=null,window.removeEventListener("pointermove",R),window.removeEventListener("pointerup",z),document.body.style.cursor="",document.body.style.userSelect="",j&&M.current)try{window.localStorage.setItem(j,JSON.stringify(M.current))}catch{}},[R,j]),H=l.useCallback((X,te)=>{te.preventDefault(),te.stopPropagation();const pe=F.current;if(!pe)return;const ae=Array.from(pe.children).map(de=>de.getBoundingClientRect().width),Y=p==="fit"?e.findIndex((de,fe)=>fe>X&&de.resizable!==!1):-1;ee.current=Y>=0?{index:X,startX:te.clientX,startW:ae[X],next:Y,startWNext:ae[Y]}:{index:X,startX:te.clientX,startW:ae[X]},J(ae),window.addEventListener("pointermove",R),window.addEventListener("pointerup",z),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[R,z,p,e]);l.useEffect(()=>()=>{ee.current&&(window.removeEventListener("pointermove",R),window.removeEventListener("pointerup",z),document.body.style.cursor="",document.body.style.userSelect="")},[R,z]);const $=_8(m),q=X=>/^\d+(\.\d+)?px$/.test($[X]??""),O=X=>p==="fit"&&!q(X)?"fr":"px",G=Z&&Z.length===e.length&&(p==="fit"||a.length>0)?e.map((X,te)=>X.resizable===!1&&$[te]?$[te]:`${Z[te]}${O(te)}`).join(" "):m,I=G?{"--table-grid-cols":G}:void 0,ne=b!==void 0;return o.jsx("div",{className:`table-wrap table-wrap--${v}${S?" table-wrap--dragover":""}${x?" table-wrap--collapsed":""}`,style:I,onDragOver:N,onDragLeave:T,onDrop:E,children:o.jsxs("div",{className:"table body-2",children:[ne&&o.jsxs("div",{className:"table-header",onClick:_,role:_?"button":void 0,tabIndex:_?0:void 0,"aria-expanded":_?!x:void 0,onKeyDown:_?X=>{(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),_())}:void 0,children:[_&&o.jsx(ce,{size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:x?"chevron-right":"chevron-down",ariaLabel:x?k("common.expand","\uD3BC\uCE58\uAE30"):k("common.collapse","\uC811\uAE30"),className:"table-header__chevron"}),y&&o.jsx(Pe,{icon:y,label:typeof b=="string"?b:void 0,className:"table-header__icon"}),o.jsx("span",{className:"table-header__title h5b",children:b}),f!==void 0&&o.jsx("span",{className:"table-header__count body-3b",children:f}),C&&o.jsx("span",{className:"table-header__actions",onClick:X=>X.stopPropagation(),children:C})]}),!x&&o.jsxs(o.Fragment,{children:[t&&t.length>0&&o.jsx("div",{className:"table-fields table-fields--groups",children:t.map((X,te)=>o.jsx("div",{className:xe("table-field body-3",X.className),style:{gridColumn:`span ${X.span}`},children:X.label},te))}),o.jsx("div",{className:"table-fields",ref:F,children:e.map((X,te)=>o.jsx(B8,{onClick:X.onClick,className:X.className,sortDir:X.sortDir,onResizeStart:h&&te<e.length-1&&X.resizable!==!1&&(p!=="fit"||e.some((pe,ae)=>ae>te&&pe.resizable!==!1))?pe=>H(te,pe):void 0,children:X.label},te))}),o.jsx("div",{className:"table-body",children:w?o.jsx(Gl,{variant:"loading"}):a.length===0&&A?o.jsx(Gl,{variant:"empty",children:A}):a.map((X,te)=>{const pe=d!=null&&X.id===d,ae=L!=null&&(L instanceof Set?L.has(X.id):X.id===L);return o.jsx(Gl,{className:`${n?" table-row--clickable":""}${c?" table-row--draggable":""}${pe?" table-row--dragging":""}`.trim(),draggable:!!c,onClick:n?()=>n(X):void 0,onMouseEnter:i?Y=>i(X,Y):void 0,onMouseLeave:s?Y=>s(X,Y):void 0,onDragStart:c?Y=>c(X,Y):void 0,onDragEnd:u?Y=>u(X,Y):void 0,expandedContent:ae&&W?W(X):void 0,children:r(X).map((Y,de)=>o.jsx(A8,{className:Y.className,style:Y.style,children:Y.content},de))},String(X.id??te))})})]})]})})}function pm(e){switch(e){case"\uBCF4\uCCAD\uAE30":return"main";case"\uC778\uACF5\uC640\uC6B0":return"sub";default:return"default"}}var N8=".ihabdevteam-core-scope .dlp-popup .popup-panel{max-width:600px}.ihabdevteam-core-scope .dlp-empty{color:var(--color-gray);padding:32px 20px;text-align:center}.ihabdevteam-core-scope .dlp-table{border-collapse:collapse;font-size:13px;width:100%}.ihabdevteam-core-scope .dlp-table thead tr{border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .dlp-table th{color:var(--color-lightGray);font-weight:500;padding:8px 12px;text-align:left;white-space:nowrap}.ihabdevteam-core-scope .dlp-row{border-bottom:1px solid var(--color-darkWhite);cursor:pointer;transition:background .1s}.ihabdevteam-core-scope .dlp-row:hover{background:#f5f5f5;background:var(--color-hoverBg,#f5f5f5)}.ihabdevteam-core-scope .dlp-row:last-child{border-bottom:none}.ihabdevteam-core-scope .dlp-table td{color:var(--color-darkGray);padding:10px 12px;vertical-align:middle}.ihabdevteam-core-scope .dlp-date{color:var(--color-lightGray);white-space:nowrap}.ihabdevteam-core-scope .dlp-delete{background:none;border:none;border-radius:4px;color:var(--color-lightGray);cursor:pointer;font-size:12px;padding:4px 8px;transition:color .1s,background .1s}.ihabdevteam-core-scope .dlp-delete:hover{background:#fdecea;background:var(--color-errorBg,#fdecea);color:#e53935;color:var(--color-error,#e53935)}.ihabdevteam-core-scope .dlp-side-table{margin-top:0}.ihabdevteam-core-scope .dlp-side-pick{display:flex;justify-content:flex-start;margin-bottom:8px}.ihabdevteam-core-scope .dlp-worn-check{align-items:center;display:inline-flex}.ihabdevteam-core-scope .dlp-row-actions{align-items:center;display:flex;justify-content:flex-end}.ihabdevteam-core-scope .dlp-worn-side{color:#3b82f6;color:var(--color-main,#3b82f6);font-weight:600}";Q(N8);function hm(e,t){return t!=="wornAt"?String(e[t]??""):e.wornYear?`${e.wornYear}-${e.wornMonth.padStart(2,"0")}-${e.wornDay.padStart(2,"0")}`:""}function mm({rows:e,onSelect:t,onDelete:a,onWear:r,onRelease:n,onAdd:i}){const{t:s}=me.useTranslation(),c=v=>v==="\uC88C"?s("device.direction.left","\uC88C"):s("device.direction.right","\uC6B0"),{\uC815\uB82C:u,\uCE78:d}=ol(),m=l.useMemo(()=>{if(!u)return e;const{key:v,asc:b}=u;return[...e].sort((y,f)=>{const x=v==="worn"?Number(f.worn)-Number(y.worn):hm(y,v).localeCompare(hm(f,v),"ko");return b?x:-x})},[e,u]),{pageRows:h,pageSizeProps:p,paginationProps:g}=al(m,u);return o.jsxs("div",{className:"dlp-side-table",children:[o.jsx(mn,{count:{value:e.length,unit:s("customers.device.unit","\uAC1C")},pageSize:p,pagination:g,actions:i&&o.jsx(ce,{size:40,type:"bar",variant:"main",icon:"plus",label:s("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:i})}),o.jsx(yn,{resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...d(s("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},d(s("device.direction.label","\uBC29\uD5A5"),"side"),d(s("device.deviceType","\uC885\uB958"),"device"),d(s("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),d(s("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),d(s("device.productName","\uC81C\uD488\uBA85"),"productName"),d(s("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...a?[{label:"",resizable:!1}]:[]],items:h.map((v,b)=>({id:v.id??`${v.side}-${b}`,row:v})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${a?" 80px":""}`,renderRow:({row:v})=>[{content:o.jsx("span",{className:"dlp-worn-check",onClick:b=>b.stopPropagation(),children:o.jsx(Rl,{checked:v.worn,disabled:!r||!n,ariaLabel:v.worn?s("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):s("customers.device.wear","\uCC29\uC6A9"),onChange:b=>{b?r?.(v):n?.(v)}})})},{content:o.jsx("span",{children:c(v.side)})},{content:v.device?o.jsx(ht,{size:"small",variant:pm(v.device),fill:"soft",label:v.device}):o.jsx("span",{})},{content:o.jsx("span",{children:v.brand})},{content:o.jsx("span",{children:v.fitType||"-"})},{content:o.jsx("span",{children:v.productName||"-"})},{content:o.jsx("span",{className:"dlp-date",children:v.wornYear?`${v.wornYear}.${v.wornMonth}.${v.wornDay}`:"-"})},...a?[{content:o.jsx("span",{className:"dlp-row-actions",children:o.jsx(ce,{size:28,type:"bar",variant:"transparent-gray",label:s("common.delete","\uC0AD\uC81C"),onClick:b=>{b?.stopPropagation(),a(v)}})})}]:[]],onRowClick:({row:v})=>t(v),empty:s("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}var D8=`.ihabdevteam-core-scope .calendar-nav{align-items:center;display:flex;gap:var(--spacing-m);justify-content:center;margin-bottom:var(--spacing-m);position:relative}.ihabdevteam-core-scope .calendar-nav__legend{align-items:center;color:var(--color-gray);display:flex;gap:6px;position:absolute;right:0}.ihabdevteam-core-scope .calendar-nav__legend-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.ihabdevteam-core-scope .calendar-nav__legend-dot--main{background:var(--color-main)}.ihabdevteam-core-scope .calendar-nav__legend-dot--sub{background:var(--color-sub)}.ihabdevteam-core-scope .calendar-nav__legend-dot--disabled{background:var(--color-disabled)}.ihabdevteam-core-scope .calendar-nav__button{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-sm);color:var(--color-darkGray);cursor:pointer;display:flex;font-size:18px;height:32px;line-height:1;transition:border-color .15s,color .15s;width:32px}.ihabdevteam-core-scope .calendar-nav__button:hover{border-color:var(--color-main);color:var(--color-main)}.ihabdevteam-core-scope .calendar-nav__title{color:var(--color-darkGray);font-weight:700;min-width:100px;text-align:center}.ihabdevteam-core-scope .calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.ihabdevteam-core-scope .calendar-day-header{color:var(--color-lightGray);font-weight:600;padding:6px 0;text-align:center}.ihabdevteam-core-scope .calendar-day-header:first-child{color:var(--color-error)}.ihabdevteam-core-scope .calendar-day-header:last-child{color:var(--color-main)}.ihabdevteam-core-scope .calendar-cell{background:transparent;border-radius:var(--radius-s);box-sizing:border-box;cursor:default;min-height:118px;min-width:118px;padding:8px}.ihabdevteam-core-scope .calendar-cell.empty{background:transparent;cursor:default}
825
825
 
826
826
  /* !important \uD544\uC694 \u2014 \uC624\uB298\uC774 \uC77C\uC694\uC77C/\uD1A0\uC694\uC77C\uACFC \uACB9\uCE58\uBA74 \uC544\uB798 nth-child \uC8FC\uB9D0 \uC0C9\uC0C1 \uADDC\uCE59\uACFC
827
827
  \uD2B9\uC774\uB3C4\uAC00 \uB3D9\uC77C(3\uD074\uB798\uC2A4)\uD558\uACE0 \uC18C\uC2A4 \uC21C\uC11C\uC0C1 \uB4A4\uB77C !important \uC5C6\uC774\uB294 \uD770 \uAE00\uC790\uAC00 \uC8FC\uB9D0\uC0C9\uC73C\uB85C
828
- \uB36E\uC5B4\uC368\uC9D0(\uC624\uB298 \uD45C\uC2DC\uAC00 \uBB34\uC758\uBBF8\uD574\uC9D0). \uC2E4\uC81C \uACBD\uD569 \uD655\uC778\uB428. */.ihabdevteam-core-scope .calendar-cell.today .calendar-cell__number{align-items:center;background:var(--color-main);border-radius:50%;color:#fff!important;display:flex;height:24px;justify-content:center;width:24px}.ihabdevteam-core-scope .calendar-cell__number{align-items:center;color:var(--color-darkGray);display:flex;font-weight:600;height:24px;justify-content:center;margin-bottom:6px;width:24px}.ihabdevteam-core-scope .calendar-cell:nth-child(7n+8) .calendar-cell__number{color:var(--color-error)}.ihabdevteam-core-scope .calendar-cell:nth-child(7n+14) .calendar-cell__number{color:var(--color-main)}.ihabdevteam-core-scope .calendar-cell__badges{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .calendar-visit-badge{align-items:center;background:var(--color-main-a10);border-radius:var(--radius-xs);box-sizing:border-box;color:var(--color-main);display:flex;gap:6px;min-height:28px;overflow:hidden;padding:0 8px}.ihabdevteam-core-scope .calendar-visit-badge__time{flex-shrink:0;font-weight:400;opacity:.7}.ihabdevteam-core-scope .calendar-visit-badge__name{flex:1;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .calendar-visit-badge--scheduled{background:var(--color-sub-a10);color:var(--color-sub)}.ihabdevteam-core-scope .calendar-visit-badge--no-visit{background:color-mix(in srgb,var(--color-disabled) 15%,#fff);color:var(--color-disabled)}.ihabdevteam-core-scope .calendar-visit-badge__no-visit{background:var(--color-disabled);border-radius:var(--radius-xs);color:#fff;flex-shrink:0;line-height:1.4;padding:1px 5px}.ihabdevteam-core-scope .calendar-visit-badge--clickable{cursor:pointer;transition:background .12s,color .12s,border-color .12s}.ihabdevteam-core-scope .calendar-visit-badge--clickable:hover{background:var(--color-main);border-color:transparent;color:#fff}.ihabdevteam-core-scope .calendar-visit-badge--scheduled.calendar-visit-badge--clickable:hover{background:var(--color-sub);color:#fff}.ihabdevteam-core-scope .calendar-visit-badge--no-visit.calendar-visit-badge--clickable:hover{background:var(--color-disabled);color:#fff}.ihabdevteam-core-scope .calendar-visit-badge--draggable{cursor:grab}.ihabdevteam-core-scope .calendar-visit-badge--draggable:active{cursor:grabbing;opacity:.5}.ihabdevteam-core-scope .calendar-nav__button{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .calendar-nav__button-icon{display:block}.ihabdevteam-core-scope .calendar-cell--clickable{cursor:pointer}.ihabdevteam-core-scope .calendar-cell--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .calendar-cell--clickable:focus-visible{outline:2px solid var(--color-main);outline-offset:-2px}.ihabdevteam-core-scope .calendar-cell.drag-over{background:var(--color-main-a10);outline:1px solid var(--color-main);outline-offset:-1px}@media (max-width:767px){.ihabdevteam-core-scope .calendar-nav{flex-wrap:wrap}.ihabdevteam-core-scope .calendar-nav__legend{justify-content:center;position:static;width:100%}.ihabdevteam-core-scope .calendar-cell,.ihabdevteam-core-scope .calendar-day-header{min-width:0}.ihabdevteam-core-scope .calendar-cell{min-height:72px;padding:4px}}`;Q(D8);function E8(e,t){return new Date(e,t+1,0).getDate()}function j8(e,t){return new Date(e,t,1).getDay()}function bm({visits:e=[],onVisitClick:t,onVisitMove:a,onDayClick:r}){const{t:n}=me.useTranslation(),i=l.useMemo(()=>n("calendar.dow",{returnObjects:!0}),[n]),[s,c]=l.useState(new Date().getFullYear()),[u,d]=l.useState(new Date().getMonth()),[m,h]=l.useState(null),p=l.useRef(null),g=new Date,v=l.useMemo(()=>{const C={};return e.forEach(A=>{C[A.date]||(C[A.date]=[]),C[A.date].push(A)}),C},[e]),b=l.useMemo(()=>{const C=E8(s,u),A=j8(s,u),w=[];for(let S=0;S<A;S++)w.push(null);for(let S=1;S<=C;S++)w.push(S);for(;w.length<35;)w.push(null);return w},[s,u]),y=l.useCallback(()=>{u===0?(c(C=>C-1),d(11)):d(C=>C-1)},[u]),f=l.useCallback(()=>{u===11?(c(C=>C+1),d(0)):d(C=>C+1)},[u]),x=C=>`${s}-${String(u+1).padStart(2,"0")}-${String(C).padStart(2,"0")}`,_=C=>g.getFullYear()===s&&g.getMonth()===u&&g.getDate()===C;return o.jsxs("div",{children:[o.jsxs("div",{className:"calendar-nav",children:[o.jsx("button",{className:"calendar-nav__button",onClick:y,"aria-label":n("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:o.jsx(Pe,{icon:"chevron-left",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),o.jsx("span",{className:"calendar-nav__title h5",children:n("calendar.yearMonth",{year:s,month:u+1})}),o.jsx("button",{className:"calendar-nav__button",onClick:f,"aria-label":n("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:o.jsx(Pe,{icon:"chevron-right",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),o.jsxs("div",{className:"calendar-nav__legend",children:[o.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--main"}),o.jsx("span",{className:"caption-1",children:n("calendar.legend.visited","\uBC29\uBB38")}),o.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--sub"}),o.jsx("span",{className:"caption-1",children:n("calendar.legend.scheduled","\uC608\uC57D")}),o.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--disabled"}),o.jsx("span",{className:"caption-1",children:n("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]})]}),o.jsxs("div",{className:"calendar-grid",children:[i.map(C=>o.jsx("div",{className:"calendar-day-header body-3",children:C},C)),b.map((C,A)=>{if(C===null)return o.jsx("div",{className:"calendar-cell empty"},`empty-${A}`);const w=C,S=x(w),D=v[S]??[],T=m===S;return o.jsxs("div",{className:`calendar-cell${_(w)?" today":""}${T?" drag-over":""}${r?" calendar-cell--clickable":""}`,role:r?"button":void 0,tabIndex:r?0:void 0,"aria-label":r?n("calendar.addOnDate",{date:S}):void 0,onClick:r?()=>r(S):void 0,onKeyDown:r?E=>{E.key!=="Enter"&&E.key!==" "||(E.preventDefault(),r(S))}:void 0,onDragOver:a?E=>{E.preventDefault(),h(S)}:void 0,onDragLeave:a?E=>{E.currentTarget.contains(E.relatedTarget)||h(null)}:void 0,onDrop:a?E=>{E.preventDefault(),p.current!=null&&(a(p.current,S),p.current=null),h(null)}:void 0,children:[o.jsx("div",{className:"calendar-cell__number body-3",children:w}),o.jsx("div",{className:"calendar-cell__badges",children:D.map((E,W)=>o.jsxs("div",{draggable:!!a,className:`calendar-visit-badge${E.status==="noVisit"?" calendar-visit-badge--no-visit":E.status==="scheduled"?" calendar-visit-badge--scheduled":""}${t?" calendar-visit-badge--clickable":""}${a?" calendar-visit-badge--draggable":""}`,onDragStart:a?M=>{p.current=E.id,M.dataTransfer.effectAllowed="move"}:void 0,onDragEnd:a?()=>{p.current=null,h(null)}:void 0,onClick:t?M=>{M.stopPropagation(),t(E)}:void 0,"aria-label":[E.time?Ur(E.time,n):null,E.customer,n(E.status==="noVisit"?"calendar.legend.noVisit":E.status==="scheduled"?"calendar.legend.scheduled":"calendar.legend.visited")].filter(Boolean).join(" "),children:[E.time&&o.jsx("span",{className:"calendar-visit-badge__time body-3",children:Ur(E.time,n)}),o.jsx("span",{className:"calendar-visit-badge__name body-3",children:E.customer}),E.status==="noVisit"&&o.jsx("span",{className:"calendar-visit-badge__no-visit caption-1",children:n("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]},E.id??W))})]},w)})]})]})}var L8=".ihabdevteam-core-scope .section{display:flex;flex-direction:column;text-align:left;width:100%}.ihabdevteam-core-scope .section--page{gap:var(--spacing-m);padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .section--pagePopup{gap:var(--spacing-s);padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .section--popup{gap:var(--spacing-xs);padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .section:last-child{padding-bottom:0}.ihabdevteam-core-scope .section__header{align-items:center;display:flex;justify-content:space-between;width:100%}.ihabdevteam-core-scope .section__title-row{align-items:flex-start;display:flex;flex:1;gap:var(--spacing-s)}.ihabdevteam-core-scope .section__icon{align-items:center;background:var(--t-item-bg,var(--color-deepWhite));color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;margin-top:5px;width:20px}.ihabdevteam-core-scope .section__title-group{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .section__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .section__disc{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .section__action{flex-shrink:0}@media (max-width:767px){.ihabdevteam-core-scope .section__header{align-items:flex-start;flex-direction:column;gap:var(--spacing-xs)}}";Q(L8);const M8={page:"h3",pagePopup:"h4",popup:"h5"};function ro({type:e="page",title:t,icon:a,action:r,disc:n,children:i,className:s,style:c}){const u=M8[e],d=t||n;return o.jsxs("div",{className:ye("section",`section--${e}`,s),style:c,children:[d&&o.jsxs("div",{className:"section__header",children:[o.jsxs("div",{className:"section__title-row",children:[a&&o.jsx(Pe,{icon:a,label:typeof t=="string"?t:void 0,className:"section__icon"}),o.jsxs("div",{className:"section__title-group",children:[t&&o.jsx("div",{className:`section__title ${u}`,children:t}),n&&o.jsx("div",{className:"section__disc body-3",children:n})]})]}),r&&o.jsx("div",{className:"section__action",children:r})]}),i]})}var P8=".ihabdevteam-core-scope .training-blocks{align-items:flex-start;display:flex;flex-direction:column}.ihabdevteam-core-scope .training-block{border-radius:var(--radius-card);width:100%}.ihabdevteam-core-scope .training-list{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px}.ihabdevteam-core-scope .training-list__item{display:inline-block;vertical-align:top}.ihabdevteam-core-scope .training-block__more{display:flex;justify-content:center;margin-top:var(--spacing-l)}.ihabdevteam-core-scope .training-blocks--top-spaced{margin-top:18px}";Q(P8);var R8=".ihabdevteam-core-scope .category-icon{align-items:center;background:var(--t-item-bg,color-mix(in srgb,var(--t-item-fg,var(--color-lightGray)) 10%,transparent));border-radius:var(--radius-s);color:var(--t-item-fg,var(--color-lightGray));display:flex;flex-shrink:0;font-size:18px;height:40px;justify-content:center;width:40px}.ihabdevteam-core-scope .category-icon--small{border-radius:var(--radius-sm);height:28px;width:28px}.ihabdevteam-core-scope .category-icon__mask{background-color:currentColor;background-color:var(--t-item-fg,currentColor);border-radius:var(--radius-sm);display:inline-block;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.ihabdevteam-core-scope .category-icon__image{border-radius:var(--radius-sm);display:block;-o-object-fit:contain;object-fit:contain}.ihabdevteam-core-scope .category-icon__svg svg{fill:currentColor;display:block}.ihabdevteam-core-scope .category-icon__wrap{cursor:default;display:inline-flex;position:relative}.ihabdevteam-core-scope .training-list__item .category-icon__wrap{left:18px;position:absolute;top:18px}.ihabdevteam-core-scope .training-list__item .category-icon{position:static}.ihabdevteam-core-scope .category-icon__tooltip{pointer-events:none;white-space:nowrap}.ihabdevteam-core-scope .category-icon__tooltip-text{background:var(--color-darkGray);border-radius:var(--radius-sm);box-shadow:var(--shadow-tooltip);color:#fff;display:block;font-size:13px;line-height:1.4;padding:6px 12px}";Q(R8);function gm({icon:e,label:t,tooltip:a,wrapperStyle:r,color:n,bgColor:i,useHover:s=!0,iconSize:c="medium"}){const u=c==="small",d=ye("category-icon",u?"category-icon--small":""),m=u?16:20,h=l.useRef(null),[p,g]=l.useState(!1),v=l.useMemo(()=>{const w=r&&typeof r=="object"?{...r}:{};return!n&&!i?w:{...w,...n?{color:n,"--t-item-fg":n}:{},...i?{"--t-item-bg":i}:{}}},[r,n,i]),b=a||t,[y,f]=l.useState(null);l.useLayoutEffect(()=>{p&&f(h.current?.getBoundingClientRect()??null)},[p]),l.useEffect(()=>{if(!s&&p)try{g(!1)}catch{}},[s,p]),l.useEffect(()=>{if(!p)return;const w=S=>{const D=h.current;if(!D)return;const T=S.target;T&&!D.contains(T)&&g(!1)};return document.addEventListener("pointerdown",w,!0),()=>document.removeEventListener("pointerdown",w,!0)},[p]);const x=l.useCallback(()=>{s&&g(!0)},[s]),_=l.useCallback(()=>{s&&g(!1)},[s]),C=l.useCallback(()=>g(!1),[]),A=l.useCallback(w=>{if(w.key==="Escape"){g(!1);return}(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),g(S=>!S))},[]);return o.jsxs("span",{ref:h,className:"category-icon__wrap",onPointerEnter:x,onPointerLeave:_,onFocus:x,onBlur:_,onKeyDown:A,role:"button",tabIndex:0,"aria-label":typeof b=="string"?b:void 0,"aria-haspopup":!!b,"aria-expanded":p,"data-tooltip-ignore":!0,children:[o.jsx(Pe,{icon:e,label:t,className:d,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:v,size:m}),p&&b&&o.jsx(aa,{anchorRect:y,text:typeof b=="string"?b:void 0,offset:8,onClose:C,className:"category-icon__tooltip",ariaLabel:typeof b=="string"?b:void 0})]})}var $8=".ihabdevteam-core-scope .training-block-button{background:var(--color-white);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-m);box-shadow:var(--shadow-card);box-sizing:border-box;cursor:pointer;display:inline-block;height:200px;padding:var(--spacing-l);position:relative;text-align:left;transition:all .12s;vertical-align:top;width:200px}.ihabdevteam-core-scope .training-block-button:hover{border-color:var(--color-main);box-shadow:var(--shadow-card)}.ihabdevteam-core-scope .training-block-button--completed{box-shadow:var(--shadow-card)}.ihabdevteam-core-scope .training-block-button__more{position:absolute;right:var(--spacing-l);top:calc(var(--spacing-l) - 2px);z-index:2}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .training-block-button{height:190px;width:190px}}@media (max-width:767px){.ihabdevteam-core-scope .training-block-button{height:170px;width:calc(50% - 5px)}.ihabdevteam-core-scope .training-block-button__title.h3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;line-height:20px;overflow:hidden}}.ihabdevteam-core-scope .training-block-button__left{display:block}.ihabdevteam-core-scope .training-block-button__title.h3{color:var(--color-black);left:20px;margin:0;position:absolute;right:20px;top:68px}.ihabdevteam-core-scope .training-block-button__description{align-items:center;bottom:20px;display:flex;gap:var(--spacing-xs);height:20px;justify-content:space-between;left:20px;position:absolute;right:20px}.ihabdevteam-core-scope .training-block-button__count{color:var(--color-darkGray)}.ihabdevteam-core-scope .training-block-button__chevron{align-items:center;color:var(--color-lightGray);display:inline-flex;height:20px;justify-content:center;margin-left:auto}.ihabdevteam-core-scope .training-block-button__chevron-icon,.ihabdevteam-core-scope .training-block-button__chevron-icon-image,.ihabdevteam-core-scope .training-block-button__chevron-icon-mask,.ihabdevteam-core-scope .training-block-button__chevron-icon-svg{align-items:center;color:var(--color-lightGray);display:inline-flex;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .training-block-button__chevron-icon-mask{background-color:currentColor;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.ihabdevteam-core-scope .training-block-button__chevron-icon-image{display:block;-o-object-fit:contain;object-fit:contain}.ihabdevteam-core-scope .training-block-button__chevron-icon-svg svg{fill:currentColor;display:block;height:20px;width:20px}.ihabdevteam-core-scope .training-block-button .category-icon__wrap{left:18px;position:absolute;top:18px}.ihabdevteam-core-scope .training-block-button .category-icon{position:static}.ihabdevteam-core-scope .training-block-button__type-label{color:var(--color-gray);left:20px;overflow:hidden;position:absolute;right:20px;text-overflow:ellipsis;top:68px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--withType .training-block-button__title.h3{top:86px}.ihabdevteam-core-scope .training-block-button--small{height:120px;width:120px}.ihabdevteam-core-scope .training-block-button--small .category-icon__wrap{left:12px;top:12px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__type-label{color:var(--color-gray);left:12px;overflow:hidden;position:absolute;right:12px;text-overflow:ellipsis;top:44px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--small .training-block-button__title{color:var(--color-black);left:12px;margin:0;overflow:hidden;position:absolute;right:12px;text-overflow:ellipsis;top:60px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--small.training-block-button--no-type-label .training-block-button__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;top:44px;white-space:normal}.ihabdevteam-core-scope .training-block-button--small .training-block-button__description{bottom:10px;height:16px;left:12px;right:12px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__more{right:6px;top:6px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon,.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon-svg,.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon-svg svg{height:12px;width:12px}.ihabdevteam-core-scope .training-block-button--list{box-shadow:none;min-height:68px;padding:0 12px;width:200px}.ihabdevteam-core-scope .training-block-button--list .training-block-button__left{align-items:center;display:flex;gap:var(--spacing-s);height:100%;width:100%}.ihabdevteam-core-scope .training-block-button--list .category-icon__wrap{flex-shrink:0;order:1;position:static}.ihabdevteam-core-scope .training-block-button--list .training-block-button__title{color:var(--color-black);flex:1;min-width:0;order:2;overflow:hidden;position:static;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--list .training-block-button__description{display:none}.ihabdevteam-core-scope .training-block-button--list .training-block-button__preview{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;order:4}.ihabdevteam-core-scope .training-block-button--small .training-block-button__preview{align-items:center;display:inline-flex;justify-content:center;position:absolute;right:12px;top:12px;z-index:1}.ihabdevteam-core-scope .training-block-button--compact{background:transparent;border-color:transparent;box-shadow:none;height:40px;padding:0;width:100%}.ihabdevteam-core-scope .training-block-button--compact:hover{background:var(--color-darkWhite);border-color:transparent;box-shadow:none}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__left{align-items:center;display:flex;gap:var(--spacing-xs);height:100%;width:100%}.ihabdevteam-core-scope .training-block-button--compact .category-icon__wrap{flex-shrink:0;order:1;position:static}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__title{color:var(--color-black);flex:1;min-width:0;order:2;overflow:hidden;position:static;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__description{display:none}";Q($8);function z8(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=s=>s.map(c=>c?.contextCode||c?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const s=a.sentences||a.items||[],c=Array.isArray(s)&&s.length>0?r(s):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}if(t==="SHORT_STORY"){const s=a.items||a.sentences||[],c=Array.isArray(s)&&s.length>0?r(s):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"SHORT_S"}}if(t==="LONG_STORY"){const s=a.items||a.sentences||[],c=Array.isArray(s)&&s.length>0?r(s):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LONG"}}if(t==="ORDERING_SENTENCE"){const s=a.sentences||a.items||[],c=Array.isArray(s)&&s.length>0?r(s):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}const n=a.sentences||a.items||[],i=r(Array.isArray(n)?n:[]);return i.length===0&&(a.contextCode||a.context_code)&&i.push(String(a.contextCode||a.context_code)),{previewCodes:i,previewBucket:null}}function I8(e,t){const[a,r]=l.useState(!1),[n,i]=l.useState(-1),[s,c]=l.useState([]),u=l.useRef(null),d=l.useRef(!1),m=l.useRef(null),[h,p]=l.useState(!1),g=l.useRef([]),{previewCodes:v,previewBucket:b}=z8(e,t);l.useEffect(()=>{if(!v.length)return;let f=!1;return(async()=>{const x=[],_=[];for(const C of v)try{const A=Tr(C,b);if(!A){x.push("");continue}let w=null;try{w=await Io(A)}catch{}if(!w)try{const S=await Br(A);S&&(w=URL.createObjectURL(S),_.push(w))}catch{}x.push(w??"")}catch{x.push("")}f?_.forEach(C=>{try{URL.revokeObjectURL(C)}catch{}}):(g.current.forEach(C=>{try{URL.revokeObjectURL(C)}catch{}}),g.current=_,c(x))})(),()=>{f=!0}},[v.join(","),b]),l.useEffect(()=>()=>{g.current.forEach(f=>{try{URL.revokeObjectURL(f)}catch{}}),g.current=[]},[]);const y=l.useCallback(async f=>{if(f.stopPropagation(),f.preventDefault(),d.current){d.current=!1;try{u.current?.pause()}catch{}r(!1),i(-1);return}if(s.filter(Boolean).length){d.current=!0,r(!0);for(let x=0;x<s.length&&d.current;x++){const _=s[x];if(_){i(x);try{await new Promise((C,A)=>{const w=new Audio(_);u.current=w,w.onended=()=>C(),w.onerror=()=>A(),w.play().catch(A)})}catch{break}}}d.current=!1,r(!1),i(-1)}},[s]);return l.useEffect(()=>()=>{d.current=!1;try{u.current?.pause()}catch{}u.current=null},[]),{playing:a,playingIndex:n,previewUrls:s,previewHover:h,setPreviewHover:p,previewBtnRef:m,handlePreview:y}}const O8=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 n=r;return n.sentence||n.text||n.context||n.question||n.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function xn(e){const{index:t,type:a,trainingData:r,ariaLabel:n,depth:i,renderPopup:s,completed:c,completedIds:u,selectedIds:d,tooltipText:m,useDescriptionTooltip:h=!1,onRemove:p,hideCheckBadge:g=!1,showTypeLabel:v=!1,onComplete:b,onSelect:y,onMore:f,countLabelOverride:x,size:_="square"}=e||{},{t:C}=me.useTranslation(),[A,w]=l.useState(!1),S=l.useRef(null),[D,T]=l.useState(!1);l.useEffect(()=>{S.current?.matches(":hover")&&T(!0)},[]);const{playing:E,playingIndex:W,previewUrls:M,previewHover:k,setPreviewHover:N,previewBtnRef:j,handlePreview:F}=I8(r,a?.key),te=l.useCallback(()=>{y?y():w(!0)},[y]),Z=l.useCallback(()=>w(!1),[]),ee=l.useCallback(()=>T(!0),[]),L=l.useCallback(()=>T(!1),[]),R=l.useCallback(()=>N(!0),[N]),O=l.useCallback(()=>N(!1),[N]),[H,$]=l.useState(null);l.useLayoutEffect(()=>{k&&$(j.current?.getBoundingClientRect()??null)},[k,j]);const[q,I]=l.useState(null);l.useLayoutEffect(()=>{D&&!A&&h&&I(S.current?.getBoundingClientRect()??null)},[D,A,h]);const G=l.useCallback(be=>{(be.key==="Enter"||be.key===" ")&&(be.preventDefault(),te())},[te]),z=r||null,Y=l.useMemo(()=>{if(!h)return null;const be=m?(Array.isArray(m)?m:[m]).filter(Boolean):null,at=be&&be.length>0?be:O8(z);return at&&at.length>0?at:null},[h,m,z]),J=l.useCallback(be=>{be.stopPropagation(),p?.()},[p]),ue=l.useCallback(be=>be.stopPropagation(),[]),pe=l.useCallback(be=>{typeof b=="function"&&b(be)},[b]),ae=c||(u&&r?.id!=null?u.has(String(r.id)):!1),X=!ae&&(d!=null&&r?.id!=null?d.has(String(r.id)):!1);cr("speechear.popup.close",Z);const ce=Kr(),xe=`${a?.label||""} ${t+1}`,Se=z?.title||z?.name||xe;let Ae=a?.icon,P,oe="",re="";try{const be=z?.category_0||z?.category_main_code||z?.category_main,at=z?.category_1||z?.category_sub_code||z?.category_sub,He=ce.find(Le=>Le.key===be);He?.icon&&(Ae=He.icon),!P&&He?.color&&(P={"--t-item-fg":He.color}),!P&&z?.iconColor&&(P={"--t-item-fg":z.iconColor}),oe=He?.label||"";try{re=He?.subs?.find(Le=>Le.key===at)?.label||""}catch{}}catch{}const Ce=re?`${oe} / ${re}`:oe||a?.label||Se,De=be=>C("training.countQuestions",{n:be}),Ie=be=>C("training.countSentences",{n:be});let Oe="";try{if(z)if(a?.key==="LISTEN_IN_NOISE"){let be=0;Array.isArray(z.items)&&z.items.length>0?be=z.items.length:Array.isArray(z.sentences)&&z.sentences.length>0?be=z.sentences.length:z.sentences&&(be=1),Oe=Ie(be)}else if(a?.key==="SHORT_STORY"){let be=1;Array.isArray(r?.items)?be=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?be=r.raw.items.length:Array.isArray(z?.questions)?be=z.questions.length:Array.isArray(z?.sentences)&&(be=z.sentences.length),Oe=De(be)}else if(a?.key==="LONG_STORY"){let be=1;if(Array.isArray(z.items)&&z.items.length>0){const at=z.items.reduce((He,Le)=>{const Ue=Le.questionItems;return Array.isArray(Ue)?He+Ue.length:Array.isArray(Le.questions)?He+Le.questions.length:He},0);be=at>0?at:z.items.length}else Array.isArray(z.questions)&&z.questions.length>0?be=z.questions.length:Array.isArray(z.sentences)&&z.sentences.length>0&&(be=z.sentences.length);Oe=De(be)}else if(a?.key==="ORDERING_SENTENCE"){let be=1;Array.isArray(z.items)&&z.items.length>0?be=z.items.length:Array.isArray(z.sentences)&&z.sentences.length>0&&(be=z.sentences.length),Oe=Ie(be)}else Array.isArray(z.items)&&(Oe=z.items.length>0?De(z.items.length):"")}catch{}const Fe=_==="list",Qe=_==="compact",Re=_==="small",Ge=Re&&a?.key?rs().find(be=>be.key===a.key)?.label??"":"",We=!!v&&!!a?.label&&a.label!==String(Se)||Re&&!!Ge&&Ge!==String(Se);return o.jsxs(o.Fragment,{children:[o.jsxs("div",{ref:S,className:`training-block-button${Fe?" training-block-button--list":""}${Qe?" training-block-button--compact":""}${Re?" training-block-button--small":""}${ae?" training-block-button--completed":""}${X?" training-block-button--selected":""}${We&&!Re?" training-block-button--withType":""}${Re&&!We?" training-block-button--no-type-label":""}`,onClick:te,onPointerEnter:ee,onPointerLeave:L,role:"button",tabIndex:0,onKeyDown:G,"aria-label":typeof n=="string"?n:typeof Se=="string"?Se:void 0,children:[o.jsxs("div",{className:"training-block-button__left",children:[v&&a?.label&&a.label!==String(Se)&&o.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Re&&Ge&&Ge!==String(Se)&&o.jsx("span",{className:"training-block-button__type-label caption-2",children:Ge}),o.jsx(gm,{icon:Ae,label:Se,tooltip:Ce,wrapperStyle:P,iconSize:Re||Qe?"small":"medium"}),!g&&(ae||X)&&!(p&&D)&&o.jsx(ht,{type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":ae?C("training.completed","\uD6C8\uB828 \uC644\uB8CC"):C("training.selected","\uC120\uD0DD\uB428")}),p&&D&&o.jsx(ht,{type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":C("common.remove","\uC81C\uAC70"),onClick:J}),o.jsx("div",{className:`training-block-button__title ${Qe?"body-3":Re?"body-3b":"h3"}`,children:String(Se)}),o.jsxs("div",{className:"training-block-button__description",children:[(()=>{const be=x!==void 0?x:Oe;return be?o.jsx("div",{className:`training-block-button__count ${Re?"caption-2":"caption-1"}`,children:be}):null})(),o.jsx("div",{className:"training-block-button__chevron",children:o.jsx(Pe,{icon:"chevron-right",label:C("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:Re?12:20})})]}),(Fe||Re)&&M.length>0&&o.jsx("div",{ref:j,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:ue,onPointerEnter:R,onPointerLeave:O,children:o.jsx(le,{size:Re?28:32,type:"dot",icon:E?"pause":"play",variant:Re?"transparent-lightGray":"default",useBorder:!1,selected:E,ariaLabel:E?C("training.stop","\uC815\uC9C0"):C("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:F})})]}),f&&o.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:be=>{be.stopPropagation(),f(be)},children:o.jsx(le,{size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:C("common.more","\uB354\uBCF4\uAE30")})})]}),k&&o.jsx(aa,{anchorRect:H,text:E?C("training.stop","\uC815\uC9C0"):C("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:O}),D&&!A&&h&&(Y?o.jsx(to,{anchorRect:q,items:Y,activeIndex:W,onClose:L}):z?.subTitle?o.jsx(aa,{anchorRect:q,text:z.subTitle,offset:8,onClose:L}):null),A&&s&&s({trainingData:z,typeKey:a?.key??"",onClose:Z,onComplete:pe,popupTitle:String(Se),popupSubTitle:a?.subTitle,depth:i!=null?String(i):void 0,popupIcon:Ae,popupIconTooltip:String(Ce),popupWrapperStyle:P})]})}const Cn=20;function fm(e){const{t}=me.useTranslation(),{type:a,trainingDatas:r,depth:n,renderPopup:i,completedIds:s,selectedIds:c,onItemComplete:u,size:d,useDescriptionTooltip:m,onRemove:h,onMore:p,sectionType:g="page"}=e||{},[,v]=l.useState(0),b=typeof r<"u"?Array.isArray(r)?r:[]:[],y=b.length,[f,x]=l.useState(Math.min(y,Cn)),_=l.useMemo(()=>Array.isArray(n)?[...n,a?.label].filter(Boolean).join(" \xB7 "):[n||"",a?.label].filter(Boolean).join(" \xB7 "),[n,a?.label]);l.useEffect(()=>{x(Math.min(y,Cn))},[y]),cr("speechear.data.updated",()=>v(A=>A+1));function C(){x(A=>Math.min(y,A+Cn))}return o.jsxs(ro,{type:g,title:a?.label,icon:a?.icon,disc:a?.desc,className:"training-block",children:[o.jsx("div",{className:"training-list",children:(b||[]).slice(0,f).map((A,w)=>{const S=A;return o.jsx(xn,{index:w,type:a,trainingData:S,depth:_,renderPopup:i,completedIds:s,selectedIds:c,size:d,useDescriptionTooltip:m,onRemove:typeof h=="function"&&c!=null&&S?.id!=null&&c.has(String(S.id))?()=>h(S):void 0,onComplete:typeof u=="function"&&S?.id!=null?()=>u(String(S.id)):void 0,onMore:typeof p=="function"?D=>p(S,D):void 0},S?.id!=null?`${a?.key||"t"}-${String(S.id)}`:`${a?.key||"t"}-${w}`)})}),y>Cn&&f<y&&o.jsx("div",{className:"training-block__more",children:o.jsx(le,{size:48,type:"bar",icon:"plus",onClick:C,ariaLabel:t("common.loadMore","\uB354\uBCF4\uAE30"),label:t("common.loadMore","\uB354\uBCF4\uAE30"),variant:"main"})})]})}function ql(e){const t=l.useRef(null),[a,r]=l.useState(!!e),[n,i]=l.useState(!1);l.useEffect(()=>{i(!1);const u=t.current;r(!!e&&!(u?.complete&&u.naturalWidth>0))},[e]);const s=l.useCallback(()=>r(!1),[]),c=l.useCallback(()=>{r(!1),i(!0)},[]);return{imgRef:t,loading:a,failed:n,hasImage:!!e&&!n,onLoad:s,onError:c}}let To=null;function F8(e){if(To&&To!==e)try{To()}catch{}return To=e,()=>{To===e&&(To=null)}}var W8='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2256_7437)">%0A<g opacity="0.1">%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23111111"/>%0A</g>%0A<path d="M57.1426 17.8571H35.7141C25.8533 17.8571 17.8569 25.8536 17.8569 35.7143V44.0643L10.9926 51.6179C10.5819 52.0679 10.6283 52.775 11.0998 53.1643C13.1783 54.8929 15.4641 56.2214 17.8569 57.1679C17.8676 63.925 21.6283 69.8 27.1712 72.825C25.7855 70.2893 24.9998 67.3786 24.9998 64.2821V35.7107C24.9998 29.7929 29.7962 24.9964 35.7141 24.9964H64.2855C67.3783 24.9964 70.2891 25.7857 72.8283 27.1679C69.7998 21.6179 63.9105 17.8536 57.1426 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M72.8285 27.1714C74.2142 29.7072 75 32.6179 75 35.7143V64.2857C75 70.2036 70.2035 75 64.2857 75H35.7142C32.6214 75 29.7107 74.2107 27.1714 72.8286C30.2 78.3786 36.0892 82.1429 42.8571 82.1429H58.9678C59.9321 82.1429 60.7142 82.925 60.7142 83.8893C60.7142 84.9107 61.5892 85.7215 62.6071 85.6322C73.5535 84.675 82.1428 75.4822 82.1428 64.2857V42.8572C82.1428 36.0893 78.3785 30.2 72.8285 27.1714Z" fill="%23111111"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="%23111111"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2323 35.6679 46.2859 35.8464 45.4073 36.2679C44.518 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2037 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2256_7437">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',H8='.ihabdevteam-core-scope .training-word-card{background:var(--color-white);border-radius:var(--radius-m);display:flex;flex:none;flex-direction:column;height:260px;overflow:visible;perspective:900px;position:relative;width:200px}.ihabdevteam-core-scope .training-word-card--disabled{cursor:default}.ihabdevteam-core-scope .training-word-card__flipper{border-radius:var(--radius-m);box-shadow:var(--shadow-card);display:flex;flex:1;flex-direction:column;position:relative;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.4,0,.2,1);will-change:transform}.ihabdevteam-core-scope .training-word-card--flipped .training-word-card__flipper{transform:rotateY(180deg)}.ihabdevteam-core-scope .training-word-card__front{box-sizing:border-box;flex:1;flex-direction:column;gap:var(--spacing-s);min-height:0;padding:10px var(--spacing-m)}.ihabdevteam-core-scope .training-word-card__back,.ihabdevteam-core-scope .training-word-card__front{align-items:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;justify-content:center}.ihabdevteam-core-scope .training-word-card__back{background:#f3f5f6;background:var(--color-deepWhite,#f3f5f6);border-radius:var(--radius-m);inset:0;position:absolute;transform:rotateY(180deg)}.ihabdevteam-core-scope .training-word-card__back:before{border:8px solid var(--color-darkWhite);border-radius:var(--radius-m);content:"";inset:0;pointer-events:none;position:absolute}.ihabdevteam-core-scope .training-word-card__disabled-symbol{filter:invert(93%) sepia(6%) saturate(247%) hue-rotate(163deg) brightness(101%) contrast(93%);height:52px;opacity:.6;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:52px}.ihabdevteam-core-scope .training-word-card__selected-badge{position:absolute;right:0;top:0;transform:translate(12%,-12%);z-index:3}.ihabdevteam-core-scope .training-word-card__selected-badge .circle-badge{border:2px solid var(--color-pureWhite)}.ihabdevteam-core-scope .training-word-card--selectable{cursor:pointer;outline:1px solid transparent;overflow:visible;transition:box-shadow .15s,outline-color .15s}.ihabdevteam-core-scope .training-word-card--selectable:not(.training-word-card--disabled):hover{box-shadow:0 4px 16px rgba(9,30,34,.12);outline:1px solid var(--color-main)}.ihabdevteam-core-scope .training-word-card--selectable.training-word-card--selected:hover,.ihabdevteam-core-scope .training-word-card--selected{box-shadow:none;outline:2px solid #4f6ef7;outline:2px solid var(--color-main,#4f6ef7)}.ihabdevteam-core-scope .training-word-card__image-wrap{aspect-ratio:4/3;background:#f3f5f6;border-radius:var(--radius-s);flex-shrink:0;overflow:hidden;padding:0;position:relative;width:100%}.ihabdevteam-core-scope .training-word-card__image{-webkit-user-drag:none;display:block;height:100%;-o-object-fit:cover;object-fit:cover;pointer-events:none;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.ihabdevteam-core-scope .training-word-card__placeholder{background:linear-gradient(160deg,#f0f2f4,#e4e8ea);height:100%;width:100%}.ihabdevteam-core-scope .training-word-card__spinner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute;z-index:1}.ihabdevteam-core-scope .training-word-card__spinner:after{animation:twCard__spin .7s linear infinite;border:3px solid rgba(0,0,0,.1);border-radius:50%;border-top:3px solid var(--color-main,#4f6ef7);content:"";height:28px;width:28px}@keyframes twCard__spin{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .training-word-card__body{align-items:center;display:flex;flex-direction:column;gap:3px;padding:0}.ihabdevteam-core-scope .training-word-card__word{color:#0b2b35;color:var(--color-black,#0b2b35);font-size:22px;font-weight:700;line-height:1.25;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .training-word-card__pronunciation{color:#70858a;color:var(--color-gray,#70858a);font-size:13px;font-weight:500;line-height:1.4;text-align:center}.ihabdevteam-core-scope .training-word-card__colloquial{color:#a0b0b5;color:var(--color-lightGray,#a0b0b5);line-height:1.4;text-align:center}.ihabdevteam-core-scope .training-word-card__bottom{display:flex;flex-shrink:0;justify-content:center}@media (max-width:720px){.ihabdevteam-core-scope .training-word-card{border-radius:var(--radius-card)}.ihabdevteam-core-scope .training-word-card__word{font-size:18px}.ihabdevteam-core-scope .training-word-card__body{gap:2px}.ihabdevteam-core-scope .training-word-card__front{gap:var(--spacing-xs)}.ihabdevteam-core-scope .training-word-card__back,.ihabdevteam-core-scope .training-word-card__back:before{border-radius:var(--radius-card)}}@media (max-width:767px){.ihabdevteam-core-scope .training-word-card{border-radius:var(--radius-card);height:auto;width:100%}.ihabdevteam-core-scope .training-word-card__flipper{border-radius:var(--radius-card);box-shadow:0 2px 8px rgba(0,0,0,.03)}.ihabdevteam-core-scope .training-word-card__front{padding:var(--spacing-s)}.ihabdevteam-core-scope .training-word-card__back:before{border-width:4px}.ihabdevteam-core-scope .training-word-card__image-wrap{aspect-ratio:1/1}.ihabdevteam-core-scope .training-word-card__word{font-size:14px}.ihabdevteam-core-scope .training-word-card__pronunciation{font-size:11px}.ihabdevteam-core-scope .training-word-card__body{gap:2px}.ihabdevteam-core-scope .training-word-card__front{gap:4px}}';Q(H8);const V8=W8,_n=l.forwardRef(function({item:e,disabled:t=!1,onPlayDone:a,selectable:r=!1,selected:n=!1,onSelect:i,flipDelay:s=0,hideLabel:c=!1,hideAudio:u=!1,orderRank:d=null},m){const{t:h}=me.useTranslation(),p=e.word||e.title||"",g=t||!p,v=e.audio??e.sound??e.audioKey,b=e.subLabel||e.pronunciation||"",y=e.colloquialLabel||"",[f,x]=l.useState({label:p,subLabel:b,colloquialLabel:y,homonum:e.homonum});p&&f.label!==p&&x({label:p,subLabel:b,colloquialLabel:y,homonum:e.homonum});const _=l.useRef(null),C=oa("(max-width: 767px)"),[A,w]=l.useState(!1),[S,D]=l.useState(""),T=Ma()?.(f.label,f.homonum)??e.image??"",{imgRef:E,loading:W,hasImage:M,onLoad:k,onError:N}=ql(T);l.useEffect(()=>{let R=!1;return(async()=>{if(v){if(typeof v=="string"){if(v.startsWith("http")||v.includes("/")){D(v);return}}else if(typeof v=="object"&&!Array.isArray(v)){const H=v.src;if(H){D(H);return}}}const O=Oo();if(O&&p)try{const H=await Promise.resolve(O(p));!R&&H&&D(H)}catch{}})(),()=>{R=!0}},[v,p]),l.useEffect(()=>()=>{try{_.current?.pause()}catch{}_.current=null},[]);const j=l.useCallback(()=>new Promise(R=>{if(typeof window<"u"&&window.speechSynthesis&&p){w(!0),window.speechSynthesis.cancel();const O=new SpeechSynthesisUtterance(p);O.lang="ko-KR",O.onend=()=>{w(!1);try{a?.()}catch{}R()},O.onerror=()=>{w(!1),R()},window.speechSynthesis.speak(O)}else R()}),[p,a]),F=l.useCallback(R=>new Promise(O=>{let H=!1;const $=()=>{H||(H=!0,w(!1),O(!1))};try{const q=new Audio(R);_.current=q,q.onended=()=>{if(!H){H=!0,w(!1);try{a?.()}catch{}O(!0)}},q.onerror=$,q.play().catch($)}catch{$()}}),[a]),te=l.useCallback(async()=>{if(t)return;const R=F8(()=>{try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}w(!1)});try{window.speechSynthesis?.cancel()}catch{}try{if(S&&(w(!0),await F(S)))return;const O=Jn();if(O&&p)try{const H=await Promise.resolve(O(p));if(H&&(w(!0),await F(H)))return}catch{}await j()}finally{R()}},[t,S,p,F,j]);l.useImperativeHandle(m,()=>({play:()=>te()}),[te]);const Z=R=>R.stopPropagation(),ee=l.useCallback(R=>{if(R.stopPropagation(),!t){if(A){try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}w(!1);return}te()}},[t,A,te]),L=ye("training-word-card",t?"training-word-card--disabled":"",g?"training-word-card--flipped":"",r?"training-word-card--selectable":"",n?"training-word-card--selected":"");return o.jsx("div",{className:L,onClick:r&&!t?i:void 0,role:r?"button":void 0,"aria-pressed":r?n:void 0,tabIndex:r&&!t?0:void 0,"aria-disabled":r&&t?!0:void 0,onKeyDown:r&&!t?R=>{(R.key==="Enter"||R.key===" "||R.key==="Spacebar")&&(R.preventDefault(),i?.())}:void 0,children:o.jsxs("div",{className:"training-word-card__flipper",style:{transitionDelay:g?"0ms":`${s}ms`},children:[o.jsxs("div",{className:"training-word-card__front",children:[n&&o.jsx("div",{className:"training-word-card__selected-badge",onClick:Z,children:o.jsx(ht,{type:"dot",size:40,position:"inline",animate:!0,icon:d!=null?void 0:"check",number:d??void 0,"aria-label":d!=null?h("training.nthSelected",{n:d}):h("training.selected","\uC120\uD0DD\uB428")})}),o.jsx("div",{className:"training-word-card__image-wrap",children:M?o.jsxs(o.Fragment,{children:[W&&o.jsx("div",{className:"training-word-card__spinner"}),o.jsx("img",{ref:E,className:"training-word-card__image",src:T,alt:f.label||h("common.image","\uC774\uBBF8\uC9C0"),style:{opacity:W?0:1},onLoad:k,onError:N})]}):o.jsx("div",{className:"training-word-card__placeholder"})}),!c&&o.jsxs("div",{className:"training-word-card__body",children:[o.jsx("div",{className:"training-word-card__word",children:f.label}),f.subLabel&&o.jsxs("div",{className:"training-word-card__pronunciation",children:["[",f.subLabel,"]"]}),f.colloquialLabel&&o.jsxs("div",{className:"training-word-card__colloquial caption-1",children:["[",f.colloquialLabel,"]"]})]}),!u&&o.jsx("div",{className:"training-word-card__bottom",onClick:r?Z:void 0,children:o.jsx(le,{size:C?40:48,type:C?"dot":"bar",icon:A?"pause":"play",label:C?void 0:h("training.playSound","\uC18C\uB9AC \uB4E3\uAE30"),selected:A,onClick:ee,disabled:t,ariaLabel:h("training.playSound","\uC18C\uB9AC \uB4E3\uAE30")})})]}),o.jsx("div",{className:"training-word-card__back","aria-hidden":"true",children:o.jsx("img",{src:V8,className:"training-word-card__disabled-symbol",alt:"",draggable:!1})})]})})});let fr=0,vm="",ym="",vr=0;function G8(){return xm(!1)}function q8(){return xm(!0)}function xm(e){const t=typeof document<"u";fr===0&&t&&(vm=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(vr===0&&(ym=document.body.style.paddingRight),vr++,document.body.style.paddingRight="0px"),fr++;let a=!1;return()=>{a||(a=!0,fr=Math.max(0,fr-1),e&&t&&(vr=Math.max(0,vr-1),vr===0&&(document.body.style.paddingRight=ym)),fr===0&&t&&(document.body.style.overflow=vm))}}var Y8=".ihabdevteam-core-scope .popup{align-items:center;background:rgba(16,24,32,.6);background:var(--color-popupBlock,rgba(16,24,32,.6));display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal)}.ihabdevteam-core-scope .popup.popup--inline{align-items:stretch;background:transparent;justify-content:stretch;position:relative;z-index:5}.ihabdevteam-core-scope .popup.popup--inline .popup-panel{width:100%}.ihabdevteam-core-scope .popup-panel{background:var(--color-white);border-radius:28px;box-shadow:var(--shadow-popup);display:flex;flex-direction:column;max-height:calc(100% - 60px);max-width:820px;overflow:hidden;position:relative;width:calc(100% - 40px)}.ihabdevteam-core-scope .popup-panel--small{max-width:480px}.ihabdevteam-core-scope .popup-panel--medium{max-width:680px}.ihabdevteam-core-scope .popup-panel--large{max-width:1080px}.ihabdevteam-core-scope .popup-close-float{align-items:center;display:flex;gap:var(--spacing-xs);position:absolute;right:8px;top:8px;z-index:1}.ihabdevteam-core-scope .popup-title{display:block;flex-shrink:0;padding:var(--spacing-l);text-align:center}.ihabdevteam-core-scope .popup-header{align-items:center;display:flex;flex-shrink:0;gap:var(--spacing-s);padding:var(--spacing-l) var(--spacing-l) 0}.ihabdevteam-core-scope .popup-header--with-subtitle{align-items:flex-start}.ihabdevteam-core-scope .popup-header-main{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.ihabdevteam-core-scope .popup-title--left{flex:1;min-width:0;padding:0;text-align:left}.ihabdevteam-core-scope .popup-header-main .popup-title--left{flex:none}.ihabdevteam-core-scope .popup-header .popup-title--left{margin:0}.ihabdevteam-core-scope .popup-subtitle{color:var(--color-gray);margin:0;text-align:left}.ihabdevteam-core-scope .popup-header-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.ihabdevteam-core-scope .popup-content{-webkit-overflow-scrolling:touch;display:flex;flex:1;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:20px 20px 0;touch-action:pan-y}.ihabdevteam-core-scope .popup-content__inner{padding-bottom:20px}.ihabdevteam-core-scope .popup-footer{display:flex;gap:8px;justify-content:center;padding:0 20px 20px}.ihabdevteam-core-scope .popup-footer--buttons>*{flex:1;max-width:200px}.ihabdevteam-core-scope .popup--closing{opacity:0;transition:opacity .26s ease}@media (max-width:767px){.ihabdevteam-core-scope .popup-panel{max-height:calc(100% - 132px - env(safe-area-inset-bottom))}}.ihabdevteam-core-scope .form-date-row{display:flex;flex:1;gap:6px;min-width:0}.ihabdevteam-core-scope .form-date-row>div{min-width:90px}.ihabdevteam-core-scope .form-date-row--ymd>div:first-child{flex:3}.ihabdevteam-core-scope .form-date-row--ymd>div:nth-child(2),.ihabdevteam-core-scope .form-date-row--ymd>div:nth-child(3){flex:2}.ihabdevteam-core-scope .form-date-row--hm>div{flex:1}.ihabdevteam-core-scope .form-date-row--gap-8{gap:8px}@media (max-width:360px){.ihabdevteam-core-scope .form-date-row--ymd{flex-wrap:wrap}.ihabdevteam-core-scope .form-date-row--ymd>div:first-child{flex:1 0 100%}}.ihabdevteam-core-scope .form-field-error{color:var(--color-error);font-size:13px;margin-bottom:8px;padding:6px 0}.ihabdevteam-core-scope .form-inline-error{color:var(--color-error);display:block;margin-top:4px}.ihabdevteam-core-scope .confirm-popup__message{margin:0 auto;max-width:100%;padding:8px 0;text-align:left;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .confirm-popup .popup-content{padding-top:40px}.ihabdevteam-core-scope .confirm-popup .popup-content__inner{padding-bottom:40px}.ihabdevteam-core-scope .confirm-popup .panel+.confirm-popup__message{margin-top:16px}.ihabdevteam-core-scope .confirm-popup__top{display:flex;justify-content:center;margin-bottom:20px}";Q(Y8);function U8(e,t=!0){l.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=n=>{if(n.key!=="Tab")return;const i=Array.from(a.querySelectorAll(Cm));if(!i.length){n.preventDefault();return}const s=i[0],c=i[i.length-1];n.shiftKey&&document.activeElement===s?(n.preventDefault(),c.focus()):!n.shiftKey&&document.activeElement===c&&(n.preventDefault(),s.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const Cm='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',K8=260;function Ta(e){const{t}=me.useTranslation(),{title:a,subtitle:r,headerActions:n,children:i,buttons:s,footer:c,footerClassName:u="",onClose:d,closeDisabled:m=!1,beforeClose:h,className:p="",ariaLabel:g,useTitle:v=!0,inline:b=!1,size:y,resetScrollKey:f}=e||{},[x,_]=l.useState(!1),C=l.useRef(!1),A=l.useRef(null),w=l.useId(),S=l.useRef(null);l.useEffect(()=>{},[b,a,g,p]),l.useEffect(()=>{f!==void 0&&S.current&&(S.current.scrollTop=0)},[f]);const[D,T]=l.useState(!1);l.useEffect(()=>{const j=S.current;if(!j)return;const F=()=>T(j.scrollHeight>j.clientHeight+1);if(F(),typeof ResizeObserver>"u")return;const te=new ResizeObserver(F);te.observe(j);const Z=j.firstElementChild;return Z&&te.observe(Z),()=>te.disconnect()},[i,f]),l.useEffect(()=>{if(!b)return G8()},[b]),l.useEffect(()=>{if(b)return;const j=document.activeElement,F=A.current;return F&&!F.contains(document.activeElement)&&(F.querySelector(Cm)??F).focus(),()=>{j?.focus?.()}},[b]),U8(A,!b);const E=l.useCallback(j=>{C.current||(C.current=!0,_(!0),setTimeout(()=>{try{j&&j()}catch{}},K8))},[]),W=l.useCallback(()=>{m||h&&h()===!1||E(d)},[E,d,m,h]),M=l.useRef(W);l.useEffect(()=>{M.current=W});const k=!b&&!!d;l.useEffect(()=>{if(k)return gl(()=>M.current())},[k]);const N=o.jsx("div",{className:`popup ${b?"popup--inline":""} ${x?"popup--closing":""} ${p}`,children:o.jsxs("div",{ref:A,className:`popup-panel${y?` popup-panel--${y}`:""}`,tabIndex:-1,role:b?void 0:"dialog","aria-modal":b?void 0:!0,"aria-labelledby":!b&&a?w:void 0,"aria-label":!b&&!a&&g?g:void 0,children:[!v&&(n||d)?o.jsxs("div",{className:"popup-close-float",children:[n,d&&o.jsx(le,{size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:W,disabled:m,ariaLabel:t("common.close","\uB2EB\uAE30")})]}):a||n||d?o.jsxs("div",{className:`popup-header${r?" popup-header--with-subtitle":""}`,children:[o.jsxs("div",{className:"popup-header-main",children:[o.jsx("span",{id:w,className:"popup-title popup-title--left h2",children:a}),r&&o.jsx("span",{className:"popup-subtitle body-3",children:r})]}),o.jsxs("div",{className:"popup-header-actions",children:[n,d&&o.jsx(le,{size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:W,disabled:m,ariaLabel:t("common.close","\uB2EB\uAE30")})]})]}):null,o.jsx("div",{className:"popup-content",ref:S,tabIndex:D?0:void 0,children:o.jsx("div",{className:"popup-content__inner",children:typeof i=="function"?i({animateThen:E,closeWithAnimation:W}):i})}),s?.length?o.jsx("div",{className:"popup-footer popup-footer--buttons",children:s.map((j,F)=>o.jsx(le,{size:48,variant:j.variant??"default",label:j.label,disabled:j.disabled,onClick:()=>j.onClick?.({animateThen:E,closeWithAnimation:W})},F))}):c?o.jsx("div",{className:`popup-footer${u?` ${u}`:""}`,children:typeof c=="function"?c({animateThen:E,closeWithAnimation:W}):c}):null]})});return b||typeof document>"u"?N:qt.createPortal(N,document.body)}function yr(e){return String(e)}const Yl=["o","triangle","x"];function Ul(e,t){return e===t?null:t}const Kl={o:"circle",triangle:"triangle",x:"x"},Zl={o:"main",triangle:"warn",x:"danger"};function _m(e){let t=0,a=0,r=0;for(const i of Object.values(e))i==="o"?t++:i==="triangle"?a++:i==="x"&&r++;const n=t+a+r;return{marked:n,o:t,triangle:a,x:r,rate:n===0?null:(t+a*.5)/n}}function wn(e){const t={};for(const[a,r]of Object.entries(e))(r==="o"||r==="triangle"||r==="x")&&(t[a]=r);return t}function Xl(e){const t=[];let a=0;for(const r of e)t.push(a),a+=r;return t}function wm(e,t){return!t&&e>0}var Z8=`.ihabdevteam-core-scope .word-table__scaler{overflow:clip;overflow-clip-margin:32px;width:100%}.ihabdevteam-core-scope .word-table{--print-margin:57px;background:#fbfdff;border:1px solid var(--color-whiteLine);box-shadow:var(--shadow-dropdown);box-sizing:border-box;padding:57px;padding:var(--print-margin)}.ihabdevteam-core-scope .word-table-block__content{box-sizing:border-box;display:grid;height:100%;position:relative;width:100%}.ihabdevteam-core-scope .word-table__page-number{bottom:8px;color:var(--color-gray);pointer-events:none;position:absolute;z-index:2}.ihabdevteam-core-scope .word-table__page-number--left{left:12px}.ihabdevteam-core-scope .word-table__page-number--right{right:12px}.ihabdevteam-core-scope .word-table__page-number--center{left:50%;transform:translateX(-50%)}.ihabdevteam-core-scope .word-table-block__content--cut-show{background:var(--color-whiteLine);gap:1px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.ihabdevteam-core-scope .word-table-block__content--outline{position:relative}.ihabdevteam-core-scope .word-table-block__content--outline:after{border:1px solid var(--color-whiteLine);content:"";inset:0;pointer-events:none;position:absolute;z-index:1}.ihabdevteam-core-scope .word-table-block__content--cut-corner .word-table-block__card{background:linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 0 /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 0 /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 0 /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 0 /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 100% /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 100% /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 100% /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 100% /1px 8px no-repeat,#fbfdff;print-color-adjust:exact;-webkit-print-color-adjust:exact}.ihabdevteam-core-scope .word-table-block__card{background:#fbfdff;display:flex;min-height:0;overflow:hidden;position:relative;transition:box-shadow .15s}.ihabdevteam-core-scope .word-table-block__card--filler{align-items:center;justify-content:center}.ihabdevteam-core-scope .word-table-block__card:not(.word-table-block__card--filler):hover{box-shadow:var(--shadow-dropdown);z-index:1}.ihabdevteam-core-scope .word-table-block__card--draggable{cursor:grab}.ihabdevteam-core-scope .word-table-block__card--draggable:active{cursor:grabbing}.ihabdevteam-core-scope .word-table-block__card--drag-over{outline:2px solid var(--color-main);outline-offset:-2px;z-index:2}.ihabdevteam-core-scope .word-table-block__card-close{opacity:0;position:absolute;right:20px;top:20px;transition:opacity .15s;z-index:1}.ihabdevteam-core-scope .word-table-block__card-close:focus-visible,.ihabdevteam-core-scope .word-table-block__card-close:focus-within,.ihabdevteam-core-scope .word-table-block__card:focus-within .word-table-block__card-close,.ihabdevteam-core-scope .word-table-block__card:hover .word-table-block__card-close{opacity:1}.ihabdevteam-core-scope .word-table-block__pair-divider{align-self:center;background:var(--color-whiteLine);display:none;flex-shrink:0;height:20%;print-color-adjust:exact;-webkit-print-color-adjust:exact;width:1px}.ihabdevteam-core-scope .word-table-block__content--div-line .word-table-block__pair-divider{display:block}.ihabdevteam-core-scope .word-table-block__edit-cell{align-items:stretch;background:#fbfdff;display:flex;flex-direction:row;min-height:0;overflow:hidden;position:relative;transition:box-shadow .15s}.ihabdevteam-core-scope .word-table-block__edit-cell--filled:hover{box-shadow:var(--shadow-dropdown);z-index:1}.ihabdevteam-core-scope .word-table-block__edit-cell--filled:focus-within .word-table-block__card-close,.ihabdevteam-core-scope .word-table-block__edit-cell--filled:hover .word-table-block__card-close{opacity:1}.ihabdevteam-core-scope .word-table-block__edit-cell--empty{align-items:center;justify-content:center}.ihabdevteam-core-scope .word-table-block__edit-cell--active{background:rgba(73,156,223,.04);background:rgba(var(--color-main-rgb,73,156,223),.04);outline:2px solid var(--color-main);outline-offset:-2px}.ihabdevteam-core-scope .word-table-block__content--cut-corner .word-table-block__edit-cell{background:linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 0 /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 0 /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 0 /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 0 /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 100% /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 100% /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 100% /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 100% /1px 8px no-repeat,#fbfdff;print-color-adjust:exact;-webkit-print-color-adjust:exact}.ihabdevteam-core-scope .word-table-cell{align-items:center;display:flex;flex:1;justify-content:center;min-height:0;min-width:0;overflow:hidden;position:relative}.ihabdevteam-core-scope .word-table-cell__inner{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;height:380px;justify-content:center;transform-origin:center center;width:280px}.ihabdevteam-core-scope .word-table-cell__word{color:var(--color-black);text-align:center;white-space:nowrap}.ihabdevteam-core-scope .word-table-cell__sub{color:var(--color-gray);text-align:center;white-space:nowrap}.ihabdevteam-core-scope .word-table-cell__colloquial{color:var(--color-lightGray);text-align:center;white-space:nowrap}.ihabdevteam-core-scope .word-table-cell__play-button{left:20px;opacity:0;position:absolute;top:20px;transition:opacity .15s;z-index:1}.ihabdevteam-core-scope .word-table-block__card:hover .word-table-cell__play-button,.ihabdevteam-core-scope .word-table-block__edit-cell:focus-within .word-table-cell__play-button,.ihabdevteam-core-scope .word-table-block__edit-cell:hover .word-table-cell__play-button,.ihabdevteam-core-scope .word-table-cell__play-button:focus-visible,.ihabdevteam-core-scope .word-table-cell__play-button:focus-within{opacity:1}.ihabdevteam-core-scope .word-table-cell__info-button{left:20px;opacity:0;position:absolute;top:60px;transition:opacity .15s;z-index:1}.ihabdevteam-core-scope .word-table-block__card:hover .word-table-cell__info-button,.ihabdevteam-core-scope .word-table-block__edit-cell:focus-within .word-table-cell__info-button,.ihabdevteam-core-scope .word-table-block__edit-cell:hover .word-table-cell__info-button,.ihabdevteam-core-scope .word-table-cell__info-button:focus-visible,.ihabdevteam-core-scope .word-table-cell__info-button:focus-within{opacity:1}.ihabdevteam-core-scope .word-table-cell__image-wrap{background:var(--color-deepWhite);border-radius:var(--radius-card);flex-shrink:0;height:240px;overflow:hidden;position:relative;width:240px}.ihabdevteam-core-scope .word-table-cell__image{display:block;height:100%;-o-object-fit:cover;object-fit:cover;transition:opacity .2s;width:100%}.ihabdevteam-core-scope .word-table-cell__spinner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.ihabdevteam-core-scope .word-table-cell__spinner:after{animation:wordTableCell_spin .7s linear infinite;border:3px solid #fbfdff;border-radius:50%;border-top:3px solid var(--color-white,#fbfdff);border:3px solid var(--color-white,#fbfdff);border-top-color:var(--color-main,var(--color-main));content:"";height:32px;width:32px}@keyframes wordTableCell_spin{to{transform:rotate(1turn)}}@media print{@page{margin:0}.ihabdevteam-core-scope body *{visibility:hidden}.ihabdevteam-core-scope .word-table,.ihabdevteam-core-scope .word-table *{visibility:visible}
828
+ \uB36E\uC5B4\uC368\uC9D0(\uC624\uB298 \uD45C\uC2DC\uAC00 \uBB34\uC758\uBBF8\uD574\uC9D0). \uC2E4\uC81C \uACBD\uD569 \uD655\uC778\uB428. */.ihabdevteam-core-scope .calendar-cell.today .calendar-cell__number{align-items:center;background:var(--color-main);border-radius:50%;color:#fff!important;display:flex;height:24px;justify-content:center;width:24px}.ihabdevteam-core-scope .calendar-cell__number{align-items:center;color:var(--color-darkGray);display:flex;font-weight:600;height:24px;justify-content:center;margin-bottom:6px;width:24px}.ihabdevteam-core-scope .calendar-cell:nth-child(7n+8) .calendar-cell__number{color:var(--color-error)}.ihabdevteam-core-scope .calendar-cell:nth-child(7n+14) .calendar-cell__number{color:var(--color-main)}.ihabdevteam-core-scope .calendar-cell__badges{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .calendar-visit-badge{align-items:center;background:var(--color-main-a10);border-radius:var(--radius-xs);box-sizing:border-box;color:var(--color-main);display:flex;gap:6px;min-height:28px;overflow:hidden;padding:0 8px}.ihabdevteam-core-scope .calendar-visit-badge__time{flex-shrink:0;font-weight:400;opacity:.7}.ihabdevteam-core-scope .calendar-visit-badge__name{flex:1;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .calendar-visit-badge--scheduled{background:var(--color-sub-a10);color:var(--color-sub)}.ihabdevteam-core-scope .calendar-visit-badge--no-visit{background:color-mix(in srgb,var(--color-disabled) 15%,#fff);color:var(--color-disabled)}.ihabdevteam-core-scope .calendar-visit-badge__no-visit{background:var(--color-disabled);border-radius:var(--radius-xs);color:#fff;flex-shrink:0;line-height:1.4;padding:1px 5px}.ihabdevteam-core-scope .calendar-visit-badge--clickable{cursor:pointer;transition:background .12s,color .12s,border-color .12s}.ihabdevteam-core-scope .calendar-visit-badge--clickable:hover{background:var(--color-main);border-color:transparent;color:#fff}.ihabdevteam-core-scope .calendar-visit-badge--scheduled.calendar-visit-badge--clickable:hover{background:var(--color-sub);color:#fff}.ihabdevteam-core-scope .calendar-visit-badge--no-visit.calendar-visit-badge--clickable:hover{background:var(--color-disabled);color:#fff}.ihabdevteam-core-scope .calendar-visit-badge--draggable{cursor:grab}.ihabdevteam-core-scope .calendar-visit-badge--draggable:active{cursor:grabbing;opacity:.5}.ihabdevteam-core-scope .calendar-nav__button{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .calendar-nav__button-icon{display:block}.ihabdevteam-core-scope .calendar-cell--clickable{cursor:pointer}.ihabdevteam-core-scope .calendar-cell--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .calendar-cell--clickable:focus-visible{outline:2px solid var(--color-main);outline-offset:-2px}.ihabdevteam-core-scope .calendar-cell.drag-over{background:var(--color-main-a10);outline:1px solid var(--color-main);outline-offset:-1px}@media (max-width:767px){.ihabdevteam-core-scope .calendar-nav{flex-wrap:wrap}.ihabdevteam-core-scope .calendar-nav__legend{justify-content:center;position:static;width:100%}.ihabdevteam-core-scope .calendar-cell,.ihabdevteam-core-scope .calendar-day-header{min-width:0}.ihabdevteam-core-scope .calendar-cell{min-height:72px;padding:4px}}`;Q(D8);function E8(e,t){return new Date(e,t+1,0).getDate()}function j8(e,t){return new Date(e,t,1).getDay()}function bm({visits:e=[],onVisitClick:t,onVisitMove:a,onDayClick:r}){const{t:n}=me.useTranslation(),i=l.useMemo(()=>n("calendar.dow",{returnObjects:!0}),[n]),[s,c]=l.useState(new Date().getFullYear()),[u,d]=l.useState(new Date().getMonth()),[m,h]=l.useState(null),p=l.useRef(null),g=new Date,v=l.useMemo(()=>{const C={};return e.forEach(A=>{C[A.date]||(C[A.date]=[]),C[A.date].push(A)}),C},[e]),b=l.useMemo(()=>{const C=E8(s,u),A=j8(s,u),w=[];for(let S=0;S<A;S++)w.push(null);for(let S=1;S<=C;S++)w.push(S);for(;w.length<35;)w.push(null);return w},[s,u]),y=l.useCallback(()=>{u===0?(c(C=>C-1),d(11)):d(C=>C-1)},[u]),f=l.useCallback(()=>{u===11?(c(C=>C+1),d(0)):d(C=>C+1)},[u]),x=C=>`${s}-${String(u+1).padStart(2,"0")}-${String(C).padStart(2,"0")}`,_=C=>g.getFullYear()===s&&g.getMonth()===u&&g.getDate()===C;return o.jsxs("div",{children:[o.jsxs("div",{className:"calendar-nav",children:[o.jsx("button",{className:"calendar-nav__button",onClick:y,"aria-label":n("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:o.jsx(Pe,{icon:"chevron-left",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),o.jsx("span",{className:"calendar-nav__title h5",children:n("calendar.yearMonth",{year:s,month:u+1})}),o.jsx("button",{className:"calendar-nav__button",onClick:f,"aria-label":n("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:o.jsx(Pe,{icon:"chevron-right",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),o.jsxs("div",{className:"calendar-nav__legend",children:[o.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--main"}),o.jsx("span",{className:"caption-1",children:n("calendar.legend.visited","\uBC29\uBB38")}),o.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--sub"}),o.jsx("span",{className:"caption-1",children:n("calendar.legend.scheduled","\uC608\uC57D")}),o.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--disabled"}),o.jsx("span",{className:"caption-1",children:n("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]})]}),o.jsxs("div",{className:"calendar-grid",children:[i.map(C=>o.jsx("div",{className:"calendar-day-header body-3",children:C},C)),b.map((C,A)=>{if(C===null)return o.jsx("div",{className:"calendar-cell empty"},`empty-${A}`);const w=C,S=x(w),N=v[S]??[],T=m===S;return o.jsxs("div",{className:`calendar-cell${_(w)?" today":""}${T?" drag-over":""}${r?" calendar-cell--clickable":""}`,role:r?"button":void 0,tabIndex:r?0:void 0,"aria-label":r?n("calendar.addOnDate",{date:S}):void 0,onClick:r?()=>r(S):void 0,onKeyDown:r?E=>{E.key!=="Enter"&&E.key!==" "||(E.preventDefault(),r(S))}:void 0,onDragOver:a?E=>{E.preventDefault(),h(S)}:void 0,onDragLeave:a?E=>{E.currentTarget.contains(E.relatedTarget)||h(null)}:void 0,onDrop:a?E=>{E.preventDefault(),p.current!=null&&(a(p.current,S),p.current=null),h(null)}:void 0,children:[o.jsx("div",{className:"calendar-cell__number body-3",children:w}),o.jsx("div",{className:"calendar-cell__badges",children:N.map((E,W)=>o.jsxs("div",{draggable:!!a,className:`calendar-visit-badge${E.status==="noVisit"?" calendar-visit-badge--no-visit":E.status==="scheduled"?" calendar-visit-badge--scheduled":""}${t?" calendar-visit-badge--clickable":""}${a?" calendar-visit-badge--draggable":""}`,onDragStart:a?L=>{p.current=E.id,L.dataTransfer.effectAllowed="move"}:void 0,onDragEnd:a?()=>{p.current=null,h(null)}:void 0,onClick:t?L=>{L.stopPropagation(),t(E)}:void 0,"aria-label":[E.time?Ur(E.time,n):null,E.customer,n(E.status==="noVisit"?"calendar.legend.noVisit":E.status==="scheduled"?"calendar.legend.scheduled":"calendar.legend.visited")].filter(Boolean).join(" "),children:[E.time&&o.jsx("span",{className:"calendar-visit-badge__time body-3",children:Ur(E.time,n)}),o.jsx("span",{className:"calendar-visit-badge__name body-3",children:E.customer}),E.status==="noVisit"&&o.jsx("span",{className:"calendar-visit-badge__no-visit caption-1",children:n("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]},E.id??W))})]},w)})]})]})}var L8=".ihabdevteam-core-scope .section{display:flex;flex-direction:column;text-align:left;width:100%}.ihabdevteam-core-scope .section--page{gap:var(--spacing-m);padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .section--pagePopup{gap:var(--spacing-s);padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .section--popup{gap:var(--spacing-xs);padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .section:last-child{padding-bottom:0}.ihabdevteam-core-scope .section__header{align-items:center;display:flex;justify-content:space-between;width:100%}.ihabdevteam-core-scope .section__title-row{align-items:flex-start;display:flex;flex:1;gap:var(--spacing-s)}.ihabdevteam-core-scope .section__icon{align-items:center;background:var(--t-item-bg,var(--color-deepWhite));color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;margin-top:5px;width:20px}.ihabdevteam-core-scope .section__title-group{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .section__title{color:var(--color-black);margin:0}.ihabdevteam-core-scope .section__disc{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .section__action{flex-shrink:0}@media (max-width:767px){.ihabdevteam-core-scope .section__header{align-items:flex-start;flex-direction:column;gap:var(--spacing-xs)}}";Q(L8);const M8={page:"h3",pagePopup:"h4",popup:"h5"};function ro({type:e="page",title:t,icon:a,action:r,disc:n,children:i,className:s,style:c}){const u=M8[e],d=t||n;return o.jsxs("div",{className:xe("section",`section--${e}`,s),style:c,children:[d&&o.jsxs("div",{className:"section__header",children:[o.jsxs("div",{className:"section__title-row",children:[a&&o.jsx(Pe,{icon:a,label:typeof t=="string"?t:void 0,className:"section__icon"}),o.jsxs("div",{className:"section__title-group",children:[t&&o.jsx("div",{className:`section__title ${u}`,children:t}),n&&o.jsx("div",{className:"section__disc body-3",children:n})]})]}),r&&o.jsx("div",{className:"section__action",children:r})]}),i]})}var P8=".ihabdevteam-core-scope .training-blocks{align-items:flex-start;display:flex;flex-direction:column}.ihabdevteam-core-scope .training-block{border-radius:var(--radius-card);width:100%}.ihabdevteam-core-scope .training-list{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px}.ihabdevteam-core-scope .training-list__item{display:inline-block;vertical-align:top}.ihabdevteam-core-scope .training-block__more{display:flex;justify-content:center;margin-top:var(--spacing-l)}.ihabdevteam-core-scope .training-blocks--top-spaced{margin-top:18px}";Q(P8);var R8=".ihabdevteam-core-scope .category-icon{align-items:center;background:var(--t-item-bg,color-mix(in srgb,var(--t-item-fg,var(--color-lightGray)) 10%,transparent));border-radius:var(--radius-s);color:var(--t-item-fg,var(--color-lightGray));display:flex;flex-shrink:0;font-size:18px;height:40px;justify-content:center;width:40px}.ihabdevteam-core-scope .category-icon--small{border-radius:var(--radius-sm);height:28px;width:28px}.ihabdevteam-core-scope .category-icon__mask{background-color:currentColor;background-color:var(--t-item-fg,currentColor);border-radius:var(--radius-sm);display:inline-block;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.ihabdevteam-core-scope .category-icon__image{border-radius:var(--radius-sm);display:block;-o-object-fit:contain;object-fit:contain}.ihabdevteam-core-scope .category-icon__svg svg{fill:currentColor;display:block}.ihabdevteam-core-scope .category-icon__wrap{cursor:default;display:inline-flex;position:relative}.ihabdevteam-core-scope .training-list__item .category-icon__wrap{left:18px;position:absolute;top:18px}.ihabdevteam-core-scope .training-list__item .category-icon{position:static}.ihabdevteam-core-scope .category-icon__tooltip{pointer-events:none;white-space:nowrap}.ihabdevteam-core-scope .category-icon__tooltip-text{background:var(--color-darkGray);border-radius:var(--radius-sm);box-shadow:var(--shadow-tooltip);color:#fff;display:block;font-size:13px;line-height:1.4;padding:6px 12px}";Q(R8);function gm({icon:e,label:t,tooltip:a,wrapperStyle:r,color:n,bgColor:i,useHover:s=!0,iconSize:c="medium"}){const u=c==="small",d=xe("category-icon",u?"category-icon--small":""),m=u?16:20,h=l.useRef(null),[p,g]=l.useState(!1),v=l.useMemo(()=>{const w=r&&typeof r=="object"?{...r}:{};return!n&&!i?w:{...w,...n?{color:n,"--t-item-fg":n}:{},...i?{"--t-item-bg":i}:{}}},[r,n,i]),b=a||t,[y,f]=l.useState(null);l.useLayoutEffect(()=>{p&&f(h.current?.getBoundingClientRect()??null)},[p]),l.useEffect(()=>{if(!s&&p)try{g(!1)}catch{}},[s,p]),l.useEffect(()=>{if(!p)return;const w=S=>{const N=h.current;if(!N)return;const T=S.target;T&&!N.contains(T)&&g(!1)};return document.addEventListener("pointerdown",w,!0),()=>document.removeEventListener("pointerdown",w,!0)},[p]);const x=l.useCallback(()=>{s&&g(!0)},[s]),_=l.useCallback(()=>{s&&g(!1)},[s]),C=l.useCallback(()=>g(!1),[]),A=l.useCallback(w=>{if(w.key==="Escape"){g(!1);return}(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),g(S=>!S))},[]);return o.jsxs("span",{ref:h,className:"category-icon__wrap",onPointerEnter:x,onPointerLeave:_,onFocus:x,onBlur:_,onKeyDown:A,role:"button",tabIndex:0,"aria-label":typeof b=="string"?b:void 0,"aria-haspopup":!!b,"aria-expanded":p,"data-tooltip-ignore":!0,children:[o.jsx(Pe,{icon:e,label:t,className:d,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:v,size:m}),p&&b&&o.jsx(aa,{anchorRect:y,text:typeof b=="string"?b:void 0,offset:8,onClose:C,className:"category-icon__tooltip",ariaLabel:typeof b=="string"?b:void 0})]})}var $8=".ihabdevteam-core-scope .training-block-button{background:var(--color-white);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-m);box-shadow:var(--shadow-card);box-sizing:border-box;cursor:pointer;display:inline-block;height:200px;padding:var(--spacing-l);position:relative;text-align:left;transition:all .12s;vertical-align:top;width:200px}.ihabdevteam-core-scope .training-block-button:hover{border-color:var(--color-main);box-shadow:var(--shadow-card)}.ihabdevteam-core-scope .training-block-button--completed{box-shadow:var(--shadow-card)}.ihabdevteam-core-scope .training-block-button__more{position:absolute;right:var(--spacing-l);top:calc(var(--spacing-l) - 2px);z-index:2}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .training-block-button{height:190px;width:190px}}@media (max-width:767px){.ihabdevteam-core-scope .training-block-button{height:170px;width:calc(50% - 5px)}.ihabdevteam-core-scope .training-block-button__title.h3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;line-height:20px;overflow:hidden}}.ihabdevteam-core-scope .training-block-button__left{display:block}.ihabdevteam-core-scope .training-block-button__title.h3{color:var(--color-black);left:20px;margin:0;position:absolute;right:20px;top:68px}.ihabdevteam-core-scope .training-block-button__description{align-items:center;bottom:20px;display:flex;gap:var(--spacing-xs);height:20px;justify-content:space-between;left:20px;position:absolute;right:20px}.ihabdevteam-core-scope .training-block-button__count{color:var(--color-darkGray)}.ihabdevteam-core-scope .training-block-button__chevron{align-items:center;color:var(--color-lightGray);display:inline-flex;height:20px;justify-content:center;margin-left:auto}.ihabdevteam-core-scope .training-block-button__chevron-icon,.ihabdevteam-core-scope .training-block-button__chevron-icon-image,.ihabdevteam-core-scope .training-block-button__chevron-icon-mask,.ihabdevteam-core-scope .training-block-button__chevron-icon-svg{align-items:center;color:var(--color-lightGray);display:inline-flex;height:20px;justify-content:center;width:20px}.ihabdevteam-core-scope .training-block-button__chevron-icon-mask{background-color:currentColor;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}.ihabdevteam-core-scope .training-block-button__chevron-icon-image{display:block;-o-object-fit:contain;object-fit:contain}.ihabdevteam-core-scope .training-block-button__chevron-icon-svg svg{fill:currentColor;display:block;height:20px;width:20px}.ihabdevteam-core-scope .training-block-button .category-icon__wrap{left:18px;position:absolute;top:18px}.ihabdevteam-core-scope .training-block-button .category-icon{position:static}.ihabdevteam-core-scope .training-block-button__type-label{color:var(--color-gray);left:20px;overflow:hidden;position:absolute;right:20px;text-overflow:ellipsis;top:68px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--withType .training-block-button__title.h3{top:86px}.ihabdevteam-core-scope .training-block-button--small{height:120px;width:120px}.ihabdevteam-core-scope .training-block-button--small .category-icon__wrap{left:12px;top:12px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__type-label{color:var(--color-gray);left:12px;overflow:hidden;position:absolute;right:12px;text-overflow:ellipsis;top:44px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--small .training-block-button__title{color:var(--color-black);left:12px;margin:0;overflow:hidden;position:absolute;right:12px;text-overflow:ellipsis;top:60px;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--small.training-block-button--no-type-label .training-block-button__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;top:44px;white-space:normal}.ihabdevteam-core-scope .training-block-button--small .training-block-button__description{bottom:10px;height:16px;left:12px;right:12px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__more{right:6px;top:6px}.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon,.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon-svg,.ihabdevteam-core-scope .training-block-button--small .training-block-button__chevron-icon-svg svg{height:12px;width:12px}.ihabdevteam-core-scope .training-block-button--list{box-shadow:none;min-height:68px;padding:0 12px;width:200px}.ihabdevteam-core-scope .training-block-button--list .training-block-button__left{align-items:center;display:flex;gap:var(--spacing-s);height:100%;width:100%}.ihabdevteam-core-scope .training-block-button--list .category-icon__wrap{flex-shrink:0;order:1;position:static}.ihabdevteam-core-scope .training-block-button--list .training-block-button__title{color:var(--color-black);flex:1;min-width:0;order:2;overflow:hidden;position:static;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--list .training-block-button__description{display:none}.ihabdevteam-core-scope .training-block-button--list .training-block-button__preview{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;order:4}.ihabdevteam-core-scope .training-block-button--small .training-block-button__preview{align-items:center;display:inline-flex;justify-content:center;position:absolute;right:12px;top:12px;z-index:1}.ihabdevteam-core-scope .training-block-button--compact{background:transparent;border-color:transparent;box-shadow:none;height:40px;padding:0;width:100%}.ihabdevteam-core-scope .training-block-button--compact:hover{background:var(--color-darkWhite);border-color:transparent;box-shadow:none}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__left{align-items:center;display:flex;gap:var(--spacing-xs);height:100%;width:100%}.ihabdevteam-core-scope .training-block-button--compact .category-icon__wrap{flex-shrink:0;order:1;position:static}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__title{color:var(--color-black);flex:1;min-width:0;order:2;overflow:hidden;position:static;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-block-button--compact .training-block-button__description{display:none}";Q($8);function z8(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=s=>s.map(c=>c?.contextCode||c?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const s=a.sentences||a.items||[],c=Array.isArray(s)&&s.length>0?r(s):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}if(t==="SHORT_STORY"){const s=a.items||a.sentences||[],c=Array.isArray(s)&&s.length>0?r(s):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"SHORT_S"}}if(t==="LONG_STORY"){const s=a.items||a.sentences||[],c=Array.isArray(s)&&s.length>0?r(s):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LONG"}}if(t==="ORDERING_SENTENCE"){const s=a.sentences||a.items||[],c=Array.isArray(s)&&s.length>0?r(s):[];return c.length===0&&(a.contextCode||a.context_code)&&c.push(String(a.contextCode||a.context_code)),{previewCodes:c,previewBucket:"LIN_D"}}const n=a.sentences||a.items||[],i=r(Array.isArray(n)?n:[]);return i.length===0&&(a.contextCode||a.context_code)&&i.push(String(a.contextCode||a.context_code)),{previewCodes:i,previewBucket:null}}function I8(e,t){const[a,r]=l.useState(!1),[n,i]=l.useState(-1),[s,c]=l.useState([]),u=l.useRef(null),d=l.useRef(!1),m=l.useRef(null),[h,p]=l.useState(!1),g=l.useRef([]),{previewCodes:v,previewBucket:b}=z8(e,t);l.useEffect(()=>{if(!v.length)return;let f=!1;return(async()=>{const x=[],_=[];for(const C of v)try{const A=Tr(C,b);if(!A){x.push("");continue}let w=null;try{w=await Io(A)}catch{}if(!w)try{const S=await Br(A);S&&(w=URL.createObjectURL(S),_.push(w))}catch{}x.push(w??"")}catch{x.push("")}f?_.forEach(C=>{try{URL.revokeObjectURL(C)}catch{}}):(g.current.forEach(C=>{try{URL.revokeObjectURL(C)}catch{}}),g.current=_,c(x))})(),()=>{f=!0}},[v.join(","),b]),l.useEffect(()=>()=>{g.current.forEach(f=>{try{URL.revokeObjectURL(f)}catch{}}),g.current=[]},[]);const y=l.useCallback(async f=>{if(f.stopPropagation(),f.preventDefault(),d.current){d.current=!1;try{u.current?.pause()}catch{}r(!1),i(-1);return}if(s.filter(Boolean).length){d.current=!0,r(!0);for(let x=0;x<s.length&&d.current;x++){const _=s[x];if(_){i(x);try{await new Promise((C,A)=>{const w=new Audio(_);u.current=w,w.onended=()=>C(),w.onerror=()=>A(),w.play().catch(A)})}catch{break}}}d.current=!1,r(!1),i(-1)}},[s]);return l.useEffect(()=>()=>{d.current=!1;try{u.current?.pause()}catch{}u.current=null},[]),{playing:a,playingIndex:n,previewUrls:s,previewHover:h,setPreviewHover:p,previewBtnRef:m,handlePreview:y}}const O8=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 n=r;return n.sentence||n.text||n.context||n.question||n.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function xn(e){const{index:t,type:a,trainingData:r,ariaLabel:n,depth:i,renderPopup:s,completed:c,completedIds:u,selectedIds:d,tooltipText:m,useDescriptionTooltip:h=!1,onRemove:p,hideCheckBadge:g=!1,showTypeLabel:v=!1,onComplete:b,onSelect:y,onMore:f,countLabelOverride:x,size:_="square"}=e||{},{t:C}=me.useTranslation(),[A,w]=l.useState(!1),S=l.useRef(null),[N,T]=l.useState(!1);l.useEffect(()=>{S.current?.matches(":hover")&&T(!0)},[]);const{playing:E,playingIndex:W,previewUrls:L,previewHover:k,setPreviewHover:D,previewBtnRef:j,handlePreview:F}=I8(r,a?.key),ee=l.useCallback(()=>{y?y():w(!0)},[y]),Z=l.useCallback(()=>w(!1),[]),J=l.useCallback(()=>T(!0),[]),M=l.useCallback(()=>T(!1),[]),R=l.useCallback(()=>D(!0),[D]),z=l.useCallback(()=>D(!1),[D]),[H,$]=l.useState(null);l.useLayoutEffect(()=>{k&&$(j.current?.getBoundingClientRect()??null)},[k,j]);const[q,O]=l.useState(null);l.useLayoutEffect(()=>{N&&!A&&h&&O(S.current?.getBoundingClientRect()??null)},[N,A,h]);const G=l.useCallback(be=>{(be.key==="Enter"||be.key===" ")&&(be.preventDefault(),ee())},[ee]),I=r||null,ne=l.useMemo(()=>{if(!h)return null;const be=m?(Array.isArray(m)?m:[m]).filter(Boolean):null,at=be&&be.length>0?be:O8(I);return at&&at.length>0?at:null},[h,m,I]),X=l.useCallback(be=>{be.stopPropagation(),p?.()},[p]),te=l.useCallback(be=>be.stopPropagation(),[]),pe=l.useCallback(be=>{typeof b=="function"&&b(be)},[b]),ae=c||(u&&r?.id!=null?u.has(String(r.id)):!1),Y=!ae&&(d!=null&&r?.id!=null?d.has(String(r.id)):!1);cr("speechear.popup.close",Z);const de=Kr(),fe=`${a?.label||""} ${t+1}`,Se=I?.title||I?.name||fe;let Ae=a?.icon,P,oe="",re="";try{const be=I?.category_0||I?.category_main_code||I?.category_main,at=I?.category_1||I?.category_sub_code||I?.category_sub,He=de.find(Le=>Le.key===be);He?.icon&&(Ae=He.icon),!P&&He?.color&&(P={"--t-item-fg":He.color}),!P&&I?.iconColor&&(P={"--t-item-fg":I.iconColor}),oe=He?.label||"";try{re=He?.subs?.find(Le=>Le.key===at)?.label||""}catch{}}catch{}const Ce=re?`${oe} / ${re}`:oe||a?.label||Se,De=be=>C("training.countQuestions",{n:be}),Ie=be=>C("training.countSentences",{n:be});let Oe="";try{if(I)if(a?.key==="LISTEN_IN_NOISE"){let be=0;Array.isArray(I.items)&&I.items.length>0?be=I.items.length:Array.isArray(I.sentences)&&I.sentences.length>0?be=I.sentences.length:I.sentences&&(be=1),Oe=Ie(be)}else if(a?.key==="SHORT_STORY"){let be=1;Array.isArray(r?.items)?be=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?be=r.raw.items.length:Array.isArray(I?.questions)?be=I.questions.length:Array.isArray(I?.sentences)&&(be=I.sentences.length),Oe=De(be)}else if(a?.key==="LONG_STORY"){let be=1;if(Array.isArray(I.items)&&I.items.length>0){const at=I.items.reduce((He,Le)=>{const Ue=Le.questionItems;return Array.isArray(Ue)?He+Ue.length:Array.isArray(Le.questions)?He+Le.questions.length:He},0);be=at>0?at:I.items.length}else Array.isArray(I.questions)&&I.questions.length>0?be=I.questions.length:Array.isArray(I.sentences)&&I.sentences.length>0&&(be=I.sentences.length);Oe=De(be)}else if(a?.key==="ORDERING_SENTENCE"){let be=1;Array.isArray(I.items)&&I.items.length>0?be=I.items.length:Array.isArray(I.sentences)&&I.sentences.length>0&&(be=I.sentences.length),Oe=Ie(be)}else Array.isArray(I.items)&&(Oe=I.items.length>0?De(I.items.length):"")}catch{}const Fe=_==="list",Qe=_==="compact",Re=_==="small",Ge=Re&&a?.key?rs().find(be=>be.key===a.key)?.label??"":"",We=!!v&&!!a?.label&&a.label!==String(Se)||Re&&!!Ge&&Ge!==String(Se);return o.jsxs(o.Fragment,{children:[o.jsxs("div",{ref:S,className:`training-block-button${Fe?" training-block-button--list":""}${Qe?" training-block-button--compact":""}${Re?" training-block-button--small":""}${ae?" training-block-button--completed":""}${Y?" training-block-button--selected":""}${We&&!Re?" training-block-button--withType":""}${Re&&!We?" training-block-button--no-type-label":""}`,onClick:ee,onPointerEnter:J,onPointerLeave:M,role:"button",tabIndex:0,onKeyDown:G,"aria-label":typeof n=="string"?n:typeof Se=="string"?Se:void 0,children:[o.jsxs("div",{className:"training-block-button__left",children:[v&&a?.label&&a.label!==String(Se)&&o.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Re&&Ge&&Ge!==String(Se)&&o.jsx("span",{className:"training-block-button__type-label caption-2",children:Ge}),o.jsx(gm,{icon:Ae,label:Se,tooltip:Ce,wrapperStyle:P,iconSize:Re||Qe?"small":"medium"}),!g&&(ae||Y)&&!(p&&N)&&o.jsx(ht,{type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":ae?C("training.completed","\uD6C8\uB828 \uC644\uB8CC"):C("training.selected","\uC120\uD0DD\uB428")}),p&&N&&o.jsx(ht,{type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":C("common.remove","\uC81C\uAC70"),onClick:X}),o.jsx("div",{className:`training-block-button__title ${Qe?"body-3":Re?"body-3b":"h3"}`,children:String(Se)}),o.jsxs("div",{className:"training-block-button__description",children:[(()=>{const be=x!==void 0?x:Oe;return be?o.jsx("div",{className:`training-block-button__count ${Re?"caption-2":"caption-1"}`,children:be}):null})(),o.jsx("div",{className:"training-block-button__chevron",children:o.jsx(Pe,{icon:"chevron-right",label:C("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:Re?12:20})})]}),(Fe||Re)&&L.length>0&&o.jsx("div",{ref:j,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:te,onPointerEnter:R,onPointerLeave:z,children:o.jsx(ce,{size:Re?28:32,type:"dot",icon:E?"pause":"play",variant:Re?"transparent-lightGray":"default",useBorder:!1,selected:E,ariaLabel:E?C("training.stop","\uC815\uC9C0"):C("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:F})})]}),f&&o.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:be=>{be.stopPropagation(),f(be)},children:o.jsx(ce,{size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:C("common.more","\uB354\uBCF4\uAE30")})})]}),k&&o.jsx(aa,{anchorRect:H,text:E?C("training.stop","\uC815\uC9C0"):C("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:z}),N&&!A&&h&&(ne?o.jsx(to,{anchorRect:q,items:ne,activeIndex:W,onClose:M}):I?.subTitle?o.jsx(aa,{anchorRect:q,text:I.subTitle,offset:8,onClose:M}):null),A&&s&&s({trainingData:I,typeKey:a?.key??"",onClose:Z,onComplete:pe,popupTitle:String(Se),popupSubTitle:a?.subTitle,depth:i!=null?String(i):void 0,popupIcon:Ae,popupIconTooltip:String(Ce),popupWrapperStyle:P})]})}const Cn=20;function fm(e){const{t}=me.useTranslation(),{type:a,trainingDatas:r,depth:n,renderPopup:i,completedIds:s,selectedIds:c,onItemComplete:u,size:d,useDescriptionTooltip:m,onRemove:h,onMore:p,sectionType:g="page"}=e||{},[,v]=l.useState(0),b=typeof r<"u"?Array.isArray(r)?r:[]:[],y=b.length,[f,x]=l.useState(Math.min(y,Cn)),_=l.useMemo(()=>Array.isArray(n)?[...n,a?.label].filter(Boolean).join(" \xB7 "):[n||"",a?.label].filter(Boolean).join(" \xB7 "),[n,a?.label]);l.useEffect(()=>{x(Math.min(y,Cn))},[y]),cr("speechear.data.updated",()=>v(A=>A+1));function C(){x(A=>Math.min(y,A+Cn))}return o.jsxs(ro,{type:g,title:a?.label,icon:a?.icon,disc:a?.desc,className:"training-block",children:[o.jsx("div",{className:"training-list",children:(b||[]).slice(0,f).map((A,w)=>{const S=A;return o.jsx(xn,{index:w,type:a,trainingData:S,depth:_,renderPopup:i,completedIds:s,selectedIds:c,size:d,useDescriptionTooltip:m,onRemove:typeof h=="function"&&c!=null&&S?.id!=null&&c.has(String(S.id))?()=>h(S):void 0,onComplete:typeof u=="function"&&S?.id!=null?()=>u(String(S.id)):void 0,onMore:typeof p=="function"?N=>p(S,N):void 0},S?.id!=null?`${a?.key||"t"}-${String(S.id)}`:`${a?.key||"t"}-${w}`)})}),y>Cn&&f<y&&o.jsx("div",{className:"training-block__more",children:o.jsx(ce,{size:48,type:"bar",icon:"plus",onClick:C,ariaLabel:t("common.loadMore","\uB354\uBCF4\uAE30"),label:t("common.loadMore","\uB354\uBCF4\uAE30"),variant:"main"})})]})}function ql(e){const t=l.useRef(null),[a,r]=l.useState(!!e),[n,i]=l.useState(!1);l.useEffect(()=>{i(!1);const u=t.current;r(!!e&&!(u?.complete&&u.naturalWidth>0))},[e]);const s=l.useCallback(()=>r(!1),[]),c=l.useCallback(()=>{r(!1),i(!0)},[]);return{imgRef:t,loading:a,failed:n,hasImage:!!e&&!n,onLoad:s,onError:c}}let To=null;function F8(e){if(To&&To!==e)try{To()}catch{}return To=e,()=>{To===e&&(To=null)}}var W8='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2256_7437)">%0A<g opacity="0.1">%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23111111"/>%0A</g>%0A<path d="M57.1426 17.8571H35.7141C25.8533 17.8571 17.8569 25.8536 17.8569 35.7143V44.0643L10.9926 51.6179C10.5819 52.0679 10.6283 52.775 11.0998 53.1643C13.1783 54.8929 15.4641 56.2214 17.8569 57.1679C17.8676 63.925 21.6283 69.8 27.1712 72.825C25.7855 70.2893 24.9998 67.3786 24.9998 64.2821V35.7107C24.9998 29.7929 29.7962 24.9964 35.7141 24.9964H64.2855C67.3783 24.9964 70.2891 25.7857 72.8283 27.1679C69.7998 21.6179 63.9105 17.8536 57.1426 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M72.8285 27.1714C74.2142 29.7072 75 32.6179 75 35.7143V64.2857C75 70.2036 70.2035 75 64.2857 75H35.7142C32.6214 75 29.7107 74.2107 27.1714 72.8286C30.2 78.3786 36.0892 82.1429 42.8571 82.1429H58.9678C59.9321 82.1429 60.7142 82.925 60.7142 83.8893C60.7142 84.9107 61.5892 85.7215 62.6071 85.6322C73.5535 84.675 82.1428 75.4822 82.1428 64.2857V42.8572C82.1428 36.0893 78.3785 30.2 72.8285 27.1714Z" fill="%23111111"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="%23111111"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2323 35.6679 46.2859 35.8464 45.4073 36.2679C44.518 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2037 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2256_7437">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',H8='.ihabdevteam-core-scope .training-word-card{background:var(--color-white);border-radius:var(--radius-m);display:flex;flex:none;flex-direction:column;height:260px;overflow:visible;perspective:900px;position:relative;width:200px}.ihabdevteam-core-scope .training-word-card--disabled{cursor:default}.ihabdevteam-core-scope .training-word-card__flipper{border-radius:var(--radius-m);box-shadow:var(--shadow-card);display:flex;flex:1;flex-direction:column;position:relative;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.4,0,.2,1);will-change:transform}.ihabdevteam-core-scope .training-word-card--flipped .training-word-card__flipper{transform:rotateY(180deg)}.ihabdevteam-core-scope .training-word-card__front{box-sizing:border-box;flex:1;flex-direction:column;gap:var(--spacing-s);min-height:0;padding:10px var(--spacing-m)}.ihabdevteam-core-scope .training-word-card__back,.ihabdevteam-core-scope .training-word-card__front{align-items:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;justify-content:center}.ihabdevteam-core-scope .training-word-card__back{background:#f3f5f6;background:var(--color-deepWhite,#f3f5f6);border-radius:var(--radius-m);inset:0;position:absolute;transform:rotateY(180deg)}.ihabdevteam-core-scope .training-word-card__back:before{border:8px solid var(--color-darkWhite);border-radius:var(--radius-m);content:"";inset:0;pointer-events:none;position:absolute}.ihabdevteam-core-scope .training-word-card__disabled-symbol{filter:invert(93%) sepia(6%) saturate(247%) hue-rotate(163deg) brightness(101%) contrast(93%);height:52px;opacity:.6;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:52px}.ihabdevteam-core-scope .training-word-card__selected-badge{position:absolute;right:0;top:0;transform:translate(12%,-12%);z-index:3}.ihabdevteam-core-scope .training-word-card__selected-badge .circle-badge{border:2px solid var(--color-pureWhite)}.ihabdevteam-core-scope .training-word-card--selectable{cursor:pointer;outline:1px solid transparent;overflow:visible;transition:box-shadow .15s,outline-color .15s}.ihabdevteam-core-scope .training-word-card--selectable:not(.training-word-card--disabled):hover{box-shadow:0 4px 16px rgba(9,30,34,.12);outline:1px solid var(--color-main)}.ihabdevteam-core-scope .training-word-card--selectable.training-word-card--selected:hover,.ihabdevteam-core-scope .training-word-card--selected{box-shadow:none;outline:2px solid #4f6ef7;outline:2px solid var(--color-main,#4f6ef7)}.ihabdevteam-core-scope .training-word-card__image-wrap{aspect-ratio:4/3;background:#f3f5f6;border-radius:var(--radius-s);flex-shrink:0;overflow:hidden;padding:0;position:relative;width:100%}.ihabdevteam-core-scope .training-word-card__image{-webkit-user-drag:none;display:block;height:100%;-o-object-fit:cover;object-fit:cover;pointer-events:none;transition:opacity .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.ihabdevteam-core-scope .training-word-card__placeholder{background:linear-gradient(160deg,#f0f2f4,#e4e8ea);height:100%;width:100%}.ihabdevteam-core-scope .training-word-card__spinner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute;z-index:1}.ihabdevteam-core-scope .training-word-card__spinner:after{animation:twCard__spin .7s linear infinite;border:3px solid rgba(0,0,0,.1);border-radius:50%;border-top:3px solid var(--color-main,#4f6ef7);content:"";height:28px;width:28px}@keyframes twCard__spin{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .training-word-card__body{align-items:center;display:flex;flex-direction:column;gap:3px;padding:0}.ihabdevteam-core-scope .training-word-card__word{color:#0b2b35;color:var(--color-black,#0b2b35);font-size:22px;font-weight:700;line-height:1.25;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .training-word-card__pronunciation{color:#70858a;color:var(--color-gray,#70858a);font-size:13px;font-weight:500;line-height:1.4;text-align:center}.ihabdevteam-core-scope .training-word-card__colloquial{color:#a0b0b5;color:var(--color-lightGray,#a0b0b5);line-height:1.4;text-align:center}.ihabdevteam-core-scope .training-word-card__bottom{display:flex;flex-shrink:0;justify-content:center}@media (max-width:720px){.ihabdevteam-core-scope .training-word-card{border-radius:var(--radius-card)}.ihabdevteam-core-scope .training-word-card__word{font-size:18px}.ihabdevteam-core-scope .training-word-card__body{gap:2px}.ihabdevteam-core-scope .training-word-card__front{gap:var(--spacing-xs)}.ihabdevteam-core-scope .training-word-card__back,.ihabdevteam-core-scope .training-word-card__back:before{border-radius:var(--radius-card)}}@media (max-width:767px){.ihabdevteam-core-scope .training-word-card{border-radius:var(--radius-card);height:auto;width:100%}.ihabdevteam-core-scope .training-word-card__flipper{border-radius:var(--radius-card);box-shadow:0 2px 8px rgba(0,0,0,.03)}.ihabdevteam-core-scope .training-word-card__front{padding:var(--spacing-s)}.ihabdevteam-core-scope .training-word-card__back:before{border-width:4px}.ihabdevteam-core-scope .training-word-card__image-wrap{aspect-ratio:1/1}.ihabdevteam-core-scope .training-word-card__word{font-size:14px}.ihabdevteam-core-scope .training-word-card__pronunciation{font-size:11px}.ihabdevteam-core-scope .training-word-card__body{gap:2px}.ihabdevteam-core-scope .training-word-card__front{gap:4px}}';Q(H8);const V8=W8,_n=l.forwardRef(function({item:e,disabled:t=!1,onPlayDone:a,selectable:r=!1,selected:n=!1,onSelect:i,flipDelay:s=0,hideLabel:c=!1,hideAudio:u=!1,orderRank:d=null},m){const{t:h}=me.useTranslation(),p=e.word||e.title||"",g=t||!p,v=e.audio??e.sound??e.audioKey,b=e.subLabel||e.pronunciation||"",y=e.colloquialLabel||"",[f,x]=l.useState({label:p,subLabel:b,colloquialLabel:y,homonum:e.homonum});p&&f.label!==p&&x({label:p,subLabel:b,colloquialLabel:y,homonum:e.homonum});const _=l.useRef(null),C=oa("(max-width: 767px)"),[A,w]=l.useState(!1),[S,N]=l.useState(""),T=Ma()?.(f.label,f.homonum)??e.image??"",{imgRef:E,loading:W,hasImage:L,onLoad:k,onError:D}=ql(T);l.useEffect(()=>{let R=!1;return(async()=>{if(v){if(typeof v=="string"){if(v.startsWith("http")||v.includes("/")){N(v);return}}else if(typeof v=="object"&&!Array.isArray(v)){const H=v.src;if(H){N(H);return}}}const z=Oo();if(z&&p)try{const H=await Promise.resolve(z(p));!R&&H&&N(H)}catch{}})(),()=>{R=!0}},[v,p]),l.useEffect(()=>()=>{try{_.current?.pause()}catch{}_.current=null},[]);const j=l.useCallback(()=>new Promise(R=>{if(typeof window<"u"&&window.speechSynthesis&&p){w(!0),window.speechSynthesis.cancel();const z=new SpeechSynthesisUtterance(p);z.lang="ko-KR",z.onend=()=>{w(!1);try{a?.()}catch{}R()},z.onerror=()=>{w(!1),R()},window.speechSynthesis.speak(z)}else R()}),[p,a]),F=l.useCallback(R=>new Promise(z=>{let H=!1;const $=()=>{H||(H=!0,w(!1),z(!1))};try{const q=new Audio(R);_.current=q,q.onended=()=>{if(!H){H=!0,w(!1);try{a?.()}catch{}z(!0)}},q.onerror=$,q.play().catch($)}catch{$()}}),[a]),ee=l.useCallback(async()=>{if(t)return;const R=F8(()=>{try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}w(!1)});try{window.speechSynthesis?.cancel()}catch{}try{if(S&&(w(!0),await F(S)))return;const z=Jn();if(z&&p)try{const H=await Promise.resolve(z(p));if(H&&(w(!0),await F(H)))return}catch{}await j()}finally{R()}},[t,S,p,F,j]);l.useImperativeHandle(m,()=>({play:()=>ee()}),[ee]);const Z=R=>R.stopPropagation(),J=l.useCallback(R=>{if(R.stopPropagation(),!t){if(A){try{_.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}w(!1);return}ee()}},[t,A,ee]),M=xe("training-word-card",t?"training-word-card--disabled":"",g?"training-word-card--flipped":"",r?"training-word-card--selectable":"",n?"training-word-card--selected":"");return o.jsx("div",{className:M,onClick:r&&!t?i:void 0,role:r?"button":void 0,"aria-pressed":r?n:void 0,tabIndex:r&&!t?0:void 0,"aria-disabled":r&&t?!0:void 0,onKeyDown:r&&!t?R=>{(R.key==="Enter"||R.key===" "||R.key==="Spacebar")&&(R.preventDefault(),i?.())}:void 0,children:o.jsxs("div",{className:"training-word-card__flipper",style:{transitionDelay:g?"0ms":`${s}ms`},children:[o.jsxs("div",{className:"training-word-card__front",children:[n&&o.jsx("div",{className:"training-word-card__selected-badge",onClick:Z,children:o.jsx(ht,{type:"dot",size:40,position:"inline",animate:!0,icon:d!=null?void 0:"check",number:d??void 0,"aria-label":d!=null?h("training.nthSelected",{n:d}):h("training.selected","\uC120\uD0DD\uB428")})}),o.jsx("div",{className:"training-word-card__image-wrap",children:L?o.jsxs(o.Fragment,{children:[W&&o.jsx("div",{className:"training-word-card__spinner"}),o.jsx("img",{ref:E,className:"training-word-card__image",src:T,alt:f.label||h("common.image","\uC774\uBBF8\uC9C0"),style:{opacity:W?0:1},onLoad:k,onError:D})]}):o.jsx("div",{className:"training-word-card__placeholder"})}),!c&&o.jsxs("div",{className:"training-word-card__body",children:[o.jsx("div",{className:"training-word-card__word",children:f.label}),f.subLabel&&o.jsxs("div",{className:"training-word-card__pronunciation",children:["[",f.subLabel,"]"]}),f.colloquialLabel&&o.jsxs("div",{className:"training-word-card__colloquial caption-1",children:["[",f.colloquialLabel,"]"]})]}),!u&&o.jsx("div",{className:"training-word-card__bottom",onClick:r?Z:void 0,children:o.jsx(ce,{size:C?40:48,type:C?"dot":"bar",icon:A?"pause":"play",label:C?void 0:h("training.playSound","\uC18C\uB9AC \uB4E3\uAE30"),selected:A,onClick:J,disabled:t,ariaLabel:h("training.playSound","\uC18C\uB9AC \uB4E3\uAE30")})})]}),o.jsx("div",{className:"training-word-card__back","aria-hidden":"true",children:o.jsx("img",{src:V8,className:"training-word-card__disabled-symbol",alt:"",draggable:!1})})]})})});let fr=0,vm="",ym="",vr=0;function G8(){return xm(!1)}function q8(){return xm(!0)}function xm(e){const t=typeof document<"u";fr===0&&t&&(vm=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(vr===0&&(ym=document.body.style.paddingRight),vr++,document.body.style.paddingRight="0px"),fr++;let a=!1;return()=>{a||(a=!0,fr=Math.max(0,fr-1),e&&t&&(vr=Math.max(0,vr-1),vr===0&&(document.body.style.paddingRight=ym)),fr===0&&t&&(document.body.style.overflow=vm))}}var Y8=".ihabdevteam-core-scope .popup{align-items:center;background:rgba(16,24,32,.6);background:var(--color-popupBlock,rgba(16,24,32,.6));display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal)}.ihabdevteam-core-scope .popup.popup--inline{align-items:stretch;background:transparent;justify-content:stretch;position:relative;z-index:5}.ihabdevteam-core-scope .popup.popup--inline .popup-panel{width:100%}.ihabdevteam-core-scope .popup-panel{background:var(--color-white);border-radius:28px;box-shadow:var(--shadow-popup);display:flex;flex-direction:column;max-height:calc(100% - 60px);max-width:820px;overflow:hidden;position:relative;width:calc(100% - 40px)}.ihabdevteam-core-scope .popup-panel--small{max-width:480px}.ihabdevteam-core-scope .popup-panel--medium{max-width:680px}.ihabdevteam-core-scope .popup-panel--large{max-width:1080px}.ihabdevteam-core-scope .popup-close-float{align-items:center;display:flex;gap:var(--spacing-xs);position:absolute;right:8px;top:8px;z-index:1}.ihabdevteam-core-scope .popup-title{display:block;flex-shrink:0;padding:var(--spacing-l);text-align:center}.ihabdevteam-core-scope .popup-header{align-items:center;display:flex;flex-shrink:0;gap:var(--spacing-s);padding:var(--spacing-l) var(--spacing-l) 0}.ihabdevteam-core-scope .popup-header--with-subtitle{align-items:flex-start}.ihabdevteam-core-scope .popup-header-main{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.ihabdevteam-core-scope .popup-title--left{flex:1;min-width:0;padding:0;text-align:left}.ihabdevteam-core-scope .popup-header-main .popup-title--left{flex:none}.ihabdevteam-core-scope .popup-header .popup-title--left{margin:0}.ihabdevteam-core-scope .popup-subtitle{color:var(--color-gray);margin:0;text-align:left}.ihabdevteam-core-scope .popup-header-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.ihabdevteam-core-scope .popup-content{-webkit-overflow-scrolling:touch;display:flex;flex:1;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:20px 20px 0;touch-action:pan-y}.ihabdevteam-core-scope .popup-content__inner{padding-bottom:20px}.ihabdevteam-core-scope .popup-footer{display:flex;gap:8px;justify-content:center;padding:0 20px 20px}.ihabdevteam-core-scope .popup-footer--buttons>*{flex:1;max-width:200px}.ihabdevteam-core-scope .popup--closing{opacity:0;transition:opacity .26s ease}@media (max-width:767px){.ihabdevteam-core-scope .popup-panel{max-height:calc(100% - 132px - env(safe-area-inset-bottom))}}.ihabdevteam-core-scope .form-date-row{display:flex;flex:1;gap:6px;min-width:0}.ihabdevteam-core-scope .form-date-row>div{min-width:90px}.ihabdevteam-core-scope .form-date-row--ymd>div:first-child{flex:3}.ihabdevteam-core-scope .form-date-row--ymd>div:nth-child(2),.ihabdevteam-core-scope .form-date-row--ymd>div:nth-child(3){flex:2}.ihabdevteam-core-scope .form-date-row--hm>div{flex:1}.ihabdevteam-core-scope .form-date-row--gap-8{gap:8px}@media (max-width:360px){.ihabdevteam-core-scope .form-date-row--ymd{flex-wrap:wrap}.ihabdevteam-core-scope .form-date-row--ymd>div:first-child{flex:1 0 100%}}.ihabdevteam-core-scope .form-field-error{color:var(--color-error);font-size:13px;margin-bottom:8px;padding:6px 0}.ihabdevteam-core-scope .form-inline-error{color:var(--color-error);display:block;margin-top:4px}.ihabdevteam-core-scope .confirm-popup__message{margin:0 auto;max-width:100%;padding:8px 0;text-align:left;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .confirm-popup .popup-content{padding-top:40px}.ihabdevteam-core-scope .confirm-popup .popup-content__inner{padding-bottom:40px}.ihabdevteam-core-scope .confirm-popup .panel+.confirm-popup__message{margin-top:16px}.ihabdevteam-core-scope .confirm-popup__top{display:flex;justify-content:center;margin-bottom:20px}";Q(Y8);function U8(e,t=!0){l.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=n=>{if(n.key!=="Tab")return;const i=Array.from(a.querySelectorAll(Cm));if(!i.length){n.preventDefault();return}const s=i[0],c=i[i.length-1];n.shiftKey&&document.activeElement===s?(n.preventDefault(),c.focus()):!n.shiftKey&&document.activeElement===c&&(n.preventDefault(),s.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const Cm='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',K8=260;function Ta(e){const{t}=me.useTranslation(),{title:a,subtitle:r,headerActions:n,children:i,buttons:s,footer:c,footerClassName:u="",onClose:d,closeDisabled:m=!1,beforeClose:h,className:p="",ariaLabel:g,useTitle:v=!0,inline:b=!1,size:y,resetScrollKey:f}=e||{},[x,_]=l.useState(!1),C=l.useRef(!1),A=l.useRef(null),w=l.useId(),S=l.useRef(null);l.useEffect(()=>{},[b,a,g,p]),l.useEffect(()=>{f!==void 0&&S.current&&(S.current.scrollTop=0)},[f]);const[N,T]=l.useState(!1);l.useEffect(()=>{const j=S.current;if(!j)return;const F=()=>T(j.scrollHeight>j.clientHeight+1);if(F(),typeof ResizeObserver>"u")return;const ee=new ResizeObserver(F);ee.observe(j);const Z=j.firstElementChild;return Z&&ee.observe(Z),()=>ee.disconnect()},[i,f]),l.useEffect(()=>{if(!b)return G8()},[b]),l.useEffect(()=>{if(b)return;const j=document.activeElement,F=A.current;return F&&!F.contains(document.activeElement)&&(F.querySelector(Cm)??F).focus(),()=>{j?.focus?.()}},[b]),U8(A,!b);const E=l.useCallback(j=>{C.current||(C.current=!0,_(!0),setTimeout(()=>{try{j&&j()}catch{}},K8))},[]),W=l.useCallback(()=>{m||h&&h()===!1||E(d)},[E,d,m,h]),L=l.useRef(W);l.useEffect(()=>{L.current=W});const k=!b&&!!d;l.useEffect(()=>{if(k)return gl(()=>L.current())},[k]);const D=o.jsx("div",{className:`popup ${b?"popup--inline":""} ${x?"popup--closing":""} ${p}`,children:o.jsxs("div",{ref:A,className:`popup-panel${y?` popup-panel--${y}`:""}`,tabIndex:-1,role:b?void 0:"dialog","aria-modal":b?void 0:!0,"aria-labelledby":!b&&a?w:void 0,"aria-label":!b&&!a&&g?g:void 0,children:[!v&&(n||d)?o.jsxs("div",{className:"popup-close-float",children:[n,d&&o.jsx(ce,{size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:W,disabled:m,ariaLabel:t("common.close","\uB2EB\uAE30")})]}):a||n||d?o.jsxs("div",{className:`popup-header${r?" popup-header--with-subtitle":""}`,children:[o.jsxs("div",{className:"popup-header-main",children:[o.jsx("span",{id:w,className:"popup-title popup-title--left h2",children:a}),r&&o.jsx("span",{className:"popup-subtitle body-3",children:r})]}),o.jsxs("div",{className:"popup-header-actions",children:[n,d&&o.jsx(ce,{size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:W,disabled:m,ariaLabel:t("common.close","\uB2EB\uAE30")})]})]}):null,o.jsx("div",{className:"popup-content",ref:S,tabIndex:N?0:void 0,children:o.jsx("div",{className:"popup-content__inner",children:typeof i=="function"?i({animateThen:E,closeWithAnimation:W}):i})}),s?.length?o.jsx("div",{className:"popup-footer popup-footer--buttons",children:s.map((j,F)=>o.jsx(ce,{size:48,variant:j.variant??"default",label:j.label,disabled:j.disabled,onClick:()=>j.onClick?.({animateThen:E,closeWithAnimation:W})},F))}):c?o.jsx("div",{className:`popup-footer${u?` ${u}`:""}`,children:typeof c=="function"?c({animateThen:E,closeWithAnimation:W}):c}):null]})});return b||typeof document>"u"?D:qt.createPortal(D,document.body)}function yr(e){return String(e)}const Yl=["o","triangle","x"];function Ul(e,t){return e===t?null:t}const Kl={o:"circle",triangle:"triangle",x:"x"},Zl={o:"main",triangle:"warn",x:"danger"};function _m(e){let t=0,a=0,r=0;for(const i of Object.values(e))i==="o"?t++:i==="triangle"?a++:i==="x"&&r++;const n=t+a+r;return{marked:n,o:t,triangle:a,x:r,rate:n===0?null:(t+a*.5)/n}}function wn(e){const t={};for(const[a,r]of Object.entries(e))(r==="o"||r==="triangle"||r==="x")&&(t[a]=r);return t}function Xl(e){const t=[];let a=0;for(const r of e)t.push(a),a+=r;return t}function wm(e,t){return!t&&e>0}var Z8=`.ihabdevteam-core-scope .word-table__scaler{overflow:clip;overflow-clip-margin:32px;width:100%}.ihabdevteam-core-scope .word-table{--print-margin:57px;background:#fbfdff;border:1px solid var(--color-whiteLine);box-shadow:var(--shadow-dropdown);box-sizing:border-box;padding:57px;padding:var(--print-margin)}.ihabdevteam-core-scope .word-table-block__content{box-sizing:border-box;display:grid;height:100%;position:relative;width:100%}.ihabdevteam-core-scope .word-table__page-number{bottom:8px;color:var(--color-gray);pointer-events:none;position:absolute;z-index:2}.ihabdevteam-core-scope .word-table__page-number--left{left:12px}.ihabdevteam-core-scope .word-table__page-number--right{right:12px}.ihabdevteam-core-scope .word-table__page-number--center{left:50%;transform:translateX(-50%)}.ihabdevteam-core-scope .word-table-block__content--cut-show{background:var(--color-whiteLine);gap:1px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.ihabdevteam-core-scope .word-table-block__content--outline{position:relative}.ihabdevteam-core-scope .word-table-block__content--outline:after{border:1px solid var(--color-whiteLine);content:"";inset:0;pointer-events:none;position:absolute;z-index:1}.ihabdevteam-core-scope .word-table-block__content--cut-corner .word-table-block__card{background:linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 0 /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 0 /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 0 /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 0 /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 100% /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 100% /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 100% /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 100% /1px 8px no-repeat,#fbfdff;print-color-adjust:exact;-webkit-print-color-adjust:exact}.ihabdevteam-core-scope .word-table-block__card{background:#fbfdff;display:flex;min-height:0;overflow:hidden;position:relative;transition:box-shadow .15s}.ihabdevteam-core-scope .word-table-block__card--filler{align-items:center;justify-content:center}.ihabdevteam-core-scope .word-table-block__card:not(.word-table-block__card--filler):hover{box-shadow:var(--shadow-dropdown);z-index:1}.ihabdevteam-core-scope .word-table-block__card--draggable{cursor:grab}.ihabdevteam-core-scope .word-table-block__card--draggable:active{cursor:grabbing}.ihabdevteam-core-scope .word-table-block__card--drag-over{outline:2px solid var(--color-main);outline-offset:-2px;z-index:2}.ihabdevteam-core-scope .word-table-block__card-close{opacity:0;position:absolute;right:20px;top:20px;transition:opacity .15s;z-index:1}.ihabdevteam-core-scope .word-table-block__card-close:focus-visible,.ihabdevteam-core-scope .word-table-block__card-close:focus-within,.ihabdevteam-core-scope .word-table-block__card:focus-within .word-table-block__card-close,.ihabdevteam-core-scope .word-table-block__card:hover .word-table-block__card-close{opacity:1}.ihabdevteam-core-scope .word-table-block__pair-divider{align-self:center;background:var(--color-whiteLine);display:none;flex-shrink:0;height:20%;print-color-adjust:exact;-webkit-print-color-adjust:exact;width:1px}.ihabdevteam-core-scope .word-table-block__content--div-line .word-table-block__pair-divider{display:block}.ihabdevteam-core-scope .word-table-block__edit-cell{align-items:stretch;background:#fbfdff;display:flex;flex-direction:row;min-height:0;overflow:hidden;position:relative;transition:box-shadow .15s}.ihabdevteam-core-scope .word-table-block__edit-cell--filled:hover{box-shadow:var(--shadow-dropdown);z-index:1}.ihabdevteam-core-scope .word-table-block__edit-cell--filled:focus-within .word-table-block__card-close,.ihabdevteam-core-scope .word-table-block__edit-cell--filled:hover .word-table-block__card-close{opacity:1}.ihabdevteam-core-scope .word-table-block__edit-cell--empty{align-items:center;justify-content:center}.ihabdevteam-core-scope .word-table-block__edit-cell--active{background:rgba(73,156,223,.04);background:rgba(var(--color-main-rgb,73,156,223),.04);outline:2px solid var(--color-main);outline-offset:-2px}.ihabdevteam-core-scope .word-table-block__content--cut-corner .word-table-block__edit-cell{background:linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 0 /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 0 /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 0 /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 0 /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 100% /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 0 100% /1px 8px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 100% /8px 1px no-repeat,linear-gradient(var(--color-whiteLine),var(--color-whiteLine)) 100% 100% /1px 8px no-repeat,#fbfdff;print-color-adjust:exact;-webkit-print-color-adjust:exact}.ihabdevteam-core-scope .word-table-cell{align-items:center;display:flex;flex:1;justify-content:center;min-height:0;min-width:0;overflow:hidden;position:relative}.ihabdevteam-core-scope .word-table-cell__inner{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;height:380px;justify-content:center;transform-origin:center center;width:280px}.ihabdevteam-core-scope .word-table-cell__word{color:var(--color-black);text-align:center;white-space:nowrap}.ihabdevteam-core-scope .word-table-cell__sub{color:var(--color-gray);text-align:center;white-space:nowrap}.ihabdevteam-core-scope .word-table-cell__colloquial{color:var(--color-lightGray);text-align:center;white-space:nowrap}.ihabdevteam-core-scope .word-table-cell__play-button{left:20px;opacity:0;position:absolute;top:20px;transition:opacity .15s;z-index:1}.ihabdevteam-core-scope .word-table-block__card:hover .word-table-cell__play-button,.ihabdevteam-core-scope .word-table-block__edit-cell:focus-within .word-table-cell__play-button,.ihabdevteam-core-scope .word-table-block__edit-cell:hover .word-table-cell__play-button,.ihabdevteam-core-scope .word-table-cell__play-button:focus-visible,.ihabdevteam-core-scope .word-table-cell__play-button:focus-within{opacity:1}.ihabdevteam-core-scope .word-table-cell__info-button{left:20px;opacity:0;position:absolute;top:60px;transition:opacity .15s;z-index:1}.ihabdevteam-core-scope .word-table-block__card:hover .word-table-cell__info-button,.ihabdevteam-core-scope .word-table-block__edit-cell:focus-within .word-table-cell__info-button,.ihabdevteam-core-scope .word-table-block__edit-cell:hover .word-table-cell__info-button,.ihabdevteam-core-scope .word-table-cell__info-button:focus-visible,.ihabdevteam-core-scope .word-table-cell__info-button:focus-within{opacity:1}.ihabdevteam-core-scope .word-table-cell__image-wrap{background:var(--color-deepWhite);border-radius:var(--radius-card);flex-shrink:0;height:240px;overflow:hidden;position:relative;width:240px}.ihabdevteam-core-scope .word-table-cell__image{display:block;height:100%;-o-object-fit:cover;object-fit:cover;transition:opacity .2s;width:100%}.ihabdevteam-core-scope .word-table-cell__spinner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.ihabdevteam-core-scope .word-table-cell__spinner:after{animation:wordTableCell_spin .7s linear infinite;border:3px solid #fbfdff;border-radius:50%;border-top:3px solid var(--color-white,#fbfdff);border:3px solid var(--color-white,#fbfdff);border-top-color:var(--color-main,var(--color-main));content:"";height:32px;width:32px}@keyframes wordTableCell_spin{to{transform:rotate(1turn)}}@media print{@page{margin:0}.ihabdevteam-core-scope body *{visibility:hidden}.ihabdevteam-core-scope .word-table,.ihabdevteam-core-scope .word-table *{visibility:visible}
829
829
 
830
830
  /* !important \uD544\uC694: WordTable.tsx\uAC00 \uD654\uBA74 \uD45C\uC2DC\uC6A9 scale/marginLeft\uB97C \uC778\uB77C\uC778 style\uB85C
831
831
  \uC9C1\uC811 \uC801\uC6A9\uD558\uBBC0\uB85C(\uC2A4\uD06C\uB9B0 \uCD95\uC18C \uB80C\uB354), \uC778\uC1C4 \uC2DC \uC774\uB97C \uBB34\uD6A8\uD654\uD558\uB824\uBA74 \uD074\uB798\uC2A4 \uADDC\uCE59\uC5D0
832
- !important\uAC00 \uBD88\uAC00\uD53C(\uC778\uB77C\uC778 \uC2A4\uD0C0\uC77C\uC740 !important \uC5C6\uC774\uB294 \uC774\uAE38 \uC218 \uC5C6\uC74C). */.ihabdevteam-core-scope .word-table{background:#fbfdff;border:none;box-shadow:none;inset:0;margin:0!important;padding:15mm;position:fixed;transform:none!important}.ihabdevteam-core-scope .word-table-block__card-close,.ihabdevteam-core-scope .word-table-cell__info-button,.ihabdevteam-core-scope .word-table-cell__play-button,.ihabdevteam-core-scope .word-table-cell__spinner{display:none}}.ihabdevteam-core-scope .word-table-cell__score{bottom:16px;display:flex;gap:4px;left:50%;position:absolute;transform:translateX(-50%);z-index:1}.ihabdevteam-core-scope .word-table-cell__score-slot{display:none}.ihabdevteam-core-scope .word-table-block__card:hover .word-table-cell__score-slot,.ihabdevteam-core-scope .word-table-block__edit-cell:focus-within .word-table-cell__score-slot,.ihabdevteam-core-scope .word-table-block__edit-cell:hover .word-table-cell__score-slot,.ihabdevteam-core-scope .word-table-cell__score-slot--on,.ihabdevteam-core-scope .word-table-cell__score:focus-within .word-table-cell__score-slot{display:inline-flex}@media print{.ihabdevteam-core-scope .word-table-block__card:hover .word-table-cell__score-slot:not(.word-table-cell__score-slot--on),.ihabdevteam-core-scope .word-table-block__edit-cell:hover .word-table-cell__score-slot:not(.word-table-cell__score-slot--on){display:none}}.ihabdevteam-core-scope .word-table-cell__score .button--variant-main.is-selected,.ihabdevteam-core-scope .word-table-cell__score .button--variant-main[aria-pressed=true]{background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .word-table-cell__score .button--variant-warn.is-selected,.ihabdevteam-core-scope .word-table-cell__score .button--variant-warn[aria-pressed=true]{--button-icon-color:#fff;background:var(--color-warn);border-color:var(--color-warn)}`;Q(Z8);const no={landscape:{width:1123,height:794,printSize:"A4 landscape",printW:"297mm",printH:"210mm"},portrait:{width:794,height:1123,printSize:"A4 portrait",printW:"210mm",printH:"297mm"}};function km(e="landscape"){const{printSize:t,printW:a,printH:r}=no[e],n=document.createElement("style");n.textContent=`@page { size: ${t}; margin: 0; } .word-table { width: ${a} !important; height: ${r} !important; }`,document.head.appendChild(n);const i=()=>{document.head.removeChild(n),window.removeEventListener("afterprint",i)};window.addEventListener("afterprint",i),window.print()}function Sm(e,t){if(e.length===0)return[[]];const a=Math.max(1,Math.floor(t)),r=[];for(let n=0;n<e.length;n+=a)r.push(e.slice(n,n+a));return r}const X8={landscape:{1:{cols:1,rows:1},2:{cols:2,rows:1},3:{cols:3,rows:1},4:{cols:2,rows:2},5:{cols:3,rows:2},6:{cols:3,rows:2},7:{cols:4,rows:2},8:{cols:4,rows:2},9:{cols:5,rows:2},10:{cols:5,rows:2},11:{cols:4,rows:3},12:{cols:4,rows:3}},portrait:{1:{cols:1,rows:1},2:{cols:1,rows:2},3:{cols:1,rows:3},4:{cols:1,rows:4},5:{cols:1,rows:5},6:{cols:2,rows:3},7:{cols:2,rows:4},8:{cols:2,rows:4},9:{cols:2,rows:5},10:{cols:2,rows:5},11:{cols:3,rows:4},12:{cols:3,rows:4}}};function Q8(e,t){const a=X8[e][t];if(a)return a;const r=Math.max(1,Math.ceil(t)),n=Math.max(1,Math.ceil(Math.sqrt(r*.707)));let i,s;return e==="landscape"?(s=n,i=Math.ceil(r/s)):(i=n,s=Math.ceil(r/i)),(e==="landscape"?i<s:s<i)&&([i,s]=[s,i]),{cols:i,rows:s}}const J8={\uD45C\uC2DC:"word-table-block__content--cut-show",\uC810\uC120:"",\uCF54\uB108:"word-table-block__content--cut-corner",\uBBF8\uD45C\uC2DC:""},Ql={\uBA85:"\uBA85\uC0AC",\uB3D9:"\uB3D9\uC0AC",\uD615:"\uD615\uC6A9\uC0AC",\uBD80:"\uBD80\uC0AC",\uC218:"\uC218\uC0AC",\uAD00:"\uAD00\uD615\uC0AC",\uAC10:"\uAC10\uD0C4\uC0AC",\uC870:"\uC870\uC0AC",\uC811:"\uC811\uC0AC",\uC758:"\uC758\uC874\uBA85\uC0AC",\uB300:"\uB300\uBA85\uC0AC",\uBCF4\uB3D9:"\uBCF4\uC870\uB3D9\uC0AC",\uBCF4\uD615:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},Jl={\uACE0\uC720:"\uACE0\uC720\uC5B4",\uD55C\uC790:"\uD55C\uC790\uC5B4",\uC678\uB798:"\uC678\uB798\uC5B4",\uD63C\uC885:"\uD63C\uC885\uC5B4"};function kn(e,t){return e?e.split("/").map(a=>t[a]??a).join("/"):""}function Am(e,t,a,r){if(r!=="\uC810\uC120")return{};const n=e%t,i=Math.floor(e/t),s=n<t-1,c=i<a-1;if(!s&&!c)return{};const u="#ddd",d=g=>`repeating-linear-gradient(to ${g}, ${u} 0, ${u} 5px, transparent 5px, transparent 10px)`,m=[],h=[],p=[];return s&&(m.push(d("bottom")),h.push("1px 100%"),p.push("right center")),c&&(m.push(d("right")),h.push("100% 1px"),p.push("center bottom")),{backgroundImage:m.join(", "),backgroundSize:h.join(", "),backgroundPosition:p.join(", "),backgroundRepeat:"no-repeat",printColorAdjust:"exact",WebkitPrintColorAdjust:"exact"}}const ek=280,tk=240,ak=280,ok=400,rk=120,nk=280;function ec(e,t){const a=l.useRef(null),[r,n]=l.useState(1),[i,s]=l.useState(0),c=l.useCallback((u,d)=>{const m=u/e,h=t?d/t:1/0,p=Math.min(1,m,h);n(p),s(Math.max(0,(u-e*p)/2))},[e,t]);return l.useEffect(()=>{const u=a.current;if(!u)return;const d=t?u.parentElement??u:u;if(c(d.clientWidth,d.clientHeight),typeof ResizeObserver>"u")return;const m=new ResizeObserver(([h])=>c(h.contentRect.width,h.contentRect.height));return m.observe(d),()=>m.disconnect()},[c,t]),{scalerRef:a,scale:r,offset:i}}let Ba=null;function Tm({label:e,subLabel:t,colloquialLabel:a,homonum:r,showWord:n=!0,showImage:i=!0,showPronunciation:s=!0,showColloquial:c=!0,buttonSize:u=40,wordInfo:d}){const{t:m}=me.useTranslation(),h=l.useRef(null),p=l.useRef(null),g=l.useRef(null),[v,b]=l.useState(1),[y,f]=l.useState(!1),[x,_]=l.useState(""),[C,A]=l.useState(null),w=t&&t.length>0?t:ei()?.(e,r)??"",S=Ma()?.(e,r)??"",{imgRef:D,loading:T,failed:E,onLoad:W,onError:M}=ql(S),k=l.useCallback(()=>A(p.current?.getBoundingClientRect()??null),[]),N=l.useCallback(()=>A(null),[]),j=l.useMemo(()=>{if(!d)return null;const L=[];return d.grade&&L.push(`\uB09C\uC774\uB3C4: ${d.grade}\uB4F1\uAE09`),d.syllables&&L.push(`\uC74C\uC808 \uC218: ${d.syllables}\uC74C\uC808`),d.pos&&L.push(`\uD488\uC0AC: ${kn(d.pos,Ql)}`),d.wordType&&L.push(`\uC720\uD615: ${kn(d.wordType,Jl)}`),L.length?L:null},[d]);l.useEffect(()=>{const L=Oo(),R=w||e;if(!L||!R)return;let O=!1;return Promise.resolve(L(R)).then(H=>{!O&&H&&_(H)}),()=>{O=!0}},[w,e]),l.useEffect(()=>()=>{g.current?.pause(),Ba?.audio===g.current&&(Ba=null)},[]);const F=l.useCallback(async L=>{if(L.stopPropagation(),y){g.current?.pause(),f(!1),Ba=null;return}if(x){Ba?.stop(),f(!0);try{const R=new Audio(x);g.current=R;const O=()=>{f(!1),Ba?.audio===R&&(Ba=null)};Ba={audio:R,stop:()=>{R.pause(),O()}},R.onended=O,R.onerror=O,await R.play()}catch{f(!1),Ba?.audio===g.current&&(Ba=null)}}},[y,x]),te=i&&!!S&&!E,Z=te&&n?ek:te?ak:tk,ee=te&&n?ok:te?nk:rk;return l.useEffect(()=>{const L=h.current;if(!L||typeof ResizeObserver>"u")return;const R=new ResizeObserver(([O])=>{const{width:H,height:$}=O.contentRect;b(Math.min(H/Z,$/ee))});return R.observe(L),()=>R.disconnect()},[Z,ee]),o.jsxs("div",{ref:h,className:"word-table-cell",children:[o.jsxs("div",{className:"word-table-cell__inner",style:{transform:`scale(${v})`},children:[te&&o.jsxs("div",{className:"word-table-cell__image-wrap",children:[T&&o.jsx("div",{className:"word-table-cell__spinner"}),o.jsx("img",{ref:D,className:"word-table-cell__image",src:S,alt:e,draggable:!1,style:{opacity:T?0:1},onLoad:W,onError:M})]}),n&&o.jsx("span",{className:"word-table-cell__word h0",children:e}),s&&w&&o.jsxs("span",{className:"word-table-cell__sub h3",children:["[",w,"]"]}),c&&a&&o.jsxs("span",{className:"word-table-cell__colloquial h5",children:["[",a,"]"]})]}),o.jsxs("div",{className:"word-table-cell__play-button","data-audio-src":x,children:[o.jsx("span",{"data-play-state":"play",style:{display:y?"none":void 0},children:o.jsx(le,{size:u,type:"dot",icon:"play",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:m("common.play","\uC7AC\uC0DD"),onClick:F})}),o.jsx("span",{"data-play-state":"pause",style:{display:y?void 0:"none"},children:o.jsx(le,{size:u,type:"dot",icon:"pause",useBorder:!1,selected:!0,showTooltipInfo:m("common.pause","\uBA48\uCDA4"),onClick:F})})]}),d&&o.jsxs("div",{ref:p,className:"word-table-cell__info-button",onPointerEnter:k,onPointerLeave:N,onFocus:k,onBlur:N,children:[o.jsx(le,{size:u,type:"dot",icon:"info",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:!1,ariaLabel:m("wordTable.wordInfo","{{word}} \uB0B1\uB9D0 \uC815\uBCF4",{word:e}),onClick:L=>L.stopPropagation()}),C&&j&&o.jsx(to,{anchorRect:C,items:j,showIndex:!1})]})]})}function io({title:e,titleIcon:t,disc:a,className:r,orientation:n="landscape",contentTypes:i=["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"],cutLine:s="\uD45C\uC2DC",showOutline:c=!0,showDivLine:u=!0,items:d,editCells:m,count:h,activeCell:p=null,onActivateCell:g,onRemoveCell:v,onRemoveItem:b,onReorder:y,showFillerAdd:f=!1,contentRef:x,buttonSize:_=40,pageNumber:C,pageNumberPosition:A="right",fitHeight:w=!1,scoring:S=!1,marks:D,onMarkClick:T,scoreIndexOffset:E=0}){const W=l.useCallback((pe,ae)=>{T?.(E+pe,ae)},[T,E]),M=(pe,ae)=>{const X=D?.[yr(E+pe)]??null;return o.jsx("div",{className:ye("word-table-cell__score",X?"word-table-cell__score--marked":""),children:Yl.map(ce=>o.jsx("span",{className:ye("word-table-cell__score-slot",X===ce?"word-table-cell__score-slot--on":""),children:o.jsx(le,{size:_,type:"dot",icon:Kl[ce],variant:X===ce?Zl[ce]:"default",selected:X===ce,useBorder:!1,showTooltipInfo:!1,ariaLabel:k(`wordTable.scoring.${ce}`,{word:ae,defaultValue:`${ae} ${ce}`}),onClick:xe=>{xe.stopPropagation(),W(pe,ce)}})},ce))})},{t:k}=me.useTranslation(),N=m!==void 0,j=l.useRef(null),[F,te]=l.useState(null),{width:Z,height:ee}=no[n],{scalerRef:L,scale:R,offset:O}=ec(Z,w?ee:void 0),H=N?m?.length??0:d?.length??0,$=Math.max(h??H,1),{cols:q,rows:I}=Q8(n,$),G={word:i.length===0||i.includes("\uB2E8\uC5B4"),image:i.length===0||i.includes("\uC774\uBBF8\uC9C0"),pron:i.length===0||i.includes("\uD45C\uC900 \uBC1C\uC74C"),colloq:i.length===0||i.includes("\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")},z=N?(m??[]).some(pe=>pe!==null&&pe.length>1):(d??[]).some(pe=>pe.words.length>1),Y=ye("word-table-block__content",J8[s],c&&"word-table-block__content--outline",u&&z&&"word-table-block__content--div-line"),J={transform:`scale(${1/R})`,transformOrigin:"center center"},ue=o.jsx("div",{ref:L,className:"word-table__scaler",style:{height:ee*R},children:o.jsx("div",{className:ye("word-table",r),style:{width:Z,height:ee,transform:`scale(${R})`,transformOrigin:"top left",marginLeft:O},children:o.jsxs("div",{ref:x,className:Y,style:{gridTemplateColumns:`repeat(${q}, 1fr)`,gridTemplateRows:`repeat(${I}, 1fr)`},children:[N?o.jsx(o.Fragment,{children:(m??[]).map((pe,ae)=>o.jsx("div",{className:ye("word-table-block__edit-cell",pe?"word-table-block__edit-cell--filled":"word-table-block__edit-cell--empty",p===ae?"word-table-block__edit-cell--active":""),style:Am(ae,q,I,s),children:pe?o.jsxs(o.Fragment,{children:[pe.map((X,ce)=>o.jsxs(l.Fragment,{children:[ce>0&&o.jsx("div",{className:"word-table-block__pair-divider"}),o.jsx(Tm,{label:X.word,subLabel:X.pronunciation,homonum:X.homonum,showWord:G.word,showImage:G.image,showPronunciation:G.pron,showColloquial:G.colloq,buttonSize:_})]},ce)),S&&M(ae,pe.map(X=>X.word).join(" / ")),v&&o.jsx("div",{className:"word-table-block__card-close",children:o.jsx(le,{size:_,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:pe.length>1?k("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):k("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:pe.length>1?k("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):k("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>v(ae)})})]}):g&&o.jsx("div",{style:J,children:o.jsx(le,{size:"48",type:"bar",icon:"plus",label:k("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g(ae)})})},ae))}):o.jsxs(o.Fragment,{children:[(d??[]).map((pe,ae)=>o.jsxs("div",{className:`word-table-block__card${y?" word-table-block__card--draggable":""}${F===ae?" word-table-block__card--drag-over":""}`,style:Am(ae,q,I,s),draggable:!!y,onDragStart:y?()=>{j.current=ae}:void 0,onDragOver:y?X=>{X.preventDefault(),te(ae)}:void 0,onDragLeave:y?()=>te(null):void 0,onDrop:y?X=>{X.preventDefault(),j.current!==null&&j.current!==ae&&y(j.current,ae),j.current=null,te(null)}:void 0,onDragEnd:y?()=>{j.current=null,te(null)}:void 0,children:[pe.words.map((X,ce)=>o.jsxs(l.Fragment,{children:[ce>0&&o.jsx("div",{className:"word-table-block__pair-divider"}),o.jsx(Tm,{label:X.label,subLabel:X.subLabel,colloquialLabel:X.colloquialLabel,homonum:X.homonum,showWord:G.word,showImage:G.image,showPronunciation:G.pron,showColloquial:G.colloq,buttonSize:_,wordInfo:X.grade||X.syllables!=null||X.pos||X.wordType?{grade:X.grade,syllables:X.syllables,pos:X.pos,wordType:X.wordType}:void 0})]},ce)),S&&M(ae,pe.words.map(X=>X.label).join(" / ")),b&&o.jsx("div",{className:"word-table-block__card-close",children:o.jsx(le,{size:_,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:pe.words.length>1?k("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):k("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:pe.words.length>1?k("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):k("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>b(pe.id)})})]},pe.id)),Array.from({length:Math.max(0,q*I-(d?.length??0))}).map((pe,ae)=>{const X=(d?.length??0)+ae<$;return o.jsx("div",{className:"word-table-block__card word-table-block__card--filler",children:f&&g&&X&&o.jsx("div",{style:J,children:o.jsx(le,{size:_,type:"bar",icon:"plus",label:k("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g((d?.length??0)+ae)})})},`filler-${ae}`)})]}),C&&A!=="none"&&o.jsx("span",{className:`word-table__page-number body-3 word-table__page-number--${A}`,children:k("wordTable.filter.pageIndicator",{current:C.current,total:C.total})})]})})});return e!=null||t||a?o.jsx(ro,{type:"page",icon:t,title:e,disc:a,className:ye("word-table-block",r),children:ue}):ue}var ik=".ihabdevteam-core-scope .filter-panel{background:var(--color-white);border:1px solid var(--color-darkWhite);border-radius:var(--radius-m);display:flex;flex-direction:column;gap:var(--spacing-m);min-width:200px;padding:var(--spacing-l)}.ihabdevteam-core-scope .filter-panel__header{align-items:center;display:flex;justify-content:space-between}.ihabdevteam-core-scope .filter-panel--collapsible{padding-bottom:0;padding-top:0}.ihabdevteam-core-scope .filter-panel--collapsible .filter-panel__header{flex-shrink:0;min-height:60px}.ihabdevteam-core-scope .filter-panel--collapsible .filter-panel__sections{padding-bottom:var(--spacing-m)}.ihabdevteam-core-scope .filter-panel__footer{border-top:1px solid var(--color-darkWhite);color:var(--color-gray);padding-bottom:var(--spacing-l);padding-top:var(--spacing-m)}.ihabdevteam-core-scope .filter-panel__title{display:block;text-align:left}.ihabdevteam-core-scope .filter-panel__title-row{align-items:center;display:flex;gap:var(--spacing-xs);min-width:0}.ihabdevteam-core-scope .filter-panel__header-actions{align-items:center;display:flex;gap:var(--spacing-xs);margin-left:auto}.ihabdevteam-core-scope .filter-panel__section{align-items:flex-start;display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .filter-panel__section-label-row{align-items:center;display:flex;justify-content:space-between}.ihabdevteam-core-scope .filter-panel__section-label{color:var(--color-darkGray);margin:0;text-align:left}.ihabdevteam-core-scope .filter-panel__section-multiple{color:var(--color-lightGray)}.ihabdevteam-core-scope .filter-panel__sections{display:flex;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .filter-panel__sections--row{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:16px 32px}.ihabdevteam-core-scope .filter-panel__group-label-row{align-items:center;display:flex;flex-basis:100%;gap:var(--spacing-s);justify-content:space-between;padding-top:var(--spacing-xs);width:100%}.ihabdevteam-core-scope .filter-panel__group-label{color:var(--color-darkGray);margin:0;text-align:left}.ihabdevteam-core-scope .filter-panel__section--row{align-items:center;flex-direction:row;gap:var(--spacing-s)}.ihabdevteam-core-scope .filter-panel__section--row .filter-panel__section-label-row{flex:0 0 auto;min-width:44px}.ihabdevteam-core-scope .filter-panel__sections--row .filter-panel__section--row{flex:0 0 auto;max-width:100%}.ihabdevteam-core-scope .filter-panel__sections--row .filter-panel__section--block{flex-basis:100%}.ihabdevteam-core-scope .filter-panel__items{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.ihabdevteam-core-scope .filter-panel__item-groups{-moz-column-gap:var(--spacing-xl);column-gap:var(--spacing-xl);display:flex;flex-wrap:wrap;row-gap:var(--spacing-xs)}.ihabdevteam-core-scope .filter-panel__item-group{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.ihabdevteam-core-scope .filter-panel__note{color:var(--color-darkGray);text-align:left;width:100%}.ihabdevteam-core-scope .filter-panel__note-list{display:flex;flex-direction:column;gap:4px;margin:0;padding-left:18px}.ihabdevteam-core-scope .filter-panel__textfield{min-width:200px}.ihabdevteam-core-scope .filter-panel__dropdown{min-width:180px}@media (max-width:767px){.ihabdevteam-core-scope .filter-panel__textfield{min-width:0;width:100%}}";Q(ik);function va({title:e,headerAction:t,collapsible:a=!1,defaultCollapsed:r=!1,collapsed:n,onCollapsedChange:i,footer:s,sections:c,selected:u={},onSelect:d,align:m,sectionAlign:h,className:p}){const g=(m??(h==="vertical"?"newline":"inline"))==="inline",{t:v}=me.useTranslation(),[b,y]=l.useState(r),f=n??b,x=()=>{const C=!f;y(C),i?.(C)},_=e||t||a;return o.jsxs("div",{className:ye("filter-panel",a?"filter-panel--collapsible":"",f?"filter-panel--collapsed":"",p),children:[_&&o.jsxs("div",{className:"filter-panel__header",children:[o.jsxs("div",{className:"filter-panel__title-row",children:[a&&o.jsx(le,{size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:f?"chevron-down":"chevron-up",ariaLabel:f?v("common.expand","\uD3BC\uCE58\uAE30"):v("common.collapse","\uC811\uAE30"),"aria-expanded":!f,onClick:x}),e&&o.jsx("span",{className:"filter-panel__title h4",children:e})]}),o.jsx("div",{className:"filter-panel__header-actions",children:!f&&t})]}),!f&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:ye("filter-panel__sections",g?"filter-panel__sections--row":""),children:c.map(C=>{const A=u[C.label],w=A===void 0||(Array.isArray(A)?A.length===0:!1),S=(C.items??[]).filter(T=>T!=null),D=T=>{const E=typeof T=="string"?T:T.value,W=typeof T!="string"&&!!T.disabled,M=typeof T!="string"?T.labels:void 0,k=typeof T!="string"?T.displayLabel:void 0,N=typeof T!="string"?T.tooltip:void 0,j=typeof T!="string"?T.descriptionTooltip:void 0,F=typeof T!="string"?T.shape:void 0,te=Array.isArray(A)?A.includes(E):A===E;return o.jsx(le,{size:"keyboard",label:M??k??E,type:C.itemType??(M?"bar":E.length===1?"dot":void 0),selected:te,disabled:W,shape:F,showTooltipInfo:!!N,tooltipInfoText:N,tooltipDescription:j,onClick:()=>d?.(E,C.label)},E)};return o.jsxs(l.Fragment,{children:[C.groupLabel&&o.jsxs("div",{className:"filter-panel__group-label-row",children:[o.jsx("div",{className:"filter-panel__group-label body-2",children:C.groupLabel}),C.groupAction]}),o.jsxs("div",{className:ye("filter-panel__section",C.layout==="row"?"filter-panel__section--row":"",C.block?"filter-panel__section--block":""),children:[o.jsxs("div",{className:"filter-panel__section-label-row",children:[o.jsx("span",{className:"filter-panel__section-label body-3",children:C.displayLabel??C.label}),C.labelAction]}),C.type==="note"?o.jsx("div",{className:"filter-panel__note body-3",children:C.content}):C.type==="input"?o.jsx(Wa,{className:"filter-panel__textfield",placeholder:C.placeholder,ariaLabel:C.displayLabel??C.label,value:u[C.label]??"",onChange:T=>d?.(T,C.label),error:C.error}):!C.multiple&&C.display==="segmented"?o.jsx(Ha,{ariaLabel:C.displayLabel??C.label,options:[...C.allOption?[{key:Nt,label:C.allLabel??v("common.all","\uC804\uCCB4")}]:[],...S.map(T=>{const E=typeof T=="string"?T:T.value,W=typeof T!="string"?T.displayLabel:void 0,M=typeof T!="string"?T.disabled:void 0;return{key:E,label:W??E,disabled:M}})],value:w&&C.allOption?Nt:u[C.label],onChange:T=>d?.(T,C.label),size:32}):!C.multiple&&C.display==="dropdown"?o.jsx(Ut,{className:"filter-panel__dropdown",size:40,options:[...C.allOption?[{value:Nt,label:C.allLabel??v("common.all","\uC804\uCCB4")}]:[],...S.map(T=>{const E=typeof T=="string"?T:T.value,W=typeof T!="string"?T.displayLabel:void 0,M=typeof T!="string"?T.disabled:void 0;return{value:E,label:W??E,disabled:M}})],value:w&&C.allOption?Nt:u[C.label],onChange:T=>d?.(T,C.label)}):o.jsxs("div",{className:C.groups?"filter-panel__item-groups":"filter-panel__items",children:[C.allOption&&!C.groups&&o.jsx(le,{size:"keyboard",label:C.allLabel??v("common.all","\uC804\uCCB4"),selected:w,disabled:C.allOptionDisabled,onClick:()=>d?.(Nt,C.label)}),C.groups?C.groups.map((T,E)=>o.jsxs("div",{className:"filter-panel__item-group",children:[E===0&&C.allOption&&o.jsx(le,{size:"keyboard",label:C.allLabel??v("common.all","\uC804\uCCB4"),selected:w,disabled:C.allOptionDisabled,onClick:()=>d?.(Nt,C.label)}),T.filter(W=>W!=null).map(D)]},E)):S.map(D)]})]})]},C.label)})}),s!=null&&s!==!1&&o.jsx("div",{className:"filter-panel__footer body-3",children:s})]})]})}const sk=[1,2,3,4,5,6,7,8,9,10,11,12],lk=[8,4,2,1];function Bm(e,t){return{label:e("wordTable.filter.composition","\uAD6C\uC131"),items:[{value:"\uC774\uBBF8\uC9C0",disabled:!t.hasImage,displayLabel:e("wordTable.filter.image","\uC774\uBBF8\uC9C0")},{value:"\uB2E8\uC5B4",displayLabel:e("wordTable.filter.word","\uB2E8\uC5B4")},{value:"\uD45C\uC900 \uBC1C\uC74C",displayLabel:e("wordTable.filter.standardPron","\uD45C\uC900 \uBC1C\uC74C")},{value:"\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C",disabled:!t.hasColloquial,displayLabel:e("wordTable.filter.colloquialPron","\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")}],multiple:!0,allOption:!0}}function Nm(e){return{label:e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5"),items:[{value:"\uAC00\uB85C",displayLabel:e("wordTable.filter.landscape","\uAC00\uB85C")},{value:"\uC138\uB85C",displayLabel:e("wordTable.filter.portrait","\uC138\uB85C")}],display:"segmented"}}function Dm(e){return{label:e("wordTable.filter.border","\uC678\uACFD\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Em(e){return{label:e("wordTable.filter.cutLine","\uC808\uCDE8\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uC810\uC120",displayLabel:e("wordTable.filter.dotted","\uC810\uC120")},{value:"\uCF54\uB108",displayLabel:e("wordTable.filter.corner","\uCF54\uB108")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function jm(e){return{label:e("wordPrint.divLine","\uB300\uB9BD\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Lm(e,t){return{label:e(t.hasPairs?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord"),items:[t.itemCount,...lk.filter(a=>a<t.itemCount)].map(a=>({value:`${a}\uAC1C`,displayLabel:e("wordTable.filter.itemsPerPageOption",{count:a})})),display:"segmented"}}function Mm(e){return{label:e("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638"),items:[{value:"\uC67C\uCABD",displayLabel:e("wordTable.filter.pageNumberLeft","\uC67C\uCABD")},{value:"\uC911\uC559",displayLabel:e("wordTable.filter.pageNumberCenter","\uC911\uC559")},{value:"\uC624\uB978\uCABD",displayLabel:e("wordTable.filter.pageNumberRight","\uC624\uB978\uCABD")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}const Pm={left:"\uC67C\uCABD",center:"\uC911\uC559",right:"\uC624\uB978\uCABD",none:"\uBBF8\uD45C\uC2DC"};function Rm(e){return e==="\uC67C\uCABD"?"left":e==="\uC911\uC559"?"center":e==="\uC624\uB978\uCABD"?"right":"none"}function $m(e,t){return{[e("wordTable.filter.composition","\uAD6C\uC131")]:t.contentTypes,[e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")]:t.orientation==="landscape"?"\uAC00\uB85C":"\uC138\uB85C",[e("wordTable.filter.border","\uC678\uACFD\uC120")]:t.showOutline?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC",[e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")]:t.cutLine,[e("wordPrint.divLine","\uB300\uB9BD\uC120")]:t.showDivLine?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC"}}function zm(e,t,a,r){return a===e("wordTable.filter.composition","\uAD6C\uC131")?t===Nt?(r.setContentTypes(()=>[]),!0):(r.setContentTypes(n=>n.includes(t)?n.filter(i=>i!==t):[...n,t]),!0):a===e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")?(r.setOrientation(t==="\uAC00\uB85C"?"landscape":"portrait"),!0):a===e("wordTable.filter.border","\uC678\uACFD\uC120")?(r.setShowOutline(t==="\uD45C\uC2DC"),!0):a===e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")?(r.setCutLine(t),!0):a===e("wordPrint.divLine","\uB300\uB9BD\uC120")?(r.setShowDivLine(t==="\uD45C\uC2DC"),!0):!1}function ck(e){return"sections"in e}function Sn(e){const{t}=me.useTranslation(),{title:a,className:r}=e;if(ck(e))return o.jsx(va,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:e.sections,selected:e.selected,onSelect:e.onSelect,align:"inline"});const{hasImage:n,hasColloquial:i,contentTypes:s,orientation:c,showOutline:u,cutLine:d,showDivLine:m,setters:h,showCutLine:p=!1,showDivLine2:g=!1,middleSections:v=[],extraSelected:b={},onExtraSelect:y}=e,f=[Bm(t,{hasImage:n,hasColloquial:i}),Nm(t),...v,Dm(t),...p?[Em(t)]:[],...g?[jm(t)]:[]],x={...$m(t,{contentTypes:s,orientation:c,showOutline:u,cutLine:d,showDivLine:m}),...b},_=(C,A)=>{zm(t,C,A,h)||y?.(C,A)};return o.jsx(va,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:f,selected:x,onSelect:_,sectionAlign:"horizontal"})}function Im(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function tc(e){return e.replace(/[\\/:*?"<>|]/g,"_").trim()}function dk(e,t,a,r="",n=""){if(e.length===0)return;const i=r?tc(r):"";if(i){const u=document.title;document.title=i;const d=()=>{document.title=u,window.removeEventListener("afterprint",d)};window.addEventListener("afterprint",d)}const s=document.createElement("iframe");s.style.cssText="position:fixed;left:-10000px;top:0;width:1200px;height:900px;border:0;",document.body.appendChild(s);const c=s.contentDocument;if(!c){s.remove();return}c.open(),c.write(ac(e,t,a,!0,i,n)),c.close(),s.contentWindow?.addEventListener("afterprint",()=>setTimeout(()=>s.remove(),0))}function ac(e,t,a,r=!1,n="",i=""){n=n?tc(n):"";const s=Array.from(document.styleSheets).flatMap(m=>{try{return Array.from(m.cssRules).map(h=>h.cssText)}catch{return[]}}).join(`
832
+ !important\uAC00 \uBD88\uAC00\uD53C(\uC778\uB77C\uC778 \uC2A4\uD0C0\uC77C\uC740 !important \uC5C6\uC774\uB294 \uC774\uAE38 \uC218 \uC5C6\uC74C). */.ihabdevteam-core-scope .word-table{background:#fbfdff;border:none;box-shadow:none;inset:0;margin:0!important;padding:15mm;position:fixed;transform:none!important}.ihabdevteam-core-scope .word-table-block__card-close,.ihabdevteam-core-scope .word-table-cell__info-button,.ihabdevteam-core-scope .word-table-cell__play-button,.ihabdevteam-core-scope .word-table-cell__spinner{display:none}}.ihabdevteam-core-scope .word-table-cell__score{bottom:16px;display:flex;gap:4px;left:50%;position:absolute;transform:translateX(-50%);z-index:1}.ihabdevteam-core-scope .word-table-cell__score-slot{display:none}.ihabdevteam-core-scope .word-table-block__card:hover .word-table-cell__score-slot,.ihabdevteam-core-scope .word-table-block__edit-cell:focus-within .word-table-cell__score-slot,.ihabdevteam-core-scope .word-table-block__edit-cell:hover .word-table-cell__score-slot,.ihabdevteam-core-scope .word-table-cell__score-slot--on,.ihabdevteam-core-scope .word-table-cell__score:focus-within .word-table-cell__score-slot{display:inline-flex}@media print{.ihabdevteam-core-scope .word-table-block__card:hover .word-table-cell__score-slot:not(.word-table-cell__score-slot--on),.ihabdevteam-core-scope .word-table-block__edit-cell:hover .word-table-cell__score-slot:not(.word-table-cell__score-slot--on){display:none}}.ihabdevteam-core-scope .word-table-cell__score .button--variant-main.is-selected,.ihabdevteam-core-scope .word-table-cell__score .button--variant-main[aria-pressed=true]{background:var(--color-main);border-color:var(--color-main)}.ihabdevteam-core-scope .word-table-cell__score .button--variant-warn.is-selected,.ihabdevteam-core-scope .word-table-cell__score .button--variant-warn[aria-pressed=true]{--button-icon-color:#fff;background:var(--color-warn);border-color:var(--color-warn)}`;Q(Z8);const no={landscape:{width:1123,height:794,printSize:"A4 landscape",printW:"297mm",printH:"210mm"},portrait:{width:794,height:1123,printSize:"A4 portrait",printW:"210mm",printH:"297mm"}};function km(e="landscape"){const{printSize:t,printW:a,printH:r}=no[e],n=document.createElement("style");n.textContent=`@page { size: ${t}; margin: 0; } .word-table { width: ${a} !important; height: ${r} !important; }`,document.head.appendChild(n);const i=()=>{document.head.removeChild(n),window.removeEventListener("afterprint",i)};window.addEventListener("afterprint",i),window.print()}function Sm(e,t){if(e.length===0)return[[]];const a=Math.max(1,Math.floor(t)),r=[];for(let n=0;n<e.length;n+=a)r.push(e.slice(n,n+a));return r}const X8={landscape:{1:{cols:1,rows:1},2:{cols:2,rows:1},3:{cols:3,rows:1},4:{cols:2,rows:2},5:{cols:3,rows:2},6:{cols:3,rows:2},7:{cols:4,rows:2},8:{cols:4,rows:2},9:{cols:5,rows:2},10:{cols:5,rows:2},11:{cols:4,rows:3},12:{cols:4,rows:3}},portrait:{1:{cols:1,rows:1},2:{cols:1,rows:2},3:{cols:1,rows:3},4:{cols:1,rows:4},5:{cols:1,rows:5},6:{cols:2,rows:3},7:{cols:2,rows:4},8:{cols:2,rows:4},9:{cols:2,rows:5},10:{cols:2,rows:5},11:{cols:3,rows:4},12:{cols:3,rows:4}}};function Q8(e,t){const a=X8[e][t];if(a)return a;const r=Math.max(1,Math.ceil(t)),n=Math.max(1,Math.ceil(Math.sqrt(r*.707)));let i,s;return e==="landscape"?(s=n,i=Math.ceil(r/s)):(i=n,s=Math.ceil(r/i)),(e==="landscape"?i<s:s<i)&&([i,s]=[s,i]),{cols:i,rows:s}}const J8={\uD45C\uC2DC:"word-table-block__content--cut-show",\uC810\uC120:"",\uCF54\uB108:"word-table-block__content--cut-corner",\uBBF8\uD45C\uC2DC:""},Ql={\uBA85:"\uBA85\uC0AC",\uB3D9:"\uB3D9\uC0AC",\uD615:"\uD615\uC6A9\uC0AC",\uBD80:"\uBD80\uC0AC",\uC218:"\uC218\uC0AC",\uAD00:"\uAD00\uD615\uC0AC",\uAC10:"\uAC10\uD0C4\uC0AC",\uC870:"\uC870\uC0AC",\uC811:"\uC811\uC0AC",\uC758:"\uC758\uC874\uBA85\uC0AC",\uB300:"\uB300\uBA85\uC0AC",\uBCF4\uB3D9:"\uBCF4\uC870\uB3D9\uC0AC",\uBCF4\uD615:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},Jl={\uACE0\uC720:"\uACE0\uC720\uC5B4",\uD55C\uC790:"\uD55C\uC790\uC5B4",\uC678\uB798:"\uC678\uB798\uC5B4",\uD63C\uC885:"\uD63C\uC885\uC5B4"};function kn(e,t){return e?e.split("/").map(a=>t[a]??a).join("/"):""}function Am(e,t,a,r){if(r!=="\uC810\uC120")return{};const n=e%t,i=Math.floor(e/t),s=n<t-1,c=i<a-1;if(!s&&!c)return{};const u="#ddd",d=g=>`repeating-linear-gradient(to ${g}, ${u} 0, ${u} 5px, transparent 5px, transparent 10px)`,m=[],h=[],p=[];return s&&(m.push(d("bottom")),h.push("1px 100%"),p.push("right center")),c&&(m.push(d("right")),h.push("100% 1px"),p.push("center bottom")),{backgroundImage:m.join(", "),backgroundSize:h.join(", "),backgroundPosition:p.join(", "),backgroundRepeat:"no-repeat",printColorAdjust:"exact",WebkitPrintColorAdjust:"exact"}}const ek=280,tk=240,ak=280,ok=400,rk=120,nk=280;function ec(e,t){const a=l.useRef(null),[r,n]=l.useState(1),[i,s]=l.useState(0),c=l.useCallback((u,d)=>{const m=u/e,h=t?d/t:1/0,p=Math.min(1,m,h);n(p),s(Math.max(0,(u-e*p)/2))},[e,t]);return l.useEffect(()=>{const u=a.current;if(!u)return;const d=t?u.parentElement??u:u;if(c(d.clientWidth,d.clientHeight),typeof ResizeObserver>"u")return;const m=new ResizeObserver(([h])=>c(h.contentRect.width,h.contentRect.height));return m.observe(d),()=>m.disconnect()},[c,t]),{scalerRef:a,scale:r,offset:i}}let Ba=null;function Tm({label:e,subLabel:t,colloquialLabel:a,homonum:r,showWord:n=!0,showImage:i=!0,showPronunciation:s=!0,showColloquial:c=!0,buttonSize:u=40,wordInfo:d}){const{t:m}=me.useTranslation(),h=l.useRef(null),p=l.useRef(null),g=l.useRef(null),[v,b]=l.useState(1),[y,f]=l.useState(!1),[x,_]=l.useState(""),[C,A]=l.useState(null),w=t&&t.length>0?t:ei()?.(e,r)??"",S=Ma()?.(e,r)??"",{imgRef:N,loading:T,failed:E,onLoad:W,onError:L}=ql(S),k=l.useCallback(()=>A(p.current?.getBoundingClientRect()??null),[]),D=l.useCallback(()=>A(null),[]),j=l.useMemo(()=>{if(!d)return null;const M=[];return d.grade&&M.push(`\uB09C\uC774\uB3C4: ${d.grade}\uB4F1\uAE09`),d.syllables&&M.push(`\uC74C\uC808 \uC218: ${d.syllables}\uC74C\uC808`),d.pos&&M.push(`\uD488\uC0AC: ${kn(d.pos,Ql)}`),d.wordType&&M.push(`\uC720\uD615: ${kn(d.wordType,Jl)}`),M.length?M:null},[d]);l.useEffect(()=>{const M=Oo(),R=w||e;if(!M||!R)return;let z=!1;return Promise.resolve(M(R)).then(H=>{!z&&H&&_(H)}),()=>{z=!0}},[w,e]),l.useEffect(()=>()=>{g.current?.pause(),Ba?.audio===g.current&&(Ba=null)},[]);const F=l.useCallback(async M=>{if(M.stopPropagation(),y){g.current?.pause(),f(!1),Ba=null;return}if(x){Ba?.stop(),f(!0);try{const R=new Audio(x);g.current=R;const z=()=>{f(!1),Ba?.audio===R&&(Ba=null)};Ba={audio:R,stop:()=>{R.pause(),z()}},R.onended=z,R.onerror=z,await R.play()}catch{f(!1),Ba?.audio===g.current&&(Ba=null)}}},[y,x]),ee=i&&!!S&&!E,Z=ee&&n?ek:ee?ak:tk,J=ee&&n?ok:ee?nk:rk;return l.useEffect(()=>{const M=h.current;if(!M||typeof ResizeObserver>"u")return;const R=new ResizeObserver(([z])=>{const{width:H,height:$}=z.contentRect;b(Math.min(H/Z,$/J))});return R.observe(M),()=>R.disconnect()},[Z,J]),o.jsxs("div",{ref:h,className:"word-table-cell",children:[o.jsxs("div",{className:"word-table-cell__inner",style:{transform:`scale(${v})`},children:[ee&&o.jsxs("div",{className:"word-table-cell__image-wrap",children:[T&&o.jsx("div",{className:"word-table-cell__spinner"}),o.jsx("img",{ref:N,className:"word-table-cell__image",src:S,alt:e,draggable:!1,style:{opacity:T?0:1},onLoad:W,onError:L})]}),n&&o.jsx("span",{className:"word-table-cell__word h0",children:e}),s&&w&&o.jsxs("span",{className:"word-table-cell__sub h3",children:["[",w,"]"]}),c&&a&&o.jsxs("span",{className:"word-table-cell__colloquial h5",children:["[",a,"]"]})]}),o.jsxs("div",{className:"word-table-cell__play-button","data-audio-src":x,children:[o.jsx("span",{"data-play-state":"play",style:{display:y?"none":void 0},children:o.jsx(ce,{size:u,type:"dot",icon:"play",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:m("common.play","\uC7AC\uC0DD"),onClick:F})}),o.jsx("span",{"data-play-state":"pause",style:{display:y?void 0:"none"},children:o.jsx(ce,{size:u,type:"dot",icon:"pause",useBorder:!1,selected:!0,showTooltipInfo:m("common.pause","\uBA48\uCDA4"),onClick:F})})]}),d&&o.jsxs("div",{ref:p,className:"word-table-cell__info-button",onPointerEnter:k,onPointerLeave:D,onFocus:k,onBlur:D,children:[o.jsx(ce,{size:u,type:"dot",icon:"info",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:!1,ariaLabel:m("wordTable.wordInfo","{{word}} \uB0B1\uB9D0 \uC815\uBCF4",{word:e}),onClick:M=>M.stopPropagation()}),C&&j&&o.jsx(to,{anchorRect:C,items:j,showIndex:!1})]})]})}function io({title:e,titleIcon:t,disc:a,className:r,orientation:n="landscape",contentTypes:i=["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"],cutLine:s="\uD45C\uC2DC",showOutline:c=!0,showDivLine:u=!0,items:d,editCells:m,count:h,activeCell:p=null,onActivateCell:g,onRemoveCell:v,onRemoveItem:b,onReorder:y,showFillerAdd:f=!1,contentRef:x,buttonSize:_=40,pageNumber:C,pageNumberPosition:A="right",fitHeight:w=!1,scoring:S=!1,marks:N,onMarkClick:T,scoreIndexOffset:E=0}){const W=l.useCallback((pe,ae)=>{T?.(E+pe,ae)},[T,E]),L=(pe,ae)=>{const Y=N?.[yr(E+pe)]??null;return o.jsx("div",{className:xe("word-table-cell__score",Y?"word-table-cell__score--marked":""),children:Yl.map(de=>o.jsx("span",{className:xe("word-table-cell__score-slot",Y===de?"word-table-cell__score-slot--on":""),children:o.jsx(ce,{size:_,type:"dot",icon:Kl[de],variant:Y===de?Zl[de]:"default",selected:Y===de,useBorder:!1,showTooltipInfo:!1,ariaLabel:k(`wordTable.scoring.${de}`,{word:ae,defaultValue:`${ae} ${de}`}),onClick:fe=>{fe.stopPropagation(),W(pe,de)}})},de))})},{t:k}=me.useTranslation(),D=m!==void 0,j=l.useRef(null),[F,ee]=l.useState(null),{width:Z,height:J}=no[n],{scalerRef:M,scale:R,offset:z}=ec(Z,w?J:void 0),H=D?m?.length??0:d?.length??0,$=Math.max(h??H,1),{cols:q,rows:O}=Q8(n,$),G={word:i.length===0||i.includes("\uB2E8\uC5B4"),image:i.length===0||i.includes("\uC774\uBBF8\uC9C0"),pron:i.length===0||i.includes("\uD45C\uC900 \uBC1C\uC74C"),colloq:i.length===0||i.includes("\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")},I=D?(m??[]).some(pe=>pe!==null&&pe.length>1):(d??[]).some(pe=>pe.words.length>1),ne=xe("word-table-block__content",J8[s],c&&"word-table-block__content--outline",u&&I&&"word-table-block__content--div-line"),X={transform:`scale(${1/R})`,transformOrigin:"center center"},te=o.jsx("div",{ref:M,className:"word-table__scaler",style:{height:J*R},children:o.jsx("div",{className:xe("word-table",r),style:{width:Z,height:J,transform:`scale(${R})`,transformOrigin:"top left",marginLeft:z},children:o.jsxs("div",{ref:x,className:ne,style:{gridTemplateColumns:`repeat(${q}, 1fr)`,gridTemplateRows:`repeat(${O}, 1fr)`},children:[D?o.jsx(o.Fragment,{children:(m??[]).map((pe,ae)=>o.jsx("div",{className:xe("word-table-block__edit-cell",pe?"word-table-block__edit-cell--filled":"word-table-block__edit-cell--empty",p===ae?"word-table-block__edit-cell--active":""),style:Am(ae,q,O,s),children:pe?o.jsxs(o.Fragment,{children:[pe.map((Y,de)=>o.jsxs(l.Fragment,{children:[de>0&&o.jsx("div",{className:"word-table-block__pair-divider"}),o.jsx(Tm,{label:Y.word,subLabel:Y.pronunciation,homonum:Y.homonum,showWord:G.word,showImage:G.image,showPronunciation:G.pron,showColloquial:G.colloq,buttonSize:_})]},de)),S&&L(ae,pe.map(Y=>Y.word).join(" / ")),v&&o.jsx("div",{className:"word-table-block__card-close",children:o.jsx(ce,{size:_,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:pe.length>1?k("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):k("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:pe.length>1?k("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):k("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>v(ae)})})]}):g&&o.jsx("div",{style:X,children:o.jsx(ce,{size:"48",type:"bar",icon:"plus",label:k("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g(ae)})})},ae))}):o.jsxs(o.Fragment,{children:[(d??[]).map((pe,ae)=>o.jsxs("div",{className:`word-table-block__card${y?" word-table-block__card--draggable":""}${F===ae?" word-table-block__card--drag-over":""}`,style:Am(ae,q,O,s),draggable:!!y,onDragStart:y?()=>{j.current=ae}:void 0,onDragOver:y?Y=>{Y.preventDefault(),ee(ae)}:void 0,onDragLeave:y?()=>ee(null):void 0,onDrop:y?Y=>{Y.preventDefault(),j.current!==null&&j.current!==ae&&y(j.current,ae),j.current=null,ee(null)}:void 0,onDragEnd:y?()=>{j.current=null,ee(null)}:void 0,children:[pe.words.map((Y,de)=>o.jsxs(l.Fragment,{children:[de>0&&o.jsx("div",{className:"word-table-block__pair-divider"}),o.jsx(Tm,{label:Y.label,subLabel:Y.subLabel,colloquialLabel:Y.colloquialLabel,homonum:Y.homonum,showWord:G.word,showImage:G.image,showPronunciation:G.pron,showColloquial:G.colloq,buttonSize:_,wordInfo:Y.grade||Y.syllables!=null||Y.pos||Y.wordType?{grade:Y.grade,syllables:Y.syllables,pos:Y.pos,wordType:Y.wordType}:void 0})]},de)),S&&L(ae,pe.words.map(Y=>Y.label).join(" / ")),b&&o.jsx("div",{className:"word-table-block__card-close",children:o.jsx(ce,{size:_,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:pe.words.length>1?k("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):k("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:pe.words.length>1?k("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):k("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>b(pe.id)})})]},pe.id)),Array.from({length:Math.max(0,q*O-(d?.length??0))}).map((pe,ae)=>{const Y=(d?.length??0)+ae<$;return o.jsx("div",{className:"word-table-block__card word-table-block__card--filler",children:f&&g&&Y&&o.jsx("div",{style:X,children:o.jsx(ce,{size:_,type:"bar",icon:"plus",label:k("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>g((d?.length??0)+ae)})})},`filler-${ae}`)})]}),C&&A!=="none"&&o.jsx("span",{className:`word-table__page-number body-3 word-table__page-number--${A}`,children:k("wordTable.filter.pageIndicator",{current:C.current,total:C.total})})]})})});return e!=null||t||a?o.jsx(ro,{type:"page",icon:t,title:e,disc:a,className:xe("word-table-block",r),children:te}):te}var ik=".ihabdevteam-core-scope .filter-panel{background:var(--color-white);border:1px solid var(--color-darkWhite);border-radius:var(--radius-m);display:flex;flex-direction:column;gap:var(--spacing-m);min-width:200px;padding:var(--spacing-l)}.ihabdevteam-core-scope .filter-panel__header{align-items:center;display:flex;justify-content:space-between}.ihabdevteam-core-scope .filter-panel--collapsible{padding-bottom:0;padding-top:0}.ihabdevteam-core-scope .filter-panel--collapsible .filter-panel__header{flex-shrink:0;min-height:60px}.ihabdevteam-core-scope .filter-panel--collapsible .filter-panel__sections{padding-bottom:var(--spacing-m)}.ihabdevteam-core-scope .filter-panel__footer{border-top:1px solid var(--color-darkWhite);color:var(--color-gray);padding-bottom:var(--spacing-l);padding-top:var(--spacing-m)}.ihabdevteam-core-scope .filter-panel__title{display:block;text-align:left}.ihabdevteam-core-scope .filter-panel__title-row{align-items:center;display:flex;gap:var(--spacing-xs);min-width:0}.ihabdevteam-core-scope .filter-panel__header-actions{align-items:center;display:flex;gap:var(--spacing-xs);margin-left:auto}.ihabdevteam-core-scope .filter-panel__section{align-items:flex-start;display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .filter-panel__section-label-row{align-items:center;display:flex;justify-content:space-between}.ihabdevteam-core-scope .filter-panel__section-label{color:var(--color-darkGray);margin:0;text-align:left}.ihabdevteam-core-scope .filter-panel__section-multiple{color:var(--color-lightGray)}.ihabdevteam-core-scope .filter-panel__sections{display:flex;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .filter-panel__sections--row{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:16px 32px}.ihabdevteam-core-scope .filter-panel__group-label-row{align-items:center;display:flex;flex-basis:100%;gap:var(--spacing-s);justify-content:space-between;padding-top:var(--spacing-xs);width:100%}.ihabdevteam-core-scope .filter-panel__group-label{color:var(--color-darkGray);margin:0;text-align:left}.ihabdevteam-core-scope .filter-panel__section--row{align-items:center;flex-direction:row;gap:var(--spacing-s)}.ihabdevteam-core-scope .filter-panel__section--row .filter-panel__section-label-row{flex:0 0 auto;min-width:44px}.ihabdevteam-core-scope .filter-panel__sections--row .filter-panel__section--row{flex:0 0 auto;max-width:100%}.ihabdevteam-core-scope .filter-panel__sections--row .filter-panel__section--block{flex-basis:100%}.ihabdevteam-core-scope .filter-panel__items{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.ihabdevteam-core-scope .filter-panel__item-groups{-moz-column-gap:var(--spacing-xl);column-gap:var(--spacing-xl);display:flex;flex-wrap:wrap;row-gap:var(--spacing-xs)}.ihabdevteam-core-scope .filter-panel__item-group{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.ihabdevteam-core-scope .filter-panel__note{color:var(--color-darkGray);text-align:left;width:100%}.ihabdevteam-core-scope .filter-panel__note-list{display:flex;flex-direction:column;gap:4px;margin:0;padding-left:18px}.ihabdevteam-core-scope .filter-panel__textfield{min-width:200px}.ihabdevteam-core-scope .filter-panel__dropdown{min-width:180px}@media (max-width:767px){.ihabdevteam-core-scope .filter-panel__textfield{min-width:0;width:100%}}";Q(ik);function va({title:e,headerAction:t,collapsible:a=!1,defaultCollapsed:r=!1,collapsed:n,onCollapsedChange:i,footer:s,sections:c,selected:u={},onSelect:d,align:m,sectionAlign:h,className:p}){const g=(m??(h==="vertical"?"newline":"inline"))==="inline",{t:v}=me.useTranslation(),[b,y]=l.useState(r),f=n??b,x=()=>{const C=!f;y(C),i?.(C)},_=e||t||a;return o.jsxs("div",{className:xe("filter-panel",a?"filter-panel--collapsible":"",f?"filter-panel--collapsed":"",p),children:[_&&o.jsxs("div",{className:"filter-panel__header",children:[o.jsxs("div",{className:"filter-panel__title-row",children:[a&&o.jsx(ce,{size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:f?"chevron-down":"chevron-up",ariaLabel:f?v("common.expand","\uD3BC\uCE58\uAE30"):v("common.collapse","\uC811\uAE30"),"aria-expanded":!f,onClick:x}),e&&o.jsx("span",{className:"filter-panel__title h4",children:e})]}),o.jsx("div",{className:"filter-panel__header-actions",children:!f&&t})]}),!f&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:xe("filter-panel__sections",g?"filter-panel__sections--row":""),children:c.map(C=>{const A=u[C.label],w=A===void 0||(Array.isArray(A)?A.length===0:!1),S=(C.items??[]).filter(T=>T!=null),N=T=>{const E=typeof T=="string"?T:T.value,W=typeof T!="string"&&!!T.disabled,L=typeof T!="string"?T.labels:void 0,k=typeof T!="string"?T.displayLabel:void 0,D=typeof T!="string"?T.tooltip:void 0,j=typeof T!="string"?T.descriptionTooltip:void 0,F=typeof T!="string"?T.shape:void 0,ee=Array.isArray(A)?A.includes(E):A===E;return o.jsx(ce,{size:"keyboard",label:L??k??E,type:C.itemType??(L?"bar":E.length===1?"dot":void 0),selected:ee,disabled:W,shape:F,showTooltipInfo:!!D,tooltipInfoText:D,tooltipDescription:j,onClick:()=>d?.(E,C.label)},E)};return o.jsxs(l.Fragment,{children:[C.groupLabel&&o.jsxs("div",{className:"filter-panel__group-label-row",children:[o.jsx("div",{className:"filter-panel__group-label body-2",children:C.groupLabel}),C.groupAction]}),o.jsxs("div",{className:xe("filter-panel__section",C.layout==="row"?"filter-panel__section--row":"",C.block?"filter-panel__section--block":""),children:[o.jsxs("div",{className:"filter-panel__section-label-row",children:[o.jsx("span",{className:"filter-panel__section-label body-3",children:C.displayLabel??C.label}),C.labelAction]}),C.type==="note"?o.jsx("div",{className:"filter-panel__note body-3",children:C.content}):C.type==="input"?o.jsx(Wa,{className:"filter-panel__textfield",placeholder:C.placeholder,ariaLabel:C.displayLabel??C.label,value:u[C.label]??"",onChange:T=>d?.(T,C.label),error:C.error}):!C.multiple&&C.display==="segmented"?o.jsx(Ha,{ariaLabel:C.displayLabel??C.label,options:[...C.allOption?[{key:Nt,label:C.allLabel??v("common.all","\uC804\uCCB4")}]:[],...S.map(T=>{const E=typeof T=="string"?T:T.value,W=typeof T!="string"?T.displayLabel:void 0,L=typeof T!="string"?T.disabled:void 0;return{key:E,label:W??E,disabled:L}})],value:w&&C.allOption?Nt:u[C.label],onChange:T=>d?.(T,C.label),size:32}):!C.multiple&&C.display==="dropdown"?o.jsx(Ut,{className:"filter-panel__dropdown",size:40,options:[...C.allOption?[{value:Nt,label:C.allLabel??v("common.all","\uC804\uCCB4")}]:[],...S.map(T=>{const E=typeof T=="string"?T:T.value,W=typeof T!="string"?T.displayLabel:void 0,L=typeof T!="string"?T.disabled:void 0;return{value:E,label:W??E,disabled:L}})],value:w&&C.allOption?Nt:u[C.label],onChange:T=>d?.(T,C.label)}):o.jsxs("div",{className:C.groups?"filter-panel__item-groups":"filter-panel__items",children:[C.allOption&&!C.groups&&o.jsx(ce,{size:"keyboard",label:C.allLabel??v("common.all","\uC804\uCCB4"),selected:w,disabled:C.allOptionDisabled,onClick:()=>d?.(Nt,C.label)}),C.groups?C.groups.map((T,E)=>o.jsxs("div",{className:"filter-panel__item-group",children:[E===0&&C.allOption&&o.jsx(ce,{size:"keyboard",label:C.allLabel??v("common.all","\uC804\uCCB4"),selected:w,disabled:C.allOptionDisabled,onClick:()=>d?.(Nt,C.label)}),T.filter(W=>W!=null).map(N)]},E)):S.map(N)]})]})]},C.label)})}),s!=null&&s!==!1&&o.jsx("div",{className:"filter-panel__footer body-3",children:s})]})]})}const sk=[1,2,3,4,5,6,7,8,9,10,11,12],lk=[8,4,2,1];function Bm(e,t){return{label:e("wordTable.filter.composition","\uAD6C\uC131"),items:[{value:"\uC774\uBBF8\uC9C0",disabled:!t.hasImage,displayLabel:e("wordTable.filter.image","\uC774\uBBF8\uC9C0")},{value:"\uB2E8\uC5B4",displayLabel:e("wordTable.filter.word","\uB2E8\uC5B4")},{value:"\uD45C\uC900 \uBC1C\uC74C",displayLabel:e("wordTable.filter.standardPron","\uD45C\uC900 \uBC1C\uC74C")},{value:"\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C",disabled:!t.hasColloquial,displayLabel:e("wordTable.filter.colloquialPron","\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")}],multiple:!0,allOption:!0}}function Nm(e){return{label:e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5"),items:[{value:"\uAC00\uB85C",displayLabel:e("wordTable.filter.landscape","\uAC00\uB85C")},{value:"\uC138\uB85C",displayLabel:e("wordTable.filter.portrait","\uC138\uB85C")}],display:"segmented"}}function Dm(e){return{label:e("wordTable.filter.border","\uC678\uACFD\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Em(e){return{label:e("wordTable.filter.cutLine","\uC808\uCDE8\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uC810\uC120",displayLabel:e("wordTable.filter.dotted","\uC810\uC120")},{value:"\uCF54\uB108",displayLabel:e("wordTable.filter.corner","\uCF54\uB108")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function jm(e){return{label:e("wordPrint.divLine","\uB300\uB9BD\uC120"),items:[{value:"\uD45C\uC2DC",displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Lm(e,t){return{label:e(t.hasPairs?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord"),items:[t.itemCount,...lk.filter(a=>a<t.itemCount)].map(a=>({value:`${a}\uAC1C`,displayLabel:e("wordTable.filter.itemsPerPageOption",{count:a})})),display:"segmented"}}function Mm(e){return{label:e("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638"),items:[{value:"\uC67C\uCABD",displayLabel:e("wordTable.filter.pageNumberLeft","\uC67C\uCABD")},{value:"\uC911\uC559",displayLabel:e("wordTable.filter.pageNumberCenter","\uC911\uC559")},{value:"\uC624\uB978\uCABD",displayLabel:e("wordTable.filter.pageNumberRight","\uC624\uB978\uCABD")},{value:"\uBBF8\uD45C\uC2DC",displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}const Pm={left:"\uC67C\uCABD",center:"\uC911\uC559",right:"\uC624\uB978\uCABD",none:"\uBBF8\uD45C\uC2DC"};function Rm(e){return e==="\uC67C\uCABD"?"left":e==="\uC911\uC559"?"center":e==="\uC624\uB978\uCABD"?"right":"none"}function $m(e,t){return{[e("wordTable.filter.composition","\uAD6C\uC131")]:t.contentTypes,[e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")]:t.orientation==="landscape"?"\uAC00\uB85C":"\uC138\uB85C",[e("wordTable.filter.border","\uC678\uACFD\uC120")]:t.showOutline?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC",[e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")]:t.cutLine,[e("wordPrint.divLine","\uB300\uB9BD\uC120")]:t.showDivLine?"\uD45C\uC2DC":"\uBBF8\uD45C\uC2DC"}}function zm(e,t,a,r){return a===e("wordTable.filter.composition","\uAD6C\uC131")?t===Nt?(r.setContentTypes(()=>[]),!0):(r.setContentTypes(n=>n.includes(t)?n.filter(i=>i!==t):[...n,t]),!0):a===e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")?(r.setOrientation(t==="\uAC00\uB85C"?"landscape":"portrait"),!0):a===e("wordTable.filter.border","\uC678\uACFD\uC120")?(r.setShowOutline(t==="\uD45C\uC2DC"),!0):a===e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")?(r.setCutLine(t),!0):a===e("wordPrint.divLine","\uB300\uB9BD\uC120")?(r.setShowDivLine(t==="\uD45C\uC2DC"),!0):!1}function ck(e){return"sections"in e}function Sn(e){const{t}=me.useTranslation(),{title:a,className:r}=e;if(ck(e))return o.jsx(va,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:e.sections,selected:e.selected,onSelect:e.onSelect,align:"inline"});const{hasImage:n,hasColloquial:i,contentTypes:s,orientation:c,showOutline:u,cutLine:d,showDivLine:m,setters:h,showCutLine:p=!1,showDivLine2:g=!1,middleSections:v=[],extraSelected:b={},onExtraSelect:y}=e,f=[Bm(t,{hasImage:n,hasColloquial:i}),Nm(t),...v,Dm(t),...p?[Em(t)]:[],...g?[jm(t)]:[]],x={...$m(t,{contentTypes:s,orientation:c,showOutline:u,cutLine:d,showDivLine:m}),...b},_=(C,A)=>{zm(t,C,A,h)||y?.(C,A)};return o.jsx(va,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:f,selected:x,onSelect:_,sectionAlign:"horizontal"})}function Im(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function tc(e){return e.replace(/[\\/:*?"<>|]/g,"_").trim()}function dk(e,t,a,r="",n=""){if(e.length===0)return;const i=r?tc(r):"";if(i){const u=document.title;document.title=i;const d=()=>{document.title=u,window.removeEventListener("afterprint",d)};window.addEventListener("afterprint",d)}const s=document.createElement("iframe");s.style.cssText="position:fixed;left:-10000px;top:0;width:1200px;height:900px;border:0;",document.body.appendChild(s);const c=s.contentDocument;if(!c){s.remove();return}c.open(),c.write(ac(e,t,a,!0,i,n)),c.close(),s.contentWindow?.addEventListener("afterprint",()=>setTimeout(()=>s.remove(),0))}function ac(e,t,a,r=!1,n="",i=""){n=n?tc(n):"";const s=Array.from(document.styleSheets).flatMap(m=>{try{return Array.from(m.cssRules).map(h=>h.cssText)}catch{return[]}}).join(`
833
833
  `),c=document.documentElement.getAttribute("data-theme")||"light",u=i?`<div class="paper-head">${Im(i)}</div>`:"",d=e.map(m=>{const h=m.cloneNode(!0);return h.querySelectorAll('[data-play-state="play"]').forEach(p=>p.style.display=""),h.querySelectorAll('[data-play-state="pause"]').forEach(p=>p.style.display="none"),h.querySelectorAll(".word-table-cell__score-slot:not(.word-table-cell__score-slot--on)").forEach(p=>p.remove()),`<div class="paper-wrap">${u}${h.outerHTML}</div>`}).join(`
834
834
  `);return`<!DOCTYPE html>
835
835
  <html data-theme="${c}">
@@ -956,16 +956,16 @@ ${f.badge}`:f.badge:void 0;if(_&&s(f.code))return null;if(!f.badge&&!c)return u(
956
956
  `:""}
957
957
  <\/script>
958
958
  </body>
959
- </html>`}function An({getElements:e,paperW:t,paperH:a,fileName:r="",onPopupBlocked:n,header:i=""}){const s=l.useCallback(()=>{dk(e(),t,a,r,i)},[e,t,a,r,i]),c=l.useCallback(()=>{const d=e();if(d.length===0)return;const m=window.open("","_blank");if(!m){n?.();return}m.document.write(ac(d,t,a,!1,r,i)),m.document.close()},[e,t,a,r,n,i]),u=l.useCallback(()=>{const d=e();if(d.length===0)return;const m=ac(d,t,a,!1,r,i),h=new Blob([m],{type:"text/html;charset=utf-8"}),p=URL.createObjectURL(h),g=r&&tc(r),v=Object.assign(document.createElement("a"),{href:p,download:`${g}.html`});document.body.appendChild(v),v.click(),document.body.removeChild(v),URL.revokeObjectURL(p)},[e,t,a,r,i]);return{print:s,openNewWindow:c,downloadHtml:u}}function oc(e){const{t}=me.useTranslation(),[a,r]=l.useState("landscape"),[n,i]=l.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[s,c]=l.useState("\uD45C\uC2DC"),[u,d]=l.useState(!0),[m,h]=l.useState(!0),[p,g]=l.useState(8),[v,b]=l.useState("right"),y=e.length,f=e.some(M=>M.words.length>1),x=e.some(M=>M.words.some(k=>!!k.colloquialLabel)),_=Math.min(p,Math.max(y,1)),C=l.useMemo(()=>Sm(e,_),[e,_]),A=C.length>1,w=_,[S,D]=l.useState(!1);l.useEffect(()=>{let M=!1;if(!Ma()){D(!1);return}return Promise.all(e.flatMap(k=>k.words.map(N=>qo(N.label,N.homonum)))).then(k=>{M||D(k.some(Boolean))}),()=>{M=!0}},[e]);const T=l.useMemo(()=>[Bm(t,{hasImage:S,hasColloquial:x}),Nm(t),...y>0?[Lm(t,{hasPairs:f,itemCount:y})]:[],...A?[Mm(t)]:[],Dm(t),...w>1?[Em(t)]:[],...f?[jm(t)]:[]],[t,S,x,y,f,A,w]),E={...$m(t,{contentTypes:n,orientation:a,showOutline:u,cutLine:s,showDivLine:m}),...y>0?{[t(f?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${_}\uAC1C`}:{},...A?{[t("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Pm[v]}:{}},W=l.useCallback((M,k)=>{zm(t,M,k,{setContentTypes:i,setOrientation:r,setShowOutline:d,setCutLine:c,setShowDivLine:h})||(k===t("wordTable.filter.itemsPerPagePair","\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218")||k===t("wordTable.filter.itemsPerPageWord","\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218")?g(parseInt(M)):k===t("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&b(Rm(M)))},[t]);return{settings:{orientation:a,contentTypes:n,cutLine:s,showOutline:u,showDivLine:m,count:w},filterSections:T,filterSelected:E,handleSelect:W,pages:C,isPaginated:A,pageNumberPosition:v}}var uk=".ihabdevteam-core-scope .word-table-popup .popup-content__inner,.ihabdevteam-core-scope .word-table-popup__body{display:flex;flex:1;flex-direction:column;min-height:0}.ihabdevteam-core-scope .word-table-popup__body{gap:var(--spacing-m)}.ihabdevteam-core-scope .word-table-popup__table{align-items:flex-start;display:flex;flex:1;justify-content:center;min-height:0;overflow:hidden}.ihabdevteam-core-scope .word-table-popup__pages{align-items:center;display:flex;flex:1;flex-direction:column;gap:24px;gap:var(--spacing-content,24px);min-height:0;overflow:auto}@media print{.ihabdevteam-core-scope .word-table-popup__pages .word-table{-moz-column-break-after:page;break-after:page;page-break-after:always;position:static}.ihabdevteam-core-scope .word-table-popup__pages .word-table:last-child{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}}.ihabdevteam-core-scope .word-table-popup__empty{color:var(--color-gray);padding:var(--spacing-m) 0;text-align:center}";Q(uk);function Om({items:e,words:t,title:a,subtitle:r,emptyText:n,buttons:i,renderButtons:s,renderFooter:c,footerClassName:u,printFileName:d,showSettings:m,autoPrint:h,className:p,onClose:g,scoring:v=!1,onScoreChange:b,printHeader:y,beforeClose:f}){const{t:x}=me.useTranslation(),_=l.useMemo(()=>Array.isArray(e)?e:(Array.isArray(t)?t:[]).filter(Y=>typeof Y=="string"&&Y.length>0).map((Y,J)=>({id:`${Y}-${J}`,words:[{label:Y}]})),[e,t]),{settings:C,filterSections:A,filterSelected:w,handleSelect:S,pages:D,isPaginated:T,pageNumberPosition:E}=oc(_),W=l.useMemo(()=>Xl(D.map(Y=>Y.length)),[D]),[M,k]=l.useState({}),N=l.useCallback((Y,J)=>{k(ue=>({...ue,[yr(Y)]:Ul(ue[yr(Y)]??null,J)}))},[]),j=l.useRef(b);l.useEffect(()=>{j.current=b}),l.useEffect(()=>{j.current?.(wn(M))},[M]);const F=l.useMemo(()=>wn(M),[M]),te=l.useRef(null),{toastMessage:Z,toastKey:ee,showWarning:L,clearToast:R}=un("warning"),O=l.useRef([]),H=l.useCallback(()=>T?O.current.filter(Y=>Y!==null):te.current?[te.current]:[],[T]),{print:$,openNewWindow:q}=An({getElements:H,paperW:no[C.orientation].width,paperH:no[C.orientation].height,fileName:d??"",header:y??"",onPopupBlocked:()=>L(x("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}),I=l.useMemo(()=>c?void 0:s?s({print:$,openNewWindow:q}):d?[{label:x("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),variant:"default",onClick:()=>q()},{label:x("wordTable.print","\uC778\uC1C4\uD558\uAE30"),variant:"default",onClick:()=>$()},...i??[]]:i,[c,s,d,i,x,$,q]),G=l.useMemo(()=>c?c({print:$,openNewWindow:q}):void 0,[c,$,q]),z=l.useRef(!1);return l.useEffect(()=>{if(!h||z.current)return;z.current=!0;const Y=window.setTimeout(()=>$(),100);return()=>window.clearTimeout(Y)},[h,$]),o.jsxs(Ta,{title:a??x("keyWords.title","\uC8FC\uC694 \uB2E8\uC5B4"),subtitle:r,size:"large",className:ye("word-table-popup",p),buttons:I,footer:G,footerClassName:u,beforeClose:f,onClose:g,children:[_.length>0?o.jsxs("div",{className:"word-table-popup__body",children:[m&&o.jsx(Sn,{sections:A,selected:w,onSelect:S}),T?o.jsx("div",{className:"word-table-popup__pages",children:D.map((Y,J)=>o.jsx(io,{items:Y,orientation:C.orientation,contentTypes:C.contentTypes,cutLine:C.cutLine,showOutline:C.showOutline,showDivLine:C.showDivLine,count:C.count,contentRef:ue=>{O.current[J]=ue},pageNumber:{current:J+1,total:D.length},pageNumberPosition:E,scoring:v,scoreIndexOffset:W[J],marks:F,onMarkClick:N},J))}):o.jsx("div",{className:"word-table-popup__table",children:o.jsx(io,{items:_,orientation:C.orientation,contentTypes:C.contentTypes,cutLine:C.cutLine,showOutline:C.showOutline,showDivLine:C.showDivLine,count:C.count,contentRef:te,fitHeight:!0,scoring:v,marks:F,onMarkClick:N})})]}):o.jsx("p",{className:"word-table-popup__empty body-3",children:n??x("keyWords.empty","\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),o.jsx(oo,{message:Z,position:"top",onClose:R},ee)]})}const pk=new Set(["x","triangle"]);function Fm(e,t){const a=[];for(let r=0;r<e.length;r++){const n=t[String(r)];n&&pk.has(n)&&a.push(e[r])}return a}function Wm(e,t){const[,a,r]=ka(t).split("-"),n=`${a}.${r}`,i=/\s*(?:(\d+)차\s*)?복습\s*\d{2}\.\d{2}$/;let s=e.trim(),c=1;for(;;){const d=i.exec(s);if(!d)break;c=Math.max(c,(d[1]?Number(d[1]):1)+1),s=s.slice(0,d.index).trim()}const u=c>=2?`${c}\uCC28 `:"";return`${s||"\uB2E8\uC5B4\uD45C"} ${u}\uBCF5\uC2B5 ${n}`}function Hm(e,t){const a={};for(const[r,n]of Object.entries(t)){if(n!=="o"&&n!=="triangle"&&n!=="x")continue;const i=Number(r),s=e[i];s&&(a[r]=s)}return a}function Vm(e){return e.map(t=>t.label).join(" / ")}function Gm(e,t,a){const r=Yr(a);return[e.trim(),r,t.trim()].filter(Boolean).join(" \xB7 ")}function qm(e,t,a){return a===0?0:(e+t*.5)/a}function Ym(e){const t=new Map,a=[...e].sort((n,i)=>n.scoredAt.localeCompare(i.scoredAt));for(const n of a)for(const[i,s]of Object.entries(n.marks)){const c=n.labels?.[i];if(!c)continue;const u=t.get(c)??{o:0,triangle:0,x:0,latest:s,latestAt:n.scoredAt};if(s==="o")u.o++;else if(s==="triangle")u.triangle++;else if(s==="x")u.x++;else continue;u.latest=s,u.latestAt=n.scoredAt,t.set(c,u)}const r=[];for(const[n,i]of t){const s=i.o+i.triangle+i.x;r.push({label:n,tried:s,o:i.o,triangle:i.triangle,x:i.x,rate:qm(i.o,i.triangle,s),latest:i.latest,latestAt:i.latestAt})}return r.sort((n,i)=>n.rate-i.rate||i.tried-n.tried||n.label.localeCompare(i.label)),r}function Um(e){const t=new Map;for(const r of e){const n=r.tableId??`name:${r.tableName}`,i=t.get(n)??{tableName:r.tableName,tableId:r.tableId,rows:[]};i.rows.push(r),t.set(n,i)}const a=[];for(const r of t.values()){const n=[...r.rows].sort((s,c)=>s.scoredAt.localeCompare(c.scoredAt)),i=n.map(s=>{const c=Object.values(s.marks),u=c.filter(m=>m==="o").length,d=c.filter(m=>m==="triangle").length;return qm(u,d,c.filter(m=>m==="o"||m==="triangle"||m==="x").length)});a.push({tableName:r.tableName,tableId:r.tableId,rates:i,times:n.map(s=>s.scoredAt),delta:i.length>=2?i[i.length-1]-i[0]:null})}return a.sort((r,n)=>(n.times[n.times.length-1]??"").localeCompare(r.times[r.times.length-1]??"")),a}function Km(e,t=8){return e.filter(a=>a.latest!=="o").slice(0,t)}function Zm(e){const t=new Map;let a=0,r=0;const n=[...e].sort((s,c)=>s.answeredAt.localeCompare(c.answeredAt));for(const s of n){if(s.isCorrect==null)continue;const c=s.itemTitle?.trim();if(!c){r++;continue}a++;const u=s.itemId?.trim()||c,d=`${s.trainingType}|${u}`,m=t.get(d)??{trainingType:s.trainingType,itemId:u,title:c,tried:0,wrong:0,latestCorrect:s.isCorrect,latestAt:s.answeredAt,lastSelected:s.selected,setIds:[]};m.tried++,s.isCorrect||m.wrong++,m.title=c,m.latestCorrect=s.isCorrect,m.latestAt=s.answeredAt,m.lastSelected=s.selected,s.setId&&!m.setIds.includes(s.setId)&&m.setIds.unshift(s.setId),t.set(d,m)}const i=[...t.entries()].map(([s,c])=>({key:s,trainingType:c.trainingType,itemId:c.itemId,title:c.title,tried:c.tried,wrong:c.wrong,rate:c.tried===0?0:(c.tried-c.wrong)/c.tried,latestCorrect:c.latestCorrect,latestAt:c.latestAt,lastSelected:c.lastSelected,setIds:c.setIds}));return i.sort((s,c)=>s.rate-c.rate||c.tried-s.tried||s.title.localeCompare(c.title)),{items:i,counted:a,skippedNoTitle:r}}function Xm(e,t=8){return e.filter(a=>!a.latestCorrect).slice(0,t)}function Qm(e){const t=new Map;for(const r of e){const n=t.get(r.trainingType)??[];n.push(r),t.set(r.trainingType,n)}const a=[...t.entries()].map(([r,n])=>({trainingType:r,items:n,pending:n.filter(i=>!i.latestCorrect).length}));return a.sort((r,n)=>n.pending-r.pending||r.trainingType.localeCompare(n.trainingType)),a}const Tn=["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"];function Jm(e){const t=new Map;let a=0;for(const i of e){if(i.latestCorrect)continue;const s=i.setIds[0];if(!s){a++;continue}const c=`${i.trainingType}|${s}`,u=t.get(c)??{setId:s,trainingType:i.trainingType,pending:0};u.pending++,t.set(c,u)}const r=(i,s)=>s.pending-i.pending||i.trainingType.localeCompare(s.trainingType)||i.setId.localeCompare(s.setId),n=[...t.values()];return{sentence:n.filter(i=>Tn.includes(i.trainingType)).sort(r),word:n.filter(i=>!Tn.includes(i.trainingType)).sort(r),noSet:a}}function eb(e,t,a=5){const r=new Set(t);if(r.size===0)return[];const n=[];for(const i of e){const s=new Set,c=[];for(const u of i.cellLabels)r.has(u)&&!s.has(u)&&(s.add(u),c.push(u));c.length!==0&&n.push({id:i.id,name:i.name,kind:i.kind,covered:c,totalCells:i.cellLabels.length})}return n.sort((i,s)=>s.covered.length-i.covered.length||i.totalCells-s.totalCells||i.name.localeCompare(s.name)),n.slice(0,Math.max(0,a))}function tb(e,t){const a=new Set(e.flatMap(r=>r.covered));return t.filter(r=>!a.has(r))}function ab(e,t){const a=new Map;for(const n of e)for(const i of n.cells){const s=n.labelOf(i);a.has(s)||a.set(s,i)}const r=[];for(const n of t){const i=a.get(n);i!==void 0&&r.push(i)}return r}function ob(e){if(!e||e<=0)return"-";const t=Math.floor(e/60),a=e%60;return t>0?`${t}\uBD84${a>0?` ${a}\uCD08`:""}`:`${a}\uCD08`}function rb(e,t){const a=[],r=new Set;for(const n of e){const i=t(n);r.has(i)||(r.add(i),a.push({key:i,value:n,pinned:!1}))}return a}function nb(e,t){return e.map(a=>a.key===t?{...a,pinned:!a.pinned}:a)}function ib(e,t){return e.filter(a=>a.key!==t)}function sb(e,t,a){const r=e.filter(d=>d.pinned),n=new Set(r.map(d=>d.key)),i=e.length-r.length,s=[],c=new Set(n);for(const d of t){if(s.length>=i)break;const m=a(d);c.has(m)||(c.add(m),s.push({key:m,value:d,pinned:!1}))}const u=[...s];return e.map(d=>d.pinned?d:u.shift()).filter(d=>d!==void 0)}function lb(e){return e.map(t=>t.value)}var hk=`.ihabdevteam-core-scope .icon-grid-menu{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:center}.ihabdevteam-core-scope .icon-grid-menu--medium{margin-bottom:60px}.ihabdevteam-core-scope .icon-grid-menu--small{margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .page:has(.choice-chips) .icon-grid-menu{margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .icon-grid-menu__button{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:28px;cursor:pointer;display:flex;flex-direction:column;gap:0;height:68px;justify-content:center;padding:0;text-align:center;transition:background-color .24s ease,box-shadow .15s,border-color .15s;width:68px}.ihabdevteam-core-scope .icon-grid-menu__button:hover{border-color:var(--color-main);box-shadow:var(--shadow-card)}.ihabdevteam-core-scope .icon-grid-menu__button:disabled{border-color:var(--color-whiteLine);box-shadow:none;cursor:default;opacity:.95;outline:none;pointer-events:none}.ihabdevteam-core-scope .icon-grid-menu__button-icon{align-items:center;color:var(--color-lightGray);display:inline-flex;font-size:28px;height:32px;justify-content:center;transform-origin:center;width:32px;will-change:transform}
959
+ </html>`}function An({getElements:e,paperW:t,paperH:a,fileName:r="",onPopupBlocked:n,header:i=""}){const s=l.useCallback(()=>{dk(e(),t,a,r,i)},[e,t,a,r,i]),c=l.useCallback(()=>{const d=e();if(d.length===0)return;const m=window.open("","_blank");if(!m){n?.();return}m.document.write(ac(d,t,a,!1,r,i)),m.document.close()},[e,t,a,r,n,i]),u=l.useCallback(()=>{const d=e();if(d.length===0)return;const m=ac(d,t,a,!1,r,i),h=new Blob([m],{type:"text/html;charset=utf-8"}),p=URL.createObjectURL(h),g=r&&tc(r),v=Object.assign(document.createElement("a"),{href:p,download:`${g}.html`});document.body.appendChild(v),v.click(),document.body.removeChild(v),URL.revokeObjectURL(p)},[e,t,a,r,i]);return{print:s,openNewWindow:c,downloadHtml:u}}function oc(e){const{t}=me.useTranslation(),[a,r]=l.useState("landscape"),[n,i]=l.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[s,c]=l.useState("\uD45C\uC2DC"),[u,d]=l.useState(!0),[m,h]=l.useState(!0),[p,g]=l.useState(8),[v,b]=l.useState("right"),y=e.length,f=e.some(L=>L.words.length>1),x=e.some(L=>L.words.some(k=>!!k.colloquialLabel)),_=Math.min(p,Math.max(y,1)),C=l.useMemo(()=>Sm(e,_),[e,_]),A=C.length>1,w=_,[S,N]=l.useState(!1);l.useEffect(()=>{let L=!1;if(!Ma()){N(!1);return}return Promise.all(e.flatMap(k=>k.words.map(D=>qo(D.label,D.homonum)))).then(k=>{L||N(k.some(Boolean))}),()=>{L=!0}},[e]);const T=l.useMemo(()=>[Bm(t,{hasImage:S,hasColloquial:x}),Nm(t),...y>0?[Lm(t,{hasPairs:f,itemCount:y})]:[],...A?[Mm(t)]:[],Dm(t),...w>1?[Em(t)]:[],...f?[jm(t)]:[]],[t,S,x,y,f,A,w]),E={...$m(t,{contentTypes:n,orientation:a,showOutline:u,cutLine:s,showDivLine:m}),...y>0?{[t(f?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${_}\uAC1C`}:{},...A?{[t("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Pm[v]}:{}},W=l.useCallback((L,k)=>{zm(t,L,k,{setContentTypes:i,setOrientation:r,setShowOutline:d,setCutLine:c,setShowDivLine:h})||(k===t("wordTable.filter.itemsPerPagePair","\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218")||k===t("wordTable.filter.itemsPerPageWord","\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218")?g(parseInt(L)):k===t("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&b(Rm(L)))},[t]);return{settings:{orientation:a,contentTypes:n,cutLine:s,showOutline:u,showDivLine:m,count:w},filterSections:T,filterSelected:E,handleSelect:W,pages:C,isPaginated:A,pageNumberPosition:v}}var uk=".ihabdevteam-core-scope .word-table-popup .popup-content__inner,.ihabdevteam-core-scope .word-table-popup__body{display:flex;flex:1;flex-direction:column;min-height:0}.ihabdevteam-core-scope .word-table-popup__body{gap:var(--spacing-m)}.ihabdevteam-core-scope .word-table-popup__table{align-items:flex-start;display:flex;flex:1;justify-content:center;min-height:0;overflow:hidden}.ihabdevteam-core-scope .word-table-popup__pages{align-items:center;display:flex;flex:1;flex-direction:column;gap:24px;gap:var(--spacing-content,24px);min-height:0;overflow:auto}@media print{.ihabdevteam-core-scope .word-table-popup__pages .word-table{-moz-column-break-after:page;break-after:page;page-break-after:always;position:static}.ihabdevteam-core-scope .word-table-popup__pages .word-table:last-child{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}}.ihabdevteam-core-scope .word-table-popup__empty{color:var(--color-gray);padding:var(--spacing-m) 0;text-align:center}";Q(uk);function Om({items:e,words:t,title:a,subtitle:r,emptyText:n,buttons:i,renderButtons:s,renderFooter:c,footerClassName:u,printFileName:d,showSettings:m,autoPrint:h,className:p,onClose:g,scoring:v=!1,onScoreChange:b,printHeader:y,beforeClose:f}){const{t:x}=me.useTranslation(),_=l.useMemo(()=>Array.isArray(e)?e:(Array.isArray(t)?t:[]).filter(ne=>typeof ne=="string"&&ne.length>0).map((ne,X)=>({id:`${ne}-${X}`,words:[{label:ne}]})),[e,t]),{settings:C,filterSections:A,filterSelected:w,handleSelect:S,pages:N,isPaginated:T,pageNumberPosition:E}=oc(_),W=l.useMemo(()=>Xl(N.map(ne=>ne.length)),[N]),[L,k]=l.useState({}),D=l.useCallback((ne,X)=>{k(te=>({...te,[yr(ne)]:Ul(te[yr(ne)]??null,X)}))},[]),j=l.useRef(b);l.useEffect(()=>{j.current=b}),l.useEffect(()=>{j.current?.(wn(L))},[L]);const F=l.useMemo(()=>wn(L),[L]),ee=l.useRef(null),{toastMessage:Z,toastKey:J,showWarning:M,clearToast:R}=un("warning"),z=l.useRef([]),H=l.useCallback(()=>T?z.current.filter(ne=>ne!==null):ee.current?[ee.current]:[],[T]),{print:$,openNewWindow:q}=An({getElements:H,paperW:no[C.orientation].width,paperH:no[C.orientation].height,fileName:d??"",header:y??"",onPopupBlocked:()=>M(x("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}),O=l.useMemo(()=>c?void 0:s?s({print:$,openNewWindow:q}):d?[{label:x("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),variant:"default",onClick:()=>q()},{label:x("wordTable.print","\uC778\uC1C4\uD558\uAE30"),variant:"default",onClick:()=>$()},...i??[]]:i,[c,s,d,i,x,$,q]),G=l.useMemo(()=>c?c({print:$,openNewWindow:q}):void 0,[c,$,q]),I=l.useRef(!1);return l.useEffect(()=>{if(!h||I.current)return;I.current=!0;const ne=window.setTimeout(()=>$(),100);return()=>window.clearTimeout(ne)},[h,$]),o.jsxs(Ta,{title:a??x("keyWords.title","\uC8FC\uC694 \uB2E8\uC5B4"),subtitle:r,size:"large",className:xe("word-table-popup",p),buttons:O,footer:G,footerClassName:u,beforeClose:f,onClose:g,children:[_.length>0?o.jsxs("div",{className:"word-table-popup__body",children:[m&&o.jsx(Sn,{sections:A,selected:w,onSelect:S}),T?o.jsx("div",{className:"word-table-popup__pages",children:N.map((ne,X)=>o.jsx(io,{items:ne,orientation:C.orientation,contentTypes:C.contentTypes,cutLine:C.cutLine,showOutline:C.showOutline,showDivLine:C.showDivLine,count:C.count,contentRef:te=>{z.current[X]=te},pageNumber:{current:X+1,total:N.length},pageNumberPosition:E,scoring:v,scoreIndexOffset:W[X],marks:F,onMarkClick:D},X))}):o.jsx("div",{className:"word-table-popup__table",children:o.jsx(io,{items:_,orientation:C.orientation,contentTypes:C.contentTypes,cutLine:C.cutLine,showOutline:C.showOutline,showDivLine:C.showDivLine,count:C.count,contentRef:ee,fitHeight:!0,scoring:v,marks:F,onMarkClick:D})})]}):o.jsx("p",{className:"word-table-popup__empty body-3",children:n??x("keyWords.empty","\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),o.jsx(oo,{message:Z,position:"top",onClose:R},J)]})}const pk=new Set(["x","triangle"]);function Fm(e,t){const a=[];for(let r=0;r<e.length;r++){const n=t[String(r)];n&&pk.has(n)&&a.push(e[r])}return a}function Wm(e,t){const[,a,r]=ka(t).split("-"),n=`${a}.${r}`,i=/\s*(?:(\d+)차\s*)?복습\s*\d{2}\.\d{2}$/;let s=e.trim(),c=1;for(;;){const d=i.exec(s);if(!d)break;c=Math.max(c,(d[1]?Number(d[1]):1)+1),s=s.slice(0,d.index).trim()}const u=c>=2?`${c}\uCC28 `:"";return`${s||"\uB2E8\uC5B4\uD45C"} ${u}\uBCF5\uC2B5 ${n}`}function Hm(e,t){const a={};for(const[r,n]of Object.entries(t)){if(n!=="o"&&n!=="triangle"&&n!=="x")continue;const i=Number(r),s=e[i];s&&(a[r]=s)}return a}function Vm(e){return e.map(t=>t.label).join(" / ")}function Gm(e,t,a){const r=Yr(a);return[e.trim(),r,t.trim()].filter(Boolean).join(" \xB7 ")}function qm(e,t,a){return a===0?0:(e+t*.5)/a}function Ym(e){const t=new Map,a=[...e].sort((n,i)=>n.scoredAt.localeCompare(i.scoredAt));for(const n of a)for(const[i,s]of Object.entries(n.marks)){const c=n.labels?.[i];if(!c)continue;const u=t.get(c)??{o:0,triangle:0,x:0,latest:s,latestAt:n.scoredAt};if(s==="o")u.o++;else if(s==="triangle")u.triangle++;else if(s==="x")u.x++;else continue;u.latest=s,u.latestAt=n.scoredAt,t.set(c,u)}const r=[];for(const[n,i]of t){const s=i.o+i.triangle+i.x;r.push({label:n,tried:s,o:i.o,triangle:i.triangle,x:i.x,rate:qm(i.o,i.triangle,s),latest:i.latest,latestAt:i.latestAt})}return r.sort((n,i)=>n.rate-i.rate||i.tried-n.tried||n.label.localeCompare(i.label)),r}function Um(e){const t=new Map;for(const r of e){const n=r.tableId??`name:${r.tableName}`,i=t.get(n)??{tableName:r.tableName,tableId:r.tableId,rows:[]};i.rows.push(r),t.set(n,i)}const a=[];for(const r of t.values()){const n=[...r.rows].sort((s,c)=>s.scoredAt.localeCompare(c.scoredAt)),i=n.map(s=>{const c=Object.values(s.marks),u=c.filter(m=>m==="o").length,d=c.filter(m=>m==="triangle").length;return qm(u,d,c.filter(m=>m==="o"||m==="triangle"||m==="x").length)});a.push({tableName:r.tableName,tableId:r.tableId,rates:i,times:n.map(s=>s.scoredAt),delta:i.length>=2?i[i.length-1]-i[0]:null})}return a.sort((r,n)=>(n.times[n.times.length-1]??"").localeCompare(r.times[r.times.length-1]??"")),a}function Km(e,t=8){return e.filter(a=>a.latest!=="o").slice(0,t)}function Zm(e){const t=new Map;let a=0,r=0;const n=[...e].sort((s,c)=>s.answeredAt.localeCompare(c.answeredAt));for(const s of n){if(s.isCorrect==null)continue;const c=s.itemTitle?.trim();if(!c){r++;continue}a++;const u=s.itemId?.trim()||c,d=`${s.trainingType}|${u}`,m=t.get(d)??{trainingType:s.trainingType,itemId:u,title:c,tried:0,wrong:0,latestCorrect:s.isCorrect,latestAt:s.answeredAt,lastSelected:s.selected,setIds:[]};m.tried++,s.isCorrect||m.wrong++,m.title=c,m.latestCorrect=s.isCorrect,m.latestAt=s.answeredAt,m.lastSelected=s.selected,s.setId&&!m.setIds.includes(s.setId)&&m.setIds.unshift(s.setId),t.set(d,m)}const i=[...t.entries()].map(([s,c])=>({key:s,trainingType:c.trainingType,itemId:c.itemId,title:c.title,tried:c.tried,wrong:c.wrong,rate:c.tried===0?0:(c.tried-c.wrong)/c.tried,latestCorrect:c.latestCorrect,latestAt:c.latestAt,lastSelected:c.lastSelected,setIds:c.setIds}));return i.sort((s,c)=>s.rate-c.rate||c.tried-s.tried||s.title.localeCompare(c.title)),{items:i,counted:a,skippedNoTitle:r}}function Xm(e,t=8){return e.filter(a=>!a.latestCorrect).slice(0,t)}function Qm(e){const t=new Map;for(const r of e){const n=t.get(r.trainingType)??[];n.push(r),t.set(r.trainingType,n)}const a=[...t.entries()].map(([r,n])=>({trainingType:r,items:n,pending:n.filter(i=>!i.latestCorrect).length}));return a.sort((r,n)=>n.pending-r.pending||r.trainingType.localeCompare(n.trainingType)),a}const Tn=["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"];function Jm(e){const t=new Map;let a=0;for(const i of e){if(i.latestCorrect)continue;const s=i.setIds[0];if(!s){a++;continue}const c=`${i.trainingType}|${s}`,u=t.get(c)??{setId:s,trainingType:i.trainingType,pending:0};u.pending++,t.set(c,u)}const r=(i,s)=>s.pending-i.pending||i.trainingType.localeCompare(s.trainingType)||i.setId.localeCompare(s.setId),n=[...t.values()];return{sentence:n.filter(i=>Tn.includes(i.trainingType)).sort(r),word:n.filter(i=>!Tn.includes(i.trainingType)).sort(r),noSet:a}}function eb(e,t,a=5){const r=new Set(t);if(r.size===0)return[];const n=[];for(const i of e){const s=new Set,c=[];for(const u of i.cellLabels)r.has(u)&&!s.has(u)&&(s.add(u),c.push(u));c.length!==0&&n.push({id:i.id,name:i.name,kind:i.kind,covered:c,totalCells:i.cellLabels.length})}return n.sort((i,s)=>s.covered.length-i.covered.length||i.totalCells-s.totalCells||i.name.localeCompare(s.name)),n.slice(0,Math.max(0,a))}function tb(e,t){const a=new Set(e.flatMap(r=>r.covered));return t.filter(r=>!a.has(r))}function ab(e,t){const a=new Map;for(const n of e)for(const i of n.cells){const s=n.labelOf(i);a.has(s)||a.set(s,i)}const r=[];for(const n of t){const i=a.get(n);i!==void 0&&r.push(i)}return r}function ob(e){if(!e||e<=0)return"-";const t=Math.floor(e/60),a=e%60;return t>0?`${t}\uBD84${a>0?` ${a}\uCD08`:""}`:`${a}\uCD08`}function rb(e,t){const a=[],r=new Set;for(const n of e){const i=t(n);r.has(i)||(r.add(i),a.push({key:i,value:n,pinned:!1}))}return a}function nb(e,t){return e.map(a=>a.key===t?{...a,pinned:!a.pinned}:a)}function ib(e,t){return e.filter(a=>a.key!==t)}function sb(e,t,a){const r=e.filter(d=>d.pinned),n=new Set(r.map(d=>d.key)),i=e.length-r.length,s=[],c=new Set(n);for(const d of t){if(s.length>=i)break;const m=a(d);c.has(m)||(c.add(m),s.push({key:m,value:d,pinned:!1}))}const u=[...s];return e.map(d=>d.pinned?d:u.shift()).filter(d=>d!==void 0)}function lb(e){return e.map(t=>t.value)}var hk=`.ihabdevteam-core-scope .icon-grid-menu{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:center}.ihabdevteam-core-scope .icon-grid-menu--medium{margin-bottom:60px}.ihabdevteam-core-scope .icon-grid-menu--small{margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .page:has(.choice-chips) .icon-grid-menu{margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .icon-grid-menu__button{align-items:center;background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:28px;cursor:pointer;display:flex;flex-direction:column;gap:0;height:68px;justify-content:center;padding:0;text-align:center;transition:background-color .24s ease,box-shadow .15s,border-color .15s;width:68px}.ihabdevteam-core-scope .icon-grid-menu__button:hover{border-color:var(--color-main);box-shadow:var(--shadow-card)}.ihabdevteam-core-scope .icon-grid-menu__button:disabled{border-color:var(--color-whiteLine);box-shadow:none;cursor:default;opacity:.95;outline:none;pointer-events:none}.ihabdevteam-core-scope .icon-grid-menu__button-icon{align-items:center;color:var(--color-lightGray);display:inline-flex;font-size:28px;height:32px;justify-content:center;transform-origin:center;width:32px;will-change:transform}
960
960
 
961
961
  /* !important \uD544\uC694: Icon.tsx\uC758 \uD3F4\uBC31 SVG(nullSvg)\uB294 style="stroke:...;stroke-width:.." \uC778\uB77C\uC778
962
962
  \uC18D\uC131\uC73C\uB85C \uB80C\uB354\uB9C1\uB418\uC5B4 \uD074\uB798\uC2A4 \uADDC\uCE59\uBCF4\uB2E4 \uC6B0\uC120\uC21C\uC704\uAC00 \uB192\uC74C. \uC774 \uADDC\uCE59\uC744 \uBAA8\uB4E0 \uC544\uC774\uCF58(\uC77C\uBC18 lucide
963
- \uC544\uC774\uCF58 + \uD3F4\uBC31)\uC5D0 \uB3D9\uC77C\uD558\uAC8C \uC801\uC6A9\uD558\uB824\uBA74 !important\uAC00 \uBD88\uAC00\uD53C\uD568. */.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg,.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg *{stroke:currentColor!important;stroke-width:2px!important;stroke-width:var(--icon-grid-menu-button-stroke-width,2px)!important;vector-effect:non-scaling-stroke}.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg{height:24px;width:24px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg{display:block;height:28px;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{background-color:currentColor;display:inline-block;height:28px;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-image{display:block;height:28px;-o-object-fit:contain;object-fit:contain;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{align-items:center;display:inline-flex;flex-direction:column;gap:6px}.ihabdevteam-core-scope .icon-grid-menu__button-label{color:var(--color-darkGray);overflow-wrap:break-word;word-break:keep-all}.ihabdevteam-core-scope .icon-grid-menu__button.icon-grid-menu__button--selected{animation:sub-to-main .36s cubic-bezier(.4,0,.2,1) forwards;background-color:var(--color-main);border-color:transparent;box-shadow:var(--shadow-button);color:#fff}.ihabdevteam-core-scope .icon-grid-menu__button.icon-grid-menu__button--selected .icon-grid-menu__button-icon{color:#fff}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-wrapper{gap:4px;margin:4px 8px;width:56px}.ihabdevteam-core-scope .icon-grid-menu--medium .icon-grid-menu__button-wrapper{margin-left:6px;margin-right:6px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button{border-radius:20px;height:48px;width:48px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon{font-size:20px;height:24px;width:24px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-image,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-mask,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-svg,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-svg svg{height:20px;width:20px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-label{font-size:12px;line-height:1.3}@media (min-width:1024px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:8px 12px;width:80px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:28px;height:68px;width:68px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:28px;width:28px}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:8px 10px;width:64px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:24px;height:58px;width:58px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:24px;width:24px}}@media (max-width:767px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:var(--spacing-xs);width:50px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:20px;height:48px;width:48px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:20px;width:20px}}`;Q(hk);function mk(e){const{category:t={},isSelected:a=!1,onClick:r}=e||{},n=t?.key?` icon-grid-menu__button--${t.key}`:"",i=l.useId();return o.jsxs("div",{className:`icon-grid-menu__button-wrapper${n}`,children:[o.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":t?.key,onClick:a?void 0:r,"aria-pressed":a,"aria-labelledby":i,disabled:a,children:o.jsx(Pe,{icon:t.icon,label:t.label,className:"icon-grid-menu__button-icon",imgClassName:"icon-grid-menu__button-icon-image",maskClassName:"icon-grid-menu__button-icon-mask",svgClassName:"icon-grid-menu__button-icon-svg"})}),o.jsx("span",{id:i,className:"icon-grid-menu__button-label button-1",children:t.label})]})}function cb(e){const{categories:t=[],selected:a,onSelect:r,size:n="medium"}=e||{},i=a??(t&&t[0]?.key)??null,[s,c]=l.useState(i??null);l.useEffect(()=>{a!=null&&c(a)},[a]);const u=l.useRef(r),d=l.useRef(s),m=l.useRef(a!==void 0);l.useEffect(()=>{!m.current&&d.current&&typeof u.current=="function"&&u.current(d.current)},[]);const h=l.useCallback(p=>{const g=s===p?null:p;c(g),r?.(g)},[s,r]);return o.jsx("div",{className:`icon-grid-menu icon-grid-menu--${n}`,children:(t||[]).map(p=>o.jsx(mk,{category:p,isSelected:s===p.key,onClick:()=>h(p.key)},p.key))})}var bk=".ihabdevteam-core-scope .choice-chips{display:block;width:100%}.ihabdevteam-core-scope .choice-chips--medium{margin-bottom:60px}.ihabdevteam-core-scope .choice-chips--small{margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .choice-chips__list{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s);justify-content:center;padding-bottom:6px}.ihabdevteam-core-scope .choice-chips__list::-webkit-scrollbar{height:8px}.ihabdevteam-core-scope .choice-chips__list::-webkit-scrollbar-thumb{background:rgba(0,0,0,.08);border-radius:var(--radius-sm)}.ihabdevteam-core-scope .choice-chips__button{background:var(--color-deepWhite)!important;border:1px solid var(--color-whiteLine)!important;border-radius:var(--radius-s)!important;color:var(--color-darkGray)!important;height:40px!important;padding:0 24px!important;transition:all .12s!important;white-space:nowrap}.ihabdevteam-core-scope .choice-chips__button:hover{border-color:var(--color-main)!important}.ihabdevteam-core-scope .choice-chips--small .choice-chips__button{height:32px!important;padding:0 16px!important}.ihabdevteam-core-scope .choice-chips--small .choice-chips__list{gap:var(--spacing-xs)}.ihabdevteam-core-scope .choice-chips__button.is-selected{animation:chip-sub-to-main .36s cubic-bezier(.4,0,.2,1) forwards;background:var(--color-main)!important;border:1px solid var(--color-main)!important;box-shadow:var(--shadow-dropdown);color:#fff!important}@keyframes chip-sub-to-main{0%{background-color:var(--color-sub)}to{background-color:var(--color-main)}}";Q(bk);function db({subs:e=[],selected:t,onSelect:a,size:r="medium"}){const n=r==="small"?32:40;return o.jsx("div",{className:`choice-chips choice-chips--${r}`,children:o.jsx("div",{className:"choice-chips__list",children:e.map(i=>o.jsx(le,{size:n,type:"bar",label:i.label,selected:t===i.key,className:"choice-chips__button",onClick:()=>a?.(i.key)},i.key))})})}var gk=".ihabdevteam-core-scope .site-footer{background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;color:var(--color-gray);padding:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__top{align-items:flex-start;display:flex;gap:40px;justify-content:space-between}.ihabdevteam-core-scope .site-footer__brand{flex:0 0 220px;width:220px}.ihabdevteam-core-scope .site-footer__lead{color:var(--color-gray);text-align:left}.ihabdevteam-core-scope .site-footer__links{align-items:flex-start;display:flex;flex:1 1 auto;flex-wrap:wrap;gap:100px 10px;min-width:320px}.ihabdevteam-core-scope .site-footer__column{flex:0 0 160px;min-width:160px;text-align:left}.ihabdevteam-core-scope .site-footer__column-title{color:var(--color-lightGray)}.ihabdevteam-core-scope .footer-title{color:var(--color-lightGray);display:inline-block;font-size:13px;font-weight:600;line-height:20px;width:80px}.ihabdevteam-core-scope .site-footer__column ul{list-style:none;margin:10px 0 0;padding:0}.ihabdevteam-core-scope .site-footer__column li{margin-bottom:6px}.ihabdevteam-core-scope .footer-link,.ihabdevteam-core-scope .site-footer__column a{color:var(--color-lightGray);text-decoration:none}.ihabdevteam-core-scope .footer-link{align-items:center;display:inline-flex;font-size:13px;line-height:20px;min-height:24px;min-width:24px;transition:color .12s ease}.ihabdevteam-core-scope .footer-copyright,.ihabdevteam-core-scope .footer-meta{line-height:18px}.ihabdevteam-core-scope .footer-link:focus,.ihabdevteam-core-scope .footer-link:hover{color:var(--color-main);text-decoration:none}.ihabdevteam-core-scope .site-footer__rule{border:none;border-top:1px solid var(--color-darkWhite);margin:40px 0}.ihabdevteam-core-scope .site-footer__bottom{align-items:center;display:flex;gap:40px;justify-content:flex-start}.ihabdevteam-core-scope .site-footer__brand-compact{align-items:center;display:flex;gap:18px}.ihabdevteam-core-scope .site-footer__logo{height:52px}.ihabdevteam-core-scope .site-footer__bottom .site-footer__brand{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .site-footer__meta{color:var(--color-lightGray);text-align:left}.ihabdevteam-core-scope .site-footer__copyright{align-items:center;box-sizing:border-box;color:var(--color-lightGray);display:flex;justify-content:center;margin:var(--spacing-page) 0 0 0;text-align:center;width:100%}@media (max-width:1024px){.ihabdevteam-core-scope .site-footer__top{flex-direction:column;gap:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__brand{flex:0 0 auto;width:100%}.ihabdevteam-core-scope .site-footer__links{gap:20px 10px;margin:0;min-width:0;width:100%}.ihabdevteam-core-scope .site-footer__bottom{align-items:flex-start;flex-direction:column;gap:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__meta{width:100%}.ihabdevteam-core-scope .site-footer__logo{height:50px}}@media (max-width:767px){.ihabdevteam-core-scope .site-footer__logo{height:48px}}";Q(gk);function ub({onTermsClick:e,onPrivacyClick:t,contact:a}={}){const r=a?.email??"support@ihab.co.kr",n=a?.tel??"031-380-3724",{t:i}=me.useTranslation();return o.jsx("footer",{className:"site-footer",children:o.jsxs("div",{className:"safearea",children:[o.jsxs("div",{className:"site-footer__top",children:[o.jsx("div",{className:"site-footer__brand",children:o.jsx("div",{className:"site-footer__lead h3",children:i("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
963
+ \uC544\uC774\uCF58 + \uD3F4\uBC31)\uC5D0 \uB3D9\uC77C\uD558\uAC8C \uC801\uC6A9\uD558\uB824\uBA74 !important\uAC00 \uBD88\uAC00\uD53C\uD568. */.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg,.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg *{stroke:currentColor!important;stroke-width:2px!important;stroke-width:var(--icon-grid-menu-button-stroke-width,2px)!important;vector-effect:non-scaling-stroke}.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg{height:24px;width:24px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-svg svg{display:block;height:28px;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{background-color:currentColor;display:inline-block;height:28px;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-image{display:block;height:28px;-o-object-fit:contain;object-fit:contain;width:28px}.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{align-items:center;display:inline-flex;flex-direction:column;gap:6px}.ihabdevteam-core-scope .icon-grid-menu__button-label{color:var(--color-darkGray);overflow-wrap:break-word;word-break:keep-all}.ihabdevteam-core-scope .icon-grid-menu__button.icon-grid-menu__button--selected{animation:sub-to-main .36s cubic-bezier(.4,0,.2,1) forwards;background-color:var(--color-main);border-color:transparent;box-shadow:var(--shadow-button);color:#fff}.ihabdevteam-core-scope .icon-grid-menu__button.icon-grid-menu__button--selected .icon-grid-menu__button-icon{color:#fff}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-wrapper{gap:4px;margin:4px 8px;width:56px}.ihabdevteam-core-scope .icon-grid-menu--medium .icon-grid-menu__button-wrapper{margin-left:6px;margin-right:6px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button{border-radius:20px;height:48px;width:48px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon{font-size:20px;height:24px;width:24px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-image,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-mask,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-svg,.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-icon-svg svg{height:20px;width:20px}.ihabdevteam-core-scope .icon-grid-menu--small .icon-grid-menu__button-label{font-size:12px;line-height:1.3}@media (min-width:1024px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:8px 12px;width:80px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:28px;height:68px;width:68px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:28px;width:28px}}@media (min-width:768px) and (max-width:1023px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:8px 10px;width:64px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:24px;height:58px;width:58px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:24px;width:24px}}@media (max-width:767px){.ihabdevteam-core-scope .icon-grid-menu__button-wrapper{margin:var(--spacing-xs);width:50px}.ihabdevteam-core-scope .icon-grid-menu__button{border-radius:20px;height:48px;width:48px}.ihabdevteam-core-scope .icon-grid-menu__button-icon-mask{height:20px;width:20px}}`;Q(hk);function mk(e){const{category:t={},isSelected:a=!1,onClick:r}=e||{},n=t?.key?` icon-grid-menu__button--${t.key}`:"",i=l.useId();return o.jsxs("div",{className:`icon-grid-menu__button-wrapper${n}`,children:[o.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":t?.key,onClick:a?void 0:r,"aria-pressed":a,"aria-labelledby":i,disabled:a,children:o.jsx(Pe,{icon:t.icon,label:t.label,className:"icon-grid-menu__button-icon",imgClassName:"icon-grid-menu__button-icon-image",maskClassName:"icon-grid-menu__button-icon-mask",svgClassName:"icon-grid-menu__button-icon-svg"})}),o.jsx("span",{id:i,className:"icon-grid-menu__button-label button-1",children:t.label})]})}function cb(e){const{categories:t=[],selected:a,onSelect:r,size:n="medium"}=e||{},i=a??(t&&t[0]?.key)??null,[s,c]=l.useState(i??null);l.useEffect(()=>{a!=null&&c(a)},[a]);const u=l.useRef(r),d=l.useRef(s),m=l.useRef(a!==void 0);l.useEffect(()=>{!m.current&&d.current&&typeof u.current=="function"&&u.current(d.current)},[]);const h=l.useCallback(p=>{const g=s===p?null:p;c(g),r?.(g)},[s,r]);return o.jsx("div",{className:`icon-grid-menu icon-grid-menu--${n}`,children:(t||[]).map(p=>o.jsx(mk,{category:p,isSelected:s===p.key,onClick:()=>h(p.key)},p.key))})}var bk=".ihabdevteam-core-scope .choice-chips{display:block;width:100%}.ihabdevteam-core-scope .choice-chips--medium{margin-bottom:60px}.ihabdevteam-core-scope .choice-chips--small{margin-bottom:var(--spacing-l)}.ihabdevteam-core-scope .choice-chips__list{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-s);justify-content:center;padding-bottom:6px}.ihabdevteam-core-scope .choice-chips__list::-webkit-scrollbar{height:8px}.ihabdevteam-core-scope .choice-chips__list::-webkit-scrollbar-thumb{background:rgba(0,0,0,.08);border-radius:var(--radius-sm)}.ihabdevteam-core-scope .choice-chips__button{background:var(--color-deepWhite)!important;border:1px solid var(--color-whiteLine)!important;border-radius:var(--radius-s)!important;color:var(--color-darkGray)!important;height:40px!important;padding:0 24px!important;transition:all .12s!important;white-space:nowrap}.ihabdevteam-core-scope .choice-chips__button:hover{border-color:var(--color-main)!important}.ihabdevteam-core-scope .choice-chips--small .choice-chips__button{height:32px!important;padding:0 16px!important}.ihabdevteam-core-scope .choice-chips--small .choice-chips__list{gap:var(--spacing-xs)}.ihabdevteam-core-scope .choice-chips__button.is-selected{animation:chip-sub-to-main .36s cubic-bezier(.4,0,.2,1) forwards;background:var(--color-main)!important;border:1px solid var(--color-main)!important;box-shadow:var(--shadow-dropdown);color:#fff!important}@keyframes chip-sub-to-main{0%{background-color:var(--color-sub)}to{background-color:var(--color-main)}}";Q(bk);function db({subs:e=[],selected:t,onSelect:a,size:r="medium"}){const n=r==="small"?32:40;return o.jsx("div",{className:`choice-chips choice-chips--${r}`,children:o.jsx("div",{className:"choice-chips__list",children:e.map(i=>o.jsx(ce,{size:n,type:"bar",label:i.label,selected:t===i.key,className:"choice-chips__button",onClick:()=>a?.(i.key)},i.key))})})}var gk=".ihabdevteam-core-scope .site-footer{background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;color:var(--color-gray);padding:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__top{align-items:flex-start;display:flex;gap:40px;justify-content:space-between}.ihabdevteam-core-scope .site-footer__brand{flex:0 0 220px;width:220px}.ihabdevteam-core-scope .site-footer__lead{color:var(--color-gray);text-align:left}.ihabdevteam-core-scope .site-footer__links{align-items:flex-start;display:flex;flex:1 1 auto;flex-wrap:wrap;gap:100px 10px;min-width:320px}.ihabdevteam-core-scope .site-footer__column{flex:0 0 160px;min-width:160px;text-align:left}.ihabdevteam-core-scope .site-footer__column-title{color:var(--color-lightGray)}.ihabdevteam-core-scope .footer-title{color:var(--color-lightGray);display:inline-block;font-size:13px;font-weight:600;line-height:20px;width:80px}.ihabdevteam-core-scope .site-footer__column ul{list-style:none;margin:10px 0 0;padding:0}.ihabdevteam-core-scope .site-footer__column li{margin-bottom:6px}.ihabdevteam-core-scope .footer-link,.ihabdevteam-core-scope .site-footer__column a{color:var(--color-lightGray);text-decoration:none}.ihabdevteam-core-scope .footer-link{align-items:center;display:inline-flex;font-size:13px;line-height:20px;min-height:24px;min-width:24px;transition:color .12s ease}.ihabdevteam-core-scope .footer-copyright,.ihabdevteam-core-scope .footer-meta{line-height:18px}.ihabdevteam-core-scope .footer-link:focus,.ihabdevteam-core-scope .footer-link:hover{color:var(--color-main);text-decoration:none}.ihabdevteam-core-scope .site-footer__rule{border:none;border-top:1px solid var(--color-darkWhite);margin:40px 0}.ihabdevteam-core-scope .site-footer__bottom{align-items:center;display:flex;gap:40px;justify-content:flex-start}.ihabdevteam-core-scope .site-footer__brand-compact{align-items:center;display:flex;gap:18px}.ihabdevteam-core-scope .site-footer__logo{height:52px}.ihabdevteam-core-scope .site-footer__bottom .site-footer__brand{align-items:center;display:flex;justify-content:center}.ihabdevteam-core-scope .site-footer__meta{color:var(--color-lightGray);text-align:left}.ihabdevteam-core-scope .site-footer__copyright{align-items:center;box-sizing:border-box;color:var(--color-lightGray);display:flex;justify-content:center;margin:var(--spacing-page) 0 0 0;text-align:center;width:100%}@media (max-width:1024px){.ihabdevteam-core-scope .site-footer__top{flex-direction:column;gap:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__brand{flex:0 0 auto;width:100%}.ihabdevteam-core-scope .site-footer__links{gap:20px 10px;margin:0;min-width:0;width:100%}.ihabdevteam-core-scope .site-footer__bottom{align-items:flex-start;flex-direction:column;gap:var(--spacing-page)}.ihabdevteam-core-scope .site-footer__meta{width:100%}.ihabdevteam-core-scope .site-footer__logo{height:50px}}@media (max-width:767px){.ihabdevteam-core-scope .site-footer__logo{height:48px}}";Q(gk);function ub({onTermsClick:e,onPrivacyClick:t,contact:a}={}){const r=a?.email??"support@ihab.co.kr",n=a?.tel??"031-380-3724",{t:i}=me.useTranslation();return o.jsx("footer",{className:"site-footer",children:o.jsxs("div",{className:"safearea",children:[o.jsxs("div",{className:"site-footer__top",children:[o.jsx("div",{className:"site-footer__brand",children:o.jsx("div",{className:"site-footer__lead h3",children:i("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
964
964
  \uC2E0\uB8B0\uB97C \uC313\uACE0
965
965
  \uD68C\uBCF5\uC744 \uB3D5\uC2B5\uB2C8\uB2E4.`).split(`
966
- `).map((s,c,u)=>o.jsxs(l.Fragment,{children:[s,c<u.length-1&&o.jsx("br",{})]},c))})}),o.jsxs("div",{className:"site-footer__links",children:[o.jsxs("div",{className:"site-footer__column",children:[o.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.site.title","\uC0AC\uC774\uD2B8")}),o.jsxs("ul",{children:[o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.malgwi","\uB9D0\uADC0")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/sound-localization",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.soundDirection","\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/vr-sound-localization",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.vrSoundDirection","VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/hearing-test-pro",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.hearingTest","\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C")})})]})]}),o.jsxs("div",{className:"site-footer__column",children:[o.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.sns.title","SNS")}),o.jsxs("ul",{children:[o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://blog.naver.com/ihab_official",target:"_blank",rel:"noopener noreferrer",children:i("footer.sns.naverBlog","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://www.youtube.com/@%EC%95%84%EC%9D%B4%ED%95%B4%EB%B8%8C-%EA%B3%B5%EC%8B%9D%EC%B1%84%EB%84%90",target:"_blank",rel:"noopener noreferrer",children:"Youtube"})})]})]}),o.jsxs("div",{className:"site-footer__column",children:[o.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.policy.title","\uC815\uCC45")}),o.jsxs("ul",{children:[o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"#",onClick:s=>{e&&(s.preventDefault(),e())},children:i("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"#",onClick:s=>{t&&(s.preventDefault(),t())},children:i("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),o.jsx("hr",{className:"site-footer__rule"}),o.jsxs("div",{className:"site-footer__bottom",children:[o.jsx("div",{className:"site-footer__brand",children:o.jsx("img",{src:Nl,alt:"IHAB",className:"site-footer__logo"})}),o.jsxs("div",{className:"site-footer__meta",children:[o.jsxs("div",{children:[o.jsx("span",{className:"footer-title",children:i("footer.ceo","\uB300\uD45C")}),o.jsx("span",{className:"footer-meta caption-1",children:i("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),o.jsxs("div",{children:[o.jsx("span",{className:"footer-title",children:i("footer.address","\uC8FC\uC18C")}),o.jsx("span",{className:"footer-meta caption-1",children:i("footer.addressValue","\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638")})]}),o.jsxs("div",{children:[o.jsx("span",{className:"footer-title",children:i("footer.support","\uACE0\uAC1D\uC13C\uD130")}),o.jsxs("span",{className:"footer-meta caption-1",children:[r," \xA0 ",n]})]})]})]}),o.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}var fk='.ihabdevteam-core-scope .landing-header{background:var(--landing-header-bg,var(--color-deepWhite));border-bottom:1px solid rgba(15,18,60,.05);border-bottom:1px solid var(--landing-header-border,rgba(15,18,60,.05));position:sticky;top:0;transform:translateZ(0);will-change:transform;z-index:500;z-index:var(--z-sticky,500)}.ihabdevteam-core-scope .landing-header__inner{align-items:center;display:flex;height:72px;height:var(--landing-header-height,72px);justify-content:space-between;position:relative}.ihabdevteam-core-scope .landing-header__brand{align-items:center;display:flex;flex:0 0 auto;margin-right:auto;text-decoration:none}.ihabdevteam-core-scope .landing-header__logo{display:block;height:40px;height:var(--landing-header-logo-height,40px);max-width:none;transform-origin:left center;transition:transform .3s cubic-bezier(.2,.9,.2,1.2),filter .3s;width:auto}.ihabdevteam-core-scope .landing-header__brand:hover .landing-header__logo{filter:brightness(1.08);transform:scale(1.05)}.ihabdevteam-core-scope .landing-header__links{align-items:center;color:var(--landing-header-link-color,var(--color-deepGray));display:flex;font-size:15px;font-weight:500;gap:36px;left:50%;position:absolute;transform:translateX(-50%)}.ihabdevteam-core-scope .landing-header__links a{color:inherit;padding:6px 0;position:relative;text-decoration:none;transition:color .2s}.ihabdevteam-core-scope .landing-header__links a:hover{color:var(--landing-header-link-hover,var(--color-main))}.ihabdevteam-core-scope .landing-header__links a:after{background:linear-gradient(90deg,var(--color-main),var(--color-sub));border-radius:1px;bottom:0;content:"";height:2px;left:0;position:absolute;right:100%;transition:right .35s cubic-bezier(.2,.7,.2,1)}.ihabdevteam-core-scope .landing-header__links a:hover:after{right:0}.ihabdevteam-core-scope .landing-header__actions{align-items:center;display:flex;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .landing-header__toggle{align-items:center;background:none;border:0;color:var(--landing-header-link-color,var(--color-deepGray));cursor:pointer;display:none;height:44px;justify-content:center;margin-right:-10px;width:44px}.ihabdevteam-core-scope .landing-header__burger{display:block;height:14px;position:relative;width:22px}.ihabdevteam-core-scope .landing-header__burger>span{background:currentColor;border-radius:1px;height:2px;inset-inline:0;position:absolute;transition:transform .2s cubic-bezier(.2,.7,.2,1),opacity .2s cubic-bezier(.2,.7,.2,1)}.ihabdevteam-core-scope .landing-header__burger>span:first-child{top:0}.ihabdevteam-core-scope .landing-header__burger>span:nth-child(2){top:6px}.ihabdevteam-core-scope .landing-header__burger>span:nth-child(3){top:12px}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:first-child{transform:translateY(6px) rotate(45deg)}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:nth-child(2){opacity:0}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.ihabdevteam-core-scope .landing-header__drawer{background:var(--landing-header-bg,var(--color-deepWhite));border-top:1px solid rgba(15,18,60,.05)}.ihabdevteam-core-scope .landing-header__drawer-item{display:block}.ihabdevteam-core-scope .landing-header__drawer-item a{align-items:center;color:var(--landing-header-link-color,var(--color-deepGray));display:flex;font-size:15px;font-weight:500;min-height:48px;text-decoration:none;transition:color .2s}.ihabdevteam-core-scope .landing-header__drawer-item a:hover,.ihabdevteam-core-scope .landing-header__drawer-item a[aria-current=page]{color:var(--landing-header-link-hover,var(--color-main))}@media (max-width:960px){.ihabdevteam-core-scope .landing-header__links{display:none}.ihabdevteam-core-scope .landing-header__toggle{display:flex}}@media (min-width:961px){.ihabdevteam-core-scope .landing-header__drawer{display:none}}';Q(fk);function pb({logo:e,logoAlt:t="",logoHref:a,links:r=[],actions:n,className:i,containerClassName:s,renderLink:c,menuLabel:u={open:"\uBA54\uB274 \uC5F4\uAE30",close:"\uBA54\uB274 \uB2EB\uAE30"}}){const[d,m]=l.useState(!1),h=s?`${s} landing-header__inner`:"landing-header__inner",p=(g,v)=>c?c(g,{onClick:v}):o.jsx("a",{href:g.href,onClick:v,"aria-current":g.current?"page":void 0,children:g.label});return o.jsxs("header",{className:i?`landing-header ${i}`:"landing-header",children:[o.jsxs("div",{className:h,children:[e!=null&&(()=>{const g=typeof e=="string"?o.jsx("img",{src:e,alt:t,className:"landing-header__logo"}):e;return a?o.jsx("a",{href:a,className:"landing-header__brand",children:g}):o.jsx("div",{className:"landing-header__brand",children:g})})(),r.length>0&&o.jsx("nav",{className:"landing-header__links",children:r.map(g=>o.jsx("span",{children:p(g)},g.href))}),o.jsxs("div",{className:"landing-header__actions",children:[n,r.length>0&&o.jsx("button",{type:"button",onClick:()=>m(g=>!g),"aria-expanded":d,"aria-controls":"landing-header-drawer","aria-label":d?u.close:u.open,className:d?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:o.jsxs("span",{className:"landing-header__burger",children:[o.jsx("span",{}),o.jsx("span",{}),o.jsx("span",{})]})})]})]}),r.length>0&&o.jsx("nav",{id:"landing-header-drawer",hidden:!d,className:"landing-header__drawer",children:o.jsx("div",{className:s??void 0,children:r.map(g=>o.jsx("span",{className:"landing-header__drawer-item",children:p(g,()=>m(!1))},g.href))})})]})}var vk=".ihabdevteam-core-scope .bottom-sticky{animation:bottom-sticky-in .4s cubic-bezier(.2,.9,.2,1) both;bottom:24px;bottom:var(--bottom-sticky-offset,24px);left:50%;max-width:680px;max-width:var(--bottom-sticky-max-width,680px);position:fixed;transform:translateX(-50%);width:calc(100% - 48px);z-index:500;z-index:var(--z-sticky,500)}@keyframes bottom-sticky-in{0%{opacity:0;transform:translateX(-50%) translateY(16px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.ihabdevteam-core-scope .bottom-sticky__inner{align-items:center;background:var(--bottom-sticky-bg,var(--color-pureWhite));border-radius:20px;border-radius:var(--radius-m,20px);box-shadow:0 8px 40px rgba(15,18,60,.18),0 2px 8px rgba(15,18,60,.06);display:flex;gap:16px;gap:var(--spacing-m,16px);justify-content:space-between;padding:12px 12px 12px 24px;transition:box-shadow .2s,transform .2s}.ihabdevteam-core-scope .bottom-sticky__inner--clickable{cursor:pointer}.ihabdevteam-core-scope .bottom-sticky__inner--clickable:hover{border:1px solid var(--color-main);box-shadow:0 16px 56px color-mix(in srgb,var(--color-main) 30%,transparent),0 4px 12px color-mix(in srgb,var(--color-main) 15%,transparent);transform:translateY(-4px)}.ihabdevteam-core-scope .bottom-sticky__content{align-items:center;display:flex;flex:1;gap:12px;gap:var(--spacing-s,12px);justify-content:center}.ihabdevteam-core-scope .bottom-sticky__tagline{align-items:center;color:var(--color-black);display:flex;gap:0;margin:0;white-space:nowrap}.ihabdevteam-core-scope .bottom-sticky__tagline-highlight{background:linear-gradient(90deg,var(--color-main),var(--color-sub),var(--color-infoLink));-webkit-background-clip:text;background-clip:text;color:transparent;display:inline}.ihabdevteam-core-scope .bottom-sticky__tagline-part{align-items:center;display:flex;white-space:nowrap}.ihabdevteam-core-scope .bottom-sticky__tagline-logo{display:block;height:32px;width:auto}@media (max-width:600px){.ihabdevteam-core-scope .bottom-sticky{bottom:16px;bottom:var(--bottom-sticky-offset,16px);width:calc(100% - 32px)}.ihabdevteam-core-scope .bottom-sticky__inner{align-items:stretch;flex-direction:column;gap:12px;gap:var(--spacing-s,12px);padding:16px;padding:var(--spacing-m,16px)}.ihabdevteam-core-scope .bottom-sticky__content{flex:none;gap:6px;justify-content:center}.ihabdevteam-core-scope .bottom-sticky__tagline{flex-wrap:wrap;justify-content:center;text-align:center;white-space:normal}.ihabdevteam-core-scope .bottom-sticky__tagline-logo{height:26px}}";Q(vk);function hb({children:e,action:t,onClick:a,className:r}){const n=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return o.jsx("div",{className:r?`bottom-sticky ${r}`:"bottom-sticky",children:o.jsxs("div",{className:n,onClick:a,children:[o.jsx("div",{className:"bottom-sticky__content",children:e}),t]})})}const rc=9,yk=e=>Math.round(Math.min(rc,Math.max(0,e))/rc*100),xk=e=>e/100*rc,mb={enabled:!0,type:"defaultNoise",level:4.5,speed:1,mainVolume:1,mainSpeed:1},bb=l.createContext(null);function nc(){return l.useContext(bb)}const ic=e=>`${Xn()}/${e}`,gb=e=>Array.from({length:10},(t,a)=>ic(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),Bn={get defaultNoise(){return ic("noise1.mp3")},get street(){return gb("noise2")},get restaurant(){return gb("noise3")},get buzz(){return ic("noise4.mp3")}};function Ck(e){const t=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return Bn.defaultNoise;case"street":return Bn.street[t];case"restaurant":return Bn.restaurant[t];case"buzz":return Bn.buzz;default:return null}}function _k({noisePlayer:e,audioRef:t,playbackStateRef:a}){const r=l.useRef(e?.registerAnalyser);r.current=e?.registerAnalyser;const n=l.useRef(null),[i,s]=l.useState(null),c=l.useRef(null),u=l.useRef(null),d=l.useRef(null),m=l.useRef(0),h=l.useRef(null),p=l.useCallback(()=>{d.current!==null&&(cancelAnimationFrame(d.current),d.current=null),h.current!==null&&(clearTimeout(h.current),h.current=null)},[]),g=l.useCallback((y,f=250)=>{const x=n.current;if(!x||!x.src)return;m.current+=1,p();try{Wo(),r.current?.("noise",Ho(x))}catch{}const _=x.paused?0:x.volume;x.paused&&(x.volume=0),x.play().catch(()=>{});const C=performance.now(),A=()=>{const w=Math.min(1,(performance.now()-C)/f);try{x.volume=Math.max(0,Math.min(1,_+(y-_)*w))}catch{}w<1?d.current=requestAnimationFrame(A):d.current=null};d.current=requestAnimationFrame(A)},[p]),v=l.useCallback((y=250,f)=>{const x=n.current;if(!x||x.paused){f?.();return}const _=++m.current;p();const C=performance.now(),A=x.volume,w=()=>{const S=Math.min(1,(performance.now()-C)/y);try{x.volume=Math.max(0,A*(1-S))}catch{}if(S<1)d.current=requestAnimationFrame(w);else{d.current=null,h.current!==null&&(clearTimeout(h.current),h.current=null);try{x.pause()}catch{}f?.()}};d.current=requestAnimationFrame(w),h.current=setTimeout(()=>{if(h.current=null,m.current===_){d.current!==null&&(cancelAnimationFrame(d.current),d.current=null);try{x.paused||(x.volume=0,x.pause(),f?.())}catch{}}},y+150)},[p]);l.useEffect(()=>{const y=document.createElement("audio");return y.loop=!0,y.crossOrigin="anonymous",n.current=y,()=>{p();try{y.pause(),y.src=""}catch{}n.current=null}},[p]);const b=!!e?.settings.enabled&&(e?.settings.level??0)>0;return l.useEffect(()=>{if(!b)return;let y=0;const f=setInterval(()=>{const x=n.current;if(!x||x.paused){y=0;return}const _=t.current;if(_&&!_.paused&&!_.ended||a.current==="playing"){y=0;return}y+=1,y>=2&&(y=0,v())},400);return()=>clearInterval(f)},[v,b,t,a]),l.useEffect(()=>{const y=()=>{if(!document.hidden)return;const f=n.current;if(f&&!f.paused){p();try{f.pause()}catch{}}};return document.addEventListener("visibilitychange",y),()=>document.removeEventListener("visibilitychange",y)},[p]),l.useEffect(()=>{u.current=e?{enabled:e.settings.enabled,level:e.settings.level,type:e.settings.type}:null},[e,e?.settings.enabled,e?.settings.level,e?.settings.type]),l.useEffect(()=>{const y=e?.settings,f=n.current;if(!f)return;if(!y||!y.enabled||y.level===0){v();return}const x=Math.min(1,y.level/9);if(c.current!==y.type){const _=Ck(y.type);_&&(c.current=y.type,s(_),v(150,()=>{f.src=_,f.load();const C=t.current;C&&!C.paused&&f.addEventListener("canplay",function A(){f.removeEventListener("canplay",A);const w=t.current;w&&!w.paused&&!w.ended&&g(x)})}))}else{const _=t.current,C=!!_&&!_.paused&&!_.ended;if(C&&f.paused&&f.src)g(x);else if(!f.paused)if(!C)v();else{p();const A=f.volume,w=performance.now(),S=()=>{const D=Math.min(1,(performance.now()-w)/150);try{f.volume=A+(x-A)*D}catch{}D<1?d.current=requestAnimationFrame(S):d.current=null};d.current=requestAnimationFrame(S)}}},[e?.settings,e?.settings.enabled,e?.settings.level,e?.settings.type,p,g,v,t]),l.useEffect(()=>{const y=n.current;if(y)try{y.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:n,activeNoiseUrl:i,noiseSettingsRef:u,cancelNoiseFade:p,fadeInNoise:g,fadeOutNoise:v}}function wk({ttsText:e,playbackRate:t,mainVolume:a,fillRef:r,waveProgressRef:n,setProgress:i,setPlaybackState:s,setStateLocal:c,fadeInNoise:u,fadeOutNoise:d,noiseSettingsRef:m,onDoneRef:h,handleEndRef:p}){const g=l.useRef(null),v=l.useRef(0),b=l.useRef(null);l.useEffect(()=>()=>{try{if(b.current&&(cancelAnimationFrame(b.current),b.current=null),window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}}catch{}},[]);const y=(_,C=1)=>{try{const A=(_||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(_||"").length);return Math.max(700,Math.round(A*300/Math.max(.25,C)))}catch{return 1200}},f=l.useCallback(_=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof h.current=="function"&&h.current(!0)}catch{}return}const C=window.speechSynthesis;try{try{C.cancel()}catch{}const A=_??e,w=(Array.isArray(A)?A[0]??"":A)||"",S=new SpeechSynthesisUtterance(w);try{S.rate=Math.max(.3,Math.min(3,t))}catch{}try{S.volume=Math.max(0,Math.min(1,a))}catch{}v.current=y(w,S.rate||1),g.current=performance.now(),i(0),s("playing"),c("playMode");const D=m.current;D?.enabled&&(D?.level??0)>0&&u(D.level/9);const T=()=>{try{const E=g.current||performance.now(),W=performance.now()-E,M=v.current||1200,k=Math.min(1,W/M);i(k);try{r.current&&(r.current.style.left=`${k*100}%`),n.current&&n.current.style.setProperty("--progress",String(k))}catch{}k<1&&(b.current=requestAnimationFrame(T))}catch{}};S.onend=()=>{try{b.current&&(cancelAnimationFrame(b.current),b.current=null),i(1),s("stopped");try{p.current?.()}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}}catch{}},S.onstart=()=>{try{b.current&&(cancelAnimationFrame(b.current),b.current=null),b.current=requestAnimationFrame(T)}catch{}};try{C.speak(S)}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}},[e,t,a,u,r,n,i,s,c,m,h,p]),x=l.useCallback(()=>{try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}b.current&&(cancelAnimationFrame(b.current),b.current=null),d(),g.current=null}catch{}s("stopped"),c("active"),i(0)},[d,s,c,i]);return{startTTS:f,stopTTS:x}}var kk='.ihabdevteam-core-scope .audio-player{align-items:center;display:flex;flex-direction:column;width:100%}.ihabdevteam-core-scope .audio-player__no-waveform{align-items:center;align-self:flex-start;color:var(--color-lightGray);display:flex;gap:4px;margin:6px 0 0}.ihabdevteam-core-scope .audio-player__no-waveform .iconRenderer-icon{align-items:center;display:inline-flex}.ihabdevteam-core-scope .audio-player__panel{align-items:center;background:linear-gradient(90deg,var(--color-main),var(--color-sub));background:linear-gradient(var(--angle,90deg),var(--color-main),var(--color-sub));border-radius:var(--radius-m);display:flex;height:120px;position:relative;width:100%}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__panel{background:var(--color-darkWhite);border:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__buttons,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__play,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__wave{pointer-events:none}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__buttons .button,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__play .button{opacity:.7}.ihabdevteam-core-scope .audio-player__play{align-items:center;bottom:0;display:flex;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:relative;right:0;top:0;transition:opacity .16s ease,transform .16s ease;width:100%;z-index:10}.ihabdevteam-core-scope .audio-player__play.is-visible{opacity:1;pointer-events:auto}.ihabdevteam-core-scope .audio-player__panel>.button{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .16s ease,transform .16s ease;will-change:opacity,transform;z-index:35}.ihabdevteam-core-scope .audio-player__button{align-items:center;background:transparent;border:0;cursor:pointer;display:flex;inset:0;justify-content:center;padding:0;position:absolute;z-index:35}.ihabdevteam-core-scope .audio-player__button-triangle-wrap{align-items:center;display:flex;height:90px;justify-content:center;transition:transform .32s cubic-bezier(.2,.7,.2,1);width:90px}.ihabdevteam-core-scope .audio-player__button:hover .audio-player__button-triangle-wrap{transform:scale(1.18)}.ihabdevteam-core-scope .audio-player__button:active .audio-player__button-triangle-wrap{transform:scale(1.06)}.ihabdevteam-core-scope .audio-player__button-triangle{height:100%;width:100%}.ihabdevteam-core-scope .audio-player__button-triangle path{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__button{cursor:default;opacity:.5;pointer-events:none}.ihabdevteam-core-scope .audio-player__slider{align-items:center;bottom:50px;box-sizing:border-box;display:flex;left:20px;pointer-events:none;position:absolute;right:20px;top:20px}.ihabdevteam-core-scope .audio-player__buttons{align-items:center;border-radius:999px;bottom:10px;box-sizing:border-box;display:flex;gap:0;height:28px;justify-content:center;left:0;pointer-events:auto;position:absolute;right:0;z-index:40}.ihabdevteam-core-scope .audio-player__source-buttons{align-items:center;border:1px solid var(--color-white-a30);border-radius:var(--radius-m);display:inline-flex;justify-content:center;overflow:visible}.ihabdevteam-core-scope .audio-player__source-buttons .button{flex:0 0 auto;max-width:60px}.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\B2E4\\C74C],.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\C774\\C804],.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\C815\\C9C0]{display:none}.ihabdevteam-core-scope .audio-player__buttons>.button{align-items:center;display:inline-flex;justify-content:center;margin:0;width:auto}.ihabdevteam-core-scope .audio-player__fill{backface-visibility:hidden;background:var(--color-pureWhite);border-radius:var(--radius-sm);height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) scaleY(0);transform-origin:center center;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .16s ease;width:8px;will-change:transform,opacity;z-index:70}.ihabdevteam-core-scope .audio-player__fill.is-visible{opacity:1}.ihabdevteam-core-scope .audio-player__fill.is-expanded{transform:translateX(-50%) translateY(-50%) scaleY(1)}.ihabdevteam-core-scope .audio-player__fill.is-paused{transition:opacity .16s ease}.ihabdevteam-core-scope .audio-player__fill.is-out{animation:audio-player-fill-out .28s cubic-bezier(.2,.8,.2,1) forwards}@keyframes audio-player-fill-out{0%{opacity:1;transform:translateX(-50%) translateY(-50%) scaleY(1)}to{opacity:0;transform:translateX(-50%) translateY(-50%) scaleY(0)}}.ihabdevteam-core-scope .audio-player__loading{align-items:center;background:transparent;border-radius:var(--radius-sm);color:rgba(0,0,0,.85);color:var(--audio-loading-foreground,rgba(0,0,0,.85));display:inline-flex;font-size:13px;gap:var(--spacing-xs);left:50%;padding:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:999}.ihabdevteam-core-scope .audio-player__debug{align-items:center;background:hsla(0,0%,100%,.06);border-radius:18px;color:#fff;display:flex;font-size:12px;gap:8px;padding:6px 10px;pointer-events:none;position:absolute;right:12px;top:12px}.ihabdevteam-core-scope .audio-player__debug-dot{border-radius:10px;box-shadow:0 0 6px rgba(0,0,0,.4);display:inline-block;height:10px;width:10px}.ihabdevteam-core-scope .audio-player__loading .audio-player__loading-text,.ihabdevteam-core-scope .audio-player__panel.is-loading .audio-player__loading-text{display:none}.ihabdevteam-core-scope .audio-player__loading-spinner{animation:audio-player-spinner .9s linear infinite;border:4px solid hsla(0,0%,100%,.2);border-radius:50%;border-top-color:#fff;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25));height:40px;width:40px}@keyframes audio-player-spinner{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .audio-player__wave{height:90%;position:absolute}.ihabdevteam-core-scope .audio-player__wave,.ihabdevteam-core-scope .audio-player__wave-inner{align-items:center;display:flex;justify-content:center;pointer-events:none;width:100%;z-index:60}.ihabdevteam-core-scope .audio-player__wave-inner{cursor:default;gap:3px;gap:var(--bar-gap,3px);height:100%;margin:0 auto;padding:0}.ihabdevteam-core-scope .audio-player__wave-inner:not(.is-ready) .audio-player__bar:after{opacity:0}.ihabdevteam-core-scope .audio-player__wave-inner.is-ready .audio-player__bar:after{animation:wave-bar-in .35s cubic-bezier(.22,.9,.3,1) both;animation-delay:0ms;animation-delay:calc(var(--i, 0)*2ms)}@keyframes wave-bar-in{0%{opacity:0;transform:translateY(-50%) scaleY(.05)}to{opacity:1;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15))}}.ihabdevteam-core-scope .audio-player__wave-inner.is-ready .audio-player__bar--hidden:after,.ihabdevteam-core-scope .audio-player__wave-noise.is-ready .audio-player__bar--hidden:after{animation:none;opacity:0}.ihabdevteam-core-scope .audio-player__wave-played{bottom:0;clip-path:inset(0 100% 0 0);clip-path:inset(0 calc((1 - var(--progress, 0))*100%) 0 0);left:0;pointer-events:none;position:absolute;right:0;top:0}.ihabdevteam-core-scope .audio-player__bar{box-sizing:border-box;flex:0 0 3px;flex:0 0 var(--bar-w,3px);height:100%;position:relative}.ihabdevteam-core-scope .audio-player__wave-unplayed .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) 0);border-radius:999px;content:"";height:100%;left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15));transform-origin:center center;z-index:61}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-unplayed .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-played .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) 0);border-radius:999px;content:"";height:100%;left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15));transform-origin:center center;z-index:62}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-played .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-noise{align-items:center;bottom:0;display:flex;gap:3px;gap:var(--bar-gap,3px);justify-content:center;left:0;margin:0 auto;pointer-events:none;position:absolute;right:0;top:0;width:100%;z-index:58}.ihabdevteam-core-scope .audio-player__wave-noise .audio-player__bar:after{background:color-mix(in srgb,var(--color-deepMain),var(--color-deepSub) 0);border-radius:999px;content:"";height:100%;left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.1);transform:translateY(-50%) scaleY(var(--val,.1));transform-origin:center center;z-index:58}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-noise .audio-player__bar:after{background:color-mix(in srgb,var(--color-deepMain),var(--color-deepSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-noise:not(.is-ready) .audio-player__bar:after{opacity:0}.ihabdevteam-core-scope .audio-player__wave-noise.is-ready .audio-player__bar:after{animation:wave-bar-in .35s cubic-bezier(.22,.9,.3,1) both;animation-delay:0ms;animation-delay:calc(var(--i, 0)*2ms)}.ihabdevteam-core-scope .audio-player__segments{align-items:center;display:flex;gap:3px;gap:var(--bar-gap,3px);height:100%;position:relative;width:100%}.ihabdevteam-core-scope .audio-player__segment{align-items:center;cursor:pointer;display:flex;height:100%;justify-content:center;padding:10px 0;pointer-events:auto;position:relative}.ihabdevteam-core-scope .audio-player__segment-inner{align-items:center;display:flex;gap:3px;gap:var(--bar-gap,3px);height:100%;justify-content:center;width:100%}';Q(kk);const fb=4;async function Sk(e,t,a){try{const r=window.AudioContext||window.webkitAudioContext,n=new r,i=await n.decodeAudioData(e.slice(0)),s=i.numberOfChannels>0?i.getChannelData(0):null;if(!s)return null;const c=a&&a>0?Math.min(s.length,Math.floor(a*i.sampleRate)):s.length,u=Math.max(t,c),d=Math.floor(u/t)||1,m=new Array(t).fill(0).map((h,p)=>{const g=p*d,v=Math.min(g+d,u);let b=0;for(let y=g;y<v;y++){const f=Math.abs(s[y]);f>b&&(b=f)}return b});try{n.close&&n.close()}catch{}return m}catch{return null}}async function vb(e,t,a){try{const r=await(await fetch(e)).arrayBuffer();return await Sk(r,t,a)}catch(r){try{const n=Vr(r)}catch{}return null}}function Ak(e){const{src:t,segments:a,progress:r=0,waveProgressRef:n,noiseSrc:i,noiseLevel:s=0,noiseSpeed:c=1,totalDuration:u=0,mainVolume:d=1,onReadyChange:m,showSoundWaveForm:h=!0}=e,p=l.useRef(null),g=l.useRef(null),[v,b]=l.useState(null),[y,f]=l.useState(!1),[x,_]=l.useState(null),[C,A]=l.useState(2),[w,S]=l.useState(0),[D,T]=l.useState(null),[E,W]=l.useState(!1),M=3,k=3,N=1,j=300,F=l.useRef(0),te=l.useCallback(async(Y,J)=>{const ue=++F.current,pe=()=>F.current===ue;try{if(f(!1),!Y){pe()&&b(null);return}let ae=J;if(!ae)try{for(let De=0;De<4&&!(p.current||g.current);De++)await new Promise(Ie=>requestAnimationFrame(Ie));await new Promise(De=>requestAnimationFrame(De));const ce=p.current,xe=g&&g.current?g.current:ce?ce.closest(".audio-player__wave"):null,Se=xe?xe.getBoundingClientRect():ce?ce.getBoundingClientRect():null,Ae=Se?Math.max(100,Se.width):320,P=Se?Se.height:0;P>0&&S(P),ae=Math.max(N,Math.min(j,Math.floor((Ae+k)/(M+k))));const oe=ae*M,re=Math.max(0,ae-1),Ce=re>0?(Ae-oe)/re:k;A(Math.max(0,Ce))}catch{ae=120}const X=await vb(Y,ae);if(!pe())return;if(!X){b(null),f(!1);return}b(X),_(ae),f(!0)}catch{if(!pe())return;b(null),f(!1)}},[f,b,S,A,_]);l.useEffect(()=>{const Y=a&&a[0]&&a[0].src||t||a&&a.length===1&&a[0]&&a[0].src;te(typeof Y=="string"?Y:void 0).catch(()=>{}),W(!1)},[t,a,te]),l.useEffect(()=>{let Y=!1;if(!i||!x){T(null);return}const J=u>0?u*(c||1):void 0;return vb(i,x,J).then(ue=>{Y||T(ue)}).catch(()=>{Y||T(null)}),()=>{Y=!0}},[i,x,u,c]);const Z=Math.max(0,Math.min(1,d)),ee=l.useMemo(()=>v&&v.length&&Math.max(...v)||1,[v]),L=x||40,R=l.useMemo(()=>Array.from({length:L}).map((Y,J)=>{const ue=v&&v[J]!=null?v[J]:null,pe=ue==null?null:Math.min(1,ue/ee*Z),ae=pe!=null&&w>0&&pe*w<=fb,X=pe==null?.15:ae?0:pe,ce=L>1?J/(L-1):0;return o.jsx("div",{className:ae?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":X,"--i":J,"--mix":ce}},J)}),[L,v,ee,Z,w]),O={"--progress":String(Math.max(0,Math.min(1,r)))},H={"--bar-gap":`${C}px`},$=Math.max(0,Math.min(9,s))/9,q=y&&(i?!!D:!0);l.useEffect(()=>{q&&W(!0)},[q]);const I=E?y:q;l.useEffect(()=>{m?.(I)},[I,m]);const G=x||40,z=l.useMemo(()=>Array.from({length:G}).map((Y,J)=>{const ue=D&&D[J]!=null?D[J]:null,pe=ue==null?0:Math.min(1,ue/ee*$),ae=w>0&&pe*w<=fb,X=ae?0:pe,ce=G>1?J/(G-1):0;return o.jsx("div",{className:ae?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":X,"--i":J,"--mix":ce}},J)}),[G,D,ee,$,w]);return o.jsxs("div",{className:"audio-player__wave",ref:g,style:H,children:[i&&o.jsx("div",{className:`audio-player__wave-noise ${q?"is-ready":""}`,"aria-hidden":"true",children:z}),h&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${I?"is-ready":""}`,ref:p,children:R}),o.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${I?"is-ready":""}`,ref:n,style:O,children:R})]})]})}const Tk={idle:"\uB300\uAE30",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD"};function sc(e,t){return new Promise((a,r)=>{const n=document.createElement("audio");let i=!1;const s=()=>{try{n.src=""}catch{}},c=()=>{if(i)return;i=!0;const d=isFinite(n.duration)&&n.duration||0;s(),a(d)},u=d=>{i||(i=!0,s(),t.rejectOnError?r(new Error(d)):a(0))};n.addEventListener("loadedmetadata",c),n.addEventListener("error",()=>u("audio load failed")),setTimeout(()=>u("audio load timeout"),t.timeoutMs),n.src=e})}const Bk=2e3;function yb(e,t=Bk){return new Promise(a=>{let r=!1;const n=()=>{r||(r=!0,a())};e.addEventListener("canplay",n,{once:!0}),e.addEventListener("error",n,{once:!0}),setTimeout(n,t)})}function Nk({showSoundWaveForm:e,showNoiseWaveForm:t,timeoutMs:a=2500}){const r=l.useRef(!1),n=l.useRef([]),i=l.useCallback(u=>{if(r.current=u,!u||!n.current.length)return;const d=n.current;n.current=[];for(const m of d)m()},[]),s=l.useCallback(()=>{r.current=!1},[]),c=l.useCallback(()=>!e&&!t||r.current?Promise.resolve():new Promise(u=>{const d=setTimeout(u,a);n.current.push(()=>{clearTimeout(d),u()})}),[e,t,a]);return l.useEffect(()=>()=>{const u=n.current;n.current=[];for(const d of u)d()},[]),{onReadyChange:i,waitForReady:c,markNotReady:s}}function Dk(){const e=l.useRef([]),t=l.useCallback(n=>(e.current.push(n),n),[]),a=l.useCallback(n=>{const i=new Set([...n].filter(Boolean));e.current=e.current.filter(s=>{if(i.has(s))return!0;try{URL.revokeObjectURL(s)}catch{}return!1})},[]),r=l.useCallback(()=>{a([])},[a]);return l.useEffect(()=>()=>{for(const n of e.current)try{URL.revokeObjectURL(n)}catch{}e.current=[]},[]),{track:t,keepOnly:a,revokeAll:r}}function Ek({offsetY:e=8}={}){const t=l.useRef(null),[a,r]=l.useState(null),n=l.useCallback(()=>r(null),[]),i=l.useCallback(()=>{try{const s=t.current?.getBoundingClientRect();if(!s)return;r({left:s.left,right:s.right,width:s.width,height:s.height,x:s.x,top:s.top+e,bottom:s.bottom+e,y:s.y+e,toJSON:s.toJSON.bind(s)})}catch{}},[e]);return l.useEffect(()=>{if(a)return document.addEventListener("mousedown",n),()=>document.removeEventListener("mousedown",n)},[a,n]),{ref:t,rect:a,show:i,hide:n}}function jk({currentTime:e,sources:t,index:a,audioDuration:r}){const n=a||0,i=Array.isArray(t)&&t.length>0?t[n]:void 0,s=i?i.duration||r||0:r||0;if(!(s>0))return 0;const c=Number.isFinite(e)?e:0;return Math.max(0,Math.min(1,c/s))}function Lk(e,t){if(!Array.isArray(e))return null;const a=t||0;return a<e.length-1?a+1:null}function Mk({ended:e,completedByEnd:t}){return!!e||!!t}function Pk(e){return e.map((t,a)=>({src:t.src,label:String(a+1),color:void 0,duration:t.duration||0}))}function Rk(e){return e.reduce((t,a)=>t+(a.duration||0),0)}function $k(e,t,a){const r=Array.isArray(e)?e:e?[e]:[],n=[];for(const i of r)if(i){if(typeof i=="object"&&i!==null&&"src"in i&&i.src){const s=i;n.push({code:s.code??null,src:s.src});continue}if(typeof i=="string"&&(i.startsWith("http")||i.includes("/"))){n.push({code:null,src:i});continue}if(typeof i=="string"||typeof i=="number"){const s=String(i),c=a(s,t);c&&n.push({code:s,resolvedPath:c})}}return n}function zk({audioRef:e,fillRef:t,waveProgressRef:a,sourcesRef:r,currentIndexRef:n}){const i=l.useRef(null),s=l.useCallback(()=>{i.current!==null&&(cancelAnimationFrame(i.current),i.current=null)},[]),c=l.useCallback(()=>{if(i.current!==null)return;const d=()=>{try{const m=e.current,h=jk({currentTime:m&&typeof m.currentTime=="number"?m.currentTime:0,sources:r.current,index:n.current,audioDuration:m&&m.duration?m.duration:0});try{t.current&&(t.current.style.left=`${h*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(h))}catch{}}catch{}i.current=requestAnimationFrame(d)};i.current=requestAnimationFrame(d)},[e,t,a,r,n]),u=l.useCallback(d=>{s();try{t.current&&(t.current.style.left=`${d*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(d))}catch{}},[s,t,a]);return l.useEffect(()=>s,[s]),{start:c,stop:s,settleTo:u}}function xr({btnLabel:e,soundSrc:t,bucketPath:a,onDone:r,disabled:n=!1,ttsText:i=null,className:s,showSoundWaveForm:c=!0,showNoiseWaveForm:u=!0}){const{t:d}=me.useTranslation(),m=e,h=nc(),p=l.useRef(h?.registerAnalyser);l.useEffect(()=>{p.current=h?.registerAnalyser});const g=l.useRef(null),v=l.useRef(null),b=l.useRef(null),y=Dk(),f=l.useRef(null),x=l.useRef(!1),_=l.useRef(0),C=l.useRef(null),{ref:A,rect:w,show:S,hide:D}=Ek();l.useEffect(()=>()=>{p.current?.("main",null),p.current?.("noise",null)},[]);const[T,E]=l.useState(!1),[W,M]=l.useState("idle"),[k,N]=l.useState("stopped"),j=l.useRef("stopped");l.useEffect(()=>{j.current=k},[k]);const[F,te]=l.useState(0),[Z,ee]=l.useState("active"),[L,R]=l.useState(null),[O,H]=l.useState(null),[$,q]=l.useState(0),[I,G]=l.useState(!1),[z,Y]=l.useState(0),J=h?.playbackRate??1,ue=h?.mainVolume??1,[pe,ae]=l.useState("idle"),[X,ce]=l.useState(""),[xe]=l.useState("top"),Se=l.useRef(null),Ae=l.useRef(0),P=l.useRef(null),{start:oe,stop:re,settleTo:Ce}=zk({audioRef:g,fillRef:v,waveProgressRef:P,sourcesRef:Se,currentIndexRef:Ae}),{onReadyChange:De,waitForReady:Ie,markNotReady:Oe}=Nk({showSoundWaveForm:c,showNoiseWaveForm:u}),Fe=l.useRef(null),Qe=l.useRef(n),Re=l.useRef(r),Ge=l.useRef(null),We=l.useRef(!1),[be,at]=l.useState(!1),He=l.useCallback(U=>{We.current=U,at(U)},[]),Le=l.useRef(null),{activeNoiseUrl:Ue,noiseSettingsRef:Dt,fadeInNoise:Ke,fadeOutNoise:Ye}=_k({noisePlayer:h,audioRef:g,playbackStateRef:j}),{startTTS:ut,stopTTS:je}=wk({ttsText:i,playbackRate:J,mainVolume:ue,fillRef:v,waveProgressRef:P,setProgress:te,setPlaybackState:N,setStateLocal:ee,fadeInNoise:Ke,fadeOutNoise:Ye,noiseSettingsRef:Dt,onDoneRef:Re,handleEndRef:Le}),rt=Array.isArray(t)?t.filter(Boolean):t?[t]:[],Je=(!rt||rt.length===0)&&!!i,$e=Array.isArray(L)&&L.length>0?L:Array.isArray(O)&&O.length>0?O:null,Ze=Math.max(Array.isArray($e)?$e.length:0,rt.length),et=l.useCallback(async(U,ie=3,ve=50)=>{for(let we=0;we<ie;we++)try{return await U.play(),!0}catch(ke){if((ke instanceof Error||typeof ke=="object"&&ke&&"name"in ke?ke.name:void 0)==="AbortError"){await new Promise(Me=>setTimeout(Me,ve));continue}try{ce(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}try{ce(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[d]),yt=l.useCallback(()=>{const U=g.current;if(!U)return;const ie=()=>{N("playing"),ee("playMode"),G(!0),oe();try{Wo(),p.current?.("main",Ho(U))}catch{}const ke=Dt.current;ke?.enabled&&(ke?.level??0)>0&&Ke(ke.level/9)},ve=()=>{Mk({ended:!!U?.ended,completedByEnd:We.current})||(N("paused"),re(),Ye())},we=()=>{try{const ke=Se.current,Me=Lk(ke,Ae.current);if(Me!==null){Ae.current=Me,q(Me),G(!0);const nt=ke?.[Me]&&ke[Me].src;if(nt&&U){U.src=nt,U.load(),et(U).catch(()=>{});return}}}catch{}N("stopped"),te(1);try{if(U)try{U.currentTime=0}catch{}}catch{}re(),G(!1),Ye();try{!Qe.current&&Le.current&&Le.current()}catch{}};return U.addEventListener("play",ie),U.addEventListener("pause",ve),U.addEventListener("ended",we),()=>{try{U.removeEventListener("play",ie),U.removeEventListener("pause",ve),U.removeEventListener("ended",we),re()}catch{}}},[Ke,Ye,et,Dt,oe,re]);l.useEffect(()=>yt(),[yt]),l.useEffect(()=>{Qe.current=n},[n]),l.useEffect(()=>{Re.current=r},[r]),l.useEffect(()=>{if(n||Z!=="active")return;const U=C.current;if(!U)return;let ie=null;const ve=requestAnimationFrame(()=>{try{const we=U.getTotalLength();if(!we)return;const ke=we*.2;U.style.strokeDasharray=`${we-ke} ${ke}`;const Me="triFlow_"+Math.random().toString(36).slice(2);ie=document.createElement("style"),ie.textContent=`@keyframes ${Me}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${we}}}`,document.head.appendChild(ie),U.style.animation=`${Me} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(ve),ie?.remove()}},[Z,n]),l.useEffect(()=>{Se.current=L},[L]),l.useEffect(()=>{Ae.current=$},[$]),l.useEffect(()=>{const U=b.current,ie=f.current;if(!U||!ie)return;let ve=null;const we=32,ke=60,Me=()=>{try{const ct=Array.from(U.querySelectorAll(":scope > .button"));let de=0;ct.forEach(Zt=>{if(Zt===ie)return;const Do=Zt.getBoundingClientRect();de+=Do.width});const Te=U.getBoundingClientRect().width,tt=Math.max(0,Math.floor(Te-de-8)),xt=Ze;if(!xt||tt<=0){Array.from(ie.children).forEach(Zt=>{try{Zt.style.width=""}catch{}});return}let Ct=Math.floor(tt/xt);Ct>ke&&(Ct=ke),Ct<we&&(Ct=Math.max(we,Math.floor(tt/xt))),Array.from(ie.querySelectorAll(".button")).forEach(Zt=>{try{Zt.style.width=`${Ct}px`}catch{}})}catch{}},nt=requestAnimationFrame(Me);try{ve=new ResizeObserver(()=>{requestAnimationFrame(Me)}),ve.observe(U),ve.observe(ie),window.addEventListener("resize",Me)}catch{}return()=>{try{cancelAnimationFrame(nt)}catch{}try{ve&&(ve.disconnect(),ve=null)}catch{}try{window.removeEventListener("resize",Me)}catch{}}},[L,O,Ze]),l.useEffect(()=>()=>{try{Fe.current&&(clearTimeout(Fe.current),Fe.current=null),Ge.current&&(clearTimeout(Ge.current),Ge.current=null)}catch{}},[]);const Et=(U,ie)=>{R(U),Y(ie),Oe(),H(Pk(U)),Se.current=U},it=async(U,ie)=>{He(!1),x.current=!1,U.src=ie,U.load(),await yb(U),await Ie(),E(!1),await et(U),ee("playMode"),q(0),G(!0)},Ht=async(U,ie=!1)=>{const ve=g.current;E(!0),M("measuring_duration");try{const we=await sc(U,{timeoutMs:1e4,rejectOnError:!0});Et([{src:U,objectUrl:null,duration:we}],we),M("ready"),ie&&ve&&await it(ve,U)}finally{x.current=!1,E(!1)}},mt=async(U,ie=!1)=>{const ve=g.current;E(!0),M("measuring_duration");try{const we=await Promise.all(U.map(Me=>sc(Me,{timeoutMs:1e4}))),ke=U.map((Me,nt)=>({src:Me,objectUrl:null,duration:we[nt]||0}));Et(ke,Rk(ke)),M("ready"),ie&&ve&&ke.length>0&&await it(ve,ke[0].src)}finally{x.current=!1,E(!1)}},Vt=async(U=!1,ie=!0)=>{const ve=g.current,we=t?Array.isArray(t)?t:[t]:[];if(!(!we||we.length===0||!we.some(Boolean))&&!x.current){x.current=!0,ie&&E(!0),M("resolving");try{const ke=$k(t,a,Tr),Me=[];let nt=0;for(const ct of ke){let de=ct.src??null,Te=null;if(!de&&ct.resolvedPath){try{M("getting_signed_url"),de=await Io(ct.resolvedPath)}catch{de=null}if(!de)try{M("downloading");const xt=await Br(ct.resolvedPath);if(xt){const Ct=xt instanceof Blob?xt:new Blob([xt]);Te=y.track(URL.createObjectURL(Ct)),de=Te}}catch{M("error");try{ce(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),ee("active")}catch{}}}if(!de)continue;let tt=0;try{M("measuring_duration"),tt=await sc(de,{timeoutMs:3e3})}catch{tt=0}nt+=tt||0,Me.push({...ct,src:de,objectUrl:Te,duration:tt})}if(Et(Me,nt),Me.length>0&&U&&ve){const ct=Me[0];He(!1);try{y.keepOnly(Me.map(de=>de.objectUrl))}catch{}if(M("ready"),x.current=!1,ct.src&&ve)try{ve.src=ct.src,ve.load(),await yb(ve),await Ie(),ie&&E(!1),ve&&await et(ve)}catch{ie&&E(!1)}else ie&&E(!1);ee("playMode"),q(0),G(!0)}}finally{x.current=!1,ie&&E(!1),M(ke=>ke==="ready"?"ready":"idle")}}},ia=async()=>{const U=g.current;if(!(!U&&!Je)){if(Je){const ie=window.speechSynthesis;if(Z==="active"){const ve=Oo(),we=Array.isArray(i)?i.filter(Boolean):i?[i]:[];if(ve&&we.length>0){ee("load"),E(!0),M("resolving"),x.current=!0;try{const ke=await Promise.all(we.map(Me=>Promise.resolve(ve(Me))));ke.length>1?await mt(ke,!0):await Ht(ke[0],!0)}catch{x.current=!1,E(!1),ee("active"),ut(we[0]||void 0)}return}ut(we[0]||void 0);return}if(Z==="playMode"){if(U){if(U.paused){if(We.current){await Gt();return}await et(U),N("playing")}else U.pause(),N("paused");return}try{if(ie&&ie.paused)try{ie.resume(),N("playing")}catch{}else try{ie.pause(),N("paused")}catch{}}catch{}}return}if(Z==="active"){if(n&&Array.isArray(Se.current)&&Se.current.length>0){const ie=Se.current[0];try{if(ie.src&&U)try{U.src=ie.src,U.load(),U&&await et(U)}catch{}ee("playMode"),q(0),G(!0);return}catch{}}ee("load"),await Vt(!0);return}if(Z!=="load"&&(Z==="playMode"||Z==="active"))try{if(U&&U.paused){if(We.current){await Gt();return}U&&await et(U),N("playing")}else U&&(U.pause(),N("paused"))}catch(ie){(ie instanceof Error||typeof ie=="object"&&ie&&"name"in ie)&&ie.name}}},Gt=async()=>{const U=g.current;if(U)try{const ie=Se.current;if(Array.isArray(ie)&&ie.length>1){await $t(0);return}He(!1);try{U.currentTime=0}catch{}U&&await et(U),N("playing"),ee("playMode")}catch{}},Ea=()=>{if(Je){je();return}const U=g.current;try{if(U){try{U.pause()}catch{}try{U.currentTime=0}catch{}}}catch{}Ye(),N("stopped"),ee("active"),te(0),G(!1)},sa=async(U,{sameSegment:ie=!1}={})=>{const ve=++_.current,we=g.current,ke=Se.current?.[U]?.src;try{if(He(!1),q(U),G(!0),Ae.current=U,!ke||!we||(ie||Oe(),we.src=ke,we.load(),ie||await Ie(),ve!==_.current)||(await et(we),ve!==_.current))return;N("playing"),ee("playMode")}catch{}},Kt=async()=>{const U=Se.current,ie=Ae.current||0;if(!U||ie<=0){await Gt();return}await sa(ie-1)},ja=async()=>{const U=Se.current,ie=Ae.current||0;if(!U||ie>=U.length-1){Ea();return}await sa(ie+1)},jt=()=>{if(We.current)return;const U=200,ie=340;He(!0);try{te(1)}catch{}Ce(1);try{ae("hold")}catch{}try{const ve=g.current,we=Je&&!!ve?.src;if(!Je||we){if(ve){ve.pause();try{ve.currentTime=0}catch{}}}else je();Ye()}catch{}try{N("stopped")}catch{}if(G(!1),!Qe.current)try{Ge.current&&(clearTimeout(Ge.current),Ge.current=null),Ge.current=setTimeout(()=>{try{ae("out")}catch{}Ge.current=setTimeout(()=>{try{typeof Re.current=="function"&&Re.current(!0)}catch{}try{ae("idle")}catch{}Ge.current=null},ie)},U)}catch{}};l.useEffect(()=>{Le.current=jt});const Ga=l.useCallback(()=>ce(""),[]),$t=async U=>{(Se.current||[])[U]&&await sa(U,{sameSegment:U===Ae.current})},ya=k==="playing",qa=l.useMemo(()=>{if(!O||O.length<=1)return O;const U=O[$];return U?[U]:O},[O,$]),Xe=n===!0;l.useEffect(()=>{try{const U=g.current;U&&typeof U.playbackRate=="number"&&(U.playbackRate=J||1)}catch{}},[J]),l.useEffect(()=>{try{const U=g.current;U&&(U.volume=Math.max(0,Math.min(1,ue)))}catch{}},[ue]);const zt=pe==="hold",wt=pe==="out",xa=Z==="playMode"&&!T&&!be||zt||wt,la=k!=="stopped"||zt||wt,ne=k==="paused",ge=Math.max(0,Math.min(100,(F||0)*100)),fe=ye("audio-player__fill",xa?"is-visible":"",la?"is-expanded":"",ne?"is-paused":"",wt?"is-out":"");return o.jsxs("div",{className:`audio-player ${Xe?"is-disabled":""}${s?` ${s}`:""}`,role:"group","aria-label":typeof m=="string"?m:void 0,children:[o.jsxs("div",{className:`audio-player__panel ${ya?"is-playing":""} ${T?"is-loading":""} ${Z!=="default"?"is-revealed":""}`,children:[T?o.jsxs("div",{className:"audio-player__loading",role:"status","aria-live":"polite",children:[o.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),o.jsx("span",{className:"audio-player__loading-text",children:Tk[W]})]}):null,Z==="active"?o.jsx("button",{className:"audio-player__button",type:"button",onClick:()=>{D(),ia()},"aria-label":typeof m=="string"?m:d("training.listen","\uB4E3\uAE30"),onMouseEnter:S,onMouseLeave:D,onFocus:S,onBlur:D,children:o.jsx("span",{ref:A,className:"audio-player__button-triangle-wrap",children:o.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:o.jsx("path",{ref:C,d:"M13.2 7.7 L16.5 9.85 Q20.2 12 16.5 14.15 L10 18.3 Q7 19.7 7 16.3 L7 7.7 Q7 4.3 10 5.7 L13.2 7.7"})})})}):null,w&&o.jsx(aa,{anchorRect:w,text:typeof m=="string"&&m?m:d("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),o.jsxs("div",{className:`audio-player__play ${Z==="playMode"||ya?"is-visible":""}`,children:[o.jsxs("div",{ref:b,className:"audio-player__buttons",children:[o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:Kt,ariaLabel:d("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:Z!=="playMode"}),o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:ya?"pause":"play",onClick:ia,ariaLabel:d("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),width:"60px",variant:"transparent-white",disabled:Z!=="playMode"}),o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:Ea,ariaLabel:d("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:Z!=="playMode"}),Ze>1?o.jsx("div",{ref:f,className:"audio-player__source-buttons",children:Array.from({length:Ze}).map((U,ie)=>o.jsx(le,{size:32,type:"dot",shape:"pill",useBorder:!1,label:String(ie+1),onClick:()=>{try{$t(ie)}catch{}},ariaLabel:d("training.sourcePlay",{n:ie+1}),variant:"transparent-white",selected:I&&$===ie,disabled:Z!=="playMode"||!(Array.isArray(L)&&L[ie]),showTooltipInfo:!0},ie))}):null,!Array.isArray(L)||L.length<=1?o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:Gt,ariaLabel:d("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:Z!=="playMode"}):null,o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:ja,ariaLabel:d("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:Z!=="playMode"}),o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:jt,ariaLabel:d("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:Z!=="playMode"})]}),o.jsxs("div",{className:"audio-player__slider",children:[o.jsx("div",{className:fe,ref:v,style:{left:`${ge}%`},"aria-hidden":"true"}),(c||u)&&o.jsx(Ak,{segments:qa,progress:F,totalDuration:z,onSegmentClick:$t,waveProgressRef:P,showSoundWaveForm:c,noiseSrc:u&&h?.settings.enabled&&(h?.settings.level??0)>0?Ue:null,noiseLevel:h?.settings.level??0,noiseSpeed:h?.settings.speed??1,mainVolume:ue,onReadyChange:De})]})]}),o.jsx("audio",{ref:g,crossOrigin:"anonymous",preload:"auto"})]}),!c&&o.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[o.jsx(Pe,{icon:"triangle-alert",size:14}),d("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),o.jsx(oo,{message:X,position:xe,onClose:Ga})]})}var Ik=".ihabdevteam-core-scope .tooltip-textbox{background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;max-width:520px;padding:var(--spacing-content)}.ihabdevteam-core-scope .tooltip-textbox__root{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-textbox__box{background:transparent}.ihabdevteam-core-scope .tooltip-textbox__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .tooltip-textbox__text{color:var(--color-darkGray);overflow-wrap:anywhere;white-space:normal;word-break:keep-all}.ihabdevteam-core-scope .tooltip-textbox__line{align-items:center;display:flex;gap:var(--spacing-s);margin-bottom:0;min-height:60px;padding:10px 0}.ihabdevteam-core-scope .tooltip-textbox__line:last-child{margin-bottom:0}.ihabdevteam-core-scope .tooltip-textbox__line:not(:last-child){border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .tooltip-textbox.is-dark .tooltip-textbox__line:not(:last-child){border-bottom-color:hsla(0,0%,100%,.06)}.ihabdevteam-core-scope .tooltip-textbox__marker{--marker-pos:50%;align-items:center;background-color:var(--color-main);background:color-mix(in srgb,var(--color-main) 50%,var(--color-sub) 50%);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:#fff;display:inline-flex;height:24px;justify-content:center;min-width:24px}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .tooltip-textbox__marker{background:color-mix(in srgb,var(--color-main) calc(100% - var(--marker-pos)),var(--color-sub) var(--marker-pos))}}.ihabdevteam-core-scope .tooltip-textbox__line-number{color:#fff;min-width:auto;text-align:center}.ihabdevteam-core-scope .tooltip-textbox__line-text{flex:1 1 auto}.ihabdevteam-core-scope .tooltip-textbox__buttons{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:center;margin-top:10px;position:relative}.ihabdevteam-core-scope .tooltip-textbox.is-dark{background:var(--color-darkGray);border-color:var(--color-gray)}.ihabdevteam-core-scope .tooltip-textbox.is-dark .tooltip-textbox__text{color:var(--color-deepWhite)}";Q(Ik);function Bo(e){const{t}=me.useTranslation(),{text:a,label:r,anchorRect:n=null,onClose:i,closeOnOutsideClick:s=!0,isMobilePopup:c=!1}=e||{},[u,d]=l.useState(()=>{try{return localStorage.getItem("tooltip-theme")||"light"}catch{return"light"}});l.useEffect(()=>{try{localStorage.setItem("tooltip-theme",u)}catch{}},[u]);const{increase:m,decrease:h,canIncrease:p,canDecrease:g,fontSize:v,lineHeight:b}=an({storageKey:"tooltip-fontScale"}),y=l.useCallback(()=>d(A=>A==="dark"?"light":"dark"),[]),f=l.useCallback(A=>{try{A.stopPropagation()}catch{}try{typeof i=="function"&&i()}catch{}},[i]),x=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],_={fontSize:`${v}px`,lineHeight:`${b}px`,"--tt-line-height":`${b}px`,"--tt-marker-size":"28px"},C=o.jsxs("div",{className:`tooltip-textbox__root ${u==="dark"?"is-dark":""}`,children:[o.jsxs("div",{className:"tooltip-textbox__box",children:[r&&o.jsx("div",{className:"tooltip-textbox__label body-2b",children:r}),o.jsx("div",{className:"tooltip-textbox__text body-1",style:_,children:x.map((A,w)=>o.jsxs("div",{className:"tooltip-textbox__line",children:[x.length>1?o.jsx("div",{className:"tooltip-textbox__marker",children:o.jsx("span",{className:"tooltip-textbox__line-number button-1",children:w+1})}):null,o.jsx("span",{className:"tooltip-textbox__line-text",children:A})]},w))})]}),o.jsxs("div",{className:"tooltip-textbox__buttons",children:[o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:h,ariaLabel:t("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!g}),o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:m,ariaLabel:t("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!p}),o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:u==="dark"?"moon":"sun-medium",onClick:y,ariaLabel:t("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:u==="dark"?"transparent-white":"transparent-gray"}),o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:f,ariaLabel:t("common.close","\uB2EB\uAE30"),variant:u==="dark"?"transparent-white":"transparent-gray"})]})]});return n?o.jsx(Sa,{anchorRect:n,className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,onClose:i,closeOnOutsideClick:s,isMobilePopup:c,children:C}):o.jsx("div",{className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,children:C})}var Ok=".ihabdevteam-core-scope .training-page-bottom{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;flex:0 0 auto;gap:var(--spacing-s);justify-content:space-between;padding:12px 18px calc(12px + env(safe-area-inset-bottom));width:100%;z-index:5}.ihabdevteam-core-scope .pp-bottom__left{align-items:center;display:flex;gap:var(--spacing-m)}.ihabdevteam-core-scope .pp-bottom__right{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .pp-bottom__meters{border:1px solid var(--color-whiteLine);border-radius:14px;display:flex;flex-direction:column;gap:2px;justify-content:center;padding:8px 12px}.ihabdevteam-core-scope .pp-bottom__meter{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-label{color:var(--color-gray);min-width:28px}.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:none}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:flex}@media (min-width:768px){.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:block}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:none}}.ihabdevteam-core-scope .pp-bottom__tooltip-trigger{display:inline-block}.ihabdevteam-core-scope .training-steps{box-sizing:border-box;display:flex;flex-direction:column;overflow:visible;width:100%}.ihabdevteam-core-scope .training-step{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--spacing-m);overflow:visible;width:100%}.ihabdevteam-core-scope .training-step__body,.ihabdevteam-core-scope .training-step__content{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;gap:var(--spacing-s);overflow:visible;width:100%}.ihabdevteam-core-scope .training-step__content{gap:var(--spacing-m);min-width:0}.ihabdevteam-core-scope .training-step__controls{box-sizing:border-box;display:flex;flex-direction:column;gap:10px;width:100%}.ihabdevteam-core-scope .training-step__title{color:#0b2b35;color:var(--text,#0b2b35);margin:0;text-align:left}.ihabdevteam-core-scope .training-step__body .audio-player{display:flex;justify-content:center;width:100%}.ihabdevteam-core-scope .training-step__body .audio-player__panel{border-radius:var(--radius-card);padding:18px 20px;width:100%}.ihabdevteam-core-scope .training-step__controls.compact{align-items:center;display:flex;justify-content:center;width:72px}.ihabdevteam-core-scope .training-step__confirm-sentence{align-items:center;background:var(--color-white);border:1px solid rgba(0,0,0,.04);border-radius:var(--radius-card);box-shadow:var(--shadow-card);color:#0b2b35;color:var(--text,#0b2b35);display:flex;height:200px;justify-content:center;max-width:100%;overflow-wrap:anywhere;padding:var(--spacing-m);text-align:center;word-break:keep-all}.ihabdevteam-core-scope .training-step__controls.expanded{-ms-overflow-style:none;align-items:stretch;max-height:420px;overflow-y:auto;padding-bottom:6px;scrollbar-width:none;width:100%}.ihabdevteam-core-scope .training-step__controls.expanded::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .training-step__controls .training-step__title{color:#70858a;color:var(--muted,#70858a)}.ihabdevteam-core-scope .training-step__answer-button{background:var(--color-white);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-s);cursor:pointer;flex:0 0 auto;padding:10px 14px}.ihabdevteam-core-scope .training-step__buttons{-ms-overflow-style:none;align-items:stretch;display:flex;flex-direction:row;gap:var(--spacing-content);overflow-x:auto;scrollbar-width:none;width:100%}.ihabdevteam-core-scope .training-step__buttons::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .training-step__buttons>*{align-self:stretch;flex:1 1 0;margin:0;min-width:0}.ihabdevteam-core-scope .training-step__buttons.training-step__buttons--wrap-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow-x:visible}.ihabdevteam-core-scope .training-step__buttons.training-step__buttons--wrap-3>*{width:100%}.ihabdevteam-core-scope .training-step__buttons .button{align-items:center;align-self:stretch;display:flex}.ihabdevteam-core-scope .training-step__answer-button+.training-step__answer-button{margin-top:0}.ihabdevteam-core-scope .training-step__multi-confirm{display:flex;justify-content:flex-end;margin-top:12px;margin-top:var(--margin-content,12px);width:100%}.ihabdevteam-core-scope .training-step__controls::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .training-step__controls{-ms-overflow-style:none;scrollbar-width:none}@media (max-width:640px){.ihabdevteam-core-scope .training-step__body .audio-player__panel{border-radius:var(--radius-card);padding:14px}.ihabdevteam-core-scope .training-step__controls.compact{width:48px}.ihabdevteam-core-scope .training-step{flex-direction:row;gap:10px}}@media (max-width:720px){.ihabdevteam-core-scope .training-step__controls.expanded{gap:8px}.ihabdevteam-core-scope .training-step__answer-button{padding:9px 12px}.ihabdevteam-core-scope .training-step__confirm-sentence{padding:var(--spacing-s)}}.ihabdevteam-core-scope .training-step__cards{box-sizing:border-box;display:flex;gap:var(--spacing-s);width:100%}@media (max-width:767px){.ihabdevteam-core-scope .training-step__cards{grid-gap:var(--spacing-s);display:grid;gap:var(--spacing-s);grid-template-columns:repeat(3,1fr)}}.ihabdevteam-core-scope .training-step__block{display:flex;flex-direction:column;gap:var(--spacing-s);width:100%}.ihabdevteam-core-scope .training-step__block--row{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-s)}.ihabdevteam-core-scope .training-step__listen-sticky{width:100%}.ihabdevteam-core-scope .training-step.training-step--has-nested .training-step__content{margin-bottom:100px}.ihabdevteam-core-scope .training-steps>.training-step:last-child .training-step__content{margin-bottom:0}.ihabdevteam-core-scope .training-step:not(.training-step--last) .training-step__content{margin-bottom:var( --margin-page)}.ihabdevteam-core-scope .training-step.training-step--last .training-step__content{margin-bottom:0}";Q(Ok);var Fk='.ihabdevteam-core-scope .ts-bullet{--dot-size:28px;--dot-gap:10px;align-items:center;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start;position:relative;width:28px;width:var(--dot-size)}.ihabdevteam-core-scope .bullet__dot{align-items:center;border:2px solid rgba(43,138,125,.12);border-radius:50%;display:flex;height:var(--dot-size);justify-content:center;width:var(--dot-size);z-index:2}.ihabdevteam-core-scope .bullet__icon{align-items:center;color:var(--color-darkGray);display:inline-flex;height:20px;justify-content:center;position:relative;width:20px;z-index:1}.ihabdevteam-core-scope .bullet__icon-img{display:block;height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.ihabdevteam-core-scope .bullet__icon-mask{background-color:currentColor;height:100%;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.ihabdevteam-core-scope .bullet__icon-svg svg{fill:currentColor;height:100%;width:100%}.ihabdevteam-core-scope .ts-bullet__line{background:var(--color-whiteLine);border-radius:var(--radius-xs);bottom:20px;left:50%;position:absolute;top:calc(var(--dot-size) + var(--dot-gap));transform:translateX(-50%);width:2px;z-index:1}.ihabdevteam-core-scope .ts-bullet--done .bullet__icon{color:transparent}.ihabdevteam-core-scope .ts-bullet--active .bullet__icon{color:#fff}.ihabdevteam-core-scope .ts-bullet--disabled .bullet__icon{color:transparent}.ihabdevteam-core-scope .ts-bullet--done .bullet__dot{border:2px solid var(--color-main)}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot{background-color:var(--color-main);position:relative}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:after,.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:before{animation:bullet-ripple 3s cubic-bezier(.2,.6,.2,1) infinite;background:var(--color-main);border-radius:50%;content:"";inset:0;opacity:.5;pointer-events:none;position:absolute}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:after{animation-delay:1.5s;opacity:.3}@keyframes bullet-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(2.2)}}.ihabdevteam-core-scope .ts-bullet--disabled .bullet__dot{border:2px solid var(--color-whiteLine)}.ihabdevteam-core-scope .ts-bullet--done .bullet__line{background-color:var(--color-main)}.ihabdevteam-core-scope .ts-bullet--active .bullet__line,.ihabdevteam-core-scope .ts-bullet--disabled .bullet__line{background-color:var(--color-whiteLine)}.ihabdevteam-core-scope .training-step--last .ts-bullet__line,.ihabdevteam-core-scope .training-step.training-step--last .ts-bullet__line{display:none}@media (max-width:1024px){.ihabdevteam-core-scope .ts-bullet{--dot-size:26px}}@media (max-width:768px){.ihabdevteam-core-scope .ts-bullet{--dot-size:24px}}';Q(Fk);function lc({state:e="disabled"}){const{t}=me.useTranslation();return o.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[o.jsx("div",{className:"bullet__dot",children:o.jsx(Pe,{icon:"chevron-right",label:t("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),o.jsx("div",{className:"ts-bullet__line"})]})}var Wk=".ihabdevteam-core-scope .training-step__title-row{align-items:center;display:flex;gap:var(--spacing-xs);padding-right:72px;position:relative;width:100%}.ihabdevteam-core-scope .training-step__title-row .training-step__title{color:var(--color-black);margin:0;padding:0}.ihabdevteam-core-scope .training-step__title--faded .training-step__title-text{background-color:var(--color-darkWhite);border-radius:var(--radius-xs);color:transparent;opacity:1;transition:color .14s ease,opacity .14s ease}.ihabdevteam-core-scope .training-step__title-row .training-step__title .title-extra{margin-left:var(--spacing-xs)}.ihabdevteam-core-scope .training-step__title-row .title-controls{align-items:center;display:flex;gap:6px;margin-left:auto}.ihabdevteam-core-scope .training-step__title-row .title-controls .title-buttons{align-items:center;display:inline-flex;gap:6px;justify-content:center;overflow:visible;position:absolute;right:0;top:50%;transform:translateY(-50%)}.ihabdevteam-core-scope .training-step__title-row .title-controls .title-buttons .button28{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .training-step__title-row--disabled .training-step__title,.ihabdevteam-core-scope .training-step__title-row--done .training-step__title{pointer-events:none}.ihabdevteam-core-scope .training-step__title-row--disabled .title-controls{opacity:.6;pointer-events:none}.ihabdevteam-core-scope .training-step__title-row--active .title-controls,.ihabdevteam-core-scope .training-step__title-row--done .title-controls{opacity:1;pointer-events:auto}.ihabdevteam-core-scope .training-step__title-row--disabled .training-step__title,.ihabdevteam-core-scope .training-step__title-row--done .training-step__title{color:var(--color-disabled)}.ihabdevteam-core-scope .training-step__title-row--active .training-step__title{color:var(--color-black)}";Q(Wk);function cc({title:e,children:t,className:a="",state:r="disabled",usePreviewTextBtn:n=!1,onPreviewTextBtn:i,previewText:s=null,useFaded:c,usePlayAllBtn:u=!1,onPlayAll:d,playAllActive:m=!1}){const{t:h}=me.useTranslation(),p=oa("(max-width: 767px)"),g=`training-step__title h4 ${c&&r==="disabled"?"training-step__title--faded":""} ${a}`.trim(),v=`training-step__title-row training-step__title-row--${r}`.trim(),b=l.useRef(null),[y,f]=l.useState(!1),[x,_]=l.useState(null),[C,A]=l.useState(null),w=l.useRef(i);l.useEffect(()=>{w.current=i});const S=l.useMemo(()=>s==null?"":typeof s=="string"||typeof s=="number"?String(s):Array.isArray(s)&&s.every(E=>typeof E=="string"||typeof E=="number")?s.join(""):"",[s]),D=l.useCallback(()=>{f(!1),_(null),A(null)},[]);l.useEffect(()=>{if(!y)return;let E;try{typeof w.current=="function"&&(E=w.current())}catch{}if(E===!1){D();return}A(typeof E<"u"&&E!==null?E:null)},[S]);const T=l.useCallback(()=>{let E;try{typeof i=="function"&&(E=i())}catch{}if(E!==!1){if(A(typeof E<"u"&&E!==null?E:s),!b.current){f(W=>!W);return}if(y)f(!1),_(null),A(null);else{const W=b.current.getBoundingClientRect();_(W),f(!0)}}},[i,s,y]);return o.jsxs("div",{className:v,children:[o.jsx("p",{className:g,children:o.jsx("span",{className:"training-step__title-text",children:e??t})}),n||u?o.jsxs("div",{className:"title-controls",children:[o.jsxs("div",{className:"title-buttons",children:[u&&o.jsx(le,{size:32,type:p?"dot":"bar",icon:"play-circle",label:p?void 0:h("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:h("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:m,onClick:d,variant:r==="disabled"?"disabled":"default",disabled:r==="disabled"||m}),n&&o.jsx("div",{ref:b,children:o.jsx(le,{size:32,type:p?"dot":"bar",icon:"eye",label:p?void 0:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),selected:y,onClick:T,variant:r==="disabled"?"disabled":"default",disabled:!s&&typeof i!="function"})})]}),y&&o.jsx(Bo,{text:C??s,label:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:x,onClose:D,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function dc(e,t){return typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled"}function Va({index:e,stepIndex:t,isLast:a=!1,title:r="",titleProps:n={},children:i,className:s="",onDone:c=void 0,useTitleFaded:u=void 0}){const[d,m]=l.useState(()=>dc(e,t));l.useEffect(()=>{const C=dc(e,t);if(C!==d){const A=setTimeout(()=>m(C),0);return()=>clearTimeout(A)}},[e,t,d]);const h=l.useCallback((...C)=>{dc(e,t)==="done"||d==="done"||typeof c=="function"&&c(...C)},[e,t,d,c]),[p,g]=l.useState(!1),[v,b]=l.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),y=l.useCallback(C=>{if(!C)return null;try{const A=C;if(typeof C=="object"&&(A.currentTarget||A.target)&&(A.nativeEvent||A.type)){const D=A.currentTarget??A.target;if(D&&typeof D.getBoundingClientRect=="function")return D.getBoundingClientRect()}if(C instanceof DOMRect)return C;const w=C;if(w&&typeof w.getBoundingClientRect=="function")return w.getBoundingClientRect();const S=C?.current;return S&&typeof S.getBoundingClientRect=="function"?S.getBoundingClientRect():null}catch{return null}},[]),f=l.useCallback((C,{text:A="",label:w="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:S=!1,alignX:D="center",alignY:T="top"}={})=>{const E=y(C);b({text:A,label:w,anchorRect:E,backdrop:S,alignX:D,alignY:T}),g(!0)},[y]),x=l.useCallback(()=>{g(!1),b(C=>({...C,anchorRect:null}))},[]),_=l.Children.map(i,C=>{if(l.isValidElement(C)){const A=C;if(typeof A.type=="string")return A;const w=A.props??{},S=typeof w.onDone=="function"?w.onDone:h,D=typeof w.disabled=="boolean";let T=d==="disabled";return D&&(T=!!w.disabled),l.cloneElement(A,{onDone:S,disabled:T,showTooltip:f,hideTooltip:x})}return C});return o.jsxs("div",{className:`training-step training-step--${d} ${a?"training-step--last":""} ${s}`,"aria-current":d==="active",children:[o.jsx(lc,{state:d}),o.jsxs("div",{className:"training-step__content",children:[o.jsx(cc,{state:d,title:r,...n,useFaded:u}),_]}),p?o.jsx(Sa,{anchorRect:v.anchorRect,backdrop:v.backdrop,onClose:x,children:o.jsx(Bo,{text:v.text,onClose:x})}):null]})}var Hk='.ihabdevteam-core-scope .training-text-box{background:var(--color-darkWhite);border:1px solid var(--color-deepWhite);border-radius:var(--radius-m);color:var(--color-black);display:flex;flex-direction:column;max-width:100%;min-height:160px;overflow:visible;overflow-wrap:anywhere;padding:var(--spacing-content);position:relative;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .training-text-box--disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .training-text-box--disabled .training-text-box__inner{visibility:hidden}.ihabdevteam-core-scope .training-text-box--disabled:after{content:"";pointer-events:none;position:absolute;z-index:5}.ihabdevteam-core-scope .training-text-box__preview{align-items:center;display:flex;justify-content:center;left:50%;pointer-events:auto;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:60}.ihabdevteam-core-scope .training-text-box__buttons{border-radius:999px;gap:4px;height:28px;left:0;right:0}.ihabdevteam-core-scope .training-text-box__area,.ihabdevteam-core-scope .training-text-box__buttons{align-items:center;box-sizing:border-box;display:flex;justify-content:center;pointer-events:auto;position:relative;z-index:40}.ihabdevteam-core-scope .training-text-box__area{flex:1 1 auto;margin:0 auto;min-height:0;text-align:center;width:100%}.ihabdevteam-core-scope .training-text-box--active,.ihabdevteam-core-scope .training-text-box--done{background-color:var(--color-white);border-color:var(--color-main);pointer-events:auto;transition:box-shadow .18s ease,transform .18s ease,opacity .16s ease;-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.ihabdevteam-core-scope .training-text-box.is-dark{background:var(--color-darkGray);border:1px solid var(--color-black);color:var(--color-deepWhite)}.ihabdevteam-core-scope .training-text-box .training-text-box__inner{display:block;overflow-wrap:anywhere;text-align:center;white-space:normal;width:100%;word-break:keep-all}.ihabdevteam-core-scope .training-text-box.is-dark .tooltip-textbox__text,.ihabdevteam-core-scope .training-text-box.is-dark .training-text-box__inner{color:var(--color-deepWhite)}';Q(Hk);function uc({context:e,state:t="disabled",theme:a="light"}){const{t:r}=me.useTranslation(),[n,i]=l.useState("disabled"),[s,c]=l.useState(()=>{try{return localStorage.getItem("tooltip-theme")||a}catch{return a}});l.useEffect(()=>{try{localStorage.setItem("tooltip-theme",s)}catch{}},[s]);const u=()=>c(T=>T==="dark"?"light":"dark"),{increase:d,decrease:m,canIncrease:h,canDecrease:p,fontSize:g,lineHeight:v}=an({storageKey:"textbox_fontScale"}),[b,y]=l.useState(""),f=l.useCallback(()=>i("active"),[]),x=l.useCallback(()=>y(""),[]),_=T=>{try{y(T)}catch{}},C=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");l.useEffect(()=>{if(t!=="disabled"){const T=setTimeout(()=>i(t),0);return()=>clearTimeout(T)}},[t]);const A=l.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]);l.useEffect(()=>{const T=setTimeout(()=>i("disabled"),0);return()=>clearTimeout(T)},[A]);const w=t==="disabled"?n:t,S=w==="disabled"?"training-text-box--disabled":w==="active"?"training-text-box--active":w==="done"?"training-text-box--done":"",D=l.useMemo(()=>({fontSize:`${g}px`,lineHeight:`${v}px`}),[g,v]);return o.jsxs("div",{className:`training-text-box ${S} ${w!=="disabled"&&s==="dark"?"is-dark":""}`,children:[w==="disabled"&&o.jsx("div",{className:"training-text-box__preview",children:o.jsx(le,{size:48,type:"bar",onClick:f,icon:"eye",ariaLabel:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),label:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),useBorder:!1})}),o.jsx("div",{className:"training-text-box__area","aria-hidden":w==="disabled",children:o.jsx("span",{className:"training-text-box__inner h3",style:D,children:A})}),w!=="disabled"&&o.jsxs("div",{className:"training-text-box__buttons","aria-hidden":w==="disabled",children:[o.jsx(le,{size:32,type:"dot",onClick:m,onDisabledClick:()=>_(r("training.fontSizeMin","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),icon:"minus",variant:s==="dark"?"transparent-white":"transparent-gray",disabled:!p,useBorder:!1,showTooltipInfo:!0,...!C&&{width:"60px"}}),o.jsx(le,{size:32,type:"dot",onClick:d,onDisabledClick:()=>_(r("training.fontSizeMax","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),icon:"plus",variant:s==="dark"?"transparent-white":"transparent-gray",disabled:!h,useBorder:!1,showTooltipInfo:!0,...!C&&{width:"60px"}}),o.jsx(le,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:s==="dark"?"moon":"sun-medium",onClick:u,ariaLabel:r("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:s==="dark"?"transparent-white":"transparent-gray"})]}),o.jsx(oo,{message:b,position:"top",onClose:x})]})}function Nn({index:e,stepIndex:t,isLast:a=!1,title:r,useTitleFaded:n,onDone:i,onChange:s,answer:c,wrongAnswers:u,choices:d,multiSelect:m=!1,correctCount:h=0,useDisabledCovered:p=!1,choiceIcons:g,shuffleChoices:v=!0}){const{t:b}=me.useTranslation(),y=r??b("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),f=typeof e=="number"?e:-1,x=typeof t!="number"?"disabled":f<t?"done":f===t?"active":"disabled",_=Array.isArray(d)&&d.length?d:typeof c<"u"?[c].concat(Array.isArray(u)?u:[]):void 0,C=u?u.join("||"):"",A=d?d.join("||"):"",[w,S]=l.useState(()=>Array.isArray(_)?v?ze(_):_.slice():void 0);l.useEffect(()=>{Array.isArray(_)&&_.length?S(v?ze(_):_.slice()):S(void 0)},[c,C,A,v]);const[D,T]=l.useState(null),[E,W]=l.useState(()=>new Set);l.useEffect(()=>{T(null),W(new Set)},[A]);const M=l.useRef(void 0);l.useEffect(()=>{const j=M.current;typeof j=="number"&&typeof t=="number"&&typeof e=="number"&&j>=e&&t<e&&(T(null),W(new Set)),M.current=t},[t,e]);const k=l.useCallback(j=>{if(x!=="active")return;const F=w?.[j];if(F==null)return;const te=F,Z=x==="active"||x==="done";if(m){const ee=new Set(E),L=ee.has(te);L?ee.delete(te):ee.add(te),W(ee),typeof s=="function"&&s({selectedValues:[...ee],__ts:Date.now()}),Z&&(typeof h=="number"&&h>0?ee.size>=h:!L)&&typeof i=="function"&&x==="active"&&i({selectedValues:[...ee],__ts:Date.now()})}else T(te),typeof s=="function"&&s({selectedIndex:j,selectedValue:te,__ts:Date.now()}),Z&&typeof i=="function"&&x==="active"&&i({selectedIndex:j,selectedValue:te,__ts:Date.now()})},[w,x,m,s,i,h,E]),N=`training-step__buttons${Array.isArray(w)&&w.length>3?" training-step__buttons--wrap-3":""}`;return o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:y,useTitleFaded:n,children:o.jsx("div",{className:N,children:Array.isArray(w)&&w.length>0?w.map((j,F)=>o.jsx(le,{size:56,type:"bar",onClick:()=>k(F),ariaLabel:String(j),label:j,useLabel:!0,icon:g?g[String(j)]:void 0,variant:"default",disabled:x==="disabled",selected:m?E.has(j):D===j,useDisabledCovered:p,minWidth:0},String(j))):null})})}function Dn({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:n,onChange:i,context:s,demoSelected:c}){const{t:u}=me.useTranslation(),d=r??u("training.confirmTitle","\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694."),m=typeof e=="number"?e:-1,h=typeof t!="number"?"disabled":m<t?"done":m===t?"active":"disabled",p=s&&typeof s=="object"?s.sentence||"":typeof s=="string"?s:"",g=s&&typeof s=="object"?s.choices:void 0,[v,b]=l.useState(c??null);l.useEffect(()=>{if(c==null&&v!==null){const _=setTimeout(()=>b(null),0);return()=>clearTimeout(_)}},[p,c,v]);const y=l.useCallback(_=>{const C=typeof _=="object"&&_!==null?Object.assign({},_,{__ts:Date.now()}):{value:_,__ts:Date.now()};typeof i=="function"&&i(C),h==="active"&&typeof n=="function"&&n(C)},[i,h,n]),f=l.useCallback(()=>{h==="active"&&(b(!1),y(!1))},[y,h]),x=l.useCallback(()=>{h==="active"&&(b(!0),y(!0))},[y,h]);return o.jsxs(Va,{index:e,stepIndex:t,isLast:a,title:d,onDone:n,useTitleFaded:!1,children:[o.jsx(uc,{context:s,state:h}),o.jsx("div",{className:"training-step__buttons",children:Array.isArray(g)&&g.length>0?g.slice(0,6).map((_,C)=>o.jsx(le,{size:56,type:"bar",onClick:()=>{h==="active"&&(b(C),y&&y(C))},disabled:h==="disabled",ariaLabel:String(_),label:_,variant:h,selected:v===C},C)):o.jsxs(o.Fragment,{children:[o.jsx(le,{size:56,type:"bar",onClick:f,disabled:h==="disabled",icon:"x",ariaLabel:u("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:u("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:v===!1}),o.jsx(le,{size:56,type:"bar",onClick:x,disabled:h==="disabled",icon:"circle",ariaLabel:u("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:u("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:v===!0})]})})]})}function En({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:n,btnLabel:i,soundSrc:s,bucketPath:c,usePreviewTextBtn:u,previewText:d=null,onPreviewTextBtn:m,disabled:h,_pageIndex:p,showSoundWaveForm:g,showNoiseWaveForm:v}){const{t:b}=me.useTranslation(),y=r??b("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),f=h??(typeof t=="number"&&typeof e=="number"?e>t:!1);return o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:y,onDone:n,titleProps:{usePreviewTextBtn:u,previewText:d,onPreviewTextBtn:m},children:o.jsx(xr,{soundSrc:s,ttsText:s?null:d??y,bucketPath:c,btnLabel:i||b("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:f,className:"training-step__listen-sticky",showSoundWaveForm:g,showNoiseWaveForm:v},`audio-p${p??0}-s${e}`)})}var Vk=".ihabdevteam-core-scope .page-popup--closing{opacity:0;pointer-events:none;transition:opacity .16s ease}.ihabdevteam-core-scope .page-popup__panel{overflow:auto}.ihabdevteam-core-scope .page-popup__close{font-size:20px;right:12px;top:10px}.ihabdevteam-core-scope .page-popup{align-items:stretch;display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-page-popup)}.ihabdevteam-core-scope .page-popup__panel{background:var(--color-deepWhite);border-radius:0;box-shadow:none;color:var(--color-black);display:flex;flex-direction:column;height:100%;max-height:none;max-width:none;overflow:hidden;position:relative;width:100%}.ihabdevteam-core-scope .page-popup__scroll{-webkit-overflow-scrolling:touch;align-items:flex-start;display:flex;flex:1 1 0;justify-content:center;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:rgba(0,0,0,.15) transparent;scrollbar-width:thin;touch-action:pan-y}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-track{background:transparent}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.28)}.ihabdevteam-core-scope .page-popup__panel--measuring .page-popup__scroll{opacity:0;pointer-events:none}.ihabdevteam-core-scope .page-popup__scroll{transition:opacity .12s ease}.ihabdevteam-core-scope .nt-debug{background:rgba(0,0,0,.03);border-radius:var(--radius-sm);color:var(--text,var(--color-black));font-family:monospace;font-size:12px;line-height:1.2;max-width:300px;padding:8px 10px;position:absolute;right:20px;top:84px;white-space:pre-wrap;z-index:calc(var(--z-page-popup) + 1)}.ihabdevteam-core-scope .page-popup--backdrop{display:none}.ihabdevteam-core-scope .page-popup__close{background:transparent;border:none;color:var(--text,var(--color-black));cursor:pointer;font-size:22px;line-height:1;position:absolute;right:14px;top:12px}.ihabdevteam-core-scope .page-popup__panel>*{box-sizing:border-box}.ihabdevteam-core-scope .page-popup__body{padding:16px 20px}.ihabdevteam-core-scope .page-popup__content{box-sizing:border-box;margin:0 auto;max-width:800px;min-width:0;padding:var(--spacing-page);width:100%}.ihabdevteam-core-scope .page-popup__content--center{margin-bottom:auto;margin-top:auto}.ihabdevteam-core-scope .pp-empty{color:var(--color-gray);padding:24px 0;text-align:center;width:100%}.ihabdevteam-core-scope .page-popup__content .training-steps{box-sizing:border-box;min-width:0;width:100%}.ihabdevteam-core-scope .page-popup__bottom,.ihabdevteam-core-scope .page-popup__top{flex-shrink:0}.ihabdevteam-core-scope .page-popup__panel--center .page-popup__scroll{align-items:center}.ihabdevteam-core-scope .page-popup--result-empty{background:var(--color-deepWhite)}.ihabdevteam-core-scope .page-popup__empty{align-items:center;color:var(--color-gray);display:flex;flex-direction:column;justify-content:center;padding:2rem;text-align:center;width:100%}";Q(Vk);var Gk=".ihabdevteam-core-scope .order-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .order-list__item{align-items:flex-start;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .order-list__draggable{align-items:center;border-radius:var(--radius-m);display:flex;flex:1;gap:var(--spacing-xs);justify-content:space-between;min-height:60px;padding:0 0 0 4px;will-change:transform}.ihabdevteam-core-scope .order-list__item-text{color:var(--color-black)}.ihabdevteam-core-scope .order-list__item-buttons{align-items:center;align-self:center;display:inline-flex;gap:2px}@media (max-width:600px){.ihabdevteam-core-scope .order-list__item-buttons{align-items:center;align-self:center;display:flex;flex-direction:column}.ihabdevteam-core-scope .order-list__item-buttons>*{box-sizing:border-box;display:inline-flex}}.ihabdevteam-core-scope .order-list__item.correct{border:1px solid var(--color-main)}.ihabdevteam-core-scope .order-list__slot{align-items:center;background-color:var(--color-darkWhite);border-radius:var(--radius-m);box-sizing:border-box;display:flex;gap:var(--spacing-xs);height:auto;padding:4px 10px;width:100%}.ihabdevteam-core-scope .order-list__marker{--marker-pos:50%;align-items:center;background-color:var(--color-main);background:color-mix(in srgb,var(--color-main) 50%,var(--color-sub) 50%);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:#fff;display:inline-flex;height:24px;justify-content:center;width:24px}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .order-list__marker{background:color-mix(in srgb,var(--color-main) calc(100% - var(--marker-pos)),var(--color-sub) var(--marker-pos))}}@media (max-width:600px){.ihabdevteam-core-scope .order-list__marker{height:24px;min-width:24px;width:24px}}.ihabdevteam-core-scope .order-list__item:hover .order-list__slot{background-color:var(--color-deepWhite);box-shadow:inset 0 0 0 1px var(--color-main);transition:box-shadow .16s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__item.drag-over .order-list__slot{background-color:var(--color-white);box-shadow:inset 0 0 0 1px var(--color-main)}.ihabdevteam-core-scope .order-list__slot.pulse{background-color:var(--color-white);transition:background-color .42s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__slot.pulse.to-dark{background-color:var(--color-darkWhite)}.ihabdevteam-core-scope .order-list__slot-number{align-items:center;align-self:center;border-radius:var(--radius-sm);color:#fff;display:inline-flex;height:32px;justify-content:center;width:32px}.ihabdevteam-core-scope .order-list__draggable.dragging{background-color:var(--color-white);opacity:.2}.ihabdevteam-core-scope .order-list__dragging-object{align-items:center;background:var(--color-white);border-radius:var(--radius-m);box-shadow:0 14px 40px rgba(16,24,40,.18);box-sizing:border-box;color:var(--color-black);display:inline-flex;gap:var(--spacing-s);left:0;max-width:calc(100vw - var(--spacing-page)*3);min-height:60px;opacity:1;overflow-wrap:anywhere;padding:20px;pointer-events:none;position:fixed;top:0;transform:translate3d(-9999px,-9999px,0) scale(1);transition:transform .16s cubic-bezier(.22,.9,.39,1),opacity .18s ease;white-space:normal;width:auto;will-change:transform,opacity;word-break:keep-all;z-index:var(--z-popover)}.ihabdevteam-core-scope .order-list__dragging-object--visible{opacity:1}.ihabdevteam-core-scope .order-list__item.drag-over .order-list__slot:hover{background-color:var(--color-white);border-radius:var(--radius-m);box-shadow:inset 0 0 0 1px var(--color-main);transition:box-shadow .16s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__item-text{display:block;line-height:1.4;margin:0;overflow-wrap:anywhere;white-space:normal;width:100%;word-break:keep-all}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true],.ihabdevteam-core-scope .order-list__draggable[draggable=false]{background-color:var(--color-darkWhite);box-shadow:none!important;cursor:default;opacity:.9;pointer-events:none}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__item-text,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__item-text{color:var(--color-gray);display:none!important;opacity:.9}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__item-buttons,.ihabdevteam-core-scope .order-list__draggable[data-disabled=true]~.order-list__slot .order-list__slot-number,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__item-buttons,.ihabdevteam-core-scope .order-list__draggable[draggable=false]~.order-list__slot .order-list__slot-number,.ihabdevteam-core-scope .order-list__slot-number[hidden]{display:none!important}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__slot,.ihabdevteam-core-scope .order-list__draggable[data-disabled=true]+.order-list__slot,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__slot,.ihabdevteam-core-scope .order-list__draggable[draggable=false]+.order-list__slot,.ihabdevteam-core-scope .order-list__slot[data-disabled=true]{background-color:var(--color-darkWhite)!important;box-shadow:none!important}.ihabdevteam-core-scope .order-list__slot[data-disabled=true]{cursor:default!important;pointer-events:none!important}.ihabdevteam-core-scope .order-list__slot[data-disabled=true] .order-list__slot-number{display:none!important}";Q(Gk);function jn({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:n,onChange:i,context:s=[]}){const{t:c}=me.useTranslation(),u=r??c("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),d=R=>typeof R=="string"?R:R&&(R.context||R.sentence||R.question||"")||"",[m,h]=l.useState(Array.isArray(s)?s:[]),[p,g]=l.useState(()=>(m||[]).map((R,O)=>({id:O,text:d(R)}))),v=l.useMemo(()=>typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled",[t,e]);l.useEffect(()=>{const R=Array.isArray(s)?s:[];h(R);const O=(H=>{const $=(H||[]).map((z,Y)=>({id:Y,text:d(z)}));if($.length<=1)return $;const q=(z,Y)=>{if(z.length!==Y.length)return!1;for(let J=0;J<z.length;J++)if(z[J].text!==Y[J].text)return!1;return!0};let I=ze($),G=0;for(;q(I,$)&&G<20;)I=ze($),G+=1;return I})(R);g(O);try{if(typeof i=="function"){const H=O.filter(($,q)=>$.text===d(R[q])).length;i({shuffled:O,score:H,total:(R||[]).length,initial:!0,__ts:Date.now()})}if(typeof n=="function"&&v==="active"){const H=O.filter(($,q)=>$.text===d(R[q])).length;n({shuffled:O,score:H,total:(R||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[s]);const b=(R,O)=>{const H=[...p],$=R+O;if($<0||$>=H.length)return;const q=H[$];H[$]=H[R],H[R]=q,N(H);try{if(typeof n=="function"&&v==="active"){const I=H.filter((G,z)=>G.text===d(m[z])).length;n({shuffled:H,score:I,total:(m||[]).length,__ts:Date.now()})}}catch{}},[y,f]=l.useState(null),x=l.useRef(null),_=l.useRef(null),C=l.useRef(null),A=l.useRef(null),w=l.useRef(null),S=l.useRef({x:0,y:0}),D=l.useRef(null),T=l.useRef({dx:0,dy:0}),E=()=>{if(D.current!==null)return;const R=()=>{D.current=requestAnimationFrame(R);const O=S.current,H=T.current||{dx:0,dy:0};x.current&&(x.current.style.transform=`translate3d(${O.x-H.dx}px, ${O.y-H.dy}px, 0)`)};D.current=requestAnimationFrame(R)},W=l.useRef(new Map),M=l.useRef(new Map),k=()=>{const R=new Map;return W.current.forEach((O,H)=>{O&&O.getBoundingClientRect&&R.set(H,O.getBoundingClientRect())}),R},N=R=>{const O=k();g(R);try{if(typeof i=="function"){const H=R.filter(($,q)=>$.text===d(m[q])).length;i({shuffled:R,score:H,total:(m||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const H=k();R.forEach($=>{const q=O.get($.id),I=H.get($.id),G=W.current.get($.id);if(!G||!q||!I)return;const z=q.top-I.top;z&&(G.style.transition="none",G.style.transform=`translateY(${z}px)`,requestAnimationFrame(()=>{G.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",G.style.transform="";const Y=()=>{G.style.transition="",G.removeEventListener("transitionend",Y)};G.addEventListener("transitionend",Y)}))})})},j=(R,O)=>{try{try{O.dataTransfer?.setData("text/plain",String(R))}catch{}try{O.dataTransfer&&(O.dataTransfer.effectAllowed="move")}catch{}try{const H=document.createElement("div");H.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(H),O.dataTransfer?.setDragImage(H,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(H)}catch{}})}catch{}}catch{}f(R);try{const H=p[R],$=document.createElement("div");$.className="order-list__dragging-object order-list__dragging-object--visible",$.textContent=H&&H.text?H.text:"",document.body.appendChild($),x.current=$;const q=W.current.get(H.id);let I=O.clientX||0,G=O.clientY||0;try{if(q&&q.getBoundingClientRect){const ae=q.getBoundingClientRect();I=ae.left+ae.width/2,G=ae.top+ae.height/2}}catch{}const z=$.getBoundingClientRect(),Y=z.width/2,J=z.height/2;T.current={dx:Y,dy:J},$.style.transition="none",S.current={x:I,y:G},$.style.transform=`translate3d(${I-Y}px, ${G-J}px, 0)`,requestAnimationFrame(()=>{try{$.style.transition=""}catch{}E()});const ue=ae=>{const X=ae;S.current={x:X.clientX,y:X.clientY},E()};C.current=ue,document.addEventListener("mousemove",ue);const pe=ae=>{const X=ae;S.current={x:X.clientX,y:X.clientY},E()};_.current=pe,document.addEventListener("dragover",pe);try{O.dataTransfer?.setData("text/plain",String(R));try{O.dataTransfer?.setData("application/json",JSON.stringify({idx:R}))}catch{}}catch{}}catch{}},F=(R,O)=>{O.preventDefault();try{O.dataTransfer&&(O.dataTransfer.dropEffect="move")}catch{}try{w.current!==null&&(clearTimeout(w.current),w.current=null);const H=O.currentTarget&&O.currentTarget.closest?O.currentTarget.closest(".order-list__item"):null;if(H&&A.current!==H){if(A.current)try{A.current.classList.remove("drag-over")}catch{}try{H.classList.add("drag-over")}catch{}A.current=H}}catch{}},te=(R,O)=>{O.preventDefault();const H=O.dataTransfer?.getData("text/plain")||"",$=H?parseInt(H,10):y,q=R;if(typeof $!="number"||isNaN($)||$===q){f(null),L(),Z();return}const I=Mi(p,$,q);N(I),f(null),Z();try{if(typeof n=="function"&&v==="active"){const G=I.filter((z,Y)=>z.text===d(m[Y])).length;n({shuffled:I,score:G,total:(m||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const G=document.querySelectorAll(".order-list .order-list__item")[q];if(!G)return;const z=G.querySelector(".order-list__slot")||G;try{z.classList.add("pulse"),z.offsetHeight,z.classList.add("to-dark");const Y=()=>{z.classList.remove("pulse","to-dark"),z.removeEventListener("transitionend",Y)};z.addEventListener("transitionend",Y)}catch{}})}catch{}L()},Z=()=>{if(x.current){try{document.body.removeChild(x.current)}catch{}x.current=null}_.current&&(document.removeEventListener("dragover",_.current),_.current=null),C.current&&(document.removeEventListener("mousemove",C.current),C.current=null),D.current!==null&&(cancelAnimationFrame(D.current),D.current=null)},ee=()=>{f(null),L(),Z()};l.useEffect(()=>()=>Z(),[]);const L=()=>{try{if(w.current!==null&&(clearTimeout(w.current),w.current=null),A.current){try{A.current.classList.remove("drag-over")}catch{}A.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(R=>R.classList.remove("drag-over"))}catch{}};return l.useEffect(()=>{try{const R=Math.max(1,(p||[]).length);p.forEach((O,H)=>{const $=M.current.get(O.id);if(!$)return;let q=50;R>1&&(q=Math.round(H/(R-1)*100));try{$.style.setProperty("--marker-pos",q+"%")}catch{}})}catch{}},[p]),l.useEffect(()=>()=>{Z(),w.current!==null&&(clearTimeout(w.current),w.current=null)},[]),o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:u,children:o.jsx("div",{className:"order-list",children:p.map((R,O)=>{const H=Math.max(1,(p||[]).length),$=H>1?Math.round(O/(H-1)*100):50;return o.jsx("div",{className:"order-list__item",children:o.jsxs("div",{className:"order-list__slot","data-disabled":v==="disabled","aria-disabled":v==="disabled",children:[v!=="disabled"?o.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":$+"%"},ref:q=>{const I=M.current;q?I.set(R.id,q):I.delete(R.id)},children:o.jsx("span",{className:"order-list__slot-number button-1",children:O+1})}):null,o.jsxs("div",{ref:q=>{const I=W.current;q?I.set(R.id,q):I.delete(R.id)},className:`order-list__draggable ${y===O?"dragging":""}`,"data-disabled":v==="disabled","aria-disabled":v==="disabled",tabIndex:v==="disabled"?-1:0,draggable:v==="active",onDragStart:v==="active"?q=>j(O,q):void 0,onDragEnter:v==="active"?q=>F(O,q):void 0,onDragOver:v==="active"?q=>F(O,q):void 0,onDragLeave:v==="active"?()=>{try{w.current!==null&&clearTimeout(w.current),w.current=setTimeout(()=>{try{const q=document.querySelectorAll(".order-list .order-list__item");q&&q[O]&&(q[O].classList.remove("drag-over"),A.current===q[O]&&(A.current=null))}catch{}},80)}catch{}}:void 0,onDrop:v==="active"?q=>te(O,q):void 0,onDragEnd:v==="active"?ee:void 0,children:[o.jsx("span",{className:"order-list__item-text body-2",children:R.text}),v==="active"?o.jsxs("span",{className:"order-list__item-buttons",children:[o.jsx(le,{size:32,type:"dot",onClick:()=>b(O,-1),ariaLabel:c("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:O===0,useBorder:!1,useDisabledInvisible:!0}),o.jsx(le,{size:32,type:"dot",onClick:()=>b(O,1),ariaLabel:c("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:O===p.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},R.id)})})})}var qk="";Q(qk);const Yk=8e3;function Uk(e,t){return new Promise(a=>{let r=!1;const n=()=>{r||(r=!0,a())};e.then(n,n),setTimeout(n,t)})}function pc({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:n,onChange:i,context:s=[],selectable:c=!1,hideLabel:u=!1,hideAudio:d=!1,maxCards:m}){const{t:h}=me.useTranslation(),p=r??h("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),g=l.useMemo(()=>Array.isArray(s)?s:s&&s.items||[],[s]),v=m??3,b=(g||[]).slice(0,v);(g||[]).length>v&&console.warn(`TrainingStepCard: ${g.length} items passed but only ${v} shown`);const y=typeof e=="number"?e:-1,f=typeof t!="number"?"disabled":y<t?"done":y===t?"active":"disabled",[x,_]=l.useState(null),C=l.useRef([]),[A,w]=l.useState(!1),S=l.useMemo(()=>g.map(W=>W?.id??W?.word??"").join("|"),[g]);l.useEffect(()=>{_(null),C.current=[]},[S]);const D=l.useCallback((W,M)=>{if(c)return;const k={item:W,index:M,__ts:Date.now()};try{typeof i=="function"&&i(k)}catch{}if(f==="active"&&typeof n=="function")try{n(k)}catch{}},[c,i,f,n]),T=l.useCallback(async()=>{if(!(A||f==="disabled")){w(!0);try{for(const W of C.current)W&&await Uk(W.play(),Yk)}finally{w(!1)}}},[A,f]),E=l.useCallback((W,M)=>{if(f!=="active")return;_(M);const k={selectedValue:W.word||W.title||"",selectedIndex:M,item:W,__ts:Date.now()};try{typeof i=="function"&&i(k)}catch{}if(f==="active"&&typeof n=="function")try{n(k)}catch{}},[i,f,n]);return o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:p,onDone:n,titleProps:{usePlayAllBtn:!d&&b.length>0,onPlayAll:T,playAllActive:A},children:o.jsx("div",{className:"training-step__cards",children:b.length===0?o.jsx("div",{className:"training-step__empty",children:h("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):b.map((W,M)=>o.jsx(_n,{ref:k=>{C.current[M]=k},item:W,disabled:f==="disabled",onPlayDone:()=>D(W,M),selectable:c,selected:c&&x===M,onSelect:c?()=>E(W,M):void 0,flipDelay:M*120,hideLabel:u,hideAudio:d},W&&W.id||M))})})}const Kk=160;var Zk=".ihabdevteam-core-scope .panel{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);display:flex;flex-direction:column;overflow:visible;padding:0;text-align:left}.ihabdevteam-core-scope .panel--no-border{border:none}.ihabdevteam-core-scope .panel--no-bg{background:transparent;border-radius:0}.ihabdevteam-core-scope .panel--no-border .panel-row{padding-left:0;padding-right:0}.ihabdevteam-core-scope .panel--no-row-border .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel__header{align-items:center;border-bottom:1px solid var(--color-darkWhite);box-sizing:border-box;display:flex;gap:var(--spacing-xs);justify-content:space-between;margin:0;padding:0 20px}.ihabdevteam-core-scope .panel__header:last-child{border-bottom:none}.ihabdevteam-core-scope .panel--small .panel__header{min-height:48px}.ihabdevteam-core-scope .panel--medium .panel__header{min-height:56px}.ihabdevteam-core-scope .panel--large .panel__header{min-height:64px}.ihabdevteam-core-scope .panel__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;margin-right:var(--spacing-s);width:20px}.ihabdevteam-core-scope .panel__title-group{display:flex;flex-direction:column;gap:4px;margin-right:auto;min-width:0}.ihabdevteam-core-scope .panel__title{color:var(--color-darkGray);margin:0}.ihabdevteam-core-scope .panel__disc{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .panel__actions{display:flex;flex-shrink:0;gap:6px}.ihabdevteam-core-scope .panel-row{align-items:center;box-sizing:border-box;display:flex;gap:var(--spacing-m);justify-content:space-between;padding:4px 20px}.ihabdevteam-core-scope .panel--small .panel-row{min-height:48px}.ihabdevteam-core-scope .panel--medium .panel-row{min-height:56px}.ihabdevteam-core-scope .panel--large .panel-row{min-height:64px}.ihabdevteam-core-scope .panel-row+.panel-row{border-top:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel--fill .panel-row{border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel--fill .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel--no-row-border .panel-row{border-bottom:none}.ihabdevteam-core-scope .panel>:not(.panel-row)+.panel-row{border-top:none}.ihabdevteam-core-scope .panel-grid{grid-gap:1px;background:var(--color-darkWhite);display:grid;gap:1px;grid-template-columns:repeat(2,1fr);grid-template-columns:repeat(var(--panel-grid-cols,2),1fr);overflow:hidden;padding-bottom:1px}.ihabdevteam-core-scope .panel-grid .panel-row{background:var(--color-white)}.ihabdevteam-core-scope .panel-grid .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel-row--empty{color:var(--color-lightGray);justify-content:center}.ihabdevteam-core-scope .panel-row--loading{justify-content:center}.ihabdevteam-core-scope .panel__body--scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .panel-row--content{display:block;min-height:0;padding:16px}.ihabdevteam-core-scope .panel-row--scroll{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:16px 16px 20px}.ihabdevteam-core-scope .panel-row--content+.panel-row--content,.ihabdevteam-core-scope .panel-row--content+.panel-row--scroll,.ihabdevteam-core-scope .panel-row--scroll+.panel-row--content,.ihabdevteam-core-scope .panel-row--scroll+.panel-row--scroll{border-top:none}.ihabdevteam-core-scope .panel-row__icon{align-items:center;display:flex;flex-shrink:0;margin-right:-4px}.ihabdevteam-core-scope .panel-row__left{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__label{color:var(--color-deepGray)}.ihabdevteam-core-scope .panel-row__sub{color:var(--color-gray);margin-top:2px}.ihabdevteam-core-scope .panel-row__right{align-items:center;display:flex;flex:0 0 auto;justify-content:flex-end}@media (max-width:767px){.ihabdevteam-core-scope .panel-row{flex-wrap:wrap}.ihabdevteam-core-scope .panel-row__right{flex:0 1 auto;min-width:0}}.ihabdevteam-core-scope .panel--form .panel-row{grid-gap:var(--spacing-m);align-items:center;display:grid;gap:var(--spacing-m);grid-template-columns:80px 1fr;grid-template-columns:var(--panel-label-width,80px) 1fr}.ihabdevteam-core-scope .panel--form .panel-row:has(.text-field--full-width){align-items:flex-start}.ihabdevteam-core-scope .panel--form .panel-row:has(.text-field--full-width) .panel-row__left{padding-top:9px}.ihabdevteam-core-scope .panel-row--label-fixed .panel-row__left{flex:0 0 120px;flex:0 0 var(--panel-label-width,120px)}.ihabdevteam-core-scope .panel-row--label-fixed .panel-row__right{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--clickable{cursor:pointer;transition:background .1s,box-shadow .1s}.ihabdevteam-core-scope .panel-row--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .panel-row__text{color:var(--color-darkGray);overflow-wrap:break-word;text-align:right;word-break:break-word}.ihabdevteam-core-scope .panel-row--text .panel-row__right{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--block{align-items:stretch;display:flex;flex-direction:column;justify-content:center}.ihabdevteam-core-scope .panel-row__description{color:var(--color-gray);line-height:1.6;margin:0;overflow-wrap:break-word;word-break:break-word}.ihabdevteam-core-scope .panel-row__dropdown-group{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .panel-row__dropdown-group--full,.ihabdevteam-core-scope .panel-row__dropdown-item--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap{display:flex;flex-direction:column}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__text--full{text-align:left;width:100%}.ihabdevteam-core-scope .panel-row__input-wrap{display:flex;flex-direction:column}.ihabdevteam-core-scope .panel-row__input-wrap--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--vertical{align-items:flex-start;flex-direction:column;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .panel-row--vertical .panel-row__left{flex:none;width:100%}.ihabdevteam-core-scope .panel-row--vertical .panel-row__right{align-items:flex-start;flex:none;justify-content:flex-start;width:100%}.ihabdevteam-core-scope .panel-row--vertical .panel-row__text{margin-left:0;text-align:left}.ihabdevteam-core-scope .panel-row--device{grid-gap:0;align-items:stretch;display:grid;gap:0;grid-template-columns:1fr 1fr;min-height:0;padding:0}.ihabdevteam-core-scope .panel-row__device-column{box-sizing:border-box;display:flex;flex-direction:column;gap:0;min-height:164px;padding:14px 16px}.ihabdevteam-core-scope .panel-row__device-column+.panel-row__device-column{border-left:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel-row__device-head{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px;min-height:32px}.ihabdevteam-core-scope .panel-row__device-side{color:var(--color-darkGray);margin:0;text-align:left}.ihabdevteam-core-scope .panel-row__device-info{margin:0;text-align:left}.ihabdevteam-core-scope .panel-row__device-info,.ihabdevteam-core-scope .panel-row__device-kind{align-items:flex-start;display:flex;flex-direction:column;gap:3px}.ihabdevteam-core-scope .panel-row__device-name{color:var(--color-darkGray)}.ihabdevteam-core-scope .panel-row__device-detail{color:var(--color-gray)}.ihabdevteam-core-scope .panel-row__device-product{color:var(--color-darkGray)}.ihabdevteam-core-scope .panel-row__device-date{color:var(--color-lightGray);margin-top:2px}.ihabdevteam-core-scope .panel-row__device-empty{align-items:center;color:var(--color-lightGray);display:flex;flex:1;justify-content:center;text-align:center}.ihabdevteam-core-scope .required-mark{color:var(--color-main);margin-left:2px}.ihabdevteam-core-scope .panel-row__error{color:var(--color-error);margin-top:4px}.ihabdevteam-core-scope .panel-row__helper{color:var(--color-lightGray);margin-top:4px}.ihabdevteam-core-scope .panel-row__button-group{display:flex;gap:6px}@media (max-width:767px){.ihabdevteam-core-scope .panel-row__dropdown-group{flex-wrap:wrap}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap--full,.ihabdevteam-core-scope .panel-row__dropdown-item--full{flex:1 1 104px}}";Q(Zk);const xb=()=>{};function Cr({title:e,icon:t,disc:a,actions:r,size:n="medium",minHeight:i,maxWidth:s,className:c,scrollable:u,useBorder:d=!0,useBg:m=!0,useRowBorder:h=!0,labelWidth:p,form:g=!1,loading:v,empty:b,children:y}){const f=ye("panel",`panel--${n}`,g?"panel--form":"",i!==void 0?"panel--fill":"",d?"":"panel--no-border",m?"":"panel--no-bg",h?"":"panel--no-row-border",c),x={};return i!==void 0&&(x.minHeight=i),s!==void 0&&(x.maxWidth=typeof s=="number"?`${s}px`:s),p!==void 0&&(x["--panel-label-width"]=typeof p=="number"?`${p}px`:p),o.jsxs("div",{className:f,style:Object.keys(x).length?x:void 0,children:[(e!=null||a!=null)&&o.jsxs("div",{className:ye("panel__header",a!=null?"panel__header--with-disc":""),children:[t&&o.jsx(Pe,{icon:t,label:typeof e=="string"?e:void 0,className:"panel__icon"}),o.jsxs("div",{className:"panel__title-group",children:[e!=null&&o.jsx("h2",{className:"panel__title h5b",children:e}),a!=null&&o.jsx("p",{className:"panel__disc caption-1",children:a})]}),r&&o.jsx("div",{className:"panel__actions",children:r})]}),v?o.jsx(Na,{variant:"loading"}):b!=null&&(y==null||Array.isArray(y)&&y.length===0)?o.jsx(Na,{variant:"empty",children:b}):u?o.jsx("div",{className:"panel__body--scroll",children:y}):y]})}function Cb({cols:e=2,children:t}){return o.jsx("div",{className:"panel-grid",style:{"--panel-grid-cols":e},children:t})}function Na(e){const t=l.useId();if(!("variant"in e)){const{label:b,sub:y,onClick:f,children:x,align:_="horizontal",icon:C}=e,A=w=>{f&&w.target===w.currentTarget&&(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),f())};return o.jsxs("div",{className:ye("panel-row",_==="vertical"?"panel-row--vertical":"",f?"panel-row--clickable":""),onClick:f,onKeyDown:f?A:void 0,role:f?"button":void 0,tabIndex:f?0:void 0,children:[C!=null&&o.jsx("div",{className:"panel-row__icon",children:C}),b!=null&&o.jsxs("div",{className:"panel-row__left",children:[o.jsx("div",{className:"panel-row__label body-3",children:b}),y&&o.jsx("div",{className:"panel-row__sub caption-1",children:y})]}),o.jsx("div",{className:"panel-row__right",children:x})]})}if(e.variant==="description")return o.jsx("div",{className:"panel-row panel-row--block",children:o.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return o.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return o.jsx("div",{className:"panel-row panel-row--loading",children:o.jsx(Ao,{size:28})});if(e.variant==="custom"&&!e.label)return o.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:r,sub:n,onClick:i,required:s,error:c,align:u="horizontal",useFullWidth:d=!1,icon:m}=e;let h=null;const p=a==="toggle"?`panel-toggle-${t}`:void 0;if(a==="toggle"){const b=e;h=o.jsx(Pl,{checked:b.checked,onChange:b.onChange,id:p})}else if(a==="segmented"){const b=e;h=o.jsx(Ha,{options:b.options,value:b.value,onChange:b.onChange,size:b.size??40,ariaLabel:r})}else if(a==="dropdown"){const b=e,y=b.dropdowns?.length?o.jsx("div",{className:`panel-row__dropdown-group${d?" panel-row__dropdown-group--full":""}`,children:b.dropdowns.map((f,x)=>o.jsx("div",{className:d?"panel-row__dropdown-item--full":void 0,children:o.jsx(Ut,{options:f.options,value:f.value,onChange:f.onChange,placeholder:f.placeholder,block:d,error:!!c,ariaLabel:f.ariaLabel??([r,f.placeholder].filter(Boolean).join(" ")||void 0)})},x))}):o.jsx(Ut,{options:b.options??[],value:b.value??"",onChange:b.onChange??xb,block:d,error:!!c,ariaLabel:r});h=c?o.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[y,o.jsx("span",{className:"caption-1 panel-row__error",role:"alert",children:c})]}):y}else if(a==="button"){const b=e;b.buttons?.length?h=o.jsx("div",{className:"panel-row__button-group",children:b.buttons.map((y,f)=>o.jsx(le,{size:y.btnSize??40,variant:y.btnVariant??"default",disabled:y.disabled,onClick:y.onClick,children:y.label},f))}):h=o.jsx(le,{size:b.btnSize??40,variant:b.btnVariant??"default",disabled:b.disabled,onClick:b.onClick,children:b.buttonLabel})}else if(a==="text"){const b=e;h=o.jsx("span",{className:`panel-row__text body-2${d?" panel-row__text--full":""}`,style:b.valueColor?{color:b.valueColor}:void 0,children:b.value})}else if(a==="input"){const b=e;h=o.jsxs("div",{className:`panel-row__input-wrap${d?" panel-row__input-wrap--full":""}`,children:[o.jsx(Wa,{value:b.value,onChange:b.onChange??xb,onKeyDown:b.onKeyDown,onEnter:b.onEnter,placeholder:b.placeholder,inputMode:b.inputMode,readOnly:b.readOnly,disabled:b.disabled,type:b.type,autoComplete:b.autoComplete,maxLength:b.maxLength,showCount:b.showCount,multiline:b.multiline,rows:b.rows,fullWidth:d,error:c,ariaLabel:r,required:s}),b.helperText&&o.jsx("div",{className:"panel-row__helper caption-1",children:b.helperText})]})}else a==="custom"&&(h=e.children);const g=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&d,v=b=>{i&&b.target===b.currentTarget&&(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),i())};return o.jsxs("div",{className:ye("panel-row",u==="vertical"?"panel-row--vertical":"",g?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",i?"panel-row--clickable":""),onClick:i,onKeyDown:i?v:void 0,role:i?"button":void 0,tabIndex:i?0:void 0,children:[m!=null&&o.jsx("div",{className:"panel-row__icon",children:m}),o.jsxs("div",{className:"panel-row__left",children:[p?o.jsxs("label",{htmlFor:p,className:"panel-row__label body-3",children:[r,s&&o.jsx("span",{className:"required-mark",children:"*"})]}):o.jsxs("div",{className:"panel-row__label body-3",children:[r,s&&o.jsx("span",{className:"required-mark",children:"*"})]}),n&&o.jsx("div",{className:"panel-row__sub caption-1",children:n})]}),o.jsx("div",{className:"panel-row__right",children:h})]})}function _b(e){const t=e.productName||e.brand,a=[e.brand,e.fitType].filter(r=>!!r&&r!==t);return[...new Set(a)].join(" \xB7 ")}function wb({devices:e,onRelease:t}){const{t:a}=me.useTranslation();return o.jsx("div",{className:"panel-row panel-row--device",children:["\uC88C","\uC6B0"].map(r=>{const n=e[r],i=r==="\uC88C"?a("device.direction.left","\uC88C"):a("device.direction.right","\uC6B0");return o.jsxs("div",{className:"panel-row__device-column",children:[o.jsxs("div",{className:"panel-row__device-head",children:[o.jsx("span",{className:"panel-row__device-side body-2b",children:i}),n&&t&&o.jsx(le,{size:32,type:"dot",icon:"x",ariaLabel:a("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),showTooltipInfo:a("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>t(r)})]}),n?o.jsxs("div",{className:"panel-row__device-info",children:[o.jsxs("span",{className:"panel-row__device-kind",children:[n.device&&o.jsx(ht,{size:"small",variant:pm(n.device),fill:"soft",label:n.device}),_b(n)&&o.jsx("span",{className:"panel-row__device-detail body-3",children:_b(n)})]}),o.jsx("span",{className:"panel-row__device-name body-2b",children:n.productName||n.brand}),o.jsx("span",{className:"panel-row__device-date caption-1",children:a("customers.device.wornSince",{date:`${n.wornYear}.${n.wornMonth}.${n.wornDay}`})})]}):o.jsx("span",{className:"panel-row__device-empty body-3",children:a("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},r)})})}function Xk(e){return[{label:e("training.noise.level.none","\uC5C6\uC74C"),value:0},{label:e("training.noise.level.weak","\uC57D\uD568"),value:1},{label:e("training.noise.level.medium","\uBCF4\uD1B5"),value:2},{label:e("training.noise.level.strong","\uAC15\uD568"),value:3},{label:e("training.noise.level.veryStrong","\uB9E4\uC6B0 \uAC15\uD568"),value:4}]}function kb(e){return[{label:e("training.noise.type.default","\uAE30\uBCF8"),value:"defaultNoise",icon:"party-popper"},{label:e("training.noise.type.street","\uAE38\uAC70\uB9AC"),value:"street",icon:"car"},{label:e("training.noise.type.buzz","\uC640\uAE00\uC640\uAE00"),value:"buzz",icon:"message-square-more"},{label:e("training.noise.type.restaurant","\uC2DD\uB2F9"),value:"restaurant",icon:"coffee"}]}Xk(Ca.t.bind(Ca)),kb(Ca.t.bind(Ca));var Qk='.ihabdevteam-core-scope .noise-settings{border-radius:var(--radius-m);box-sizing:border-box;max-width:calc(100vw - 40px);padding:20px}.ihabdevteam-core-scope .tooltip-content:has(.noise-settings__header) .tooltip-content__header{border-bottom:1px solid var(--color-darkWhite);height:60px;padding:0 20px}.ihabdevteam-core-scope .noise-settings__header{align-items:center;display:flex;justify-content:space-between;width:100%}.ihabdevteam-core-scope .noise-settings__header span{color:var(--color-darkGray);font-weight:600}.ihabdevteam-core-scope .noise-settings__slider-input.slider--horizontal{flex:1 1 auto}.ihabdevteam-core-scope .noise-settings__value{font-feature-settings:"tnum";color:var(--color-main);flex:0 0 auto;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;width:44px}';Q(Qk);const hc="none",Jk=.5,e7=1.5,t7=.25;function mc({title:e,valueLabel:t,value:a,min:r,max:n,step:i,tickStep:s,size:c,onChange:u}){return o.jsxs(Na,{variant:"custom",label:e,useFullWidth:!0,children:[o.jsx(Ol,{value:a,onChange:u,min:r,max:n,step:i,size:c,showBgTick:!0,tickStep:s,ariaLabel:e,className:"noise-settings__slider-input"}),o.jsx("div",{className:"noise-settings__value button-1",children:t})]})}function bc({anchorRect:e,onClose:t}){const{t:a}=me.useTranslation(),r=oa("(max-width: 767px)")?40:24,n=nc(),i=n?.settings.level??0,s=n?.settings.type??"defaultNoise",c=n?.settings.enabled??!0,u=yk(i),d=n?.playbackRate??1,m=n?.mainVolume??1,h=Math.round(m*100),p=l.useCallback(y=>{try{n?.setMainVolume(Math.max(0,Math.min(1,y/100)))}catch{}},[n]),g=l.useCallback(y=>{try{n?.setPlaybackRate(y)}catch{}},[n]),v=l.useCallback(y=>{const f=xk(y);try{n?.setSettings({level:f})}catch{}},[n]),b=l.useCallback(y=>{try{y===hc?n?.setSettings({enabled:!1}):n?.setSettings({type:y,enabled:!0})}catch{}},[n]);return o.jsx(Sa,{anchorRect:e,offset:12,onClose:t,ariaLabel:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:o.jsxs("div",{className:"noise-settings__header",children:[o.jsx("span",{children:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),o.jsx(le,{size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:a("common.close","\uB2EB\uAE30"),onClick:t})]}),children:o.jsxs(Cr,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[o.jsx(mc,{title:a("training.playVolumeTitle","\uC7AC\uC0DD \uC18C\uB9AC"),valueLabel:`${h}%`,value:h,min:0,max:100,step:10,size:r,onChange:p}),o.jsx(mc,{title:a("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${d.toFixed(2)}x`,value:d,min:Jk,max:e7,step:t7,size:r,onChange:g}),o.jsx(mc,{title:a("training.noiseLevelTitle","\uC18C\uC74C \uD06C\uAE30"),valueLabel:`${u}%`,value:u,min:0,max:100,step:10,size:r,onChange:v}),o.jsx(Na,{variant:"custom",label:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:o.jsx(Ha,{ariaLabel:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:[{key:hc,label:a("training.noise.type.none","\uC5C6\uC74C")},...kb(a).map(y=>({key:y.value,label:y.label}))],value:c?s:hc,onChange:b})})]})})}var a7=".ihabdevteam-core-scope .training-page-bottom{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;flex:0 0 auto;gap:var(--spacing-s);justify-content:space-between;padding:12px 18px calc(12px + env(safe-area-inset-bottom));width:100%;z-index:5}.ihabdevteam-core-scope .pp-bottom__left{align-items:center;display:flex;gap:var(--spacing-m)}.ihabdevteam-core-scope .pp-bottom__right{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .pp-bottom__meters{border:1px solid var(--color-whiteLine);border-radius:14px;display:flex;flex-direction:column;gap:2px;justify-content:center;padding:8px 12px}.ihabdevteam-core-scope .pp-bottom__meter{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-label{color:var(--color-gray);min-width:28px}.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:none}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:flex}@media (min-width:768px){.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:block}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:none}}.ihabdevteam-core-scope .pp-bottom__tooltip-trigger{display:inline-block}";Q(a7);function gc({useNoiseSettingBtn:e=!1,onSettings:t,onNext:a,onResult:r,stepIndex:n=0,stepCount:i=0,pageIndex:s=0,pageCount:c=1}){const{t:u}=me.useTranslation(),[d,m]=l.useState(!1),[h,p]=l.useState(null),[g,v]=l.useState(!1),b=l.useRef(null),y=l.useRef(null),f=nc(),x=s<c-1,_=s===c-1,C=n===Math.max(0,i);l.useEffect(()=>{e||(m(!1),p(null))},[e]);const A=l.useCallback(()=>{m(!1),p(null)},[]),w=l.useCallback(()=>{if(d){m(!1),p(null);return}const T=b?.current?.getBoundingClientRect();T&&p(T),t?.(),m(!0)},[d,t]),S=l.useCallback(()=>{if(d){m(!1),p(null);return}const T=y?.current?.getBoundingClientRect();T&&p(T),t?.(),m(!0)},[d,t]),D=l.useCallback(()=>v(T=>!T),[]);return o.jsxs("div",{className:"pp-bottom",children:[o.jsxs("div",{className:"pp-bottom__left",children:[e?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"pp-bottom__settings--desktop",children:o.jsx("div",{ref:b,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:o.jsx(le,{size:56,type:"bar",icon:"settings",onClick:w,selected:d,ariaLabel:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),o.jsx("div",{className:"pp-bottom__settings--mobile",children:o.jsx("div",{ref:y,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:o.jsx(le,{size:56,type:"dot",icon:"settings",onClick:S,selected:d,ariaLabel:u("training.settings","\uC124\uC815"),minWidth:52})})})]}):null,e&&o.jsx(le,{size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:D,selected:g,ariaLabel:u("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")}),e&&g&&o.jsxs("div",{className:"pp-bottom__meters",children:[o.jsxs("div",{className:"pp-bottom__meter",children:[o.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.sentence","\uC7AC\uC0DD")}),o.jsx(vn,{analyser:f?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.sentence","\uC7AC\uC0DD")})]}),o.jsxs("div",{className:"pp-bottom__meter",children:[o.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.noise","\uC18C\uC74C")}),o.jsx(vn,{analyser:f?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.noise","\uC18C\uC74C")})]})]})]}),o.jsxs("div",{className:"pp-bottom__right",children:[_&&o.jsx(le,{size:56,type:"bar",icon:"check",onClick:typeof r=="function"?r:a,ariaLabel:u("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),label:u("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),variant:"main",disabled:!C}),x&&o.jsx(le,{size:56,type:"bar",rightIcon:"chevron-right",align:"right",onClick:a,ariaLabel:u("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),label:u("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),variant:"main",disabled:!C})]}),e&&d&&o.jsx(bc,{anchorRect:h,onClose:A})]})}var o7=".ihabdevteam-core-scope .training-page-top{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-title.training-popup-title{align-items:center;background:var(--color-deepWhite);border-bottom:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;gap:var(--spacing-s);justify-content:space-between;padding:12px 16px;position:relative;width:100%;z-index:6}.ihabdevteam-core-scope .pp-title__left{align-items:center;display:flex;gap:var(--spacing-s);min-width:0}.ihabdevteam-core-scope .pp-title__text{display:flex;flex-direction:column;min-width:0}.ihabdevteam-core-scope .pp-title__depth{color:var(--color-gray)}.ihabdevteam-core-scope .pp-title__title{font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .pp-title__title--empty{color:var(--color-whiteLine)}.ihabdevteam-core-scope .pp-title__description{color:var(--color-gray);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:767px){.ihabdevteam-core-scope .pp-title.training-popup-title{gap:var(--spacing-xs);padding:10px 12px}.ihabdevteam-core-scope .pp-title__depth{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .pp-title__left{flex:1;min-width:0;overflow:hidden}}";Q(o7);function fc({title:e,subtitle:t,desc:a,depth:r,icon:n,wrapperStyle:i,iconTooltip:s,pageIndex:c,pageCount:u,progressMax:d,progressIndex:m,onBack:h,onClose:p}){const{t:g}=me.useTranslation(),v=oa("(max-width: 767px)"),b=Number.isInteger(m)?m:c||0,y=Number.isInteger(d)?d:u||0,f=h||p,x=Array.isArray(r)?v?r[r.length-1]:r.join(" / "):r,_=typeof e=="string"?e.trim():e,C=typeof t=="string"?t.trim():t,A=!!(_||C),w=A?_||C:g("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),S=x||t,D=v&&typeof S=="string"&&(S.includes(" \xB7 ")||S.includes(" / "))?S.split(/\s[·/]\s/).pop():S,T=l.useMemo(()=>{const E=i&&typeof i=="object"?{...i}:{};return!("width"in E)&&!("height"in E)&&(E.width="40px",E.height="40px"),E},[i]);return o.jsxs("header",{className:"pp-title training-popup-title",children:[o.jsxs("div",{className:"pp-title__left",children:[f?o.jsx(le,{size:48,type:"dot",icon:"chevron-left",ariaLabel:g("common.back","\uB4A4\uB85C"),onClick:f,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,o.jsx("div",{children:n?o.jsx(gm,{icon:n,label:e,tooltip:s,wrapperStyle:T}):null}),o.jsxs("div",{className:"pp-title__text",children:[D?o.jsx("span",{className:"pp-title__depth caption-1",children:D}):null,o.jsx("span",{className:`pp-title__title h2${A?"":" pp-title__title--empty"}`,children:w}),a?o.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),o.jsx(Vl,{max:Math.max(0,y??0),index:Math.max(0,b??0)})]})}function Sb(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function Ab(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(t=>typeof t=="string"?t.split("|").map(a=>a.trim()).filter(Boolean):t||t===0?[String(t)]:[]):typeof e=="string"?e.split("|").map(t=>t.trim()).filter(Boolean):[String(e)]}function vc(e,t,a){const r=e,n=r?.title||r?.name||(Array.isArray(t)?t[t.length-1]:void 0)||a||"\uD6C8\uB828",i=Kr().find(c=>c.key===(r?.category_0||r?.category_main_code)),s=i?.subs?.find(c=>c.key===(r?.category_1||r?.category_sub_code));return{title:n,label:r?.title||n,depth:t,icon:i?.icon,wrapperStyle:i?.color?{"--t-item-fg":i.color}:void 0,iconTooltip:[i?.label,s?.label].filter(Boolean).join(" / ")||void 0}}function Ln(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function Tb(e){const t=e;return Array.isArray(t?.items)?t.items:Array.isArray(e)?e:e?[e]:[]}function Bb({idPrefix:e,trainingData:t,depth:a,fallbackTitle:r="\uD6C8\uB828",pages:n=[],emptyMessage:i,buildResults:s,metaPatch:c}){const u=vc(t,a,r),d=typeof c=="function"?c(u)||{}:c||{},m=t?.id||t?.title||n.length;return{id:`${e}:${m}`,meta:{...u,...d},pages:n,emptyMessage:i,buildResults:s}}function Nb(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const t=e;return t.context||t.sentence||t.question||""||""}return""}function Db(e){if(e&&typeof e=="object"){const t=e;if(Array.isArray(t.selectedValues))return t.selectedValues;if(t.selectedValue!==void 0)return t.selectedValue;if(t.selectedIndex!==void 0)return t.selectedIndex;if(t.value!==void 0)return t.value}return e}function Eb(e,t=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(t))return String(t[e]??"");if(typeof e=="string")return e}function yc(e,t){if(!(!e||typeof e!="object"))return e[`step-${t}`]}function jb(e,t,a,r){return yc(e,t*a+r)}function Lb({payload:e,selected:t,choices:a=[],correctAnswers:r=[]}){if(e&&typeof e=="object"){const n=e;if(Array.isArray(n.selectedValues))return r.every(i=>n.selectedValues.includes(i))&&n.selectedValues.every(i=>r.includes(i));if(typeof n.correct=="boolean")return n.correct}if(r.length){if(typeof t=="number"&&Array.isArray(a)&&a.length)return r.some(n=>String(n)===String(a[t]));if(typeof t<"u")return r.some(n=>String(n)===String(t))}}function Mb(e){return e?Array.isArray(e.items)?e.items.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const Pb=l.createContext(null);function r7(){const e=l.useContext(Pb);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function n7({index:e,stepIndex:t,isLast:a=!1,title:r="\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.",choices:n=[],onDone:i,onChange:s}){const c=typeof e=="number"?e:-1,u=typeof t!="number"?"disabled":c<t?"done":c===t?"active":"disabled",[d,m]=l.useState(()=>n.map(()=>null)),h=n.join("|");l.useEffect(()=>{m(h?h.split("|").map(()=>null):[])},[h]);const p=l.useMemo(()=>d.filter(v=>v!==null).length+1,[d]),g=l.useCallback(v=>{u==="active"&&m(b=>{const y=[...b];if(y[v]!==null){const x=y[v];return y.map(_=>_!==null&&_>=x?null:_)}y[v]=p;const f={selectedOrder:y,words:n,__ts:Date.now()};try{typeof s=="function"&&s(f)}catch{}if(y.every(x=>x!==null))try{typeof i=="function"&&i(f)}catch{}return y})},[u,p,s,i,n]);return o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:r,onDone:i,children:o.jsx("div",{className:"training-step__cards",children:n.map((v,b)=>o.jsx(_n,{item:{word:v},disabled:u==="disabled",selectable:!0,selected:d[b]!==null,orderRank:d[b],onSelect:()=>g(b),flipDelay:b*120,hideLabel:!1,hideAudio:!0},`${v}-${b}`))})})}function _r(e){return null}_r.__isTrainingPage=!0;function No(e,t){const a=r7();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof t=="number"?e===t-1:!1,onDone:r=>a.handleStepDone(r,e),onChange:r=>a.handleStepChange(r,e)}}function xc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s}=No(e,t);return o.jsx(En,{...a,index:r,stepIndex:n,isLast:i,onDone:s})}function Cc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(Nn,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}function _c({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(Dn,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}function wc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(jn,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}function kc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(pc,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}function i7({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(n7,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}var s7=`.ihabdevteam-core-scope .trp-result{display:flex;flex:1;flex-direction:column;min-height:0;padding:0;position:relative}.ihabdevteam-core-scope .popup--training-result .popup-header{padding:var(--spacing-l) var(--spacing-l) 0;position:absolute;right:0;top:0;z-index:1}.ihabdevteam-core-scope .trp-result__head{padding:12px 72px 20px;position:relative;text-align:center}.ihabdevteam-core-scope .trp-result__eyebrow{align-items:center;color:var(--color-main);display:inline-flex;gap:var(--spacing-xs);letter-spacing:.22em;margin:0 0 14px;text-transform:uppercase}.ihabdevteam-core-scope .trp-result__eyebrow:after,.ihabdevteam-core-scope .trp-result__eyebrow:before{background:currentColor;content:"";height:1px;opacity:.35;width:24px}.ihabdevteam-core-scope .trp-result__title{color:var(--color-black);font-size:28px;margin:0}.ihabdevteam-core-scope .trp-result__subtitle{color:var(--color-gray);margin:10px 0 0}.ihabdevteam-core-scope .trp-score{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-m);margin:36px auto 8px}.ihabdevteam-core-scope .trp-score__figure{font-feature-settings:"tnum";align-items:baseline;display:flex;font-variant-numeric:tabular-nums;gap:var(--spacing-s)}.ihabdevteam-core-scope .trp-score__sep,.ihabdevteam-core-scope .trp-score__total{align-self:flex-end;color:var(--color-lightGray);font-size:44px;letter-spacing:-1px;padding-bottom:18px}.ihabdevteam-core-scope .trp-score__big{background:var(--color-main);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:112px;letter-spacing:-5px;line-height:.92}.ihabdevteam-core-scope .trp-accuracy{align-items:center;display:flex;gap:6px;justify-content:center;margin:28px auto 0;max-width:620px}.ihabdevteam-core-scope .trp-accuracy__seg{background:var(--color-darkWhite,var(--color-darkWhite));border-radius:999px;flex:1;height:6px}.ihabdevteam-core-scope .trp-accuracy__seg.is-on{background:linear-gradient(90deg,var(--color-main),var(--color-sub))}.ihabdevteam-core-scope .trp-accuracy__label{font-feature-settings:"tnum";color:var(--color-gray);font-variant-numeric:tabular-nums;margin-left:var(--spacing-xs);white-space:nowrap}.ihabdevteam-core-scope .trp-result__body{padding:16px 0 0}.ihabdevteam-core-scope .result-table{width:100%}.ihabdevteam-core-scope .result-table__head{grid-gap:var(--spacing-m);border-bottom:1px solid var(--color-whiteLine);color:var(--color-lightGray);display:grid;gap:var(--spacing-m);grid-template-columns:1fr 100px;letter-spacing:.16em;padding:12px 4px 14px;text-transform:uppercase}.ihabdevteam-core-scope .result-table--answer .result-table__head,.ihabdevteam-core-scope .result-table--answer .result-table__row{grid-template-columns:1fr 200px 100px}.ihabdevteam-core-scope .result-table__head .col-right{text-align:center}.ihabdevteam-core-scope .result-table__row{grid-gap:var(--spacing-m);align-items:center;border-bottom:1px solid var(--color-whiteLine);display:grid;gap:var(--spacing-m);grid-template-columns:1fr 100px;padding:22px 4px;transition:background .18s ease}.ihabdevteam-core-scope .result-table__row:hover{background:var(--color-deepWhite)}.ihabdevteam-core-scope .result-table__row:last-child{border-bottom:0}.ihabdevteam-core-scope .trp-row__problem{align-items:baseline;display:flex;gap:10px}.ihabdevteam-core-scope .trp-row__no{font-feature-settings:"tnum";color:var(--color-lightGray);flex-shrink:0;font-variant-numeric:tabular-nums;width:32px}.ihabdevteam-core-scope .trp-row__q{color:var(--color-black);letter-spacing:-.1px}.ihabdevteam-core-scope .trp-row__judge{align-self:center;display:flex;justify-content:center}.ihabdevteam-core-scope .trp-row__answers{align-self:center;display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .trp-row__answer-line{align-items:baseline;display:flex;gap:10px}.ihabdevteam-core-scope .trp-row__answer-label{flex-shrink:0;width:32px}.ihabdevteam-core-scope .trp-row__answer-label.answer-correct{color:var(--color-lightGray)}.ihabdevteam-core-scope .trp-row__answer-label.answer-selected.is-correct{color:var(--color-main)}.ihabdevteam-core-scope .trp-row__answer-label.answer-selected.is-wrong{color:var(--color-error)}.ihabdevteam-core-scope .trp-row__answer-value{color:var(--color-black)}.ihabdevteam-core-scope .trp-row__answer-value.is-correct{color:var(--color-main)}.ihabdevteam-core-scope .trp-row__answer-value.is-wrong{color:var(--color-error)}.ihabdevteam-core-scope .popup-footer.trp-result__foot{align-items:center;background:var(--color-white);display:flex;flex-shrink:0;gap:var(--spacing-s);justify-content:center;padding:var(--spacing-l)}.ihabdevteam-core-scope .trp-foot__note{align-items:center;color:var(--color-gray);display:flex;font-size:13px;gap:var(--spacing-xs)}.ihabdevteam-core-scope .trp-foot__note svg{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .trp-actions{display:flex;gap:var(--spacing-s)}@keyframes result-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ihabdevteam-core-scope .trp-result.is-on{animation:result-rise .5s cubic-bezier(.22,.9,.3,1) both}.ihabdevteam-core-scope .trp-result.is-on .trp-score__big{animation:result-rise .7s cubic-bezier(.22,.9,.3,1) .1s both}.ihabdevteam-core-scope .trp-result.is-on .result-table__row{animation:result-rise .5s cubic-bezier(.22,.9,.3,1) both}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(2){animation-delay:.18s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(3){animation-delay:.24s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(4){animation-delay:.3s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(5){animation-delay:.36s}@media (max-width:767px){.ihabdevteam-core-scope .trp-result{padding:0}.ihabdevteam-core-scope .trp-result__head{padding:0 20px 20px}.ihabdevteam-core-scope .trp-result__body{padding:0}.ihabdevteam-core-scope .popup-footer.trp-result__foot{border-top:1px solid var(--color-whiteLine);gap:var(--spacing-xs);padding:var(--spacing-l)}.ihabdevteam-core-scope .trp-actions{display:flex;gap:var(--spacing-xs);width:100%}.ihabdevteam-core-scope .trp-actions>*{flex:1;min-width:0}.ihabdevteam-core-scope .trp-score{gap:10px;margin:20px auto 4px}.ihabdevteam-core-scope .trp-score__big{font-size:72px;letter-spacing:-3px}.ihabdevteam-core-scope .trp-score__sep,.ihabdevteam-core-scope .trp-score__total{font-size:28px;padding-bottom:10px}.ihabdevteam-core-scope .result-table__head{display:none}.ihabdevteam-core-scope .result-table__head,.ihabdevteam-core-scope .result-table__row{gap:var(--spacing-xs);grid-template-columns:1fr auto}.ihabdevteam-core-scope .result-table__row{padding:14px 4px}.ihabdevteam-core-scope .trp-row__judge{justify-content:flex-start}.ihabdevteam-core-scope .result-table--answer .result-table__row{align-items:start;gap:6px;grid-template-columns:1fr;grid-template-rows:auto auto auto;padding:14px 4px}.ihabdevteam-core-scope .result-table--answer .trp-row__judge{grid-row:1;justify-content:flex-start}.ihabdevteam-core-scope .result-table--answer .trp-row__problem{grid-row:2}.ihabdevteam-core-scope .result-table--answer .trp-row__answers{grid-row:3}
966
+ `).map((s,c,u)=>o.jsxs(l.Fragment,{children:[s,c<u.length-1&&o.jsx("br",{})]},c))})}),o.jsxs("div",{className:"site-footer__links",children:[o.jsxs("div",{className:"site-footer__column",children:[o.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.site.title","\uC0AC\uC774\uD2B8")}),o.jsxs("ul",{children:[o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.malgwi","\uB9D0\uADC0")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/sound-localization",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.soundDirection","\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/vr-sound-localization",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.vrSoundDirection","VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/hearing-test-pro",target:"_blank",rel:"noopener noreferrer",children:i("footer.site.hearingTest","\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C")})})]})]}),o.jsxs("div",{className:"site-footer__column",children:[o.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.sns.title","SNS")}),o.jsxs("ul",{children:[o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://blog.naver.com/ihab_official",target:"_blank",rel:"noopener noreferrer",children:i("footer.sns.naverBlog","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"https://www.youtube.com/@%EC%95%84%EC%9D%B4%ED%95%B4%EB%B8%8C-%EA%B3%B5%EC%8B%9D%EC%B1%84%EB%84%90",target:"_blank",rel:"noopener noreferrer",children:"Youtube"})})]})]}),o.jsxs("div",{className:"site-footer__column",children:[o.jsx("div",{className:"site-footer__column-title footer-title",children:i("footer.policy.title","\uC815\uCC45")}),o.jsxs("ul",{children:[o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"#",onClick:s=>{e&&(s.preventDefault(),e())},children:i("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),o.jsx("li",{children:o.jsx("a",{className:"footer-link",href:"#",onClick:s=>{t&&(s.preventDefault(),t())},children:i("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),o.jsx("hr",{className:"site-footer__rule"}),o.jsxs("div",{className:"site-footer__bottom",children:[o.jsx("div",{className:"site-footer__brand",children:o.jsx("img",{src:Nl,alt:"IHAB",className:"site-footer__logo"})}),o.jsxs("div",{className:"site-footer__meta",children:[o.jsxs("div",{children:[o.jsx("span",{className:"footer-title",children:i("footer.ceo","\uB300\uD45C")}),o.jsx("span",{className:"footer-meta caption-1",children:i("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),o.jsxs("div",{children:[o.jsx("span",{className:"footer-title",children:i("footer.address","\uC8FC\uC18C")}),o.jsx("span",{className:"footer-meta caption-1",children:i("footer.addressValue","\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638")})]}),o.jsxs("div",{children:[o.jsx("span",{className:"footer-title",children:i("footer.support","\uACE0\uAC1D\uC13C\uD130")}),o.jsxs("span",{className:"footer-meta caption-1",children:[r," \xA0 ",n]})]})]})]}),o.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}var fk='.ihabdevteam-core-scope .landing-header{background:var(--landing-header-bg,var(--color-deepWhite));border-bottom:1px solid rgba(15,18,60,.05);border-bottom:1px solid var(--landing-header-border,rgba(15,18,60,.05));position:sticky;top:0;transform:translateZ(0);will-change:transform;z-index:500;z-index:var(--z-sticky,500)}.ihabdevteam-core-scope .landing-header__inner{align-items:center;display:flex;height:72px;height:var(--landing-header-height,72px);justify-content:space-between;position:relative}.ihabdevteam-core-scope .landing-header__brand{align-items:center;display:flex;flex:0 0 auto;margin-right:auto;text-decoration:none}.ihabdevteam-core-scope .landing-header__logo{display:block;height:40px;height:var(--landing-header-logo-height,40px);max-width:none;transform-origin:left center;transition:transform .3s cubic-bezier(.2,.9,.2,1.2),filter .3s;width:auto}.ihabdevteam-core-scope .landing-header__brand:hover .landing-header__logo{filter:brightness(1.08);transform:scale(1.05)}.ihabdevteam-core-scope .landing-header__links{align-items:center;color:var(--landing-header-link-color,var(--color-deepGray));display:flex;font-size:15px;font-weight:500;gap:36px;left:50%;position:absolute;transform:translateX(-50%)}.ihabdevteam-core-scope .landing-header__links a{color:inherit;padding:6px 0;position:relative;text-decoration:none;transition:color .2s}.ihabdevteam-core-scope .landing-header__links a:hover{color:var(--landing-header-link-hover,var(--color-main))}.ihabdevteam-core-scope .landing-header__links a:after{background:linear-gradient(90deg,var(--color-main),var(--color-sub));border-radius:1px;bottom:0;content:"";height:2px;left:0;position:absolute;right:100%;transition:right .35s cubic-bezier(.2,.7,.2,1)}.ihabdevteam-core-scope .landing-header__links a:hover:after{right:0}.ihabdevteam-core-scope .landing-header__actions{align-items:center;display:flex;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .landing-header__toggle{align-items:center;background:none;border:0;color:var(--landing-header-link-color,var(--color-deepGray));cursor:pointer;display:none;height:44px;justify-content:center;margin-right:-10px;width:44px}.ihabdevteam-core-scope .landing-header__burger{display:block;height:14px;position:relative;width:22px}.ihabdevteam-core-scope .landing-header__burger>span{background:currentColor;border-radius:1px;height:2px;inset-inline:0;position:absolute;transition:transform .2s cubic-bezier(.2,.7,.2,1),opacity .2s cubic-bezier(.2,.7,.2,1)}.ihabdevteam-core-scope .landing-header__burger>span:first-child{top:0}.ihabdevteam-core-scope .landing-header__burger>span:nth-child(2){top:6px}.ihabdevteam-core-scope .landing-header__burger>span:nth-child(3){top:12px}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:first-child{transform:translateY(6px) rotate(45deg)}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:nth-child(2){opacity:0}.ihabdevteam-core-scope .landing-header__toggle--open .landing-header__burger>span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.ihabdevteam-core-scope .landing-header__drawer{background:var(--landing-header-bg,var(--color-deepWhite));border-top:1px solid rgba(15,18,60,.05)}.ihabdevteam-core-scope .landing-header__drawer-item{display:block}.ihabdevteam-core-scope .landing-header__drawer-item a{align-items:center;color:var(--landing-header-link-color,var(--color-deepGray));display:flex;font-size:15px;font-weight:500;min-height:48px;text-decoration:none;transition:color .2s}.ihabdevteam-core-scope .landing-header__drawer-item a:hover,.ihabdevteam-core-scope .landing-header__drawer-item a[aria-current=page]{color:var(--landing-header-link-hover,var(--color-main))}@media (max-width:960px){.ihabdevteam-core-scope .landing-header__links{display:none}.ihabdevteam-core-scope .landing-header__toggle{display:flex}}@media (min-width:961px){.ihabdevteam-core-scope .landing-header__drawer{display:none}}';Q(fk);function pb({logo:e,logoAlt:t="",logoHref:a,links:r=[],actions:n,className:i,containerClassName:s,renderLink:c,menuLabel:u={open:"\uBA54\uB274 \uC5F4\uAE30",close:"\uBA54\uB274 \uB2EB\uAE30"}}){const[d,m]=l.useState(!1),h=s?`${s} landing-header__inner`:"landing-header__inner",p=(g,v)=>c?c(g,{onClick:v}):o.jsx("a",{href:g.href,onClick:v,"aria-current":g.current?"page":void 0,children:g.label});return o.jsxs("header",{className:i?`landing-header ${i}`:"landing-header",children:[o.jsxs("div",{className:h,children:[e!=null&&(()=>{const g=typeof e=="string"?o.jsx("img",{src:e,alt:t,className:"landing-header__logo"}):e;return a?o.jsx("a",{href:a,className:"landing-header__brand",children:g}):o.jsx("div",{className:"landing-header__brand",children:g})})(),r.length>0&&o.jsx("nav",{className:"landing-header__links",children:r.map(g=>o.jsx("span",{children:p(g)},g.href))}),o.jsxs("div",{className:"landing-header__actions",children:[n,r.length>0&&o.jsx("button",{type:"button",onClick:()=>m(g=>!g),"aria-expanded":d,"aria-controls":"landing-header-drawer","aria-label":d?u.close:u.open,className:d?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:o.jsxs("span",{className:"landing-header__burger",children:[o.jsx("span",{}),o.jsx("span",{}),o.jsx("span",{})]})})]})]}),r.length>0&&o.jsx("nav",{id:"landing-header-drawer",hidden:!d,className:"landing-header__drawer",children:o.jsx("div",{className:s??void 0,children:r.map(g=>o.jsx("span",{className:"landing-header__drawer-item",children:p(g,()=>m(!1))},g.href))})})]})}var vk=".ihabdevteam-core-scope .bottom-sticky{animation:bottom-sticky-in .4s cubic-bezier(.2,.9,.2,1) both;bottom:24px;bottom:var(--bottom-sticky-offset,24px);left:50%;max-width:680px;max-width:var(--bottom-sticky-max-width,680px);position:fixed;transform:translateX(-50%);width:calc(100% - 48px);z-index:500;z-index:var(--z-sticky,500)}@keyframes bottom-sticky-in{0%{opacity:0;transform:translateX(-50%) translateY(16px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.ihabdevteam-core-scope .bottom-sticky__inner{align-items:center;background:var(--bottom-sticky-bg,var(--color-pureWhite));border-radius:20px;border-radius:var(--radius-m,20px);box-shadow:0 8px 40px rgba(15,18,60,.18),0 2px 8px rgba(15,18,60,.06);display:flex;gap:16px;gap:var(--spacing-m,16px);justify-content:space-between;padding:12px 12px 12px 24px;transition:box-shadow .2s,transform .2s}.ihabdevteam-core-scope .bottom-sticky__inner--clickable{cursor:pointer}.ihabdevteam-core-scope .bottom-sticky__inner--clickable:hover{border:1px solid var(--color-main);box-shadow:0 16px 56px color-mix(in srgb,var(--color-main) 30%,transparent),0 4px 12px color-mix(in srgb,var(--color-main) 15%,transparent);transform:translateY(-4px)}.ihabdevteam-core-scope .bottom-sticky__content{align-items:center;display:flex;flex:1;gap:12px;gap:var(--spacing-s,12px);justify-content:center}.ihabdevteam-core-scope .bottom-sticky__tagline{align-items:center;color:var(--color-black);display:flex;gap:0;margin:0;white-space:nowrap}.ihabdevteam-core-scope .bottom-sticky__tagline-highlight{background:linear-gradient(90deg,var(--color-main),var(--color-sub),var(--color-infoLink));-webkit-background-clip:text;background-clip:text;color:transparent;display:inline}.ihabdevteam-core-scope .bottom-sticky__tagline-part{align-items:center;display:flex;white-space:nowrap}.ihabdevteam-core-scope .bottom-sticky__tagline-logo{display:block;height:32px;width:auto}@media (max-width:600px){.ihabdevteam-core-scope .bottom-sticky{bottom:16px;bottom:var(--bottom-sticky-offset,16px);width:calc(100% - 32px)}.ihabdevteam-core-scope .bottom-sticky__inner{align-items:stretch;flex-direction:column;gap:12px;gap:var(--spacing-s,12px);padding:16px;padding:var(--spacing-m,16px)}.ihabdevteam-core-scope .bottom-sticky__content{flex:none;gap:6px;justify-content:center}.ihabdevteam-core-scope .bottom-sticky__tagline{flex-wrap:wrap;justify-content:center;text-align:center;white-space:normal}.ihabdevteam-core-scope .bottom-sticky__tagline-logo{height:26px}}";Q(vk);function hb({children:e,action:t,onClick:a,className:r}){const n=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return o.jsx("div",{className:r?`bottom-sticky ${r}`:"bottom-sticky",children:o.jsxs("div",{className:n,onClick:a,children:[o.jsx("div",{className:"bottom-sticky__content",children:e}),t]})})}const rc=9,yk=e=>Math.round(Math.min(rc,Math.max(0,e))/rc*100),xk=e=>e/100*rc,mb={enabled:!0,type:"defaultNoise",level:4.5,speed:1,mainVolume:1,mainSpeed:1},bb=l.createContext(null);function nc(){return l.useContext(bb)}const ic=e=>`${Xn()}/${e}`,gb=e=>Array.from({length:10},(t,a)=>ic(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),Bn={get defaultNoise(){return ic("noise1.mp3")},get street(){return gb("noise2")},get restaurant(){return gb("noise3")},get buzz(){return ic("noise4.mp3")}};function Ck(e){const t=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return Bn.defaultNoise;case"street":return Bn.street[t];case"restaurant":return Bn.restaurant[t];case"buzz":return Bn.buzz;default:return null}}function _k({noisePlayer:e,audioRef:t,playbackStateRef:a}){const r=l.useRef(e?.registerAnalyser);r.current=e?.registerAnalyser;const n=l.useRef(null),[i,s]=l.useState(null),c=l.useRef(null),u=l.useRef(null),d=l.useRef(null),m=l.useRef(0),h=l.useRef(null),p=l.useCallback(()=>{d.current!==null&&(cancelAnimationFrame(d.current),d.current=null),h.current!==null&&(clearTimeout(h.current),h.current=null)},[]),g=l.useCallback((y,f=250)=>{const x=n.current;if(!x||!x.src)return;m.current+=1,p();try{Wo(),r.current?.("noise",Ho(x))}catch{}const _=x.paused?0:x.volume;x.paused&&(x.volume=0),x.play().catch(()=>{});const C=performance.now(),A=()=>{const w=Math.min(1,(performance.now()-C)/f);try{x.volume=Math.max(0,Math.min(1,_+(y-_)*w))}catch{}w<1?d.current=requestAnimationFrame(A):d.current=null};d.current=requestAnimationFrame(A)},[p]),v=l.useCallback((y=250,f)=>{const x=n.current;if(!x||x.paused){f?.();return}const _=++m.current;p();const C=performance.now(),A=x.volume,w=()=>{const S=Math.min(1,(performance.now()-C)/y);try{x.volume=Math.max(0,A*(1-S))}catch{}if(S<1)d.current=requestAnimationFrame(w);else{d.current=null,h.current!==null&&(clearTimeout(h.current),h.current=null);try{x.pause()}catch{}f?.()}};d.current=requestAnimationFrame(w),h.current=setTimeout(()=>{if(h.current=null,m.current===_){d.current!==null&&(cancelAnimationFrame(d.current),d.current=null);try{x.paused||(x.volume=0,x.pause(),f?.())}catch{}}},y+150)},[p]);l.useEffect(()=>{const y=document.createElement("audio");return y.loop=!0,y.crossOrigin="anonymous",n.current=y,()=>{p();try{y.pause(),y.src=""}catch{}n.current=null}},[p]);const b=!!e?.settings.enabled&&(e?.settings.level??0)>0;return l.useEffect(()=>{if(!b)return;let y=0;const f=setInterval(()=>{const x=n.current;if(!x||x.paused){y=0;return}const _=t.current;if(_&&!_.paused&&!_.ended||a.current==="playing"){y=0;return}y+=1,y>=2&&(y=0,v())},400);return()=>clearInterval(f)},[v,b,t,a]),l.useEffect(()=>{const y=()=>{if(!document.hidden)return;const f=n.current;if(f&&!f.paused){p();try{f.pause()}catch{}}};return document.addEventListener("visibilitychange",y),()=>document.removeEventListener("visibilitychange",y)},[p]),l.useEffect(()=>{u.current=e?{enabled:e.settings.enabled,level:e.settings.level,type:e.settings.type}:null},[e,e?.settings.enabled,e?.settings.level,e?.settings.type]),l.useEffect(()=>{const y=e?.settings,f=n.current;if(!f)return;if(!y||!y.enabled||y.level===0){v();return}const x=Math.min(1,y.level/9);if(c.current!==y.type){const _=Ck(y.type);_&&(c.current=y.type,s(_),v(150,()=>{f.src=_,f.load();const C=t.current;C&&!C.paused&&f.addEventListener("canplay",function A(){f.removeEventListener("canplay",A);const w=t.current;w&&!w.paused&&!w.ended&&g(x)})}))}else{const _=t.current,C=!!_&&!_.paused&&!_.ended;if(C&&f.paused&&f.src)g(x);else if(!f.paused)if(!C)v();else{p();const A=f.volume,w=performance.now(),S=()=>{const N=Math.min(1,(performance.now()-w)/150);try{f.volume=A+(x-A)*N}catch{}N<1?d.current=requestAnimationFrame(S):d.current=null};d.current=requestAnimationFrame(S)}}},[e?.settings,e?.settings.enabled,e?.settings.level,e?.settings.type,p,g,v,t]),l.useEffect(()=>{const y=n.current;if(y)try{y.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:n,activeNoiseUrl:i,noiseSettingsRef:u,cancelNoiseFade:p,fadeInNoise:g,fadeOutNoise:v}}function wk({ttsText:e,playbackRate:t,mainVolume:a,fillRef:r,waveProgressRef:n,setProgress:i,setPlaybackState:s,setStateLocal:c,fadeInNoise:u,fadeOutNoise:d,noiseSettingsRef:m,onDoneRef:h,handleEndRef:p}){const g=l.useRef(null),v=l.useRef(0),b=l.useRef(null);l.useEffect(()=>()=>{try{if(b.current&&(cancelAnimationFrame(b.current),b.current=null),window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}}catch{}},[]);const y=(_,C=1)=>{try{const A=(_||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(_||"").length);return Math.max(700,Math.round(A*300/Math.max(.25,C)))}catch{return 1200}},f=l.useCallback(_=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof h.current=="function"&&h.current(!0)}catch{}return}const C=window.speechSynthesis;try{try{C.cancel()}catch{}const A=_??e,w=(Array.isArray(A)?A[0]??"":A)||"",S=new SpeechSynthesisUtterance(w);try{S.rate=Math.max(.3,Math.min(3,t))}catch{}try{S.volume=Math.max(0,Math.min(1,a))}catch{}v.current=y(w,S.rate||1),g.current=performance.now(),i(0),s("playing"),c("playMode");const N=m.current;N?.enabled&&(N?.level??0)>0&&u(N.level/9);const T=()=>{try{const E=g.current||performance.now(),W=performance.now()-E,L=v.current||1200,k=Math.min(1,W/L);i(k);try{r.current&&(r.current.style.left=`${k*100}%`),n.current&&n.current.style.setProperty("--progress",String(k))}catch{}k<1&&(b.current=requestAnimationFrame(T))}catch{}};S.onend=()=>{try{b.current&&(cancelAnimationFrame(b.current),b.current=null),i(1),s("stopped");try{p.current?.()}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}}catch{}},S.onstart=()=>{try{b.current&&(cancelAnimationFrame(b.current),b.current=null),b.current=requestAnimationFrame(T)}catch{}};try{C.speak(S)}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}}catch{try{typeof h.current=="function"&&h.current(!0)}catch{}}},[e,t,a,u,r,n,i,s,c,m,h,p]),x=l.useCallback(()=>{try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}b.current&&(cancelAnimationFrame(b.current),b.current=null),d(),g.current=null}catch{}s("stopped"),c("active"),i(0)},[d,s,c,i]);return{startTTS:f,stopTTS:x}}var kk='.ihabdevteam-core-scope .audio-player{align-items:center;display:flex;flex-direction:column;width:100%}.ihabdevteam-core-scope .audio-player__no-waveform{align-items:center;align-self:flex-start;color:var(--color-lightGray);display:flex;gap:4px;margin:6px 0 0}.ihabdevteam-core-scope .audio-player__no-waveform .iconRenderer-icon{align-items:center;display:inline-flex}.ihabdevteam-core-scope .audio-player__panel{align-items:center;background:linear-gradient(90deg,var(--color-main),var(--color-sub));background:linear-gradient(var(--angle,90deg),var(--color-main),var(--color-sub));border-radius:var(--radius-m);display:flex;height:120px;position:relative;width:100%}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__panel{background:var(--color-darkWhite);border:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__buttons,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__play,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__wave{pointer-events:none}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__buttons .button,.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__play .button{opacity:.7}.ihabdevteam-core-scope .audio-player__play{align-items:center;bottom:0;display:flex;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:relative;right:0;top:0;transition:opacity .16s ease,transform .16s ease;width:100%;z-index:10}.ihabdevteam-core-scope .audio-player__play.is-visible{opacity:1;pointer-events:auto}.ihabdevteam-core-scope .audio-player__panel>.button{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .16s ease,transform .16s ease;will-change:opacity,transform;z-index:35}.ihabdevteam-core-scope .audio-player__button{align-items:center;background:transparent;border:0;cursor:pointer;display:flex;inset:0;justify-content:center;padding:0;position:absolute;z-index:35}.ihabdevteam-core-scope .audio-player__button-triangle-wrap{align-items:center;display:flex;height:90px;justify-content:center;transition:transform .32s cubic-bezier(.2,.7,.2,1);width:90px}.ihabdevteam-core-scope .audio-player__button:hover .audio-player__button-triangle-wrap{transform:scale(1.18)}.ihabdevteam-core-scope .audio-player__button:active .audio-player__button-triangle-wrap{transform:scale(1.06)}.ihabdevteam-core-scope .audio-player__button-triangle{height:100%;width:100%}.ihabdevteam-core-scope .audio-player__button-triangle path{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6}.ihabdevteam-core-scope .audio-player.is-disabled .audio-player__button{cursor:default;opacity:.5;pointer-events:none}.ihabdevteam-core-scope .audio-player__slider{align-items:center;bottom:50px;box-sizing:border-box;display:flex;left:20px;pointer-events:none;position:absolute;right:20px;top:20px}.ihabdevteam-core-scope .audio-player__buttons{align-items:center;border-radius:999px;bottom:10px;box-sizing:border-box;display:flex;gap:0;height:28px;justify-content:center;left:0;pointer-events:auto;position:absolute;right:0;z-index:40}.ihabdevteam-core-scope .audio-player__source-buttons{align-items:center;border:1px solid var(--color-white-a30);border-radius:var(--radius-m);display:inline-flex;justify-content:center;overflow:visible}.ihabdevteam-core-scope .audio-player__source-buttons .button{flex:0 0 auto;max-width:60px}.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\B2E4\\C74C],.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\C774\\C804],.ihabdevteam-core-scope .audio-player__buttons .button[aria-label=\\C815\\C9C0]{display:none}.ihabdevteam-core-scope .audio-player__buttons>.button{align-items:center;display:inline-flex;justify-content:center;margin:0;width:auto}.ihabdevteam-core-scope .audio-player__fill{backface-visibility:hidden;background:var(--color-pureWhite);border-radius:var(--radius-sm);height:100%;left:0;opacity:0;pointer-events:none;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) scaleY(0);transform-origin:center center;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .16s ease;width:8px;will-change:transform,opacity;z-index:70}.ihabdevteam-core-scope .audio-player__fill.is-visible{opacity:1}.ihabdevteam-core-scope .audio-player__fill.is-expanded{transform:translateX(-50%) translateY(-50%) scaleY(1)}.ihabdevteam-core-scope .audio-player__fill.is-paused{transition:opacity .16s ease}.ihabdevteam-core-scope .audio-player__fill.is-out{animation:audio-player-fill-out .28s cubic-bezier(.2,.8,.2,1) forwards}@keyframes audio-player-fill-out{0%{opacity:1;transform:translateX(-50%) translateY(-50%) scaleY(1)}to{opacity:0;transform:translateX(-50%) translateY(-50%) scaleY(0)}}.ihabdevteam-core-scope .audio-player__loading{align-items:center;background:transparent;border-radius:var(--radius-sm);color:rgba(0,0,0,.85);color:var(--audio-loading-foreground,rgba(0,0,0,.85));display:inline-flex;font-size:13px;gap:var(--spacing-xs);left:50%;padding:0;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:999}.ihabdevteam-core-scope .audio-player__debug{align-items:center;background:hsla(0,0%,100%,.06);border-radius:18px;color:#fff;display:flex;font-size:12px;gap:8px;padding:6px 10px;pointer-events:none;position:absolute;right:12px;top:12px}.ihabdevteam-core-scope .audio-player__debug-dot{border-radius:10px;box-shadow:0 0 6px rgba(0,0,0,.4);display:inline-block;height:10px;width:10px}.ihabdevteam-core-scope .audio-player__loading .audio-player__loading-text,.ihabdevteam-core-scope .audio-player__panel.is-loading .audio-player__loading-text{display:none}.ihabdevteam-core-scope .audio-player__loading-spinner{animation:audio-player-spinner .9s linear infinite;border:4px solid hsla(0,0%,100%,.2);border-radius:50%;border-top-color:#fff;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25));height:40px;width:40px}@keyframes audio-player-spinner{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .audio-player__wave{height:90%;position:absolute}.ihabdevteam-core-scope .audio-player__wave,.ihabdevteam-core-scope .audio-player__wave-inner{align-items:center;display:flex;justify-content:center;pointer-events:none;width:100%;z-index:60}.ihabdevteam-core-scope .audio-player__wave-inner{cursor:default;gap:3px;gap:var(--bar-gap,3px);height:100%;margin:0 auto;padding:0}.ihabdevteam-core-scope .audio-player__wave-inner:not(.is-ready) .audio-player__bar:after{opacity:0}.ihabdevteam-core-scope .audio-player__wave-inner.is-ready .audio-player__bar:after{animation:wave-bar-in .35s cubic-bezier(.22,.9,.3,1) both;animation-delay:0ms;animation-delay:calc(var(--i, 0)*2ms)}@keyframes wave-bar-in{0%{opacity:0;transform:translateY(-50%) scaleY(.05)}to{opacity:1;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15))}}.ihabdevteam-core-scope .audio-player__wave-inner.is-ready .audio-player__bar--hidden:after,.ihabdevteam-core-scope .audio-player__wave-noise.is-ready .audio-player__bar--hidden:after{animation:none;opacity:0}.ihabdevteam-core-scope .audio-player__wave-played{bottom:0;clip-path:inset(0 100% 0 0);clip-path:inset(0 calc((1 - var(--progress, 0))*100%) 0 0);left:0;pointer-events:none;position:absolute;right:0;top:0}.ihabdevteam-core-scope .audio-player__bar{box-sizing:border-box;flex:0 0 3px;flex:0 0 var(--bar-w,3px);height:100%;position:relative}.ihabdevteam-core-scope .audio-player__wave-unplayed .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) 0);border-radius:999px;content:"";height:100%;left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15));transform-origin:center center;z-index:61}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-unplayed .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-played .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) 0);border-radius:999px;content:"";height:100%;left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.15);transform:translateY(-50%) scaleY(var(--val,.15));transform-origin:center center;z-index:62}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-played .audio-player__bar:after{background:color-mix(in srgb,var(--color-lightMain),var(--color-lightSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-noise{align-items:center;bottom:0;display:flex;gap:3px;gap:var(--bar-gap,3px);justify-content:center;left:0;margin:0 auto;pointer-events:none;position:absolute;right:0;top:0;width:100%;z-index:58}.ihabdevteam-core-scope .audio-player__wave-noise .audio-player__bar:after{background:color-mix(in srgb,var(--color-deepMain),var(--color-deepSub) 0);border-radius:999px;content:"";height:100%;left:0;opacity:1;position:absolute;right:0;top:50%;transform:translateY(-50%) scaleY(.1);transform:translateY(-50%) scaleY(var(--val,.1));transform-origin:center center;z-index:58}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .audio-player__wave-noise .audio-player__bar:after{background:color-mix(in srgb,var(--color-deepMain),var(--color-deepSub) calc(var(--mix, 0)*100%))}}.ihabdevteam-core-scope .audio-player__wave-noise:not(.is-ready) .audio-player__bar:after{opacity:0}.ihabdevteam-core-scope .audio-player__wave-noise.is-ready .audio-player__bar:after{animation:wave-bar-in .35s cubic-bezier(.22,.9,.3,1) both;animation-delay:0ms;animation-delay:calc(var(--i, 0)*2ms)}.ihabdevteam-core-scope .audio-player__segments{align-items:center;display:flex;gap:3px;gap:var(--bar-gap,3px);height:100%;position:relative;width:100%}.ihabdevteam-core-scope .audio-player__segment{align-items:center;cursor:pointer;display:flex;height:100%;justify-content:center;padding:10px 0;pointer-events:auto;position:relative}.ihabdevteam-core-scope .audio-player__segment-inner{align-items:center;display:flex;gap:3px;gap:var(--bar-gap,3px);height:100%;justify-content:center;width:100%}';Q(kk);const fb=4;async function Sk(e,t,a){try{const r=window.AudioContext||window.webkitAudioContext,n=new r,i=await n.decodeAudioData(e.slice(0)),s=i.numberOfChannels>0?i.getChannelData(0):null;if(!s)return null;const c=a&&a>0?Math.min(s.length,Math.floor(a*i.sampleRate)):s.length,u=Math.max(t,c),d=Math.floor(u/t)||1,m=new Array(t).fill(0).map((h,p)=>{const g=p*d,v=Math.min(g+d,u);let b=0;for(let y=g;y<v;y++){const f=Math.abs(s[y]);f>b&&(b=f)}return b});try{n.close&&n.close()}catch{}return m}catch{return null}}async function vb(e,t,a){try{const r=await(await fetch(e)).arrayBuffer();return await Sk(r,t,a)}catch(r){try{const n=Vr(r)}catch{}return null}}function Ak(e){const{src:t,segments:a,progress:r=0,waveProgressRef:n,noiseSrc:i,noiseLevel:s=0,noiseSpeed:c=1,totalDuration:u=0,mainVolume:d=1,onReadyChange:m,showSoundWaveForm:h=!0}=e,p=l.useRef(null),g=l.useRef(null),[v,b]=l.useState(null),[y,f]=l.useState(!1),[x,_]=l.useState(null),[C,A]=l.useState(2),[w,S]=l.useState(0),[N,T]=l.useState(null),[E,W]=l.useState(!1),L=3,k=3,D=1,j=300,F=l.useRef(0),ee=l.useCallback(async(ne,X)=>{const te=++F.current,pe=()=>F.current===te;try{if(f(!1),!ne){pe()&&b(null);return}let ae=X;if(!ae)try{for(let De=0;De<4&&!(p.current||g.current);De++)await new Promise(Ie=>requestAnimationFrame(Ie));await new Promise(De=>requestAnimationFrame(De));const de=p.current,fe=g&&g.current?g.current:de?de.closest(".audio-player__wave"):null,Se=fe?fe.getBoundingClientRect():de?de.getBoundingClientRect():null,Ae=Se?Math.max(100,Se.width):320,P=Se?Se.height:0;P>0&&S(P),ae=Math.max(D,Math.min(j,Math.floor((Ae+k)/(L+k))));const oe=ae*L,re=Math.max(0,ae-1),Ce=re>0?(Ae-oe)/re:k;A(Math.max(0,Ce))}catch{ae=120}const Y=await vb(ne,ae);if(!pe())return;if(!Y){b(null),f(!1);return}b(Y),_(ae),f(!0)}catch{if(!pe())return;b(null),f(!1)}},[f,b,S,A,_]);l.useEffect(()=>{const ne=a&&a[0]&&a[0].src||t||a&&a.length===1&&a[0]&&a[0].src;ee(typeof ne=="string"?ne:void 0).catch(()=>{}),W(!1)},[t,a,ee]),l.useEffect(()=>{let ne=!1;if(!i||!x){T(null);return}const X=u>0?u*(c||1):void 0;return vb(i,x,X).then(te=>{ne||T(te)}).catch(()=>{ne||T(null)}),()=>{ne=!0}},[i,x,u,c]);const Z=Math.max(0,Math.min(1,d)),J=l.useMemo(()=>v&&v.length&&Math.max(...v)||1,[v]),M=x||40,R=l.useMemo(()=>Array.from({length:M}).map((ne,X)=>{const te=v&&v[X]!=null?v[X]:null,pe=te==null?null:Math.min(1,te/J*Z),ae=pe!=null&&w>0&&pe*w<=fb,Y=pe==null?.15:ae?0:pe,de=M>1?X/(M-1):0;return o.jsx("div",{className:ae?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":Y,"--i":X,"--mix":de}},X)}),[M,v,J,Z,w]),z={"--progress":String(Math.max(0,Math.min(1,r)))},H={"--bar-gap":`${C}px`},$=Math.max(0,Math.min(9,s))/9,q=y&&(i?!!N:!0);l.useEffect(()=>{q&&W(!0)},[q]);const O=E?y:q;l.useEffect(()=>{m?.(O)},[O,m]);const G=x||40,I=l.useMemo(()=>Array.from({length:G}).map((ne,X)=>{const te=N&&N[X]!=null?N[X]:null,pe=te==null?0:Math.min(1,te/J*$),ae=w>0&&pe*w<=fb,Y=ae?0:pe,de=G>1?X/(G-1):0;return o.jsx("div",{className:ae?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":Y,"--i":X,"--mix":de}},X)}),[G,N,J,$,w]);return o.jsxs("div",{className:"audio-player__wave",ref:g,style:H,children:[i&&o.jsx("div",{className:`audio-player__wave-noise ${q?"is-ready":""}`,"aria-hidden":"true",children:I}),h&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${O?"is-ready":""}`,ref:p,children:R}),o.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${O?"is-ready":""}`,ref:n,style:z,children:R})]})]})}const Tk={idle:"\uB300\uAE30",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD"};function sc(e,t){return new Promise((a,r)=>{const n=document.createElement("audio");let i=!1;const s=()=>{try{n.src=""}catch{}},c=()=>{if(i)return;i=!0;const d=isFinite(n.duration)&&n.duration||0;s(),a(d)},u=d=>{i||(i=!0,s(),t.rejectOnError?r(new Error(d)):a(0))};n.addEventListener("loadedmetadata",c),n.addEventListener("error",()=>u("audio load failed")),setTimeout(()=>u("audio load timeout"),t.timeoutMs),n.src=e})}const Bk=2e3;function yb(e,t=Bk){return new Promise(a=>{let r=!1;const n=()=>{r||(r=!0,a())};e.addEventListener("canplay",n,{once:!0}),e.addEventListener("error",n,{once:!0}),setTimeout(n,t)})}function Nk({showSoundWaveForm:e,showNoiseWaveForm:t,timeoutMs:a=2500}){const r=l.useRef(!1),n=l.useRef([]),i=l.useCallback(u=>{if(r.current=u,!u||!n.current.length)return;const d=n.current;n.current=[];for(const m of d)m()},[]),s=l.useCallback(()=>{r.current=!1},[]),c=l.useCallback(()=>!e&&!t||r.current?Promise.resolve():new Promise(u=>{const d=setTimeout(u,a);n.current.push(()=>{clearTimeout(d),u()})}),[e,t,a]);return l.useEffect(()=>()=>{const u=n.current;n.current=[];for(const d of u)d()},[]),{onReadyChange:i,waitForReady:c,markNotReady:s}}function Dk(){const e=l.useRef([]),t=l.useCallback(n=>(e.current.push(n),n),[]),a=l.useCallback(n=>{const i=new Set([...n].filter(Boolean));e.current=e.current.filter(s=>{if(i.has(s))return!0;try{URL.revokeObjectURL(s)}catch{}return!1})},[]),r=l.useCallback(()=>{a([])},[a]);return l.useEffect(()=>()=>{for(const n of e.current)try{URL.revokeObjectURL(n)}catch{}e.current=[]},[]),{track:t,keepOnly:a,revokeAll:r}}function Ek({offsetY:e=8}={}){const t=l.useRef(null),[a,r]=l.useState(null),n=l.useCallback(()=>r(null),[]),i=l.useCallback(()=>{try{const s=t.current?.getBoundingClientRect();if(!s)return;r({left:s.left,right:s.right,width:s.width,height:s.height,x:s.x,top:s.top+e,bottom:s.bottom+e,y:s.y+e,toJSON:s.toJSON.bind(s)})}catch{}},[e]);return l.useEffect(()=>{if(a)return document.addEventListener("mousedown",n),()=>document.removeEventListener("mousedown",n)},[a,n]),{ref:t,rect:a,show:i,hide:n}}function jk({currentTime:e,sources:t,index:a,audioDuration:r}){const n=a||0,i=Array.isArray(t)&&t.length>0?t[n]:void 0,s=i?i.duration||r||0:r||0;if(!(s>0))return 0;const c=Number.isFinite(e)?e:0;return Math.max(0,Math.min(1,c/s))}function Lk(e,t){if(!Array.isArray(e))return null;const a=t||0;return a<e.length-1?a+1:null}function Mk({ended:e,completedByEnd:t}){return!!e||!!t}function Pk(e){return e.map((t,a)=>({src:t.src,label:String(a+1),color:void 0,duration:t.duration||0}))}function Rk(e){return e.reduce((t,a)=>t+(a.duration||0),0)}function $k(e,t,a){const r=Array.isArray(e)?e:e?[e]:[],n=[];for(const i of r)if(i){if(typeof i=="object"&&i!==null&&"src"in i&&i.src){const s=i;n.push({code:s.code??null,src:s.src});continue}if(typeof i=="string"&&(i.startsWith("http")||i.includes("/"))){n.push({code:null,src:i});continue}if(typeof i=="string"||typeof i=="number"){const s=String(i),c=a(s,t);c&&n.push({code:s,resolvedPath:c})}}return n}function zk({audioRef:e,fillRef:t,waveProgressRef:a,sourcesRef:r,currentIndexRef:n}){const i=l.useRef(null),s=l.useCallback(()=>{i.current!==null&&(cancelAnimationFrame(i.current),i.current=null)},[]),c=l.useCallback(()=>{if(i.current!==null)return;const d=()=>{try{const m=e.current,h=jk({currentTime:m&&typeof m.currentTime=="number"?m.currentTime:0,sources:r.current,index:n.current,audioDuration:m&&m.duration?m.duration:0});try{t.current&&(t.current.style.left=`${h*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(h))}catch{}}catch{}i.current=requestAnimationFrame(d)};i.current=requestAnimationFrame(d)},[e,t,a,r,n]),u=l.useCallback(d=>{s();try{t.current&&(t.current.style.left=`${d*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(d))}catch{}},[s,t,a]);return l.useEffect(()=>s,[s]),{start:c,stop:s,settleTo:u}}function xr({btnLabel:e,soundSrc:t,bucketPath:a,onDone:r,disabled:n=!1,ttsText:i=null,className:s,showSoundWaveForm:c=!0,showNoiseWaveForm:u=!0}){const{t:d}=me.useTranslation(),m=e,h=nc(),p=l.useRef(h?.registerAnalyser);l.useEffect(()=>{p.current=h?.registerAnalyser});const g=l.useRef(null),v=l.useRef(null),b=l.useRef(null),y=Dk(),f=l.useRef(null),x=l.useRef(!1),_=l.useRef(0),C=l.useRef(null),{ref:A,rect:w,show:S,hide:N}=Ek();l.useEffect(()=>()=>{p.current?.("main",null),p.current?.("noise",null)},[]);const[T,E]=l.useState(!1),[W,L]=l.useState("idle"),[k,D]=l.useState("stopped"),j=l.useRef("stopped");l.useEffect(()=>{j.current=k},[k]);const[F,ee]=l.useState(0),[Z,J]=l.useState("active"),[M,R]=l.useState(null),[z,H]=l.useState(null),[$,q]=l.useState(0),[O,G]=l.useState(!1),[I,ne]=l.useState(0),X=h?.playbackRate??1,te=h?.mainVolume??1,[pe,ae]=l.useState("idle"),[Y,de]=l.useState(""),[fe]=l.useState("top"),Se=l.useRef(null),Ae=l.useRef(0),P=l.useRef(null),{start:oe,stop:re,settleTo:Ce}=zk({audioRef:g,fillRef:v,waveProgressRef:P,sourcesRef:Se,currentIndexRef:Ae}),{onReadyChange:De,waitForReady:Ie,markNotReady:Oe}=Nk({showSoundWaveForm:c,showNoiseWaveForm:u}),Fe=l.useRef(null),Qe=l.useRef(n),Re=l.useRef(r),Ge=l.useRef(null),We=l.useRef(!1),[be,at]=l.useState(!1),He=l.useCallback(U=>{We.current=U,at(U)},[]),Le=l.useRef(null),{activeNoiseUrl:Ue,noiseSettingsRef:Dt,fadeInNoise:Ke,fadeOutNoise:Ye}=_k({noisePlayer:h,audioRef:g,playbackStateRef:j}),{startTTS:ut,stopTTS:je}=wk({ttsText:i,playbackRate:X,mainVolume:te,fillRef:v,waveProgressRef:P,setProgress:ee,setPlaybackState:D,setStateLocal:J,fadeInNoise:Ke,fadeOutNoise:Ye,noiseSettingsRef:Dt,onDoneRef:Re,handleEndRef:Le}),rt=Array.isArray(t)?t.filter(Boolean):t?[t]:[],Je=(!rt||rt.length===0)&&!!i,$e=Array.isArray(M)&&M.length>0?M:Array.isArray(z)&&z.length>0?z:null,Ze=Math.max(Array.isArray($e)?$e.length:0,rt.length),et=l.useCallback(async(U,se=3,ye=50)=>{for(let we=0;we<se;we++)try{return await U.play(),!0}catch(ke){if((ke instanceof Error||typeof ke=="object"&&ke&&"name"in ke?ke.name:void 0)==="AbortError"){await new Promise(Me=>setTimeout(Me,ye));continue}try{de(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}try{de(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[d]),yt=l.useCallback(()=>{const U=g.current;if(!U)return;const se=()=>{D("playing"),J("playMode"),G(!0),oe();try{Wo(),p.current?.("main",Ho(U))}catch{}const ke=Dt.current;ke?.enabled&&(ke?.level??0)>0&&Ke(ke.level/9)},ye=()=>{Mk({ended:!!U?.ended,completedByEnd:We.current})||(D("paused"),re(),Ye())},we=()=>{try{const ke=Se.current,Me=Lk(ke,Ae.current);if(Me!==null){Ae.current=Me,q(Me),G(!0);const nt=ke?.[Me]&&ke[Me].src;if(nt&&U){U.src=nt,U.load(),et(U).catch(()=>{});return}}}catch{}D("stopped"),ee(1);try{if(U)try{U.currentTime=0}catch{}}catch{}re(),G(!1),Ye();try{!Qe.current&&Le.current&&Le.current()}catch{}};return U.addEventListener("play",se),U.addEventListener("pause",ye),U.addEventListener("ended",we),()=>{try{U.removeEventListener("play",se),U.removeEventListener("pause",ye),U.removeEventListener("ended",we),re()}catch{}}},[Ke,Ye,et,Dt,oe,re]);l.useEffect(()=>yt(),[yt]),l.useEffect(()=>{Qe.current=n},[n]),l.useEffect(()=>{Re.current=r},[r]),l.useEffect(()=>{if(n||Z!=="active")return;const U=C.current;if(!U)return;let se=null;const ye=requestAnimationFrame(()=>{try{const we=U.getTotalLength();if(!we)return;const ke=we*.2;U.style.strokeDasharray=`${we-ke} ${ke}`;const Me="triFlow_"+Math.random().toString(36).slice(2);se=document.createElement("style"),se.textContent=`@keyframes ${Me}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${we}}}`,document.head.appendChild(se),U.style.animation=`${Me} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(ye),se?.remove()}},[Z,n]),l.useEffect(()=>{Se.current=M},[M]),l.useEffect(()=>{Ae.current=$},[$]),l.useEffect(()=>{const U=b.current,se=f.current;if(!U||!se)return;let ye=null;const we=32,ke=60,Me=()=>{try{const ct=Array.from(U.querySelectorAll(":scope > .button"));let ue=0;ct.forEach(Zt=>{if(Zt===se)return;const Do=Zt.getBoundingClientRect();ue+=Do.width});const Te=U.getBoundingClientRect().width,tt=Math.max(0,Math.floor(Te-ue-8)),xt=Ze;if(!xt||tt<=0){Array.from(se.children).forEach(Zt=>{try{Zt.style.width=""}catch{}});return}let Ct=Math.floor(tt/xt);Ct>ke&&(Ct=ke),Ct<we&&(Ct=Math.max(we,Math.floor(tt/xt))),Array.from(se.querySelectorAll(".button")).forEach(Zt=>{try{Zt.style.width=`${Ct}px`}catch{}})}catch{}},nt=requestAnimationFrame(Me);try{ye=new ResizeObserver(()=>{requestAnimationFrame(Me)}),ye.observe(U),ye.observe(se),window.addEventListener("resize",Me)}catch{}return()=>{try{cancelAnimationFrame(nt)}catch{}try{ye&&(ye.disconnect(),ye=null)}catch{}try{window.removeEventListener("resize",Me)}catch{}}},[M,z,Ze]),l.useEffect(()=>()=>{try{Fe.current&&(clearTimeout(Fe.current),Fe.current=null),Ge.current&&(clearTimeout(Ge.current),Ge.current=null)}catch{}},[]);const Et=(U,se)=>{R(U),ne(se),Oe(),H(Pk(U)),Se.current=U},it=async(U,se)=>{He(!1),x.current=!1,U.src=se,U.load(),await yb(U),await Ie(),E(!1),await et(U),J("playMode"),q(0),G(!0)},Ht=async(U,se=!1)=>{const ye=g.current;E(!0),L("measuring_duration");try{const we=await sc(U,{timeoutMs:1e4,rejectOnError:!0});Et([{src:U,objectUrl:null,duration:we}],we),L("ready"),se&&ye&&await it(ye,U)}finally{x.current=!1,E(!1)}},mt=async(U,se=!1)=>{const ye=g.current;E(!0),L("measuring_duration");try{const we=await Promise.all(U.map(Me=>sc(Me,{timeoutMs:1e4}))),ke=U.map((Me,nt)=>({src:Me,objectUrl:null,duration:we[nt]||0}));Et(ke,Rk(ke)),L("ready"),se&&ye&&ke.length>0&&await it(ye,ke[0].src)}finally{x.current=!1,E(!1)}},Vt=async(U=!1,se=!0)=>{const ye=g.current,we=t?Array.isArray(t)?t:[t]:[];if(!(!we||we.length===0||!we.some(Boolean))&&!x.current){x.current=!0,se&&E(!0),L("resolving");try{const ke=$k(t,a,Tr),Me=[];let nt=0;for(const ct of ke){let ue=ct.src??null,Te=null;if(!ue&&ct.resolvedPath){try{L("getting_signed_url"),ue=await Io(ct.resolvedPath)}catch{ue=null}if(!ue)try{L("downloading");const xt=await Br(ct.resolvedPath);if(xt){const Ct=xt instanceof Blob?xt:new Blob([xt]);Te=y.track(URL.createObjectURL(Ct)),ue=Te}}catch{L("error");try{de(d("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),J("active")}catch{}}}if(!ue)continue;let tt=0;try{L("measuring_duration"),tt=await sc(ue,{timeoutMs:3e3})}catch{tt=0}nt+=tt||0,Me.push({...ct,src:ue,objectUrl:Te,duration:tt})}if(Et(Me,nt),Me.length>0&&U&&ye){const ct=Me[0];He(!1);try{y.keepOnly(Me.map(ue=>ue.objectUrl))}catch{}if(L("ready"),x.current=!1,ct.src&&ye)try{ye.src=ct.src,ye.load(),await yb(ye),await Ie(),se&&E(!1),ye&&await et(ye)}catch{se&&E(!1)}else se&&E(!1);J("playMode"),q(0),G(!0)}}finally{x.current=!1,se&&E(!1),L(ke=>ke==="ready"?"ready":"idle")}}},ia=async()=>{const U=g.current;if(!(!U&&!Je)){if(Je){const se=window.speechSynthesis;if(Z==="active"){const ye=Oo(),we=Array.isArray(i)?i.filter(Boolean):i?[i]:[];if(ye&&we.length>0){J("load"),E(!0),L("resolving"),x.current=!0;try{const ke=await Promise.all(we.map(Me=>Promise.resolve(ye(Me))));ke.length>1?await mt(ke,!0):await Ht(ke[0],!0)}catch{x.current=!1,E(!1),J("active"),ut(we[0]||void 0)}return}ut(we[0]||void 0);return}if(Z==="playMode"){if(U){if(U.paused){if(We.current){await Gt();return}await et(U),D("playing")}else U.pause(),D("paused");return}try{if(se&&se.paused)try{se.resume(),D("playing")}catch{}else try{se.pause(),D("paused")}catch{}}catch{}}return}if(Z==="active"){if(n&&Array.isArray(Se.current)&&Se.current.length>0){const se=Se.current[0];try{if(se.src&&U)try{U.src=se.src,U.load(),U&&await et(U)}catch{}J("playMode"),q(0),G(!0);return}catch{}}J("load"),await Vt(!0);return}if(Z!=="load"&&(Z==="playMode"||Z==="active"))try{if(U&&U.paused){if(We.current){await Gt();return}U&&await et(U),D("playing")}else U&&(U.pause(),D("paused"))}catch(se){(se instanceof Error||typeof se=="object"&&se&&"name"in se)&&se.name}}},Gt=async()=>{const U=g.current;if(U)try{const se=Se.current;if(Array.isArray(se)&&se.length>1){await $t(0);return}He(!1);try{U.currentTime=0}catch{}U&&await et(U),D("playing"),J("playMode")}catch{}},Ea=()=>{if(Je){je();return}const U=g.current;try{if(U){try{U.pause()}catch{}try{U.currentTime=0}catch{}}}catch{}Ye(),D("stopped"),J("active"),ee(0),G(!1)},sa=async(U,{sameSegment:se=!1}={})=>{const ye=++_.current,we=g.current,ke=Se.current?.[U]?.src;try{if(He(!1),q(U),G(!0),Ae.current=U,!ke||!we||(se||Oe(),we.src=ke,we.load(),se||await Ie(),ye!==_.current)||(await et(we),ye!==_.current))return;D("playing"),J("playMode")}catch{}},Kt=async()=>{const U=Se.current,se=Ae.current||0;if(!U||se<=0){await Gt();return}await sa(se-1)},ja=async()=>{const U=Se.current,se=Ae.current||0;if(!U||se>=U.length-1){Ea();return}await sa(se+1)},jt=()=>{if(We.current)return;const U=200,se=340;He(!0);try{ee(1)}catch{}Ce(1);try{ae("hold")}catch{}try{const ye=g.current,we=Je&&!!ye?.src;if(!Je||we){if(ye){ye.pause();try{ye.currentTime=0}catch{}}}else je();Ye()}catch{}try{D("stopped")}catch{}if(G(!1),!Qe.current)try{Ge.current&&(clearTimeout(Ge.current),Ge.current=null),Ge.current=setTimeout(()=>{try{ae("out")}catch{}Ge.current=setTimeout(()=>{try{typeof Re.current=="function"&&Re.current(!0)}catch{}try{ae("idle")}catch{}Ge.current=null},se)},U)}catch{}};l.useEffect(()=>{Le.current=jt});const Ga=l.useCallback(()=>de(""),[]),$t=async U=>{(Se.current||[])[U]&&await sa(U,{sameSegment:U===Ae.current})},ya=k==="playing",qa=l.useMemo(()=>{if(!z||z.length<=1)return z;const U=z[$];return U?[U]:z},[z,$]),Xe=n===!0;l.useEffect(()=>{try{const U=g.current;U&&typeof U.playbackRate=="number"&&(U.playbackRate=X||1)}catch{}},[X]),l.useEffect(()=>{try{const U=g.current;U&&(U.volume=Math.max(0,Math.min(1,te)))}catch{}},[te]);const zt=pe==="hold",wt=pe==="out",xa=Z==="playMode"&&!T&&!be||zt||wt,la=k!=="stopped"||zt||wt,ie=k==="paused",ge=Math.max(0,Math.min(100,(F||0)*100)),ve=xe("audio-player__fill",xa?"is-visible":"",la?"is-expanded":"",ie?"is-paused":"",wt?"is-out":"");return o.jsxs("div",{className:`audio-player ${Xe?"is-disabled":""}${s?` ${s}`:""}`,role:"group","aria-label":typeof m=="string"?m:void 0,children:[o.jsxs("div",{className:`audio-player__panel ${ya?"is-playing":""} ${T?"is-loading":""} ${Z!=="default"?"is-revealed":""}`,children:[T?o.jsxs("div",{className:"audio-player__loading",role:"status","aria-live":"polite",children:[o.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),o.jsx("span",{className:"audio-player__loading-text",children:Tk[W]})]}):null,Z==="active"?o.jsx("button",{className:"audio-player__button",type:"button",onClick:()=>{N(),ia()},"aria-label":typeof m=="string"?m:d("training.listen","\uB4E3\uAE30"),onMouseEnter:S,onMouseLeave:N,onFocus:S,onBlur:N,children:o.jsx("span",{ref:A,className:"audio-player__button-triangle-wrap",children:o.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:o.jsx("path",{ref:C,d:"M13.2 7.7 L16.5 9.85 Q20.2 12 16.5 14.15 L10 18.3 Q7 19.7 7 16.3 L7 7.7 Q7 4.3 10 5.7 L13.2 7.7"})})})}):null,w&&o.jsx(aa,{anchorRect:w,text:typeof m=="string"&&m?m:d("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),o.jsxs("div",{className:`audio-player__play ${Z==="playMode"||ya?"is-visible":""}`,children:[o.jsxs("div",{ref:b,className:"audio-player__buttons",children:[o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:Kt,ariaLabel:d("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:Z!=="playMode"}),o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:ya?"pause":"play",onClick:ia,ariaLabel:d("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),width:"60px",variant:"transparent-white",disabled:Z!=="playMode"}),o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:Ea,ariaLabel:d("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:Z!=="playMode"}),Ze>1?o.jsx("div",{ref:f,className:"audio-player__source-buttons",children:Array.from({length:Ze}).map((U,se)=>o.jsx(ce,{size:32,type:"dot",shape:"pill",useBorder:!1,label:String(se+1),onClick:()=>{try{$t(se)}catch{}},ariaLabel:d("training.sourcePlay",{n:se+1}),variant:"transparent-white",selected:O&&$===se,disabled:Z!=="playMode"||!(Array.isArray(M)&&M[se]),showTooltipInfo:!0},se))}):null,!Array.isArray(M)||M.length<=1?o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:Gt,ariaLabel:d("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:Z!=="playMode"}):null,o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:ja,ariaLabel:d("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:Z!=="playMode"}),o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:jt,ariaLabel:d("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:Z!=="playMode"})]}),o.jsxs("div",{className:"audio-player__slider",children:[o.jsx("div",{className:ve,ref:v,style:{left:`${ge}%`},"aria-hidden":"true"}),(c||u)&&o.jsx(Ak,{segments:qa,progress:F,totalDuration:I,onSegmentClick:$t,waveProgressRef:P,showSoundWaveForm:c,noiseSrc:u&&h?.settings.enabled&&(h?.settings.level??0)>0?Ue:null,noiseLevel:h?.settings.level??0,noiseSpeed:h?.settings.speed??1,mainVolume:te,onReadyChange:De})]})]}),o.jsx("audio",{ref:g,crossOrigin:"anonymous",preload:"auto"})]}),!c&&o.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[o.jsx(Pe,{icon:"triangle-alert",size:14}),d("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),o.jsx(oo,{message:Y,position:fe,onClose:Ga})]})}var Ik=".ihabdevteam-core-scope .tooltip-textbox{background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-sizing:border-box;max-width:520px;padding:var(--spacing-content)}.ihabdevteam-core-scope .tooltip-textbox__root{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .tooltip-textbox__box{background:transparent}.ihabdevteam-core-scope .tooltip-textbox__label{color:var(--color-darkGray)}.ihabdevteam-core-scope .tooltip-textbox__text{color:var(--color-darkGray);overflow-wrap:anywhere;white-space:normal;word-break:keep-all}.ihabdevteam-core-scope .tooltip-textbox__line{align-items:center;display:flex;gap:var(--spacing-s);margin-bottom:0;min-height:60px;padding:10px 0}.ihabdevteam-core-scope .tooltip-textbox__line:last-child{margin-bottom:0}.ihabdevteam-core-scope .tooltip-textbox__line:not(:last-child){border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .tooltip-textbox.is-dark .tooltip-textbox__line:not(:last-child){border-bottom-color:hsla(0,0%,100%,.06)}.ihabdevteam-core-scope .tooltip-textbox__marker{--marker-pos:50%;align-items:center;background-color:var(--color-main);background:color-mix(in srgb,var(--color-main) 50%,var(--color-sub) 50%);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:#fff;display:inline-flex;height:24px;justify-content:center;min-width:24px}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .tooltip-textbox__marker{background:color-mix(in srgb,var(--color-main) calc(100% - var(--marker-pos)),var(--color-sub) var(--marker-pos))}}.ihabdevteam-core-scope .tooltip-textbox__line-number{color:#fff;min-width:auto;text-align:center}.ihabdevteam-core-scope .tooltip-textbox__line-text{flex:1 1 auto}.ihabdevteam-core-scope .tooltip-textbox__buttons{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:center;margin-top:10px;position:relative}.ihabdevteam-core-scope .tooltip-textbox.is-dark{background:var(--color-darkGray);border-color:var(--color-gray)}.ihabdevteam-core-scope .tooltip-textbox.is-dark .tooltip-textbox__text{color:var(--color-deepWhite)}";Q(Ik);function Bo(e){const{t}=me.useTranslation(),{text:a,label:r,anchorRect:n=null,onClose:i,closeOnOutsideClick:s=!0,isMobilePopup:c=!1}=e||{},[u,d]=l.useState(()=>{try{return localStorage.getItem("tooltip-theme")||"light"}catch{return"light"}});l.useEffect(()=>{try{localStorage.setItem("tooltip-theme",u)}catch{}},[u]);const{increase:m,decrease:h,canIncrease:p,canDecrease:g,fontSize:v,lineHeight:b}=an({storageKey:"tooltip-fontScale"}),y=l.useCallback(()=>d(A=>A==="dark"?"light":"dark"),[]),f=l.useCallback(A=>{try{A.stopPropagation()}catch{}try{typeof i=="function"&&i()}catch{}},[i]),x=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],_={fontSize:`${v}px`,lineHeight:`${b}px`,"--tt-line-height":`${b}px`,"--tt-marker-size":"28px"},C=o.jsxs("div",{className:`tooltip-textbox__root ${u==="dark"?"is-dark":""}`,children:[o.jsxs("div",{className:"tooltip-textbox__box",children:[r&&o.jsx("div",{className:"tooltip-textbox__label body-2b",children:r}),o.jsx("div",{className:"tooltip-textbox__text body-1",style:_,children:x.map((A,w)=>o.jsxs("div",{className:"tooltip-textbox__line",children:[x.length>1?o.jsx("div",{className:"tooltip-textbox__marker",children:o.jsx("span",{className:"tooltip-textbox__line-number button-1",children:w+1})}):null,o.jsx("span",{className:"tooltip-textbox__line-text",children:A})]},w))})]}),o.jsxs("div",{className:"tooltip-textbox__buttons",children:[o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:h,ariaLabel:t("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!g}),o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:m,ariaLabel:t("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:u==="dark"?"transparent-white":"transparent-gray",disabled:!p}),o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:u==="dark"?"moon":"sun-medium",onClick:y,ariaLabel:t("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:u==="dark"?"transparent-white":"transparent-gray"}),o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:f,ariaLabel:t("common.close","\uB2EB\uAE30"),variant:u==="dark"?"transparent-white":"transparent-gray"})]})]});return n?o.jsx(Sa,{anchorRect:n,className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,onClose:i,closeOnOutsideClick:s,isMobilePopup:c,children:C}):o.jsx("div",{className:`tooltip-textbox ${u==="dark"?"is-dark":""}`,children:C})}var Ok=".ihabdevteam-core-scope .training-page-bottom{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;flex:0 0 auto;gap:var(--spacing-s);justify-content:space-between;padding:12px 18px calc(12px + env(safe-area-inset-bottom));width:100%;z-index:5}.ihabdevteam-core-scope .pp-bottom__left{align-items:center;display:flex;gap:var(--spacing-m)}.ihabdevteam-core-scope .pp-bottom__right{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .pp-bottom__meters{border:1px solid var(--color-whiteLine);border-radius:14px;display:flex;flex-direction:column;gap:2px;justify-content:center;padding:8px 12px}.ihabdevteam-core-scope .pp-bottom__meter{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-label{color:var(--color-gray);min-width:28px}.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:none}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:flex}@media (min-width:768px){.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:block}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:none}}.ihabdevteam-core-scope .pp-bottom__tooltip-trigger{display:inline-block}.ihabdevteam-core-scope .training-steps{box-sizing:border-box;display:flex;flex-direction:column;overflow:visible;width:100%}.ihabdevteam-core-scope .training-step{align-items:stretch;box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--spacing-m);overflow:visible;width:100%}.ihabdevteam-core-scope .training-step__body,.ihabdevteam-core-scope .training-step__content{box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;gap:var(--spacing-s);overflow:visible;width:100%}.ihabdevteam-core-scope .training-step__content{gap:var(--spacing-m);min-width:0}.ihabdevteam-core-scope .training-step__controls{box-sizing:border-box;display:flex;flex-direction:column;gap:10px;width:100%}.ihabdevteam-core-scope .training-step__title{color:#0b2b35;color:var(--text,#0b2b35);margin:0;text-align:left}.ihabdevteam-core-scope .training-step__body .audio-player{display:flex;justify-content:center;width:100%}.ihabdevteam-core-scope .training-step__body .audio-player__panel{border-radius:var(--radius-card);padding:18px 20px;width:100%}.ihabdevteam-core-scope .training-step__controls.compact{align-items:center;display:flex;justify-content:center;width:72px}.ihabdevteam-core-scope .training-step__confirm-sentence{align-items:center;background:var(--color-white);border:1px solid rgba(0,0,0,.04);border-radius:var(--radius-card);box-shadow:var(--shadow-card);color:#0b2b35;color:var(--text,#0b2b35);display:flex;height:200px;justify-content:center;max-width:100%;overflow-wrap:anywhere;padding:var(--spacing-m);text-align:center;word-break:keep-all}.ihabdevteam-core-scope .training-step__controls.expanded{-ms-overflow-style:none;align-items:stretch;max-height:420px;overflow-y:auto;padding-bottom:6px;scrollbar-width:none;width:100%}.ihabdevteam-core-scope .training-step__controls.expanded::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .training-step__controls .training-step__title{color:#70858a;color:var(--muted,#70858a)}.ihabdevteam-core-scope .training-step__answer-button{background:var(--color-white);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-s);cursor:pointer;flex:0 0 auto;padding:10px 14px}.ihabdevteam-core-scope .training-step__buttons{-ms-overflow-style:none;align-items:stretch;display:flex;flex-direction:row;gap:var(--spacing-content);overflow-x:auto;scrollbar-width:none;width:100%}.ihabdevteam-core-scope .training-step__buttons::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .training-step__buttons>*{align-self:stretch;flex:1 1 0;margin:0;min-width:0}.ihabdevteam-core-scope .training-step__buttons.training-step__buttons--wrap-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow-x:visible}.ihabdevteam-core-scope .training-step__buttons.training-step__buttons--wrap-3>*{width:100%}.ihabdevteam-core-scope .training-step__buttons .button{align-items:center;align-self:stretch;display:flex}.ihabdevteam-core-scope .training-step__answer-button+.training-step__answer-button{margin-top:0}.ihabdevteam-core-scope .training-step__multi-confirm{display:flex;justify-content:flex-end;margin-top:12px;margin-top:var(--margin-content,12px);width:100%}.ihabdevteam-core-scope .training-step__controls::-webkit-scrollbar{display:none}.ihabdevteam-core-scope .training-step__controls{-ms-overflow-style:none;scrollbar-width:none}@media (max-width:640px){.ihabdevteam-core-scope .training-step__body .audio-player__panel{border-radius:var(--radius-card);padding:14px}.ihabdevteam-core-scope .training-step__controls.compact{width:48px}.ihabdevteam-core-scope .training-step{flex-direction:row;gap:10px}}@media (max-width:720px){.ihabdevteam-core-scope .training-step__controls.expanded{gap:8px}.ihabdevteam-core-scope .training-step__answer-button{padding:9px 12px}.ihabdevteam-core-scope .training-step__confirm-sentence{padding:var(--spacing-s)}}.ihabdevteam-core-scope .training-step__cards{box-sizing:border-box;display:flex;gap:var(--spacing-s);width:100%}@media (max-width:767px){.ihabdevteam-core-scope .training-step__cards{grid-gap:var(--spacing-s);display:grid;gap:var(--spacing-s);grid-template-columns:repeat(3,1fr)}}.ihabdevteam-core-scope .training-step__block{display:flex;flex-direction:column;gap:var(--spacing-s);width:100%}.ihabdevteam-core-scope .training-step__block--row{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-s)}.ihabdevteam-core-scope .training-step__listen-sticky{width:100%}.ihabdevteam-core-scope .training-step.training-step--has-nested .training-step__content{margin-bottom:100px}.ihabdevteam-core-scope .training-steps>.training-step:last-child .training-step__content{margin-bottom:0}.ihabdevteam-core-scope .training-step:not(.training-step--last) .training-step__content{margin-bottom:var( --margin-page)}.ihabdevteam-core-scope .training-step.training-step--last .training-step__content{margin-bottom:0}";Q(Ok);var Fk='.ihabdevteam-core-scope .ts-bullet{--dot-size:28px;--dot-gap:10px;align-items:center;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start;position:relative;width:28px;width:var(--dot-size)}.ihabdevteam-core-scope .bullet__dot{align-items:center;border:2px solid rgba(43,138,125,.12);border-radius:50%;display:flex;height:var(--dot-size);justify-content:center;width:var(--dot-size);z-index:2}.ihabdevteam-core-scope .bullet__icon{align-items:center;color:var(--color-darkGray);display:inline-flex;height:20px;justify-content:center;position:relative;width:20px;z-index:1}.ihabdevteam-core-scope .bullet__icon-img{display:block;height:100%;-o-object-fit:contain;object-fit:contain;width:100%}.ihabdevteam-core-scope .bullet__icon-mask{background-color:currentColor;height:100%;-webkit-mask-image:var(--icon-url);mask-image:var(--icon-url);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.ihabdevteam-core-scope .bullet__icon-svg svg{fill:currentColor;height:100%;width:100%}.ihabdevteam-core-scope .ts-bullet__line{background:var(--color-whiteLine);border-radius:var(--radius-xs);bottom:20px;left:50%;position:absolute;top:calc(var(--dot-size) + var(--dot-gap));transform:translateX(-50%);width:2px;z-index:1}.ihabdevteam-core-scope .ts-bullet--done .bullet__icon{color:transparent}.ihabdevteam-core-scope .ts-bullet--active .bullet__icon{color:#fff}.ihabdevteam-core-scope .ts-bullet--disabled .bullet__icon{color:transparent}.ihabdevteam-core-scope .ts-bullet--done .bullet__dot{border:2px solid var(--color-main)}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot{background-color:var(--color-main);position:relative}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:after,.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:before{animation:bullet-ripple 3s cubic-bezier(.2,.6,.2,1) infinite;background:var(--color-main);border-radius:50%;content:"";inset:0;opacity:.5;pointer-events:none;position:absolute}.ihabdevteam-core-scope .ts-bullet--active .bullet__dot:after{animation-delay:1.5s;opacity:.3}@keyframes bullet-ripple{0%{opacity:.5;transform:scale(1)}to{opacity:0;transform:scale(2.2)}}.ihabdevteam-core-scope .ts-bullet--disabled .bullet__dot{border:2px solid var(--color-whiteLine)}.ihabdevteam-core-scope .ts-bullet--done .bullet__line{background-color:var(--color-main)}.ihabdevteam-core-scope .ts-bullet--active .bullet__line,.ihabdevteam-core-scope .ts-bullet--disabled .bullet__line{background-color:var(--color-whiteLine)}.ihabdevteam-core-scope .training-step--last .ts-bullet__line,.ihabdevteam-core-scope .training-step.training-step--last .ts-bullet__line{display:none}@media (max-width:1024px){.ihabdevteam-core-scope .ts-bullet{--dot-size:26px}}@media (max-width:768px){.ihabdevteam-core-scope .ts-bullet{--dot-size:24px}}';Q(Fk);function lc({state:e="disabled"}){const{t}=me.useTranslation();return o.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[o.jsx("div",{className:"bullet__dot",children:o.jsx(Pe,{icon:"chevron-right",label:t("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),o.jsx("div",{className:"ts-bullet__line"})]})}var Wk=".ihabdevteam-core-scope .training-step__title-row{align-items:center;display:flex;gap:var(--spacing-xs);padding-right:72px;position:relative;width:100%}.ihabdevteam-core-scope .training-step__title-row .training-step__title{color:var(--color-black);margin:0;padding:0}.ihabdevteam-core-scope .training-step__title--faded .training-step__title-text{background-color:var(--color-darkWhite);border-radius:var(--radius-xs);color:transparent;opacity:1;transition:color .14s ease,opacity .14s ease}.ihabdevteam-core-scope .training-step__title-row .training-step__title .title-extra{margin-left:var(--spacing-xs)}.ihabdevteam-core-scope .training-step__title-row .title-controls{align-items:center;display:flex;gap:6px;margin-left:auto}.ihabdevteam-core-scope .training-step__title-row .title-controls .title-buttons{align-items:center;display:inline-flex;gap:6px;justify-content:center;overflow:visible;position:absolute;right:0;top:50%;transform:translateY(-50%)}.ihabdevteam-core-scope .training-step__title-row .title-controls .title-buttons .button28{align-items:center;display:inline-flex;justify-content:center}.ihabdevteam-core-scope .training-step__title-row--disabled .training-step__title,.ihabdevteam-core-scope .training-step__title-row--done .training-step__title{pointer-events:none}.ihabdevteam-core-scope .training-step__title-row--disabled .title-controls{opacity:.6;pointer-events:none}.ihabdevteam-core-scope .training-step__title-row--active .title-controls,.ihabdevteam-core-scope .training-step__title-row--done .title-controls{opacity:1;pointer-events:auto}.ihabdevteam-core-scope .training-step__title-row--disabled .training-step__title,.ihabdevteam-core-scope .training-step__title-row--done .training-step__title{color:var(--color-disabled)}.ihabdevteam-core-scope .training-step__title-row--active .training-step__title{color:var(--color-black)}";Q(Wk);function cc({title:e,children:t,className:a="",state:r="disabled",usePreviewTextBtn:n=!1,onPreviewTextBtn:i,previewText:s=null,useFaded:c,usePlayAllBtn:u=!1,onPlayAll:d,playAllActive:m=!1}){const{t:h}=me.useTranslation(),p=oa("(max-width: 767px)"),g=`training-step__title h4 ${c&&r==="disabled"?"training-step__title--faded":""} ${a}`.trim(),v=`training-step__title-row training-step__title-row--${r}`.trim(),b=l.useRef(null),[y,f]=l.useState(!1),[x,_]=l.useState(null),[C,A]=l.useState(null),w=l.useRef(i);l.useEffect(()=>{w.current=i});const S=l.useMemo(()=>s==null?"":typeof s=="string"||typeof s=="number"?String(s):Array.isArray(s)&&s.every(E=>typeof E=="string"||typeof E=="number")?s.join(""):"",[s]),N=l.useCallback(()=>{f(!1),_(null),A(null)},[]);l.useEffect(()=>{if(!y)return;let E;try{typeof w.current=="function"&&(E=w.current())}catch{}if(E===!1){N();return}A(typeof E<"u"&&E!==null?E:null)},[S]);const T=l.useCallback(()=>{let E;try{typeof i=="function"&&(E=i())}catch{}if(E!==!1){if(A(typeof E<"u"&&E!==null?E:s),!b.current){f(W=>!W);return}if(y)f(!1),_(null),A(null);else{const W=b.current.getBoundingClientRect();_(W),f(!0)}}},[i,s,y]);return o.jsxs("div",{className:v,children:[o.jsx("p",{className:g,children:o.jsx("span",{className:"training-step__title-text",children:e??t})}),n||u?o.jsxs("div",{className:"title-controls",children:[o.jsxs("div",{className:"title-buttons",children:[u&&o.jsx(ce,{size:32,type:p?"dot":"bar",icon:"play-circle",label:p?void 0:h("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:h("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:m,onClick:d,variant:r==="disabled"?"disabled":"default",disabled:r==="disabled"||m}),n&&o.jsx("div",{ref:b,children:o.jsx(ce,{size:32,type:p?"dot":"bar",icon:"eye",label:p?void 0:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),selected:y,onClick:T,variant:r==="disabled"?"disabled":"default",disabled:!s&&typeof i!="function"})})]}),y&&o.jsx(Bo,{text:C??s,label:h("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:x,onClose:N,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function dc(e,t){return typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled"}function Va({index:e,stepIndex:t,isLast:a=!1,title:r="",titleProps:n={},children:i,className:s="",onDone:c=void 0,useTitleFaded:u=void 0}){const[d,m]=l.useState(()=>dc(e,t));l.useEffect(()=>{const C=dc(e,t);if(C!==d){const A=setTimeout(()=>m(C),0);return()=>clearTimeout(A)}},[e,t,d]);const h=l.useCallback((...C)=>{dc(e,t)==="done"||d==="done"||typeof c=="function"&&c(...C)},[e,t,d,c]),[p,g]=l.useState(!1),[v,b]=l.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),y=l.useCallback(C=>{if(!C)return null;try{const A=C;if(typeof C=="object"&&(A.currentTarget||A.target)&&(A.nativeEvent||A.type)){const N=A.currentTarget??A.target;if(N&&typeof N.getBoundingClientRect=="function")return N.getBoundingClientRect()}if(C instanceof DOMRect)return C;const w=C;if(w&&typeof w.getBoundingClientRect=="function")return w.getBoundingClientRect();const S=C?.current;return S&&typeof S.getBoundingClientRect=="function"?S.getBoundingClientRect():null}catch{return null}},[]),f=l.useCallback((C,{text:A="",label:w="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:S=!1,alignX:N="center",alignY:T="top"}={})=>{const E=y(C);b({text:A,label:w,anchorRect:E,backdrop:S,alignX:N,alignY:T}),g(!0)},[y]),x=l.useCallback(()=>{g(!1),b(C=>({...C,anchorRect:null}))},[]),_=l.Children.map(i,C=>{if(l.isValidElement(C)){const A=C;if(typeof A.type=="string")return A;const w=A.props??{},S=typeof w.onDone=="function"?w.onDone:h,N=typeof w.disabled=="boolean";let T=d==="disabled";return N&&(T=!!w.disabled),l.cloneElement(A,{onDone:S,disabled:T,showTooltip:f,hideTooltip:x})}return C});return o.jsxs("div",{className:`training-step training-step--${d} ${a?"training-step--last":""} ${s}`,"aria-current":d==="active",children:[o.jsx(lc,{state:d}),o.jsxs("div",{className:"training-step__content",children:[o.jsx(cc,{state:d,title:r,...n,useFaded:u}),_]}),p?o.jsx(Sa,{anchorRect:v.anchorRect,backdrop:v.backdrop,onClose:x,children:o.jsx(Bo,{text:v.text,onClose:x})}):null]})}var Hk='.ihabdevteam-core-scope .training-text-box{background:var(--color-darkWhite);border:1px solid var(--color-deepWhite);border-radius:var(--radius-m);color:var(--color-black);display:flex;flex-direction:column;max-width:100%;min-height:160px;overflow:visible;overflow-wrap:anywhere;padding:var(--spacing-content);position:relative;text-align:center;word-break:keep-all}.ihabdevteam-core-scope .training-text-box--disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .training-text-box--disabled .training-text-box__inner{visibility:hidden}.ihabdevteam-core-scope .training-text-box--disabled:after{content:"";pointer-events:none;position:absolute;z-index:5}.ihabdevteam-core-scope .training-text-box__preview{align-items:center;display:flex;justify-content:center;left:50%;pointer-events:auto;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:60}.ihabdevteam-core-scope .training-text-box__buttons{border-radius:999px;gap:4px;height:28px;left:0;right:0}.ihabdevteam-core-scope .training-text-box__area,.ihabdevteam-core-scope .training-text-box__buttons{align-items:center;box-sizing:border-box;display:flex;justify-content:center;pointer-events:auto;position:relative;z-index:40}.ihabdevteam-core-scope .training-text-box__area{flex:1 1 auto;margin:0 auto;min-height:0;text-align:center;width:100%}.ihabdevteam-core-scope .training-text-box--active,.ihabdevteam-core-scope .training-text-box--done{background-color:var(--color-white);border-color:var(--color-main);pointer-events:auto;transition:box-shadow .18s ease,transform .18s ease,opacity .16s ease;-webkit-user-select:auto;-moz-user-select:auto;user-select:auto}.ihabdevteam-core-scope .training-text-box.is-dark{background:var(--color-darkGray);border:1px solid var(--color-black);color:var(--color-deepWhite)}.ihabdevteam-core-scope .training-text-box .training-text-box__inner{display:block;overflow-wrap:anywhere;text-align:center;white-space:normal;width:100%;word-break:keep-all}.ihabdevteam-core-scope .training-text-box.is-dark .tooltip-textbox__text,.ihabdevteam-core-scope .training-text-box.is-dark .training-text-box__inner{color:var(--color-deepWhite)}';Q(Hk);function uc({context:e,state:t="disabled",theme:a="light"}){const{t:r}=me.useTranslation(),[n,i]=l.useState("disabled"),[s,c]=l.useState(()=>{try{return localStorage.getItem("tooltip-theme")||a}catch{return a}});l.useEffect(()=>{try{localStorage.setItem("tooltip-theme",s)}catch{}},[s]);const u=()=>c(T=>T==="dark"?"light":"dark"),{increase:d,decrease:m,canIncrease:h,canDecrease:p,fontSize:g,lineHeight:v}=an({storageKey:"textbox_fontScale"}),[b,y]=l.useState(""),f=l.useCallback(()=>i("active"),[]),x=l.useCallback(()=>y(""),[]),_=T=>{try{y(T)}catch{}},C=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");l.useEffect(()=>{if(t!=="disabled"){const T=setTimeout(()=>i(t),0);return()=>clearTimeout(T)}},[t]);const A=l.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]);l.useEffect(()=>{const T=setTimeout(()=>i("disabled"),0);return()=>clearTimeout(T)},[A]);const w=t==="disabled"?n:t,S=w==="disabled"?"training-text-box--disabled":w==="active"?"training-text-box--active":w==="done"?"training-text-box--done":"",N=l.useMemo(()=>({fontSize:`${g}px`,lineHeight:`${v}px`}),[g,v]);return o.jsxs("div",{className:`training-text-box ${S} ${w!=="disabled"&&s==="dark"?"is-dark":""}`,children:[w==="disabled"&&o.jsx("div",{className:"training-text-box__preview",children:o.jsx(ce,{size:48,type:"bar",onClick:f,icon:"eye",ariaLabel:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),label:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),useBorder:!1})}),o.jsx("div",{className:"training-text-box__area","aria-hidden":w==="disabled",children:o.jsx("span",{className:"training-text-box__inner h3",style:N,children:A})}),w!=="disabled"&&o.jsxs("div",{className:"training-text-box__buttons","aria-hidden":w==="disabled",children:[o.jsx(ce,{size:32,type:"dot",onClick:m,onDisabledClick:()=>_(r("training.fontSizeMin","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),icon:"minus",variant:s==="dark"?"transparent-white":"transparent-gray",disabled:!p,useBorder:!1,showTooltipInfo:!0,...!C&&{width:"60px"}}),o.jsx(ce,{size:32,type:"dot",onClick:d,onDisabledClick:()=>_(r("training.fontSizeMax","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),icon:"plus",variant:s==="dark"?"transparent-white":"transparent-gray",disabled:!h,useBorder:!1,showTooltipInfo:!0,...!C&&{width:"60px"}}),o.jsx(ce,{size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:s==="dark"?"moon":"sun-medium",onClick:u,ariaLabel:r("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:s==="dark"?"transparent-white":"transparent-gray"})]}),o.jsx(oo,{message:b,position:"top",onClose:x})]})}function Nn({index:e,stepIndex:t,isLast:a=!1,title:r,useTitleFaded:n,onDone:i,onChange:s,answer:c,wrongAnswers:u,choices:d,multiSelect:m=!1,correctCount:h=0,useDisabledCovered:p=!1,choiceIcons:g,shuffleChoices:v=!0}){const{t:b}=me.useTranslation(),y=r??b("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),f=typeof e=="number"?e:-1,x=typeof t!="number"?"disabled":f<t?"done":f===t?"active":"disabled",_=Array.isArray(d)&&d.length?d:typeof c<"u"?[c].concat(Array.isArray(u)?u:[]):void 0,C=u?u.join("||"):"",A=d?d.join("||"):"",[w,S]=l.useState(()=>Array.isArray(_)?v?ze(_):_.slice():void 0);l.useEffect(()=>{Array.isArray(_)&&_.length?S(v?ze(_):_.slice()):S(void 0)},[c,C,A,v]);const[N,T]=l.useState(null),[E,W]=l.useState(()=>new Set);l.useEffect(()=>{T(null),W(new Set)},[A]);const L=l.useRef(void 0);l.useEffect(()=>{const j=L.current;typeof j=="number"&&typeof t=="number"&&typeof e=="number"&&j>=e&&t<e&&(T(null),W(new Set)),L.current=t},[t,e]);const k=l.useCallback(j=>{if(x!=="active")return;const F=w?.[j];if(F==null)return;const ee=F,Z=x==="active"||x==="done";if(m){const J=new Set(E),M=J.has(ee);M?J.delete(ee):J.add(ee),W(J),typeof s=="function"&&s({selectedValues:[...J],__ts:Date.now()}),Z&&(typeof h=="number"&&h>0?J.size>=h:!M)&&typeof i=="function"&&x==="active"&&i({selectedValues:[...J],__ts:Date.now()})}else T(ee),typeof s=="function"&&s({selectedIndex:j,selectedValue:ee,__ts:Date.now()}),Z&&typeof i=="function"&&x==="active"&&i({selectedIndex:j,selectedValue:ee,__ts:Date.now()})},[w,x,m,s,i,h,E]),D=`training-step__buttons${Array.isArray(w)&&w.length>3?" training-step__buttons--wrap-3":""}`;return o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:y,useTitleFaded:n,children:o.jsx("div",{className:D,children:Array.isArray(w)&&w.length>0?w.map((j,F)=>o.jsx(ce,{size:56,type:"bar",onClick:()=>k(F),ariaLabel:String(j),label:j,useLabel:!0,icon:g?g[String(j)]:void 0,variant:"default",disabled:x==="disabled",selected:m?E.has(j):N===j,useDisabledCovered:p,minWidth:0},String(j))):null})})}function Dn({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:n,onChange:i,context:s,demoSelected:c}){const{t:u}=me.useTranslation(),d=r??u("training.confirmTitle","\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694."),m=typeof e=="number"?e:-1,h=typeof t!="number"?"disabled":m<t?"done":m===t?"active":"disabled",p=s&&typeof s=="object"?s.sentence||"":typeof s=="string"?s:"",g=s&&typeof s=="object"?s.choices:void 0,[v,b]=l.useState(c??null);l.useEffect(()=>{if(c==null&&v!==null){const _=setTimeout(()=>b(null),0);return()=>clearTimeout(_)}},[p,c,v]);const y=l.useCallback(_=>{const C=typeof _=="object"&&_!==null?Object.assign({},_,{__ts:Date.now()}):{value:_,__ts:Date.now()};typeof i=="function"&&i(C),h==="active"&&typeof n=="function"&&n(C)},[i,h,n]),f=l.useCallback(()=>{h==="active"&&(b(!1),y(!1))},[y,h]),x=l.useCallback(()=>{h==="active"&&(b(!0),y(!0))},[y,h]);return o.jsxs(Va,{index:e,stepIndex:t,isLast:a,title:d,onDone:n,useTitleFaded:!1,children:[o.jsx(uc,{context:s,state:h}),o.jsx("div",{className:"training-step__buttons",children:Array.isArray(g)&&g.length>0?g.slice(0,6).map((_,C)=>o.jsx(ce,{size:56,type:"bar",onClick:()=>{h==="active"&&(b(C),y&&y(C))},disabled:h==="disabled",ariaLabel:String(_),label:_,variant:h,selected:v===C},C)):o.jsxs(o.Fragment,{children:[o.jsx(ce,{size:56,type:"bar",onClick:f,disabled:h==="disabled",icon:"x",ariaLabel:u("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:u("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:v===!1}),o.jsx(ce,{size:56,type:"bar",onClick:x,disabled:h==="disabled",icon:"circle",ariaLabel:u("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:u("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:v===!0})]})})]})}function En({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:n,btnLabel:i,soundSrc:s,bucketPath:c,usePreviewTextBtn:u,previewText:d=null,onPreviewTextBtn:m,disabled:h,_pageIndex:p,showSoundWaveForm:g,showNoiseWaveForm:v}){const{t:b}=me.useTranslation(),y=r??b("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),f=h??(typeof t=="number"&&typeof e=="number"?e>t:!1);return o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:y,onDone:n,titleProps:{usePreviewTextBtn:u,previewText:d,onPreviewTextBtn:m},children:o.jsx(xr,{soundSrc:s,ttsText:s?null:d??y,bucketPath:c,btnLabel:i||b("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:f,className:"training-step__listen-sticky",showSoundWaveForm:g,showNoiseWaveForm:v},`audio-p${p??0}-s${e}`)})}var Vk=".ihabdevteam-core-scope .page-popup--closing{opacity:0;pointer-events:none;transition:opacity .16s ease}.ihabdevteam-core-scope .page-popup__panel{overflow:auto}.ihabdevteam-core-scope .page-popup__close{font-size:20px;right:12px;top:10px}.ihabdevteam-core-scope .page-popup{align-items:stretch;display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-page-popup)}.ihabdevteam-core-scope .page-popup__panel{background:var(--color-deepWhite);border-radius:0;box-shadow:none;color:var(--color-black);display:flex;flex-direction:column;height:100%;max-height:none;max-width:none;overflow:hidden;position:relative;width:100%}.ihabdevteam-core-scope .page-popup__scroll{-webkit-overflow-scrolling:touch;align-items:flex-start;display:flex;flex:1 1 0;justify-content:center;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:rgba(0,0,0,.15) transparent;scrollbar-width:thin;touch-action:pan-y}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar{width:4px}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-track{background:transparent}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:var(--radius-xs)}.ihabdevteam-core-scope .page-popup__scroll::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.28)}.ihabdevteam-core-scope .page-popup__panel--measuring .page-popup__scroll{opacity:0;pointer-events:none}.ihabdevteam-core-scope .page-popup__scroll{transition:opacity .12s ease}.ihabdevteam-core-scope .nt-debug{background:rgba(0,0,0,.03);border-radius:var(--radius-sm);color:var(--text,var(--color-black));font-family:monospace;font-size:12px;line-height:1.2;max-width:300px;padding:8px 10px;position:absolute;right:20px;top:84px;white-space:pre-wrap;z-index:calc(var(--z-page-popup) + 1)}.ihabdevteam-core-scope .page-popup--backdrop{display:none}.ihabdevteam-core-scope .page-popup__close{background:transparent;border:none;color:var(--text,var(--color-black));cursor:pointer;font-size:22px;line-height:1;position:absolute;right:14px;top:12px}.ihabdevteam-core-scope .page-popup__panel>*{box-sizing:border-box}.ihabdevteam-core-scope .page-popup__body{padding:16px 20px}.ihabdevteam-core-scope .page-popup__content{box-sizing:border-box;margin:0 auto;max-width:800px;min-width:0;padding:var(--spacing-page);width:100%}.ihabdevteam-core-scope .page-popup__content--center{margin-bottom:auto;margin-top:auto}.ihabdevteam-core-scope .pp-empty{color:var(--color-gray);padding:24px 0;text-align:center;width:100%}.ihabdevteam-core-scope .page-popup__content .training-steps{box-sizing:border-box;min-width:0;width:100%}.ihabdevteam-core-scope .page-popup__bottom,.ihabdevteam-core-scope .page-popup__top{flex-shrink:0}.ihabdevteam-core-scope .page-popup__panel--center .page-popup__scroll{align-items:center}.ihabdevteam-core-scope .page-popup--result-empty{background:var(--color-deepWhite)}.ihabdevteam-core-scope .page-popup__empty{align-items:center;color:var(--color-gray);display:flex;flex-direction:column;justify-content:center;padding:2rem;text-align:center;width:100%}";Q(Vk);var Gk=".ihabdevteam-core-scope .order-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .order-list__item{align-items:flex-start;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .order-list__draggable{align-items:center;border-radius:var(--radius-m);display:flex;flex:1;gap:var(--spacing-xs);justify-content:space-between;min-height:60px;padding:0 0 0 4px;will-change:transform}.ihabdevteam-core-scope .order-list__item-text{color:var(--color-black)}.ihabdevteam-core-scope .order-list__item-buttons{align-items:center;align-self:center;display:inline-flex;gap:2px}@media (max-width:600px){.ihabdevteam-core-scope .order-list__item-buttons{align-items:center;align-self:center;display:flex;flex-direction:column}.ihabdevteam-core-scope .order-list__item-buttons>*{box-sizing:border-box;display:inline-flex}}.ihabdevteam-core-scope .order-list__item.correct{border:1px solid var(--color-main)}.ihabdevteam-core-scope .order-list__slot{align-items:center;background-color:var(--color-darkWhite);border-radius:var(--radius-m);box-sizing:border-box;display:flex;gap:var(--spacing-xs);height:auto;padding:4px 10px;width:100%}.ihabdevteam-core-scope .order-list__marker{--marker-pos:50%;align-items:center;background-color:var(--color-main);background:color-mix(in srgb,var(--color-main) 50%,var(--color-sub) 50%);border:2px solid var(--color-pureWhite);border-radius:var(--radius-sm);box-sizing:border-box;color:#fff;display:inline-flex;height:24px;justify-content:center;width:24px}@supports (color:color-mix(in lch,red,blue)) and (top:var(--f )){.ihabdevteam-core-scope .order-list__marker{background:color-mix(in srgb,var(--color-main) calc(100% - var(--marker-pos)),var(--color-sub) var(--marker-pos))}}@media (max-width:600px){.ihabdevteam-core-scope .order-list__marker{height:24px;min-width:24px;width:24px}}.ihabdevteam-core-scope .order-list__item:hover .order-list__slot{background-color:var(--color-deepWhite);box-shadow:inset 0 0 0 1px var(--color-main);transition:box-shadow .16s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__item.drag-over .order-list__slot{background-color:var(--color-white);box-shadow:inset 0 0 0 1px var(--color-main)}.ihabdevteam-core-scope .order-list__slot.pulse{background-color:var(--color-white);transition:background-color .42s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__slot.pulse.to-dark{background-color:var(--color-darkWhite)}.ihabdevteam-core-scope .order-list__slot-number{align-items:center;align-self:center;border-radius:var(--radius-sm);color:#fff;display:inline-flex;height:32px;justify-content:center;width:32px}.ihabdevteam-core-scope .order-list__draggable.dragging{background-color:var(--color-white);opacity:.2}.ihabdevteam-core-scope .order-list__dragging-object{align-items:center;background:var(--color-white);border-radius:var(--radius-m);box-shadow:0 14px 40px rgba(16,24,40,.18);box-sizing:border-box;color:var(--color-black);display:inline-flex;gap:var(--spacing-s);left:0;max-width:calc(100vw - var(--spacing-page)*3);min-height:60px;opacity:1;overflow-wrap:anywhere;padding:20px;pointer-events:none;position:fixed;top:0;transform:translate3d(-9999px,-9999px,0) scale(1);transition:transform .16s cubic-bezier(.22,.9,.39,1),opacity .18s ease;white-space:normal;width:auto;will-change:transform,opacity;word-break:keep-all;z-index:var(--z-popover)}.ihabdevteam-core-scope .order-list__dragging-object--visible{opacity:1}.ihabdevteam-core-scope .order-list__item.drag-over .order-list__slot:hover{background-color:var(--color-white);border-radius:var(--radius-m);box-shadow:inset 0 0 0 1px var(--color-main);transition:box-shadow .16s cubic-bezier(.22,.9,.39,1)}.ihabdevteam-core-scope .order-list__item-text{display:block;line-height:1.4;margin:0;overflow-wrap:anywhere;white-space:normal;width:100%;word-break:keep-all}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true],.ihabdevteam-core-scope .order-list__draggable[draggable=false]{background-color:var(--color-darkWhite);box-shadow:none!important;cursor:default;opacity:.9;pointer-events:none}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__item-text,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__item-text{color:var(--color-gray);display:none!important;opacity:.9}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__item-buttons,.ihabdevteam-core-scope .order-list__draggable[data-disabled=true]~.order-list__slot .order-list__slot-number,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__item-buttons,.ihabdevteam-core-scope .order-list__draggable[draggable=false]~.order-list__slot .order-list__slot-number,.ihabdevteam-core-scope .order-list__slot-number[hidden]{display:none!important}.ihabdevteam-core-scope .order-list__draggable[data-disabled=true] .order-list__slot,.ihabdevteam-core-scope .order-list__draggable[data-disabled=true]+.order-list__slot,.ihabdevteam-core-scope .order-list__draggable[draggable=false] .order-list__slot,.ihabdevteam-core-scope .order-list__draggable[draggable=false]+.order-list__slot,.ihabdevteam-core-scope .order-list__slot[data-disabled=true]{background-color:var(--color-darkWhite)!important;box-shadow:none!important}.ihabdevteam-core-scope .order-list__slot[data-disabled=true]{cursor:default!important;pointer-events:none!important}.ihabdevteam-core-scope .order-list__slot[data-disabled=true] .order-list__slot-number{display:none!important}";Q(Gk);function jn({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:n,onChange:i,context:s=[]}){const{t:c}=me.useTranslation(),u=r??c("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),d=R=>typeof R=="string"?R:R&&(R.context||R.sentence||R.question||"")||"",[m,h]=l.useState(Array.isArray(s)?s:[]),[p,g]=l.useState(()=>(m||[]).map((R,z)=>({id:z,text:d(R)}))),v=l.useMemo(()=>typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled",[t,e]);l.useEffect(()=>{const R=Array.isArray(s)?s:[];h(R);const z=(H=>{const $=(H||[]).map((I,ne)=>({id:ne,text:d(I)}));if($.length<=1)return $;const q=(I,ne)=>{if(I.length!==ne.length)return!1;for(let X=0;X<I.length;X++)if(I[X].text!==ne[X].text)return!1;return!0};let O=ze($),G=0;for(;q(O,$)&&G<20;)O=ze($),G+=1;return O})(R);g(z);try{if(typeof i=="function"){const H=z.filter(($,q)=>$.text===d(R[q])).length;i({shuffled:z,score:H,total:(R||[]).length,initial:!0,__ts:Date.now()})}if(typeof n=="function"&&v==="active"){const H=z.filter(($,q)=>$.text===d(R[q])).length;n({shuffled:z,score:H,total:(R||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[s]);const b=(R,z)=>{const H=[...p],$=R+z;if($<0||$>=H.length)return;const q=H[$];H[$]=H[R],H[R]=q,D(H);try{if(typeof n=="function"&&v==="active"){const O=H.filter((G,I)=>G.text===d(m[I])).length;n({shuffled:H,score:O,total:(m||[]).length,__ts:Date.now()})}}catch{}},[y,f]=l.useState(null),x=l.useRef(null),_=l.useRef(null),C=l.useRef(null),A=l.useRef(null),w=l.useRef(null),S=l.useRef({x:0,y:0}),N=l.useRef(null),T=l.useRef({dx:0,dy:0}),E=()=>{if(N.current!==null)return;const R=()=>{N.current=requestAnimationFrame(R);const z=S.current,H=T.current||{dx:0,dy:0};x.current&&(x.current.style.transform=`translate3d(${z.x-H.dx}px, ${z.y-H.dy}px, 0)`)};N.current=requestAnimationFrame(R)},W=l.useRef(new Map),L=l.useRef(new Map),k=()=>{const R=new Map;return W.current.forEach((z,H)=>{z&&z.getBoundingClientRect&&R.set(H,z.getBoundingClientRect())}),R},D=R=>{const z=k();g(R);try{if(typeof i=="function"){const H=R.filter(($,q)=>$.text===d(m[q])).length;i({shuffled:R,score:H,total:(m||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const H=k();R.forEach($=>{const q=z.get($.id),O=H.get($.id),G=W.current.get($.id);if(!G||!q||!O)return;const I=q.top-O.top;I&&(G.style.transition="none",G.style.transform=`translateY(${I}px)`,requestAnimationFrame(()=>{G.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",G.style.transform="";const ne=()=>{G.style.transition="",G.removeEventListener("transitionend",ne)};G.addEventListener("transitionend",ne)}))})})},j=(R,z)=>{try{try{z.dataTransfer?.setData("text/plain",String(R))}catch{}try{z.dataTransfer&&(z.dataTransfer.effectAllowed="move")}catch{}try{const H=document.createElement("div");H.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(H),z.dataTransfer?.setDragImage(H,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(H)}catch{}})}catch{}}catch{}f(R);try{const H=p[R],$=document.createElement("div");$.className="order-list__dragging-object order-list__dragging-object--visible",$.textContent=H&&H.text?H.text:"",document.body.appendChild($),x.current=$;const q=W.current.get(H.id);let O=z.clientX||0,G=z.clientY||0;try{if(q&&q.getBoundingClientRect){const ae=q.getBoundingClientRect();O=ae.left+ae.width/2,G=ae.top+ae.height/2}}catch{}const I=$.getBoundingClientRect(),ne=I.width/2,X=I.height/2;T.current={dx:ne,dy:X},$.style.transition="none",S.current={x:O,y:G},$.style.transform=`translate3d(${O-ne}px, ${G-X}px, 0)`,requestAnimationFrame(()=>{try{$.style.transition=""}catch{}E()});const te=ae=>{const Y=ae;S.current={x:Y.clientX,y:Y.clientY},E()};C.current=te,document.addEventListener("mousemove",te);const pe=ae=>{const Y=ae;S.current={x:Y.clientX,y:Y.clientY},E()};_.current=pe,document.addEventListener("dragover",pe);try{z.dataTransfer?.setData("text/plain",String(R));try{z.dataTransfer?.setData("application/json",JSON.stringify({idx:R}))}catch{}}catch{}}catch{}},F=(R,z)=>{z.preventDefault();try{z.dataTransfer&&(z.dataTransfer.dropEffect="move")}catch{}try{w.current!==null&&(clearTimeout(w.current),w.current=null);const H=z.currentTarget&&z.currentTarget.closest?z.currentTarget.closest(".order-list__item"):null;if(H&&A.current!==H){if(A.current)try{A.current.classList.remove("drag-over")}catch{}try{H.classList.add("drag-over")}catch{}A.current=H}}catch{}},ee=(R,z)=>{z.preventDefault();const H=z.dataTransfer?.getData("text/plain")||"",$=H?parseInt(H,10):y,q=R;if(typeof $!="number"||isNaN($)||$===q){f(null),M(),Z();return}const O=Mi(p,$,q);D(O),f(null),Z();try{if(typeof n=="function"&&v==="active"){const G=O.filter((I,ne)=>I.text===d(m[ne])).length;n({shuffled:O,score:G,total:(m||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const G=document.querySelectorAll(".order-list .order-list__item")[q];if(!G)return;const I=G.querySelector(".order-list__slot")||G;try{I.classList.add("pulse"),I.offsetHeight,I.classList.add("to-dark");const ne=()=>{I.classList.remove("pulse","to-dark"),I.removeEventListener("transitionend",ne)};I.addEventListener("transitionend",ne)}catch{}})}catch{}M()},Z=()=>{if(x.current){try{document.body.removeChild(x.current)}catch{}x.current=null}_.current&&(document.removeEventListener("dragover",_.current),_.current=null),C.current&&(document.removeEventListener("mousemove",C.current),C.current=null),N.current!==null&&(cancelAnimationFrame(N.current),N.current=null)},J=()=>{f(null),M(),Z()};l.useEffect(()=>()=>Z(),[]);const M=()=>{try{if(w.current!==null&&(clearTimeout(w.current),w.current=null),A.current){try{A.current.classList.remove("drag-over")}catch{}A.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(R=>R.classList.remove("drag-over"))}catch{}};return l.useEffect(()=>{try{const R=Math.max(1,(p||[]).length);p.forEach((z,H)=>{const $=L.current.get(z.id);if(!$)return;let q=50;R>1&&(q=Math.round(H/(R-1)*100));try{$.style.setProperty("--marker-pos",q+"%")}catch{}})}catch{}},[p]),l.useEffect(()=>()=>{Z(),w.current!==null&&(clearTimeout(w.current),w.current=null)},[]),o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:u,children:o.jsx("div",{className:"order-list",children:p.map((R,z)=>{const H=Math.max(1,(p||[]).length),$=H>1?Math.round(z/(H-1)*100):50;return o.jsx("div",{className:"order-list__item",children:o.jsxs("div",{className:"order-list__slot","data-disabled":v==="disabled","aria-disabled":v==="disabled",children:[v!=="disabled"?o.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":$+"%"},ref:q=>{const O=L.current;q?O.set(R.id,q):O.delete(R.id)},children:o.jsx("span",{className:"order-list__slot-number button-1",children:z+1})}):null,o.jsxs("div",{ref:q=>{const O=W.current;q?O.set(R.id,q):O.delete(R.id)},className:`order-list__draggable ${y===z?"dragging":""}`,"data-disabled":v==="disabled","aria-disabled":v==="disabled",tabIndex:v==="disabled"?-1:0,draggable:v==="active",onDragStart:v==="active"?q=>j(z,q):void 0,onDragEnter:v==="active"?q=>F(z,q):void 0,onDragOver:v==="active"?q=>F(z,q):void 0,onDragLeave:v==="active"?()=>{try{w.current!==null&&clearTimeout(w.current),w.current=setTimeout(()=>{try{const q=document.querySelectorAll(".order-list .order-list__item");q&&q[z]&&(q[z].classList.remove("drag-over"),A.current===q[z]&&(A.current=null))}catch{}},80)}catch{}}:void 0,onDrop:v==="active"?q=>ee(z,q):void 0,onDragEnd:v==="active"?J:void 0,children:[o.jsx("span",{className:"order-list__item-text body-2",children:R.text}),v==="active"?o.jsxs("span",{className:"order-list__item-buttons",children:[o.jsx(ce,{size:32,type:"dot",onClick:()=>b(z,-1),ariaLabel:c("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:z===0,useBorder:!1,useDisabledInvisible:!0}),o.jsx(ce,{size:32,type:"dot",onClick:()=>b(z,1),ariaLabel:c("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:z===p.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},R.id)})})})}var qk="";Q(qk);const Yk=8e3;function Uk(e,t){return new Promise(a=>{let r=!1;const n=()=>{r||(r=!0,a())};e.then(n,n),setTimeout(n,t)})}function pc({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:n,onChange:i,context:s=[],selectable:c=!1,hideLabel:u=!1,hideAudio:d=!1,maxCards:m}){const{t:h}=me.useTranslation(),p=r??h("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),g=l.useMemo(()=>Array.isArray(s)?s:s&&s.items||[],[s]),v=m??3,b=(g||[]).slice(0,v);(g||[]).length>v&&console.warn(`TrainingStepCard: ${g.length} items passed but only ${v} shown`);const y=typeof e=="number"?e:-1,f=typeof t!="number"?"disabled":y<t?"done":y===t?"active":"disabled",[x,_]=l.useState(null),C=l.useRef([]),[A,w]=l.useState(!1),S=l.useMemo(()=>g.map(W=>W?.id??W?.word??"").join("|"),[g]);l.useEffect(()=>{_(null),C.current=[]},[S]);const N=l.useCallback((W,L)=>{if(c)return;const k={item:W,index:L,__ts:Date.now()};try{typeof i=="function"&&i(k)}catch{}if(f==="active"&&typeof n=="function")try{n(k)}catch{}},[c,i,f,n]),T=l.useCallback(async()=>{if(!(A||f==="disabled")){w(!0);try{for(const W of C.current)W&&await Uk(W.play(),Yk)}finally{w(!1)}}},[A,f]),E=l.useCallback((W,L)=>{if(f!=="active")return;_(L);const k={selectedValue:W.word||W.title||"",selectedIndex:L,item:W,__ts:Date.now()};try{typeof i=="function"&&i(k)}catch{}if(f==="active"&&typeof n=="function")try{n(k)}catch{}},[i,f,n]);return o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:p,onDone:n,titleProps:{usePlayAllBtn:!d&&b.length>0,onPlayAll:T,playAllActive:A},children:o.jsx("div",{className:"training-step__cards",children:b.length===0?o.jsx("div",{className:"training-step__empty",children:h("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):b.map((W,L)=>o.jsx(_n,{ref:k=>{C.current[L]=k},item:W,disabled:f==="disabled",onPlayDone:()=>N(W,L),selectable:c,selected:c&&x===L,onSelect:c?()=>E(W,L):void 0,flipDelay:L*120,hideLabel:u,hideAudio:d},W&&W.id||L))})})}const Kk=160;var Zk=".ihabdevteam-core-scope .panel{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-card);display:flex;flex-direction:column;overflow:visible;padding:0;text-align:left}.ihabdevteam-core-scope .panel--no-border{border:none}.ihabdevteam-core-scope .panel--no-bg{background:transparent;border-radius:0}.ihabdevteam-core-scope .panel--no-border .panel-row{padding-left:0;padding-right:0}.ihabdevteam-core-scope .panel--no-row-border .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel__header{align-items:center;border-bottom:1px solid var(--color-darkWhite);box-sizing:border-box;display:flex;gap:var(--spacing-xs);justify-content:space-between;margin:0;padding:0 20px}.ihabdevteam-core-scope .panel__header:last-child{border-bottom:none}.ihabdevteam-core-scope .panel--small .panel__header{min-height:48px}.ihabdevteam-core-scope .panel--medium .panel__header{min-height:56px}.ihabdevteam-core-scope .panel--large .panel__header{min-height:64px}.ihabdevteam-core-scope .panel__icon{align-items:center;color:var(--t-item-fg,var(--color-main));display:flex;flex-shrink:0;height:20px;justify-content:center;margin-right:var(--spacing-s);width:20px}.ihabdevteam-core-scope .panel__title-group{display:flex;flex-direction:column;gap:4px;margin-right:auto;min-width:0}.ihabdevteam-core-scope .panel__title{color:var(--color-darkGray);margin:0}.ihabdevteam-core-scope .panel__disc{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .panel__actions{display:flex;flex-shrink:0;gap:6px}.ihabdevteam-core-scope .panel-row{align-items:center;box-sizing:border-box;display:flex;gap:var(--spacing-m);justify-content:space-between;padding:4px 20px}.ihabdevteam-core-scope .panel--small .panel-row{min-height:48px}.ihabdevteam-core-scope .panel--medium .panel-row{min-height:56px}.ihabdevteam-core-scope .panel--large .panel-row{min-height:64px}.ihabdevteam-core-scope .panel-row+.panel-row{border-top:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel--fill .panel-row{border-bottom:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel--fill .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel--no-row-border .panel-row{border-bottom:none}.ihabdevteam-core-scope .panel>:not(.panel-row)+.panel-row{border-top:none}.ihabdevteam-core-scope .panel-grid{grid-gap:1px;background:var(--color-darkWhite);display:grid;gap:1px;grid-template-columns:repeat(2,1fr);grid-template-columns:repeat(var(--panel-grid-cols,2),1fr);overflow:hidden;padding-bottom:1px}.ihabdevteam-core-scope .panel-grid .panel-row{background:var(--color-white)}.ihabdevteam-core-scope .panel-grid .panel-row+.panel-row{border-top:none}.ihabdevteam-core-scope .panel-row--empty{color:var(--color-lightGray);justify-content:center}.ihabdevteam-core-scope .panel-row--loading{justify-content:center}.ihabdevteam-core-scope .panel__body--scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .panel-row--content{display:block;min-height:0;padding:16px}.ihabdevteam-core-scope .panel-row--scroll{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:16px 16px 20px}.ihabdevteam-core-scope .panel-row--content+.panel-row--content,.ihabdevteam-core-scope .panel-row--content+.panel-row--scroll,.ihabdevteam-core-scope .panel-row--scroll+.panel-row--content,.ihabdevteam-core-scope .panel-row--scroll+.panel-row--scroll{border-top:none}.ihabdevteam-core-scope .panel-row__icon{align-items:center;display:flex;flex-shrink:0;margin-right:-4px}.ihabdevteam-core-scope .panel-row__left{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__label{color:var(--color-deepGray)}.ihabdevteam-core-scope .panel-row__sub{color:var(--color-gray);margin-top:2px}.ihabdevteam-core-scope .panel-row__right{align-items:center;display:flex;flex:0 0 auto;justify-content:flex-end}@media (max-width:767px){.ihabdevteam-core-scope .panel-row{flex-wrap:wrap}.ihabdevteam-core-scope .panel-row__right{flex:0 1 auto;min-width:0}}.ihabdevteam-core-scope .panel--form .panel-row{grid-gap:var(--spacing-m);align-items:center;display:grid;gap:var(--spacing-m);grid-template-columns:80px 1fr;grid-template-columns:var(--panel-label-width,80px) 1fr}.ihabdevteam-core-scope .panel--form .panel-row:has(.text-field--full-width){align-items:flex-start}.ihabdevteam-core-scope .panel--form .panel-row:has(.text-field--full-width) .panel-row__left{padding-top:9px}.ihabdevteam-core-scope .panel-row--label-fixed .panel-row__left{flex:0 0 120px;flex:0 0 var(--panel-label-width,120px)}.ihabdevteam-core-scope .panel-row--label-fixed .panel-row__right{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--clickable{cursor:pointer;transition:background .1s,box-shadow .1s}.ihabdevteam-core-scope .panel-row--clickable:hover{background:var(--color-darkWhite)}.ihabdevteam-core-scope .panel-row__text{color:var(--color-darkGray);overflow-wrap:break-word;text-align:right;word-break:break-word}.ihabdevteam-core-scope .panel-row--text .panel-row__right{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--block{align-items:stretch;display:flex;flex-direction:column;justify-content:center}.ihabdevteam-core-scope .panel-row__description{color:var(--color-gray);line-height:1.6;margin:0;overflow-wrap:break-word;word-break:break-word}.ihabdevteam-core-scope .panel-row__dropdown-group{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .panel-row__dropdown-group--full,.ihabdevteam-core-scope .panel-row__dropdown-item--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap{display:flex;flex-direction:column}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row__text--full{text-align:left;width:100%}.ihabdevteam-core-scope .panel-row__input-wrap{display:flex;flex-direction:column}.ihabdevteam-core-scope .panel-row__input-wrap--full{flex:1;min-width:0}.ihabdevteam-core-scope .panel-row--vertical{align-items:flex-start;flex-direction:column;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .panel-row--vertical .panel-row__left{flex:none;width:100%}.ihabdevteam-core-scope .panel-row--vertical .panel-row__right{align-items:flex-start;flex:none;justify-content:flex-start;width:100%}.ihabdevteam-core-scope .panel-row--vertical .panel-row__text{margin-left:0;text-align:left}.ihabdevteam-core-scope .panel-row--device{grid-gap:0;align-items:stretch;display:grid;gap:0;grid-template-columns:1fr 1fr;min-height:0;padding:0}.ihabdevteam-core-scope .panel-row__device-column{box-sizing:border-box;display:flex;flex-direction:column;gap:0;min-height:164px;padding:14px 16px}.ihabdevteam-core-scope .panel-row__device-column+.panel-row__device-column{border-left:1px solid var(--color-darkWhite)}.ihabdevteam-core-scope .panel-row__device-head{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px;min-height:32px}.ihabdevteam-core-scope .panel-row__device-side{color:var(--color-darkGray);margin:0;text-align:left}.ihabdevteam-core-scope .panel-row__device-info{margin:0;text-align:left}.ihabdevteam-core-scope .panel-row__device-info,.ihabdevteam-core-scope .panel-row__device-kind{align-items:flex-start;display:flex;flex-direction:column;gap:3px}.ihabdevteam-core-scope .panel-row__device-name{color:var(--color-darkGray)}.ihabdevteam-core-scope .panel-row__device-detail{color:var(--color-gray)}.ihabdevteam-core-scope .panel-row__device-product{color:var(--color-darkGray)}.ihabdevteam-core-scope .panel-row__device-date{color:var(--color-lightGray);margin-top:2px}.ihabdevteam-core-scope .panel-row__device-empty{align-items:center;color:var(--color-lightGray);display:flex;flex:1;justify-content:center;text-align:center}.ihabdevteam-core-scope .required-mark{color:var(--color-main);margin-left:2px}.ihabdevteam-core-scope .panel-row__error{color:var(--color-error);margin-top:4px}.ihabdevteam-core-scope .panel-row__helper{color:var(--color-lightGray);margin-top:4px}.ihabdevteam-core-scope .panel-row__button-group{display:flex;gap:6px}@media (max-width:767px){.ihabdevteam-core-scope .panel-row__dropdown-group{flex-wrap:wrap}.ihabdevteam-core-scope .panel-row__dropdown-error-wrap--full,.ihabdevteam-core-scope .panel-row__dropdown-item--full{flex:1 1 104px}}";Q(Zk);const xb=()=>{};function Cr({title:e,icon:t,disc:a,actions:r,size:n="medium",minHeight:i,maxWidth:s,className:c,scrollable:u,useBorder:d=!0,useBg:m=!0,useRowBorder:h=!0,labelWidth:p,form:g=!1,loading:v,empty:b,children:y}){const f=xe("panel",`panel--${n}`,g?"panel--form":"",i!==void 0?"panel--fill":"",d?"":"panel--no-border",m?"":"panel--no-bg",h?"":"panel--no-row-border",c),x={};return i!==void 0&&(x.minHeight=i),s!==void 0&&(x.maxWidth=typeof s=="number"?`${s}px`:s),p!==void 0&&(x["--panel-label-width"]=typeof p=="number"?`${p}px`:p),o.jsxs("div",{className:f,style:Object.keys(x).length?x:void 0,children:[(e!=null||a!=null)&&o.jsxs("div",{className:xe("panel__header",a!=null?"panel__header--with-disc":""),children:[t&&o.jsx(Pe,{icon:t,label:typeof e=="string"?e:void 0,className:"panel__icon"}),o.jsxs("div",{className:"panel__title-group",children:[e!=null&&o.jsx("h2",{className:`panel__title ${a!=null?"body-3b":"h5b"}`,children:e}),a!=null&&o.jsx("p",{className:"panel__disc caption-1",children:a})]}),r&&o.jsx("div",{className:"panel__actions",children:r})]}),v?o.jsx(Na,{variant:"loading"}):b!=null&&(y==null||Array.isArray(y)&&y.length===0)?o.jsx(Na,{variant:"empty",children:b}):u?o.jsx("div",{className:"panel__body--scroll",children:y}):y]})}function Cb({cols:e=2,children:t}){return o.jsx("div",{className:"panel-grid",style:{"--panel-grid-cols":e},children:t})}function Na(e){const t=l.useId();if(!("variant"in e)){const{label:b,sub:y,onClick:f,children:x,align:_="horizontal",icon:C}=e,A=w=>{f&&w.target===w.currentTarget&&(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),f())};return o.jsxs("div",{className:xe("panel-row",_==="vertical"?"panel-row--vertical":"",f?"panel-row--clickable":""),onClick:f,onKeyDown:f?A:void 0,role:f?"button":void 0,tabIndex:f?0:void 0,children:[C!=null&&o.jsx("div",{className:"panel-row__icon",children:C}),b!=null&&o.jsxs("div",{className:"panel-row__left",children:[o.jsx("div",{className:"panel-row__label body-3",children:b}),y&&o.jsx("div",{className:"panel-row__sub caption-1",children:y})]}),o.jsx("div",{className:"panel-row__right",children:x})]})}if(e.variant==="description")return o.jsx("div",{className:"panel-row panel-row--block",children:o.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return o.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return o.jsx("div",{className:"panel-row panel-row--loading",children:o.jsx(Ao,{size:28})});if(e.variant==="custom"&&!e.label)return o.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:r,sub:n,onClick:i,required:s,error:c,align:u="horizontal",useFullWidth:d=!1,icon:m}=e;let h=null;const p=a==="toggle"?`panel-toggle-${t}`:void 0;if(a==="toggle"){const b=e;h=o.jsx(Pl,{checked:b.checked,onChange:b.onChange,id:p})}else if(a==="segmented"){const b=e;h=o.jsx(Ha,{options:b.options,value:b.value,onChange:b.onChange,size:b.size??40,ariaLabel:r})}else if(a==="dropdown"){const b=e,y=b.dropdowns?.length?o.jsx("div",{className:`panel-row__dropdown-group${d?" panel-row__dropdown-group--full":""}`,children:b.dropdowns.map((f,x)=>o.jsx("div",{className:d?"panel-row__dropdown-item--full":void 0,children:o.jsx(Ut,{options:f.options,value:f.value,onChange:f.onChange,placeholder:f.placeholder,block:d,error:!!c,ariaLabel:f.ariaLabel??([r,f.placeholder].filter(Boolean).join(" ")||void 0)})},x))}):o.jsx(Ut,{options:b.options??[],value:b.value??"",onChange:b.onChange??xb,block:d,error:!!c,ariaLabel:r});h=c?o.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[y,o.jsx("span",{className:"caption-1 panel-row__error",role:"alert",children:c})]}):y}else if(a==="button"){const b=e;b.buttons?.length?h=o.jsx("div",{className:"panel-row__button-group",children:b.buttons.map((y,f)=>o.jsx(ce,{size:y.btnSize??40,variant:y.btnVariant??"default",disabled:y.disabled,onClick:y.onClick,children:y.label},f))}):h=o.jsx(ce,{size:b.btnSize??40,variant:b.btnVariant??"default",disabled:b.disabled,onClick:b.onClick,children:b.buttonLabel})}else if(a==="text"){const b=e;h=o.jsx("span",{className:`panel-row__text body-2${d?" panel-row__text--full":""}`,style:b.valueColor?{color:b.valueColor}:void 0,children:b.value})}else if(a==="input"){const b=e;h=o.jsxs("div",{className:`panel-row__input-wrap${d?" panel-row__input-wrap--full":""}`,children:[o.jsx(Wa,{value:b.value,onChange:b.onChange??xb,onKeyDown:b.onKeyDown,onEnter:b.onEnter,placeholder:b.placeholder,inputMode:b.inputMode,readOnly:b.readOnly,disabled:b.disabled,type:b.type,autoComplete:b.autoComplete,maxLength:b.maxLength,showCount:b.showCount,multiline:b.multiline,rows:b.rows,fullWidth:d,error:c,ariaLabel:r,required:s}),b.helperText&&o.jsx("div",{className:"panel-row__helper caption-1",children:b.helperText})]})}else a==="custom"&&(h=e.children);const g=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&d,v=b=>{i&&b.target===b.currentTarget&&(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),i())};return o.jsxs("div",{className:xe("panel-row",u==="vertical"?"panel-row--vertical":"",g?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",i?"panel-row--clickable":""),onClick:i,onKeyDown:i?v:void 0,role:i?"button":void 0,tabIndex:i?0:void 0,children:[m!=null&&o.jsx("div",{className:"panel-row__icon",children:m}),o.jsxs("div",{className:"panel-row__left",children:[p?o.jsxs("label",{htmlFor:p,className:"panel-row__label body-3",children:[r,s&&o.jsx("span",{className:"required-mark",children:"*"})]}):o.jsxs("div",{className:"panel-row__label body-3",children:[r,s&&o.jsx("span",{className:"required-mark",children:"*"})]}),n&&o.jsx("div",{className:"panel-row__sub caption-1",children:n})]}),o.jsx("div",{className:"panel-row__right",children:h})]})}function _b(e){const t=e.productName||e.brand,a=[e.brand,e.fitType].filter(r=>!!r&&r!==t);return[...new Set(a)].join(" \xB7 ")}function wb({devices:e,onRelease:t}){const{t:a}=me.useTranslation();return o.jsx("div",{className:"panel-row panel-row--device",children:["\uC88C","\uC6B0"].map(r=>{const n=e[r],i=r==="\uC88C"?a("device.direction.left","\uC88C"):a("device.direction.right","\uC6B0");return o.jsxs("div",{className:"panel-row__device-column",children:[o.jsxs("div",{className:"panel-row__device-head",children:[o.jsx("span",{className:"panel-row__device-side body-2b",children:i}),n&&t&&o.jsx(ce,{size:32,type:"dot",icon:"x",ariaLabel:a("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),showTooltipInfo:a("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>t(r)})]}),n?o.jsxs("div",{className:"panel-row__device-info",children:[o.jsxs("span",{className:"panel-row__device-kind",children:[n.device&&o.jsx(ht,{size:"small",variant:pm(n.device),fill:"soft",label:n.device}),_b(n)&&o.jsx("span",{className:"panel-row__device-detail body-3",children:_b(n)})]}),o.jsx("span",{className:"panel-row__device-name body-2b",children:n.productName||n.brand}),o.jsx("span",{className:"panel-row__device-date caption-1",children:a("customers.device.wornSince",{date:`${n.wornYear}.${n.wornMonth}.${n.wornDay}`})})]}):o.jsx("span",{className:"panel-row__device-empty body-3",children:a("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},r)})})}function Xk(e){return[{label:e("training.noise.level.none","\uC5C6\uC74C"),value:0},{label:e("training.noise.level.weak","\uC57D\uD568"),value:1},{label:e("training.noise.level.medium","\uBCF4\uD1B5"),value:2},{label:e("training.noise.level.strong","\uAC15\uD568"),value:3},{label:e("training.noise.level.veryStrong","\uB9E4\uC6B0 \uAC15\uD568"),value:4}]}function kb(e){return[{label:e("training.noise.type.default","\uAE30\uBCF8"),value:"defaultNoise",icon:"party-popper"},{label:e("training.noise.type.street","\uAE38\uAC70\uB9AC"),value:"street",icon:"car"},{label:e("training.noise.type.buzz","\uC640\uAE00\uC640\uAE00"),value:"buzz",icon:"message-square-more"},{label:e("training.noise.type.restaurant","\uC2DD\uB2F9"),value:"restaurant",icon:"coffee"}]}Xk(Ca.t.bind(Ca)),kb(Ca.t.bind(Ca));var Qk='.ihabdevteam-core-scope .noise-settings{border-radius:var(--radius-m);box-sizing:border-box;max-width:calc(100vw - 40px);padding:20px}.ihabdevteam-core-scope .tooltip-content:has(.noise-settings__header) .tooltip-content__header{border-bottom:1px solid var(--color-darkWhite);height:60px;padding:0 20px}.ihabdevteam-core-scope .noise-settings__header{align-items:center;display:flex;justify-content:space-between;width:100%}.ihabdevteam-core-scope .noise-settings__header span{color:var(--color-darkGray);font-weight:600}.ihabdevteam-core-scope .noise-settings__slider-input.slider--horizontal{flex:1 1 auto}.ihabdevteam-core-scope .noise-settings__value{font-feature-settings:"tnum";color:var(--color-main);flex:0 0 auto;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;width:44px}';Q(Qk);const hc="none",Jk=.5,e7=1.5,t7=.25;function mc({title:e,valueLabel:t,value:a,min:r,max:n,step:i,tickStep:s,size:c,onChange:u}){return o.jsxs(Na,{variant:"custom",label:e,useFullWidth:!0,children:[o.jsx(Ol,{value:a,onChange:u,min:r,max:n,step:i,size:c,showBgTick:!0,tickStep:s,ariaLabel:e,className:"noise-settings__slider-input"}),o.jsx("div",{className:"noise-settings__value button-1",children:t})]})}function bc({anchorRect:e,onClose:t}){const{t:a}=me.useTranslation(),r=oa("(max-width: 767px)")?40:24,n=nc(),i=n?.settings.level??0,s=n?.settings.type??"defaultNoise",c=n?.settings.enabled??!0,u=yk(i),d=n?.playbackRate??1,m=n?.mainVolume??1,h=Math.round(m*100),p=l.useCallback(y=>{try{n?.setMainVolume(Math.max(0,Math.min(1,y/100)))}catch{}},[n]),g=l.useCallback(y=>{try{n?.setPlaybackRate(y)}catch{}},[n]),v=l.useCallback(y=>{const f=xk(y);try{n?.setSettings({level:f})}catch{}},[n]),b=l.useCallback(y=>{try{y===hc?n?.setSettings({enabled:!1}):n?.setSettings({type:y,enabled:!0})}catch{}},[n]);return o.jsx(Sa,{anchorRect:e,offset:12,onClose:t,ariaLabel:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:o.jsxs("div",{className:"noise-settings__header",children:[o.jsx("span",{children:a("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),o.jsx(ce,{size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:a("common.close","\uB2EB\uAE30"),onClick:t})]}),children:o.jsxs(Cr,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[o.jsx(mc,{title:a("training.playVolumeTitle","\uC7AC\uC0DD \uC18C\uB9AC"),valueLabel:`${h}%`,value:h,min:0,max:100,step:10,size:r,onChange:p}),o.jsx(mc,{title:a("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${d.toFixed(2)}x`,value:d,min:Jk,max:e7,step:t7,size:r,onChange:g}),o.jsx(mc,{title:a("training.noiseLevelTitle","\uC18C\uC74C \uD06C\uAE30"),valueLabel:`${u}%`,value:u,min:0,max:100,step:10,size:r,onChange:v}),o.jsx(Na,{variant:"custom",label:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:o.jsx(Ha,{ariaLabel:a("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:[{key:hc,label:a("training.noise.type.none","\uC5C6\uC74C")},...kb(a).map(y=>({key:y.value,label:y.label}))],value:c?s:hc,onChange:b})})]})})}var a7=".ihabdevteam-core-scope .training-page-bottom{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-bottom{align-items:center;background:var(--color-deepWhite);border-top:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;flex:0 0 auto;gap:var(--spacing-s);justify-content:space-between;padding:12px 18px calc(12px + env(safe-area-inset-bottom));width:100%;z-index:5}.ihabdevteam-core-scope .pp-bottom__left{align-items:center;display:flex;gap:var(--spacing-m)}.ihabdevteam-core-scope .pp-bottom__right{align-items:center;display:flex;gap:8px}.ihabdevteam-core-scope .pp-bottom__meters{border:1px solid var(--color-whiteLine);border-radius:14px;display:flex;flex-direction:column;gap:2px;justify-content:center;padding:8px 12px}.ihabdevteam-core-scope .pp-bottom__meter{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs)}.ihabdevteam-core-scope .pp-bottom__meter-label{color:var(--color-gray);min-width:28px}.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:none}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:flex}@media (min-width:768px){.ihabdevteam-core-scope .pp-bottom__settings--desktop{display:block}.ihabdevteam-core-scope .pp-bottom__settings--mobile{display:none}}.ihabdevteam-core-scope .pp-bottom__tooltip-trigger{display:inline-block}";Q(a7);function gc({useNoiseSettingBtn:e=!1,onSettings:t,onNext:a,onResult:r,stepIndex:n=0,stepCount:i=0,pageIndex:s=0,pageCount:c=1}){const{t:u}=me.useTranslation(),[d,m]=l.useState(!1),[h,p]=l.useState(null),[g,v]=l.useState(!1),b=l.useRef(null),y=l.useRef(null),f=nc(),x=s<c-1,_=s===c-1,C=n===Math.max(0,i);l.useEffect(()=>{e||(m(!1),p(null))},[e]);const A=l.useCallback(()=>{m(!1),p(null)},[]),w=l.useCallback(()=>{if(d){m(!1),p(null);return}const T=b?.current?.getBoundingClientRect();T&&p(T),t?.(),m(!0)},[d,t]),S=l.useCallback(()=>{if(d){m(!1),p(null);return}const T=y?.current?.getBoundingClientRect();T&&p(T),t?.(),m(!0)},[d,t]),N=l.useCallback(()=>v(T=>!T),[]);return o.jsxs("div",{className:"pp-bottom",children:[o.jsxs("div",{className:"pp-bottom__left",children:[e?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"pp-bottom__settings--desktop",children:o.jsx("div",{ref:b,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:o.jsx(ce,{size:56,type:"bar",icon:"settings",onClick:w,selected:d,ariaLabel:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:u("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),o.jsx("div",{className:"pp-bottom__settings--mobile",children:o.jsx("div",{ref:y,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:o.jsx(ce,{size:56,type:"dot",icon:"settings",onClick:S,selected:d,ariaLabel:u("training.settings","\uC124\uC815"),minWidth:52})})})]}):null,e&&o.jsx(ce,{size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:N,selected:g,ariaLabel:u("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")}),e&&g&&o.jsxs("div",{className:"pp-bottom__meters",children:[o.jsxs("div",{className:"pp-bottom__meter",children:[o.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.sentence","\uC7AC\uC0DD")}),o.jsx(vn,{analyser:f?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.sentence","\uC7AC\uC0DD")})]}),o.jsxs("div",{className:"pp-bottom__meter",children:[o.jsx("span",{className:"pp-bottom__meter-label caption-1",children:u("training.meter.noise","\uC18C\uC74C")}),o.jsx(vn,{analyser:f?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:u("training.meter.noise","\uC18C\uC74C")})]})]})]}),o.jsxs("div",{className:"pp-bottom__right",children:[_&&o.jsx(ce,{size:56,type:"bar",icon:"check",onClick:typeof r=="function"?r:a,ariaLabel:u("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),label:u("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),variant:"main",disabled:!C}),x&&o.jsx(ce,{size:56,type:"bar",rightIcon:"chevron-right",align:"right",onClick:a,ariaLabel:u("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),label:u("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),variant:"main",disabled:!C})]}),e&&d&&o.jsx(bc,{anchorRect:h,onClose:A})]})}var o7=".ihabdevteam-core-scope .training-page-top{box-sizing:border-box;width:100%}.ihabdevteam-core-scope .pp-title.training-popup-title{align-items:center;background:var(--color-deepWhite);border-bottom:1px solid var(--color-whiteLine);box-sizing:border-box;display:flex;gap:var(--spacing-s);justify-content:space-between;padding:12px 16px;position:relative;width:100%;z-index:6}.ihabdevteam-core-scope .pp-title__left{align-items:center;display:flex;gap:var(--spacing-s);min-width:0}.ihabdevteam-core-scope .pp-title__text{display:flex;flex-direction:column;min-width:0}.ihabdevteam-core-scope .pp-title__depth{color:var(--color-gray)}.ihabdevteam-core-scope .pp-title__title{font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .pp-title__title--empty{color:var(--color-whiteLine)}.ihabdevteam-core-scope .pp-title__description{color:var(--color-gray);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:767px){.ihabdevteam-core-scope .pp-title.training-popup-title{gap:var(--spacing-xs);padding:10px 12px}.ihabdevteam-core-scope .pp-title__depth{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .pp-title__left{flex:1;min-width:0;overflow:hidden}}";Q(o7);function fc({title:e,subtitle:t,desc:a,depth:r,icon:n,wrapperStyle:i,iconTooltip:s,pageIndex:c,pageCount:u,progressMax:d,progressIndex:m,onBack:h,onClose:p}){const{t:g}=me.useTranslation(),v=oa("(max-width: 767px)"),b=Number.isInteger(m)?m:c||0,y=Number.isInteger(d)?d:u||0,f=h||p,x=Array.isArray(r)?v?r[r.length-1]:r.join(" / "):r,_=typeof e=="string"?e.trim():e,C=typeof t=="string"?t.trim():t,A=!!(_||C),w=A?_||C:g("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),S=x||t,N=v&&typeof S=="string"&&(S.includes(" \xB7 ")||S.includes(" / "))?S.split(/\s[·/]\s/).pop():S,T=l.useMemo(()=>{const E=i&&typeof i=="object"?{...i}:{};return!("width"in E)&&!("height"in E)&&(E.width="40px",E.height="40px"),E},[i]);return o.jsxs("header",{className:"pp-title training-popup-title",children:[o.jsxs("div",{className:"pp-title__left",children:[f?o.jsx(ce,{size:48,type:"dot",icon:"chevron-left",ariaLabel:g("common.back","\uB4A4\uB85C"),onClick:f,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,o.jsx("div",{children:n?o.jsx(gm,{icon:n,label:e,tooltip:s,wrapperStyle:T}):null}),o.jsxs("div",{className:"pp-title__text",children:[N?o.jsx("span",{className:"pp-title__depth caption-1",children:N}):null,o.jsx("span",{className:`pp-title__title h2${A?"":" pp-title__title--empty"}`,children:w}),a?o.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),o.jsx(Vl,{max:Math.max(0,y??0),index:Math.max(0,b??0)})]})}function Sb(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function Ab(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(t=>typeof t=="string"?t.split("|").map(a=>a.trim()).filter(Boolean):t||t===0?[String(t)]:[]):typeof e=="string"?e.split("|").map(t=>t.trim()).filter(Boolean):[String(e)]}function vc(e,t,a){const r=e,n=r?.title||r?.name||(Array.isArray(t)?t[t.length-1]:void 0)||a||"\uD6C8\uB828",i=Kr().find(c=>c.key===(r?.category_0||r?.category_main_code)),s=i?.subs?.find(c=>c.key===(r?.category_1||r?.category_sub_code));return{title:n,label:r?.title||n,depth:t,icon:i?.icon,wrapperStyle:i?.color?{"--t-item-fg":i.color}:void 0,iconTooltip:[i?.label,s?.label].filter(Boolean).join(" / ")||void 0}}function Ln(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function Tb(e){const t=e;return Array.isArray(t?.items)?t.items:Array.isArray(e)?e:e?[e]:[]}function Bb({idPrefix:e,trainingData:t,depth:a,fallbackTitle:r="\uD6C8\uB828",pages:n=[],emptyMessage:i,buildResults:s,metaPatch:c}){const u=vc(t,a,r),d=typeof c=="function"?c(u)||{}:c||{},m=t?.id||t?.title||n.length;return{id:`${e}:${m}`,meta:{...u,...d},pages:n,emptyMessage:i,buildResults:s}}function Nb(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const t=e;return t.context||t.sentence||t.question||""||""}return""}function Db(e){if(e&&typeof e=="object"){const t=e;if(Array.isArray(t.selectedValues))return t.selectedValues;if(t.selectedValue!==void 0)return t.selectedValue;if(t.selectedIndex!==void 0)return t.selectedIndex;if(t.value!==void 0)return t.value}return e}function Eb(e,t=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(t))return String(t[e]??"");if(typeof e=="string")return e}function yc(e,t){if(!(!e||typeof e!="object"))return e[`step-${t}`]}function jb(e,t,a,r){return yc(e,t*a+r)}function Lb({payload:e,selected:t,choices:a=[],correctAnswers:r=[]}){if(e&&typeof e=="object"){const n=e;if(Array.isArray(n.selectedValues))return r.every(i=>n.selectedValues.includes(i))&&n.selectedValues.every(i=>r.includes(i));if(typeof n.correct=="boolean")return n.correct}if(r.length){if(typeof t=="number"&&Array.isArray(a)&&a.length)return r.some(n=>String(n)===String(a[t]));if(typeof t<"u")return r.some(n=>String(n)===String(t))}}function Mb(e){return e?Array.isArray(e.items)?e.items.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const Pb=l.createContext(null);function r7(){const e=l.useContext(Pb);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function n7({index:e,stepIndex:t,isLast:a=!1,title:r="\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.",choices:n=[],onDone:i,onChange:s}){const c=typeof e=="number"?e:-1,u=typeof t!="number"?"disabled":c<t?"done":c===t?"active":"disabled",[d,m]=l.useState(()=>n.map(()=>null)),h=n.join("|");l.useEffect(()=>{m(h?h.split("|").map(()=>null):[])},[h]);const p=l.useMemo(()=>d.filter(v=>v!==null).length+1,[d]),g=l.useCallback(v=>{u==="active"&&m(b=>{const y=[...b];if(y[v]!==null){const x=y[v];return y.map(_=>_!==null&&_>=x?null:_)}y[v]=p;const f={selectedOrder:y,words:n,__ts:Date.now()};try{typeof s=="function"&&s(f)}catch{}if(y.every(x=>x!==null))try{typeof i=="function"&&i(f)}catch{}return y})},[u,p,s,i,n]);return o.jsx(Va,{index:e,stepIndex:t,isLast:a,title:r,onDone:i,children:o.jsx("div",{className:"training-step__cards",children:n.map((v,b)=>o.jsx(_n,{item:{word:v},disabled:u==="disabled",selectable:!0,selected:d[b]!==null,orderRank:d[b],onSelect:()=>g(b),flipDelay:b*120,hideLabel:!1,hideAudio:!0},`${v}-${b}`))})})}function _r(e){return null}_r.__isTrainingPage=!0;function No(e,t){const a=r7();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof t=="number"?e===t-1:!1,onDone:r=>a.handleStepDone(r,e),onChange:r=>a.handleStepChange(r,e)}}function xc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s}=No(e,t);return o.jsx(En,{...a,index:r,stepIndex:n,isLast:i,onDone:s})}function Cc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(Nn,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}function _c({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(Dn,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}function wc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(jn,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}function kc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(pc,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}function i7({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:n,isLast:i,onDone:s,onChange:c}=No(e,t);return o.jsx(n7,{...a,index:r,stepIndex:n,isLast:i,onDone:s,onChange:c})}var s7=`.ihabdevteam-core-scope .trp-result{display:flex;flex:1;flex-direction:column;min-height:0;padding:0;position:relative}.ihabdevteam-core-scope .popup--training-result .popup-header{padding:var(--spacing-l) var(--spacing-l) 0;position:absolute;right:0;top:0;z-index:1}.ihabdevteam-core-scope .trp-result__head{padding:12px 72px 20px;position:relative;text-align:center}.ihabdevteam-core-scope .trp-result__eyebrow{align-items:center;color:var(--color-main);display:inline-flex;gap:var(--spacing-xs);letter-spacing:.22em;margin:0 0 14px;text-transform:uppercase}.ihabdevteam-core-scope .trp-result__eyebrow:after,.ihabdevteam-core-scope .trp-result__eyebrow:before{background:currentColor;content:"";height:1px;opacity:.35;width:24px}.ihabdevteam-core-scope .trp-result__title{color:var(--color-black);font-size:28px;margin:0}.ihabdevteam-core-scope .trp-result__subtitle{color:var(--color-gray);margin:10px 0 0}.ihabdevteam-core-scope .trp-score{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-m);margin:36px auto 8px}.ihabdevteam-core-scope .trp-score__figure{font-feature-settings:"tnum";align-items:baseline;display:flex;font-variant-numeric:tabular-nums;gap:var(--spacing-s)}.ihabdevteam-core-scope .trp-score__sep,.ihabdevteam-core-scope .trp-score__total{align-self:flex-end;color:var(--color-lightGray);font-size:44px;letter-spacing:-1px;padding-bottom:18px}.ihabdevteam-core-scope .trp-score__big{background:var(--color-main);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:112px;letter-spacing:-5px;line-height:.92}.ihabdevteam-core-scope .trp-accuracy{align-items:center;display:flex;gap:6px;justify-content:center;margin:28px auto 0;max-width:620px}.ihabdevteam-core-scope .trp-accuracy__seg{background:var(--color-darkWhite,var(--color-darkWhite));border-radius:999px;flex:1;height:6px}.ihabdevteam-core-scope .trp-accuracy__seg.is-on{background:linear-gradient(90deg,var(--color-main),var(--color-sub))}.ihabdevteam-core-scope .trp-accuracy__label{font-feature-settings:"tnum";color:var(--color-gray);font-variant-numeric:tabular-nums;margin-left:var(--spacing-xs);white-space:nowrap}.ihabdevteam-core-scope .trp-result__body{padding:16px 0 0}.ihabdevteam-core-scope .result-table{width:100%}.ihabdevteam-core-scope .result-table__head{grid-gap:var(--spacing-m);border-bottom:1px solid var(--color-whiteLine);color:var(--color-lightGray);display:grid;gap:var(--spacing-m);grid-template-columns:1fr 100px;letter-spacing:.16em;padding:12px 4px 14px;text-transform:uppercase}.ihabdevteam-core-scope .result-table--answer .result-table__head,.ihabdevteam-core-scope .result-table--answer .result-table__row{grid-template-columns:1fr 200px 100px}.ihabdevteam-core-scope .result-table__head .col-right{text-align:center}.ihabdevteam-core-scope .result-table__row{grid-gap:var(--spacing-m);align-items:center;border-bottom:1px solid var(--color-whiteLine);display:grid;gap:var(--spacing-m);grid-template-columns:1fr 100px;padding:22px 4px;transition:background .18s ease}.ihabdevteam-core-scope .result-table__row:hover{background:var(--color-deepWhite)}.ihabdevteam-core-scope .result-table__row:last-child{border-bottom:0}.ihabdevteam-core-scope .trp-row__problem{align-items:baseline;display:flex;gap:10px}.ihabdevteam-core-scope .trp-row__no{font-feature-settings:"tnum";color:var(--color-lightGray);flex-shrink:0;font-variant-numeric:tabular-nums;width:32px}.ihabdevteam-core-scope .trp-row__q{color:var(--color-black);letter-spacing:-.1px}.ihabdevteam-core-scope .trp-row__judge{align-self:center;display:flex;justify-content:center}.ihabdevteam-core-scope .trp-row__answers{align-self:center;display:flex;flex-direction:column;gap:var(--spacing-xs)}.ihabdevteam-core-scope .trp-row__answer-line{align-items:baseline;display:flex;gap:10px}.ihabdevteam-core-scope .trp-row__answer-label{flex-shrink:0;width:32px}.ihabdevteam-core-scope .trp-row__answer-label.answer-correct{color:var(--color-lightGray)}.ihabdevteam-core-scope .trp-row__answer-label.answer-selected.is-correct{color:var(--color-main)}.ihabdevteam-core-scope .trp-row__answer-label.answer-selected.is-wrong{color:var(--color-error)}.ihabdevteam-core-scope .trp-row__answer-value{color:var(--color-black)}.ihabdevteam-core-scope .trp-row__answer-value.is-correct{color:var(--color-main)}.ihabdevteam-core-scope .trp-row__answer-value.is-wrong{color:var(--color-error)}.ihabdevteam-core-scope .popup-footer.trp-result__foot{align-items:center;background:var(--color-white);display:flex;flex-shrink:0;gap:var(--spacing-s);justify-content:center;padding:var(--spacing-l)}.ihabdevteam-core-scope .trp-foot__note{align-items:center;color:var(--color-gray);display:flex;font-size:13px;gap:var(--spacing-xs)}.ihabdevteam-core-scope .trp-foot__note svg{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .trp-actions{display:flex;gap:var(--spacing-s)}@keyframes result-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ihabdevteam-core-scope .trp-result.is-on{animation:result-rise .5s cubic-bezier(.22,.9,.3,1) both}.ihabdevteam-core-scope .trp-result.is-on .trp-score__big{animation:result-rise .7s cubic-bezier(.22,.9,.3,1) .1s both}.ihabdevteam-core-scope .trp-result.is-on .result-table__row{animation:result-rise .5s cubic-bezier(.22,.9,.3,1) both}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(2){animation-delay:.18s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(3){animation-delay:.24s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(4){animation-delay:.3s}.ihabdevteam-core-scope .trp-result.is-on .result-table__row:nth-child(5){animation-delay:.36s}@media (max-width:767px){.ihabdevteam-core-scope .trp-result{padding:0}.ihabdevteam-core-scope .trp-result__head{padding:0 20px 20px}.ihabdevteam-core-scope .trp-result__body{padding:0}.ihabdevteam-core-scope .popup-footer.trp-result__foot{border-top:1px solid var(--color-whiteLine);gap:var(--spacing-xs);padding:var(--spacing-l)}.ihabdevteam-core-scope .trp-actions{display:flex;gap:var(--spacing-xs);width:100%}.ihabdevteam-core-scope .trp-actions>*{flex:1;min-width:0}.ihabdevteam-core-scope .trp-score{gap:10px;margin:20px auto 4px}.ihabdevteam-core-scope .trp-score__big{font-size:72px;letter-spacing:-3px}.ihabdevteam-core-scope .trp-score__sep,.ihabdevteam-core-scope .trp-score__total{font-size:28px;padding-bottom:10px}.ihabdevteam-core-scope .result-table__head{display:none}.ihabdevteam-core-scope .result-table__head,.ihabdevteam-core-scope .result-table__row{gap:var(--spacing-xs);grid-template-columns:1fr auto}.ihabdevteam-core-scope .result-table__row{padding:14px 4px}.ihabdevteam-core-scope .trp-row__judge{justify-content:flex-start}.ihabdevteam-core-scope .result-table--answer .result-table__row{align-items:start;gap:6px;grid-template-columns:1fr;grid-template-rows:auto auto auto;padding:14px 4px}.ihabdevteam-core-scope .result-table--answer .trp-row__judge{grid-row:1;justify-content:flex-start}.ihabdevteam-core-scope .result-table--answer .trp-row__problem{grid-row:2}.ihabdevteam-core-scope .result-table--answer .trp-row__answers{grid-row:3}
967
967
  /* !important \uD544\uC694 \u2014 TrainingResultPopup.tsx\uAC00 Badge\uC5D0 minWidth={80}\uC744 \uC778\uB77C\uC778\uC73C\uB85C
968
- \uC804\uB2EC\uD558\uBBC0\uB85C(\uCF54\uB4DC \uD655\uC778\uB428) \uBAA8\uBC14\uC77C\uC5D0\uC11C \uC790\uC5F0 \uD3ED\uC73C\uB85C \uB418\uB3CC\uB9AC\uB824\uBA74 \uD2B9\uC774\uB3C4\uB85C\uB294 \uBD80\uC871. */.ihabdevteam-core-scope .trp-row__judge .badge{min-width:0!important;min-width:auto!important}.ihabdevteam-core-scope .result-table--answer .trp-row__judge .badge{height:26px;padding:0 12px}}`;Q(s7);function Sc(...e){for(const t of e)if(typeof t=="string"){const a=t.trim();if(a.length)return a}else{if(typeof t=="number"||typeof t=="boolean")return String(t);if(Array.isArray(t)&&t.length)return t.join(", ");if(t&&typeof t=="object"){const a=t,r=[a.text,a.label,a.value];for(const n of r){if(typeof n=="string"&&n.trim().length)return n.trim();if(typeof n=="number"||typeof n=="boolean")return String(n)}}}return null}function l7(e){return Sc(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function Rb(e){if(!e)return;if(typeof e.decision=="boolean")return e.decision;if(typeof e.correct=="boolean")return e.correct;if(typeof e.heard=="boolean")return e.heard;if(typeof e.judgement=="boolean")return e.judgement;const t=Sc(e?.status,e?.result,e?.judge,e?.note);if(t){const a=t.toLowerCase();if(["ok","true","\uB9DE\uC74C","\uC815\uB2F5"].some(r=>a.includes(r)))return!0;if(["ng","false","\uD2C0\uB9BC","\uC624\uB2F5"].some(r=>a.includes(r)))return!1}}function Ac(e){const{score:t,contextsLength:a,results:r=[],subtitle:n,onReplay:i,onClose:s,inline:c=!1}=e||{},{t:u}=me.useTranslation();l.useEffect(()=>{const b=a??0;t!=null&&b>0&&t/b>.5&&window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},[t,a]);const d=l.useCallback(b=>{const y=Rb(b),f=Sc(b?.wording,b?.label);return y===!0?{variant:"main",label:f??u("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:y===!1?{variant:"danger",label:f??u("training.result.notHeard","\uBABB \uB4E4\uC5C8\uC5B4\uC694")}:{variant:"disabled",label:f??u("training.result.notJudged","\uBBF8\uD310\uC815")}},[u]),m=a??0,h=t??0,p=l.useMemo(()=>Array.isArray(r)?r:[],[r]),g=l.useMemo(()=>p.map(b=>{const y=b??{},f=l7(y)||"(\uB0B4\uC6A9\uC5C6\uC74C)",{variant:x,label:_}=d(y),C=Array.isArray(y.corrects)?y.corrects:[],A=C.length?C.join(", "):y.answer!=null&&y.answer!==""?String(y.answer):null,w=typeof y.selectedText=="string"?y.selectedText:null,S=Rb(y)===!0;return{problem:f,variant:x,label:_,answer:A,selectedText:w,isCorrect:S}}),[p,d]),v=l.useMemo(()=>g.some(b=>b.answer!==null||b.selectedText!==null),[g]);return o.jsx(Ta,{onClose:s,inline:c,ariaLabel:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4."),className:"popup--training-result",footerClassName:"trp-result__foot",footer:({animateThen:b,closeWithAnimation:y})=>o.jsxs("div",{className:"trp-actions",children:[o.jsx(le,{size:56,type:"bar",label:u("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>b(i)}),o.jsx(le,{size:56,type:"bar",label:u("training.result.done","\uC644\uB8CC"),variant:"main",onClick:y})]}),children:()=>o.jsxs("div",{className:"trp-result is-on",children:[o.jsxs("header",{className:"trp-result__head",children:[o.jsx("p",{className:"trp-result__eyebrow caption-1",children:u("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),o.jsx("h1",{className:"trp-result__title h2",children:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),n&&o.jsx("p",{className:"trp-result__subtitle body-3",children:n}),o.jsx("div",{className:"trp-score",children:o.jsxs("div",{className:"trp-score__figure","aria-label":u("training.result.scoreAria",{correct:h,total:m}),children:[o.jsx("span",{className:"trp-score__big",children:h}),o.jsx("span",{className:"trp-score__sep",children:"/"}),o.jsx("span",{className:"trp-score__total",children:m})]})})]}),g.length>0&&o.jsx("section",{className:"trp-result__body",children:o.jsxs("div",{className:`result-table${v?" result-table--answer":""}`,role:"table","aria-label":u("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[o.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[o.jsx("span",{role:"columnheader",children:u("training.result.colProblem","\uBB38\uC81C")}),v&&o.jsx("span",{role:"columnheader",children:u("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),o.jsx("span",{className:"col-right",role:"columnheader",children:u("training.result.colJudge","\uD310\uC815")})]}),g.map((b,y)=>o.jsxs("div",{className:"result-table__row",role:"row",children:[o.jsxs("div",{className:"trp-row__problem",children:[o.jsx("span",{className:"trp-row__no caption-1",children:String(y+1).padStart(2,"0")}),o.jsx("div",{className:"trp-row__q body-2",children:b.problem})]}),v&&o.jsxs("div",{className:"trp-row__answers",children:[b.answer!==null&&o.jsxs("div",{className:"trp-row__answer-line",children:[o.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:u("training.result.colAnswer","\uC815\uB2F5")}),o.jsx("span",{className:"trp-row__answer-value body-2",children:b.answer})]}),o.jsxs("div",{className:"trp-row__answer-line",children:[o.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${b.isCorrect?"is-correct":"is-wrong"}`,children:u("training.result.colSelected","\uC120\uD0DD")}),o.jsx("span",{className:`trp-row__answer-value body-2 ${b.isCorrect?"is-correct":"is-wrong"}`,children:b.selectedText??"\u2014"})]})]}),o.jsx("div",{className:"trp-row__judge",children:o.jsx(ht,{variant:b.variant,label:b.label,fill:"soft",minWidth:80})})]},y))]})})]})})}function c7(e){l.useEffect(()=>{if(!e)return;const t=new Date;return()=>{const a=new Date;a.getTime()-t.getTime()<5e3||Ki({trainingType:e,startedAt:t.toISOString(),endedAt:a.toISOString()})}},[e])}function Tc(e,t){return e&&e.id||`page-${t??0}`}function Bc(e,t){return e&&e.key||`step-${t??0}`}function Mn(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function d7(e,t){return typeof e?.props=="function"?e.props(t)||{}:e?.props||{}}const $b=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]),u7=e=>o.jsx(Ac,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose}),p7='a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),[tabindex]:not([tabindex="-1"])';function h7(e){const{scenario:t,title:a,subTitle:r,depth:n,icon:i,wrapperStyle:s,iconTooltip:c,pageIndex:u,pageCount:d,stepIndex:m,stepCount:h,onBack:p,onComplete:g,onNext:v,onSettings:b,useNoiseSetting:y=!0,children:f,ariaLabel:x,label:_,buildResults:C,onResult:A,typeKey:w,entryPoint:S,dailyTotal:D,itemRef:T,renderResultPopup:E}=e;c7(w&&!$b.has(w)?w:"");const W=l.useRef(0);l.useEffect(()=>{W.current=Date.now()},[]);const{t:M}=me.useTranslation(),k=A,N=!!t,j=t?.id||null,F=t?.meta||{},te=Array.isArray(t?.pages)?t.pages:[],Z=Array.isArray(f)||l.isValidElement(f)&&typeof f!="function"?l.Children.toArray(f).filter(l.isValidElement):[],ee=Z.length>0,L=ne=>ne===_r||ne?.__isTrainingPage===!0,R=ee&&Z.some(ne=>L(ne.type)),O=R?Z.filter(ne=>L(ne.type)).map((ne,ge)=>{const fe=ne.props||{};return{id:`children-page-${ge}`,steps:l.Children.toArray(fe.children).filter(l.isValidElement),pageTop:fe.pageTop||fe.top||null,pageBottom:fe.pageBottom||fe.bottom||null}}):[{id:"children-page-0",steps:Z}],H=ee&&!N&&typeof f!="function",$=H?Math.max(1,O.length):0;l.useEffect(()=>{if(!(typeof document>"u"||!document.body)&&!document.body.classList.contains("ihabdevteam-core-scope"))return document.body.classList.add("ihabdevteam-core-scope"),()=>{document.body.classList.remove("ihabdevteam-core-scope")}},[]),l.useEffect(()=>{if(typeof document>"u"||!document.body)return;const ne=document.body;return ne.dataset.ihabTrainingPopupCount=String(Number(ne.dataset.ihabTrainingPopupCount||"0")+1),ne.classList.add("ihab-training-popup-open"),()=>{const ge=Number(ne.dataset.ihabTrainingPopupCount||"1")-1;ge>0?ne.dataset.ihabTrainingPopupCount=String(ge):(delete ne.dataset.ihabTrainingPopupCount,ne.classList.remove("ihab-training-popup-open"))}},[]),l.useEffect(()=>{if(!(typeof document>"u"||!document.body))return q8()},[]);const[q,I]=l.useState({...mb,enabled:!1}),G=l.useRef(q);l.useEffect(()=>{G.current=q},[q]),l.useEffect(()=>{let ne=!1;return es().then(ge=>{if(ne)return;const fe=ge?{...G.current,...ge}:{...mb};G.current=fe,I(fe)}),()=>{ne=!0}},[]);const[z,Y]=l.useState(null),[J,ue]=l.useState(null),pe=l.useCallback((ne,ge)=>{ne==="main"?Y(ge):ue(ge)},[]),ae=l.useCallback(ne=>{const ge={...G.current,...ne};G.current=ge,I(ge),ts(ge)},[]),X=q.mainSpeed,ce=q.mainVolume,xe=l.useCallback(ne=>ae({mainSpeed:ne}),[ae]),Se=l.useCallback(ne=>ae({mainVolume:ne}),[ae]),Ae=l.useMemo(()=>({settings:q,setSettings:ae,registerAnalyser:pe,mainAnalyser:z,noiseAnalyser:J,playbackRate:X,setPlaybackRate:xe,mainVolume:ce,setMainVolume:Se}),[q,ae,pe,z,J,X,xe,ce,Se]),P=l.useRef(null),[oe,re]=l.useState("center"),[Ce,De]=l.useState(!1),Ie=l.useRef(!1),Oe=l.useRef(null),Fe=l.useCallback(ne=>{Ie.current||(Ie.current=!0,De(!0),Oe.current=setTimeout(ne,Kk))},[]);l.useEffect(()=>()=>{Oe.current&&clearTimeout(Oe.current)},[]),l.useEffect(()=>{const ne=P.current;if(!ne)return;const ge=()=>Array.from(ne.querySelectorAll(p7)).filter(ie=>!ie.closest('[aria-hidden="true"]')),fe=ge()[0];if(fe)try{fe.focus()}catch{}const U=ie=>{if(ie.key==="Escape"){ie.preventDefault(),Fe(()=>{typeof p=="function"&&p()});return}if(ie.key==="Tab"){const ve=ge();if(ve.length===0)return;const we=ve[0],ke=ve[ve.length-1];ie.shiftKey?document.activeElement===we&&(ie.preventDefault(),ke.focus()):document.activeElement===ke&&(ie.preventDefault(),we.focus())}};return ne.addEventListener("keydown",U),()=>ne.removeEventListener("keydown",U)},[p,Fe]);const[Qe,Re]=l.useState(!1),Ge=l.useRef(!1),[We,be]=l.useState(null),[at,He]=l.useState(""),[Le,Ue]=l.useState(()=>Mn()),Dt=l.useRef(typeof u=="number"?u:null);l.useEffect(()=>{!N&&!H||(Ue(Mn()),be(null))},[N,j,H]),l.useEffect(()=>{H&&Ue(ne=>{const ge=Math.max(0,Math.min(ne.pageIndex,Math.max(0,$-1)));return ge!==ne.pageIndex?{...ne,pageIndex:ge,stepIndex:0}:ne})},[H,$]);const Ke=H?Math.max(0,Math.min(Le.pageIndex,$-1)):0,Ye=H?O[Ke]:null,ut=H&&Ye&&Array.isArray(Ye.steps)?Ye.steps:[],je=N?Le.pageIndex:H?Ke:typeof u=="number"?u:0,rt=N?te[Math.max(0,Math.min(Le.pageIndex,Math.max(0,te.length-1)))]:null,Je=N&&rt&&Array.isArray(rt.steps)?rt.steps:[],$e=N?Je.length:H?ut.length:typeof h=="number"?h:0,Ze=N||H?Math.max(0,Math.min(Le.stepIndex,Math.max(0,$e))):typeof m=="number"?m:0,et=N?te.length:H?$:typeof d=="number"?d:0;l.useLayoutEffect(()=>{const ne=Dt.current;if(typeof je=="number"&&ne!==null&&je!==ne&&je>ne)try{He(M("training.problemNotice",{n:je+1}))}catch{}Dt.current=typeof je=="number"?je:Dt.current},[je,u,M]),l.useLayoutEffect(()=>{const ne=P.current;if(!ne)return;const ge=()=>ne.querySelector(".page-popup__scroll");let fe=null,U=null,ie=null;const ve=ct=>{const de=ge();if(!de)return;const Te=de.scrollHeight<=de.clientHeight;if(re(Te?"center":"top"),ct&&!Ge.current){Ge.current=!0;try{Re(!0)}catch{}try{Me.disconnect()}catch{}}},we=()=>{fe!==null&&cancelAnimationFrame(fe),fe=requestAnimationFrame(()=>{U!==null&&clearTimeout(U),U=setTimeout(()=>ve(!0),60)})},ke=()=>{ie!==null&&cancelAnimationFrame(ie),ie=requestAnimationFrame(()=>ve(!1))};we(),window.addEventListener("resize",ke);const Me=new MutationObserver(we);Me.observe(ne,{childList:!0,subtree:!0,attributes:!0});const nt=setTimeout(()=>{Ge.current||ve(!0)},400);return()=>{window.removeEventListener("resize",ke),fe!==null&&cancelAnimationFrame(fe),U!==null&&clearTimeout(U),ie!==null&&cancelAnimationFrame(ie),clearTimeout(nt);try{Me.disconnect()}catch{}}},[P]);const yt=l.useCallback(ne=>{P.current&&(P.current._childOnNext=ne)},[]),Et=l.useCallback(ne=>{P.current&&(P.current._childOnResult=ne)},[]),it=l.useCallback((ne,ge,fe)=>{Ue(U=>{const ie=U.answersByPage[ne]||{},ve=ie[ge],we=Ln(fe),ke=Ln(ve);return ve&&ke>we?U:{...U,answersByPage:{...U.answersByPage,[ne]:{...ie,[ge]:fe}}}})},[Ue]),Ht=l.useCallback((ne,ge,fe)=>{const U=Tc(rt,je),ie=Bc(ne,ge);it(U,ie,fe)},[rt,je,it]),mt=l.useCallback((ne,ge,fe)=>{const U=Tc(rt,je),ie=Bc(ne,ge);it(U,ie,fe),!fe?.allowChange&&ne?.autoAdvance!==!1&&Ue(ve=>({...ve,stepIndex:Math.max(ve.stepIndex,ge+1)}))},[rt,je,it,Ue]),Vt=l.useCallback((ne,ge)=>{const fe=Ye?.id||`children-page-${je??0}`,U=typeof ge=="number"?ge:Ze??0,ie=`step-${U}`;it(fe,ie,ne),ne?.allowChange||Ue(ve=>({...ve,stepIndex:Math.max(ve.stepIndex,U+1)}))},[Ye,je,Ze,it,Ue]),ia=l.useCallback((ne,ge)=>{const fe=Ye?.id||`children-page-${je??0}`,U=`step-${typeof ge=="number"?ge:Ze??0}`;it(fe,U,ne)},[Ye,je,Ze,it]),Gt=H?{currentPageIndex:je??0,currentStepIndex:Ze??0,totalStepsInPage:ut.length,handleStepDone:Vt,handleStepChange:ia}:null,Ea=async()=>{const ne=typeof t?.buildResults=="function"?await Promise.resolve(t.buildResults({scenario:t,pages:te,flowState:Le,answersByPage:Le.answersByPage})):null;return typeof k=="function"&&await Promise.resolve(k(ne))||ne},sa=async()=>{const ne=Ye?.id||`children-page-${Le.pageIndex}`,ge=Le.answersByPage[ne]||{},fe=R?(()=>{const ve={};let we=0;return O.forEach(ke=>{const Me=Le.answersByPage[ke.id]||{},nt=Array.isArray(ke.steps)?ke.steps.length:0;for(let ct=0;ct<nt;ct+=1){const de=Me[`step-${ct}`];typeof de<"u"&&(ve[`step-${we+ct}`]=de)}we+=nt}),ve})():ge;if(typeof C=="function"){const ve=await Promise.resolve(C(fe,{pageAnswers:ge,answersByPage:Le.answersByPage,pages:O,currentPageId:ne}));return typeof k=="function"&&await Promise.resolve(k(ve))||ve}const U=Object.entries(ge).map(([ve,we],ke)=>({index:ke,key:ve,payload:we})),ie={results:U,answers:U,score:0};return typeof k=="function"&&await Promise.resolve(k(ie))||ie},Kt=()=>{try{if(typeof document<"u"&&document.body){try{document.dispatchEvent(new CustomEvent("speechear-close-tooltips"))}catch{}document.dispatchEvent(new PointerEvent("pointerdown",{bubbles:!0,cancelable:!0})),document.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0}))}}catch{}if(N){const fe=Ea();be({});const U=fe;Promise.resolve(U).then(ie=>{be(ie||{isEmpty:!0})}).catch(ie=>{be({isEmpty:!0})});return}if(H){const fe=sa();be({});const U=fe;Promise.resolve(U).then(ie=>{be(ie||{isEmpty:!0})}).catch(ie=>{be({isEmpty:!0})});return}const ne=P.current&&P.current._childOnResult,ge=fe=>{try{return fe?fe():void 0}catch{return}};if(typeof ne=="function"){const fe=ge(ne);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:Yt&&Yt.tagName.toUpperCase()==="SCRIPT"&&Yt.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}fe&&typeof fe.then!="function"?be(fe):be(fe&&typeof fe.then=="function"?{}:{}),Promise.resolve(fe).then(U=>{U&&be(U)}).catch(U=>{});return}if(typeof k=="function"){const fe=ge(k);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:Yt&&Yt.tagName.toUpperCase()==="SCRIPT"&&Yt.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}fe&&typeof fe.then!="function"?be(fe):be(fe&&typeof fe.then=="function"?{}:{}),Promise.resolve(fe).then(U=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:Yt&&Yt.tagName.toUpperCase()==="SCRIPT"&&Yt.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}U&&be(U)}).catch(U=>{console.error("viewResults external handler failed",U)});return}},ja=()=>{if(N){if(typeof je=="number"&&typeof et=="number"&&je<et-1){Ue(ge=>({...ge,pageIndex:ge.pageIndex+1,stepIndex:0}));return}return Kt()}if(H){const ge=ut.length;if(typeof Ze=="number"&&Ze<ge-1){Ue(fe=>({...fe,stepIndex:fe.stepIndex+1}));return}if(typeof je=="number"&&typeof et=="number"&&je<et-1){Ue(fe=>({...fe,pageIndex:fe.pageIndex+1,stepIndex:0}));return}return Kt()}if(typeof v=="function"){try{v()}catch{}return}const ne=P.current&&P.current._childOnNext;if(typeof ne=="function"){try{ne()}catch{}return}},jt=N?F.title||F.label||x||M("common.popup","\uD31D\uC5C5"):a||_||(Array.isArray(n)?n[n.length-1]:void 0)||x||M("common.popup","\uD31D\uC5C5"),Ga=N?F.title??F.label??jt:a??_??jt,$t=(ne,ge)=>{const fe=Tc(rt,je),U=Bc(ne,ge),ie=Le.answersByPage[fe]?.[U],ve=d7(ne,{page:rt,pageIndex:je,step:ne,stepIndex:ge,storedPayload:ie,answersByPage:Le.answersByPage,flowState:Le}),we={key:U,index:ge,stepIndex:Ze,isLast:ge===Je.length-1};switch(ne?.type){case"listen":return o.jsx(En,{...we,...ve,onDone:ke=>mt(ne,ge,ke)});case"confirm":return o.jsx(Nn,{...we,...ve,onDone:ke=>mt(ne,ge,ke),onChange:ke=>Ht(ne,ge,ke)});case"confirmWithText":return o.jsx(Dn,{...we,...ve,onDone:ke=>mt(ne,ge,ke),onChange:ke=>Ht(ne,ge,ke)});case"orderList":return o.jsx(jn,{...we,...ve,onDone:ke=>mt(ne,ge,ke),onChange:ke=>Ht(ne,ge,ke)});default:return null}},ya=N?te.length>0?o.jsx("div",{className:"training-steps",children:Je.map((ne,ge)=>$t(ne,ge))}):o.jsx("div",{className:"page-popup__content page-popup__content--center",children:o.jsx("div",{className:"pp-empty",children:t?.emptyMessage||M("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,qa=H?o.jsxs(Pb.Provider,{value:Gt,children:[Ye?.pageTop?o.jsx("div",{className:"training-page-top",children:Ye.pageTop}):null,o.jsx("div",{className:"training-steps",children:ut.map((ne,ge)=>{const fe=ne;return l.cloneElement(fe,{...fe.props,_stepIndex:ge,_totalSteps:ut.length,_stepKey:`step-${ge}`,_pageIndex:je})})}),Ye?.pageBottom?o.jsx("div",{className:"training-page-bottom",children:Ye.pageBottom}):null]}):null,Xe=l.useCallback(()=>{let ne;if(w){const ge=We,fe=ge?.results||ge?.answers||[],U=Array.isArray(fe)&&fe.length>0?fe.length:null,ie=Array.isArray(fe)?fe.filter(we=>we?.correct===!0||we?.isCorrect===!0||we?.score===1||we?.heard===!0||we?.judgement===!0).length:null,ve=U!=null?ie:null;Zi({items:Qi(fe),category:$b.has(w)?"sentence":"word",trainingType:w,entryPoint:S??"sentence",itemRef:T??null,correct:ve,total:U,score:typeof ge?.score=="number"?ge.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-W.current)/1e3)),dailyTotal:D??null}),ne={correct:ve,total:U}}be(null),Fe(()=>{typeof g=="function"&&g(ne),typeof p=="function"&&p()})},[g,p,w,S,D,T,We,be,Fe]),zt=l.useCallback(()=>He(""),[He]),wt=l.useCallback(()=>{Fe(()=>{typeof p=="function"&&p()})},[p,Fe]),xa=o.jsxs("div",{className:`page-popup${Ce?" page-popup--closing":""}`,role:"dialog","aria-label":jt,children:[o.jsxs("div",{ref:P,className:`page-popup__panel ${Qe?"":"page-popup__panel--measuring"} ${oe==="center"?"page-popup__panel--center":oe==="top"?"page-popup__panel--top":""}`,"aria-modal":"true",children:[o.jsx(fc,{title:Ga,subtitle:N?F.subtitle||F.label:Array.isArray(n)?n.join(" / "):void 0,desc:N?void 0:r,depth:N?F.depth:n,icon:N?F.icon:i,wrapperStyle:N?F.wrapperStyle:s,iconTooltip:N?F.iconTooltip:c,progressMax:et,progressIndex:je,pageIndex:je,pageCount:et,onBack:wt,onClose:wt}),o.jsx("div",{className:"page-popup__scroll",children:o.jsx("div",{className:`page-popup__content ${oe==="center"?"page-popup__content--center":"page-popup__content--top"}`,children:H?qa:N?ya:typeof f=="function"?f({registerOnNext:yt,registerOnResult:Et,panelRef:P,setResultOverlay:be}):f})}),o.jsx(gc,{onSettings:b,onNext:ja,onResult:Kt,useNoiseSettingBtn:!!(N?F.useNoiseSetting??!0:y),stepIndex:Ze,stepCount:$e,pageIndex:je,pageCount:et})]}),We&&!We.isEmpty&&(E??u7)({score:We.score,results:We.results||We.answers||[],contextsLength:We.results?We.results.length:We.answers?We.answers.length:0,onReplay:()=>{if(be(null),N){if(Ue(Mn()),typeof t?.onReplay=="function")try{t.onReplay()}catch{}return}if(H){Ue(Mn());return}try{const ne=P.current&&P.current._childOnResult;typeof ne=="function"&&ne({replay:!0})}catch{}},onClose:Xe}),We?.isEmpty&&o.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-label":M("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:o.jsxs("div",{className:"page-popup__panel page-popup__panel--center","aria-modal":"true",children:[o.jsx("div",{className:"page-popup__scroll",children:o.jsx("div",{className:"page-popup__content page-popup__content--center",children:o.jsx("div",{className:"page-popup__empty",children:M("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),o.jsx("div",{className:"page-popup__bottom",children:o.jsx(le,{variant:"main",size:48,onClick:Xe,label:M("training.result.done","\uC644\uB8CC")})})]})}),o.jsx(oo,{message:at,position:"top",onClose:zt})]}),la=o.jsx(bb.Provider,{value:Ae,children:xa});return typeof document<"u"&&document.body?qt.createPortal(la,document.body):la}const Da=h7;Da.Page=_r,Da.ListenStep=xc,Da.ConfirmStep=Cc,Da.ConfirmWithTextStep=_c,Da.OrderListStep=wc,Da.CardStep=kc,Da.CardOrderStep=i7;var m7=".ihabdevteam-core-scope .word-search-result-block__actions{display:flex;gap:var(--spacing-xs);justify-content:center}.ihabdevteam-core-scope .word-search-result-block__toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:flex-end}.ihabdevteam-core-scope .word-search-result-block__inner{background:var(--color-white);border:1px solid var(--color-darkWhite);border-radius:var(--radius-m);padding:var(--spacing-content)}.ihabdevteam-core-scope .word-search-result-block__inner:has(+.word-search-result-block__actions:not(:empty)){margin-bottom:var(--spacing-content)}.ihabdevteam-core-scope .word-search-result-block__items{grid-gap:var(--spacing-xs);display:grid;gap:var(--spacing-xs);grid-template-columns:repeat(auto-fill,200px);justify-content:center}.ihabdevteam-core-scope .word-search-result-block__items .button__label-text,.ihabdevteam-core-scope .word-search-result-block__items .button__sub-label-text{white-space:nowrap;word-break:keep-all}.ihabdevteam-core-scope .word-search-result-block__items .button__label:has(.button__label-text:nth-child(4)){gap:4px 10px;grid-auto-columns:auto;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr))}.ihabdevteam-core-scope .word-search-result-block__items .button-word:has(.button__label-text:nth-child(4)){height:auto;min-height:72px;padding-bottom:8px;padding-top:8px}@media (max-width:767px){.ihabdevteam-core-scope .word-search-result-block__items{grid-template-columns:repeat(2,1fr);justify-content:normal}.ihabdevteam-core-scope .word-search-result-block__items .button{min-width:0!important;width:100%}}.ihabdevteam-core-scope .word-search-result-block__empty{color:var(--color-gray);margin:0;padding:24px 0;text-align:center}.ihabdevteam-core-scope .word-search-result-block__group{display:flex;flex-direction:column;gap:10px}.ihabdevteam-core-scope .word-search-result-block__group+.word-search-result-block__group{border-top:1px solid var(--color-darkWhite);margin-top:var(--spacing-l);padding-top:var(--spacing-l)}.ihabdevteam-core-scope .word-search-result-block__pagination-bottom{display:flex;justify-content:center;margin-top:16px}.ihabdevteam-core-scope .word-search-result-block__empty-wrap{align-items:center;display:flex;flex-direction:column;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .word-search-result-block__empty-hint{color:var(--color-sub);line-height:1.6;max-width:34em;text-align:center}.ihabdevteam-core-scope .word-search-result-block__disc,.ihabdevteam-core-scope .word-search-result-block__notice{display:block}.ihabdevteam-core-scope .word-search-result-block__notice{color:var(--color-text-primary)}";Q(m7);var b7='.ihabdevteam-core-scope .tooltip-word-image{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-dropdown);padding:var(--spacing-s);position:fixed;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-word-image__cells{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .tooltip-word-image__cell{background:#f5f5f5;background:var(--color-white,#f5f5f5);border-radius:var(--radius-card);flex-shrink:0;height:120px;overflow:hidden;position:relative;width:120px}.ihabdevteam-core-scope .tooltip-word-image__cell img{display:block;height:100%;-o-object-fit:cover;object-fit:cover;transition:opacity .2s;width:100%}.ihabdevteam-core-scope .tooltip-word-image__spinner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.ihabdevteam-core-scope .tooltip-word-image__spinner:after{animation:tooltip-spin .7s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top:3px solid var(--color-white,#e0e0e0);border:3px solid var(--color-white,#e0e0e0);border-top-color:var(--color-main,#4f6ef7);content:"";height:24px;width:24px}@keyframes tooltip-spin{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .tooltip-word-image__cell--text{align-items:center;color:var(--color-black);display:flex;font-weight:700;justify-content:center}';Q(b7);function g7({label:e,homonum:t}){const a=Ma()?.(e,t)??"",{imgRef:r,loading:n,hasImage:i,onLoad:s,onError:c}=ql(a);return i?o.jsxs("div",{className:"tooltip-word-image__cell",children:[n&&o.jsx("div",{className:"tooltip-word-image__spinner"}),o.jsx("img",{ref:r,src:a,alt:e,draggable:!1,style:{opacity:n?0:1},onLoad:s,onError:c})]}):o.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:o.jsx("span",{children:e})})}function Nc({words:e,anchorRect:t}){const a=l.useRef(null),[r,n]=l.useState(null);return l.useLayoutEffect(()=>{if(!t||!a.current)return;const{offsetWidth:i,offsetHeight:s}=a.current,c=window.innerWidth;let u=t.left+t.width/2-i/2,d=t.top-s-8;d<8&&(d=t.bottom+8),u=Math.max(8,Math.min(u,c-i-8)),n({left:u,top:d})},[t]),!t||e.length===0?null:qt.createPortal(o.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:r?"visible":"hidden",left:r?.left??0,top:r?.top??-9999},children:o.jsx("div",{className:"tooltip-word-image__cells",children:e.map(i=>o.jsx(g7,{label:i.label,homonum:i.homonum},`${i.label}_${i.homonum??1}`))})}),document.body)}function zb({titleIcon:e,resultCount:t,resultUnit:a,searchQuery:r,items:n,groups:i,selected:s=[],onSelect:c,maxSelect:u,onClearSelection:d,onPrint:m,onPrintEmpty:h,className:p,emptyHint:g,sectionType:v="page",disc:b,notice:y}){const{t:f,i18n:x}=me.useTranslation(),_=x.language?.startsWith("ko")??!1,{anchorRect:C,openAt:A,close:w}=_o(),[S,D]=l.useState(null),T=l.useCallback(()=>{w(),D(null)},[w]),E=(r??"").trim(),W=/^[^,[\]\s]+$/.test(E)?E:"",M=W.length>0,[k,N]=l.useState("ganada"),[j,F]=l.useState("50"),[te,Z]=l.useState(1),[ee,L]=l.useState(M);ee!==M&&(L(M),N(M?"match":"ganada"));const R=k==="match"&&!M?"ganada":k,O=l.useMemo(()=>[...M?[{value:"match",label:f("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],{value:"ganada",label:f("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:f("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:f("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:f("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:f("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:f("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[f,M]),H=l.useMemo(()=>["10","25","50","100"].map(P=>({value:P,label:f("wordSearch.pageSize",{count:Number(P),defaultValue:`${P}\uAC1C\uC529 \uBCF4\uAE30`})})),[f]),$=P=>P.words[0],q=l.useCallback((P,oe)=>{const re=Ie=>$(Ie)?.label??"",Ce=Ie=>$(Ie)?.syllables??[...re(Ie)].length,De=Ie=>{const Oe=parseInt($(Ie)?.grade??"",10);return Number.isFinite(Oe)?Oe:999};switch(R){case"match":{const Ie=[...W].length,Oe=Fe=>po(re(Fe).slice(0,Ie),W)?0:1;return Oe(P)-Oe(oe)||re(P).localeCompare(re(oe),"ko")}case"ganada":return re(P).localeCompare(re(oe),"ko");case"ganada_desc":return re(oe).localeCompare(re(P),"ko");case"syllable":return Ce(P)-Ce(oe)||re(P).localeCompare(re(oe),"ko");case"syllable_desc":return Ce(oe)-Ce(P)||re(P).localeCompare(re(oe),"ko");case"grade":return De(P)-De(oe)||re(P).localeCompare(re(oe),"ko");case"grade_desc":return De(oe)-De(P)||re(P).localeCompare(re(oe),"ko");default:return 0}},[R,W]),I=l.useMemo(()=>n.slice().sort(q),[n,q]),G=Number(j)||10,z=l.useMemo(()=>(i??[]).flatMap(P=>P.items.slice().sort(q).map(oe=>({item:oe,label:P.label}))),[i,q]),Y=i?z.length:I.length,J=Math.max(1,Math.ceil(Y/G)),ue=Math.min(te,J),pe=l.useMemo(()=>I.slice((ue-1)*G,ue*G),[I,ue,G]),ae=l.useMemo(()=>{if(!i)return null;const P=z.slice((ue-1)*G,ue*G),oe=new Map;for(const{item:re,label:Ce}of P)oe.has(Ce)||oe.set(Ce,[]),oe.get(Ce).push(re);return[...oe.entries()].map(([re,Ce])=>({label:re,items:Ce}))},[i,z,ue,G]);l.useEffect(()=>{Z(1)},[k,j,Y]);const X=Y>0?o.jsxs("div",{className:"word-search-result-block__toolbar",children:[o.jsx(Ut,{size:40,options:O,value:R,onChange:N,ariaLabel:f("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),o.jsx(Ut,{size:40,options:H,value:j,onChange:F,ariaLabel:f("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),o.jsx(br,{page:ue,totalPages:J,onChange:Z})]}):void 0,ce=P=>{c&&c(P)},xe=t!==void 0&&a?o.jsxs(o.Fragment,{children:[f("wordSearch.resultTitlePrefix","\uCD1D "),o.jsx("span",{style:{color:"var(--color-main)"},children:t}),f("wordSearch.resultTitleSuffix",{unit:_?Bi(a):a})]}):void 0,Se=t!==void 0&&t>0&&u!==void 0&&a?f("wordSearch.resultDisc",{unit:_?Di(a):a,max:u,selected:s.length}):void 0,Ae=b??(y?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"word-search-result-block__notice",children:y}),Se?o.jsx("span",{className:"word-search-result-block__disc",children:Se}):null]}):Se);return o.jsxs(ro,{type:v,icon:e,title:xe,action:X,disc:Ae,className:ye("word-search-result-block",p),children:[o.jsxs("div",{className:"word-search-result-block__inner",children:[(i?i.length===0:n.length===0)&&o.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[o.jsx("p",{className:"word-search-result-block__empty body-3",children:f("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),g&&o.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:g})]}),i?(ae??[]).map(P=>o.jsx("div",{className:"word-search-result-block__group",children:o.jsx("div",{className:"word-search-result-block__items",children:P.items.map(oe=>{const re=s.includes(oe.id);return o.jsx("div",{onMouseEnter:Ce=>{A(Ce.currentTarget),D(oe.words)},onMouseLeave:T,children:o.jsx(le,{size:"word",align:"grid",label:oe.words.map(Ce=>Ce.label),subLabel:oe.words.map(Ce=>Ce.subLabel).filter(Boolean).length>0?oe.words.map(Ce=>Ce.subLabel):void 0,selected:re,onClick:()=>ce(oe.id),minWidth:200})},oe.id)})})},P.label)):o.jsx("div",{className:"word-search-result-block__items",children:pe.map(P=>{const oe=s.includes(P.id);return o.jsx("div",{onMouseEnter:re=>{A(re.currentTarget),D(P.words)},onMouseLeave:T,children:o.jsx(le,{size:"word",align:"grid",label:P.words.map(re=>re.label),subLabel:P.words.map(re=>re.subLabel).filter(Boolean).length>0?P.words.map(re=>re.subLabel):void 0,selected:oe,onClick:()=>ce(P.id),minWidth:200})},P.id)})}),S&&C&&o.jsx(Nc,{words:S,anchorRect:C})]}),J>1&&o.jsx("div",{className:"word-search-result-block__pagination-bottom",children:o.jsx(br,{page:ue,totalPages:J,onChange:Z})}),(d||m)&&o.jsxs("div",{className:"word-search-result-block__actions",children:[d&&o.jsx(le,{size:"56",type:"bar",label:f("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:s.length===0,onClick:s.length===0?void 0:d}),m&&o.jsx("div",{onClick:s.length===0?h:void 0,children:o.jsx(le,{size:"56",type:"bar",variant:"main",label:f("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:s.length===0,onClick:s.length===0?void 0:m})})]})]})}var f7='.ihabdevteam-core-scope .phoneme-select-block{align-items:flex-start;flex:1 1 auto;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell{align-items:center;display:flex;flex-direction:column;gap:12px}.ihabdevteam-core-scope .phoneme-select-block__controls{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs);justify-content:center;width:100%}@media (max-width:767px){.ihabdevteam-core-scope .phoneme-select-block__controls{align-items:center;flex-direction:column}}.ihabdevteam-core-scope .phoneme-select-block__count-control{align-self:center}.ihabdevteam-core-scope .phoneme-select-block__cell-group{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .phoneme-select-block__cell-vs{align-self:center;color:var(--color-lightGray);margin-bottom:22px;padding:0 16px}.ihabdevteam-core-scope .phoneme-select-block__pair-panels{display:flex;gap:var(--spacing-s);width:100%}.ihabdevteam-core-scope .phoneme-select-block__panel-group{display:flex;flex:1;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .phoneme-select-block__cells{align-items:flex-start;display:flex;gap:var(--spacing-xs);justify-content:center;padding:var(--spacing-m) 0;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-circle{align-items:center;background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);display:flex;height:80px;justify-content:center;position:relative;width:240px}.ihabdevteam-core-scope .phoneme-select-block__cell-index{color:var(--color-gray);line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo{align-items:stretch;display:flex;flex-direction:row;height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part{align-items:center;color:var(--color-black);display:flex;flex:1;flex-direction:column;gap:4px;justify-content:center;padding-top:3px;position:relative}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--no-label{padding-top:0}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-char.h1{line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-char--excluded{color:var(--color-whiteLine);transform:translateY(-2px)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty .phoneme-select-block__cell-jamo-char{transform:translateY(-2px)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-label{color:var(--color-lightGray);line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty .phoneme-select-block__cell-jamo-label{color:var(--color-darkWhite)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part+.phoneme-select-block__cell-jamo-part:before{background:var(--color-whiteLine);content:"";height:20px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:1px}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty{color:var(--color-darkWhite)}.ihabdevteam-core-scope .phoneme-select-block__panels{align-items:stretch;align-self:stretch;display:flex;flex-direction:column;gap:var(--spacing-m);width:100%}.ihabdevteam-core-scope .phoneme-select-block__detail{align-items:flex-start;display:flex;flex-direction:row;gap:var(--spacing-s);justify-content:center}.ihabdevteam-core-scope .phoneme-select-block__detail>.filter-panel{flex:1}.ihabdevteam-core-scope .phoneme-select-block>.filter-panel{align-self:stretch;width:100%}.ihabdevteam-core-scope .phoneme-select-block__controls .button38--bar{min-width:96px}.ihabdevteam-core-scope .phoneme-select-block__required{color:var(--color-main);line-height:1;margin-left:2px}.ihabdevteam-core-scope .phoneme-select-block__before-search{display:flex;justify-content:center;text-align:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__search-row{display:flex;gap:var(--spacing-xs);justify-content:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__checking{align-items:center;background:transparent;border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);color:var(--color-disabled);cursor:default;display:flex;gap:10px;height:60px;min-width:198px;padding:0 28px}.ihabdevteam-core-scope .phoneme-select-block__checking-label{white-space:nowrap}.ihabdevteam-core-scope .phoneme-select-block__spinner{animation:phonemeSpinner .7s linear infinite;border:2px solid var(--color-whiteLine);border-radius:50%;border-top-color:var(--color-disabled);flex-shrink:0;height:18px;width:18px}@keyframes phonemeSpinner{to{transform:rotate(1turn)}}@media (max-width:767px){.ihabdevteam-core-scope .phoneme-select-block__detail,.ihabdevteam-core-scope .phoneme-select-block__pair-panels{flex-direction:column}.ihabdevteam-core-scope .phoneme-select-block__detail>.filter-panel{width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-vs{align-self:center;margin-bottom:0;padding:4px 0}.ihabdevteam-core-scope .phoneme-select-block__cells{flex-wrap:wrap}.ihabdevteam-core-scope .phoneme-select-block__cell-circle{height:64px;width:min(240px,100%)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part{font-size:24px}}';Q(f7);function v7(e,t){return t.map(a=>{const r=typeof a=="string"?a:a.label,n=typeof a=="string"?void 0:a.displayLabel;return{label:r,value:e[r]??"",displayLabel:n}})}function Ib({sections:e,selectedList:t,count:a,onCountChange:r,maxCount:n=4,minCount:i=1,combinationSections:s,combinationSectionsForSlot:c,onSelect:u,placeholder:d="-",className:m,title:h,titleIcon:p,disc:g,showInfoButton:v=!1,onClearPhoneme:b,onSearch:y,onSearchEmpty:f,searchDisabled:x=!1,searchLabel:_,searchChecking:C=!1,pairMode:A=!1,sectionType:w="page",beforeSearchContent:S,beforeContent:D,afterContent:T,hideCountControl:E=!1,ordinal:W=!1}){const{t:M}=me.useTranslation(),k=l.useMemo(()=>M("wordPairs.infoNotes",{returnObjects:!0}),[M]),N=l.useMemo(()=>Array.from({length:n-i+1},(I,G)=>{const z=i+G;return{key:String(z),label:M("wordPairs.count",{n:z})}}),[M,n,i]),j=l.useMemo(()=>M("wordPairs.ordinals",{returnObjects:!0}),[M]),F=l.useCallback(I=>W?M("wordPairs.phonemeOrdinalLabel",{ordinal:j[I-1]??I}):a===1?M("wordPairs.phonemeSingleLabel","\uC74C\uC808"):M("wordPairs.phonemeN",{n:I}),[W,j,a,M]),te=l.useCallback(I=>W?M("wordPairs.phonemeContrastOrdinalLabel",{ordinal:j[I-1]??I}):a===1?M("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):M("wordPairs.phonemeContrast",{n:I}),[W,j,a,M]),Z=l.useCallback((I,G)=>G?o.jsxs(o.Fragment,{children:[I,o.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):I,[]),{anchorRect:ee,toggleAt:L,close:R}=_o(),O=l.useCallback(I=>r(Number(I)),[r]),H=oa("(max-width: 767px)"),$=l.useCallback(I=>v7(I,e).map(({label:G,value:z,displayLabel:Y})=>{const J=!!z&&z!=="\uC5C6\uC74C";return o.jsxs("span",{className:ye("phoneme-select-block__cell-jamo-part",z?"":"phoneme-select-block__cell-jamo-part--empty",J?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[o.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${z==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:z==="\uC5C6\uC74C"?"x":z||d}),J&&o.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:Y??G})]},G)}),[e,d]),q=o.jsxs(o.Fragment,{children:[o.jsx("div",{"data-tooltip-ignore":!0,children:o.jsx(le,{size:40,type:H?"dot":void 0,icon:"info",label:H?void 0:M("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),selected:!!ee,onClick:I=>L(I.currentTarget)})}),ee&&o.jsx(to,{title:M("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:k,anchorRect:ee,onClose:R})]});return o.jsxs(ro,{type:w,title:h,icon:p,disc:g,action:q,className:ye("phoneme-select-block",m),children:[D,(!E||v&&!(h||g))&&o.jsxs("div",{className:"phoneme-select-block__controls",children:[!E&&o.jsx(Ha,{options:N,value:String(a),onChange:O,size:40,className:"phoneme-select-block__count-control"}),v&&!(h||g)&&q]}),o.jsx("div",{className:"phoneme-select-block__cells",children:A?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((I,G)=>{const z=t[G*2]??{};return o.jsxs("div",{className:"phoneme-select-block__cell",children:[o.jsx("div",{className:"phoneme-select-block__cell-circle",children:o.jsx("div",{className:"phoneme-select-block__cell-jamo",children:$(z)})}),o.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:F(G+1)})]},G)})}),o.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:M("wordPairs.phonemeSelect.vs","\uB300")}),o.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((I,G)=>{const z=t[G*2+1]??{};return o.jsxs("div",{className:"phoneme-select-block__cell",children:[o.jsx("div",{className:"phoneme-select-block__cell-circle",children:o.jsx("div",{className:"phoneme-select-block__cell-jamo",children:$(z)})}),o.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:te(G+1)})]},G)})})]}):t.map((I,G)=>o.jsxs("div",{className:"phoneme-select-block__cell",children:[o.jsx("div",{className:"phoneme-select-block__cell-circle",children:o.jsx("div",{className:"phoneme-select-block__cell-jamo",children:$(I)})}),o.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:F(G+1)})]},G))}),(s||c)&&o.jsx("div",{className:"phoneme-select-block__panels",children:o.jsx("div",{className:"phoneme-select-block__detail",children:A?o.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[o.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((I,G)=>{const z=t[G*2]??{};return o.jsx(va,{title:Z(F(G+1),G===0),sections:c?c(z,G*2):s,selected:z,onSelect:u?.(G*2),align:"newline"},G)})}),o.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((I,G)=>{const z=t[G*2+1]??{};return o.jsx(va,{title:te(G+1),sections:c?c(z,G*2+1):s,selected:z,onSelect:u?.(G*2+1),align:"newline"},G)})})]}):t.map((I,G)=>o.jsx(va,{title:Z(F(G+1),G===0),sections:c?c(I,G):s,selected:I,onSelect:u?.(G),align:"newline"},G))})}),S&&o.jsx("div",{className:"phoneme-select-block__before-search",children:S}),(b||y||C)&&(()=>{const I=t.every(G=>Object.entries(G).every(([z,Y])=>!Y||z==="\uC885\uC131"&&Y==="\uC5C6\uC74C"));return o.jsxs("div",{className:"phoneme-select-block__search-row",onClick:I?f:void 0,children:[b&&o.jsx(le,{size:"56",type:"bar",label:M("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:I,onClick:I?void 0:b}),C?o.jsxs("div",{className:"phoneme-select-block__checking",children:[o.jsx("div",{className:"phoneme-select-block__spinner"}),o.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:_??M("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):y&&o.jsx(le,{size:"56",type:"bar",variant:"main",label:_??M("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:I||x,onClick:I||x?void 0:y})]})})(),T]})}function Ob({title:e,sections:t,selected:a,onSelect:r,className:n}){const{t:i}=me.useTranslation();return o.jsx(va,{className:n,title:e??i("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:t,selected:a,onSelect:r,align:"inline"})}function Fb({title:e,headerAction:t,sections:a,selected:r,onSelect:n,className:i}){const{t:s}=me.useTranslation();return a.length===0?null:o.jsx(va,{className:i,title:e??s("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:t,sections:a,selected:r,onSelect:n,align:"newline"})}function Wb({title:e,mode:t,onModeChange:a,matchMode:r,onMatchModeChange:n,positionCount:i,onPositionCountChange:s,inputMode:c,onInputModeChange:u,className:d}){const{t:m}=me.useTranslation(),h={searchMode:m("wordPairs.filter.searchModeLabel","\uB300\uB9BD \uBC29\uC2DD"),phonemeOrder:m("wordPairs.filter.phonemeOrder","\uC785\uB825 \uC74C\uC808 \uC704\uCE58"),count:m("wordPairs.filter.countLabel","\uC785\uB825 \uC74C\uC808 \uAC2F\uC218"),inputMode:m("wordPairs.filter.inputModeLabel","\uC785\uB825 \uBC29\uC2DD"),orderAny:m("wordPairs.filter.orderAny","\uBB34\uAD00"),orderMatch:m("wordPairs.filter.orderMatch","\uC77C\uCE58"),include:m("wordPairs.mode.include","\uC74C\uC18C \uD3EC\uD568"),pick:m("wordPairs.mode.pick","\uC74C\uC18C \uB300\uB9BD"),explicit:m("wordPairs.mode.contrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815"),charInput:m("wordPairs.input.char","\uAE00\uC790 \uC120\uD0DD"),pronInput:m("wordPairs.input.pron","\uBC1C\uC74C \uC120\uD0DD")},p=y=>m("wordPairs.count",{n:y}),g=[{label:h.searchMode,items:[h.include,h.pick,h.explicit],display:"segmented",labelAction:o.jsx(wo,{title:m("wordPairs.mode.infoTitle","\uB300\uB9BD \uBC29\uC2DD"),items:[m("wordPairs.mode.infoInclude","\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."),m("wordPairs.mode.infoPick","\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694."),m("wordPairs.mode.infoContrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.")]})},{label:h.phonemeOrder,items:[h.orderAny,h.orderMatch],display:"segmented",labelAction:o.jsx(wo,{items:m("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:h.count,items:[p(1),p(2)],display:"segmented"},{label:h.inputMode,items:[h.charInput,h.pronInput],display:"segmented",labelAction:o.jsx(wo,{title:m("wordPairs.input.infoTitle","\uC785\uB825 \uBC29\uC2DD"),items:[m("wordPairs.input.infoChar","\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."),m("wordPairs.input.infoPron","\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.")]})}],v={[h.searchMode]:t==="explicit"?h.explicit:t==="pick"?h.pick:h.include,[h.phonemeOrder]:r==="ordered"?h.orderMatch:h.orderAny,[h.count]:p(i),[h.inputMode]:c==="phoneme"?h.pronInput:h.charInput},b=(y,f)=>{f===h.searchMode?a(y===h.explicit?"explicit":y===h.pick?"pick":"include"):f===h.phonemeOrder?n(y===h.orderMatch?"ordered":"unordered"):f===h.count?s(y===p(2)?2:1):f===h.inputMode&&u(y===h.pronInput?"phoneme":"word")};return o.jsx(va,{className:d,title:e??m("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:g,selected:v,onSelect:b,align:"inline"})}var y7=".ihabdevteam-core-scope .popup-list .popup-panel{max-height:calc(100% - 60px);max-width:880px;width:calc(100% - 40px)}.ihabdevteam-core-scope .popup-list .popup-content{display:flex;flex-direction:column;gap:var(--spacing-m);min-height:0;overflow:hidden}.ihabdevteam-core-scope .popup-list .table-wrap{flex:1;min-height:0;overflow-x:auto;overflow-y:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .popup-list .table-fields,.ihabdevteam-core-scope .popup-list .table-row{min-width:520px}.ihabdevteam-core-scope .popup-list__row--selected{background:var(--color-deepWhite);color:var(--color-main);font-weight:600}";Q(y7);function Hb(e){const{title:t,items:a,columns:r,gridTemplateColumns:n,searchPlaceholder:i,searchFn:s,defaultSortKey:c,defaultSortAsc:u=!0,selectedId:d,selectedIds:m,onSelect:h,onClose:p,pageSizeOptions:g=[10,25,50,100],initialPageSize:v,emptyText:b,countLabel:y,topContent:f,className:x=""}=e,{t:_}=me.useTranslation(),C=i??_("common.search","\uAC80\uC0C9"),A=b??_("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),[w,S]=l.useState(""),[D,T]=l.useState(c??r[0]?.key??""),[E,W]=l.useState(u),[M,k]=l.useState(String(v??g[0]??10)),[N,j]=l.useState(1);l.useEffect(()=>{j(1)},[w,M]);const F=s!==null,te=l.useCallback((I,G)=>{if(!G)return!0;const z=G.toLowerCase();return r.some(Y=>{const J=I[Y.key];return J==null?!1:String(J).toLowerCase().includes(z)})},[r]),Z=s??te,ee=l.useMemo(()=>{const I=F?a.filter(G=>Z(G,w)):a;return D?[...I].sort((G,z)=>{const Y=G[D]??"",J=z[D]??"";return Y===J?0:E?Y>J?1:-1:Y<J?1:-1}):I},[a,w,D,E,F,Z]),L=Math.max(1,Math.ceil(ee.length/Number(M))),R=ee.slice((N-1)*Number(M),N*Number(M)),O=l.useCallback(I=>{D===I?W(G=>!G):(T(I),W(!0))},[D]),H=l.useMemo(()=>{if(typeof y=="string"&&y.includes("{n}")){const[I,G]=y.split("{n}");return{prefix:I,suffix:G}}return{prefix:_("common.totalCountPrefix","\uCD1D "),suffix:_("common.totalCountSuffix","\uAC1C")}},[y,_]),$=l.useMemo(()=>r.map(I=>({label:I.label,onClick:I.sortable!==!1?()=>O(I.key):void 0,className:I.className,sortDir:I.sortable!==!1&&D===I.key?E?"asc":"desc":null})),[r,D,E,O]),q=l.useMemo(()=>g.map(I=>({value:String(I),label:_("common.pageSizeLabel",{n:I})})),[g,_]);return o.jsxs(Ta,{className:`popup-list ${x}`,title:t,onClose:p,children:[f,o.jsx(mn,{count:{value:ee.length,prefix:H.prefix,suffix:H.suffix},search:F?{value:w,onChange:S,placeholder:C}:void 0,pageSize:{options:q,value:M,onChange:k},pagination:{page:N,total:L,onChange:j}}),o.jsx(yn,{size:"medium",gridTemplateColumns:n,resizable:!0,fields:$,items:R,onRowClick:h,renderRow:I=>{const G=m!=null?I.id!=null&&m.has(I.id):d!=null&&I.id===d;return r.map(z=>({content:z.render?z.render(I):I[z.key]??"",className:G?"popup-list__row--selected":z.className}))},empty:A})]})}function Vb(e){const{title:t,message:a,topContent:r,details:n,children:i,confirmLabel:s,cancelLabel:c,hideCancel:u=!1,extraAction:d,confirmVariant:m="main",confirmDisabled:h=!1,onConfirm:p,closeOnConfirm:g=!0,onClose:v,inline:b,size:y="small",className:f}=e,{t:x}=me.useTranslation(),_=l.useRef(!1),[C,A]=l.useState(!1);return o.jsxs(Ta,{title:t,onClose:v,closeDisabled:C,inline:b,size:y,className:ye("confirm-popup",f),buttons:[...d?[{label:d.label,variant:d.variant??"default",disabled:C,onClick:({closeWithAnimation:w})=>{d.onClick(),w()}}]:[],...u?[]:[{label:c??x("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:C,onClick:({closeWithAnimation:w})=>w()}],{label:s??x("common.confirm","\uD655\uC778"),variant:m,disabled:h||C,onClick:async({closeWithAnimation:w})=>{if(!_.current){_.current=!0,A(!0);try{await p(w),g&&w()}finally{_.current=!1,A(!1)}}}}],children:[r!=null&&o.jsx("div",{className:"confirm-popup__top",children:r}),n&&n.length>0&&o.jsx(Cr,{children:n.map((w,S)=>o.jsx(Na,{label:w.label,children:o.jsx("span",{className:"panel-row__text body-2",children:w.value})},S))}),o.jsx("p",{className:"body-2 confirm-popup__message",children:a}),i]})}var x7=".ihabdevteam-core-scope .coupon-input-popup__input{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-darkGray);font-family:inherit;height:48px;letter-spacing:.06em;padding:0 14px;text-transform:uppercase;transition:border-color .15s;width:100%}.ihabdevteam-core-scope .coupon-input-popup__input:focus{border-color:var(--color-main);outline:none}.ihabdevteam-core-scope .coupon-input-popup__input::-moz-placeholder{color:var(--color-lightGray);letter-spacing:normal;text-transform:none}.ihabdevteam-core-scope .coupon-input-popup__input::placeholder{color:var(--color-lightGray);letter-spacing:normal;text-transform:none}.ihabdevteam-core-scope .coupon-input-popup__error{color:#e84040;color:var(--color-red,#e84040);margin:var(--spacing-xs) 0 0}";Q(x7);function Gb({onApply:e,onCancel:t}){const{t:a}=me.useTranslation(),[r,n]=l.useState(""),[i,s]=l.useState(!1),[c,u]=l.useState(null),d=l.useRef(null);l.useEffect(()=>{d.current?.focus()},[]);const m=l.useCallback(async g=>{const v=r.trim();if(v){s(!0),u(null);try{await e(v),g()}catch(b){u(Vr(b)),s(!1)}}},[r,e]),h=l.useCallback((g,v)=>{g.key==="Enter"&&m(v)},[m]),p=g=>{n(g.target.value),u(null)};return o.jsx(Ta,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:t,closeDisabled:i,buttons:[{label:a("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:i,onClick:({closeWithAnimation:g})=>g()},{label:a("coupons.applyButton","\uC801\uC6A9"),variant:"main",disabled:!r.trim()||i,onClick:({closeWithAnimation:g})=>{m(g)}}],children:({closeWithAnimation:g})=>o.jsxs(o.Fragment,{children:[o.jsx("input",{ref:d,className:"coupon-input-popup__input body-2","aria-label":a("coupons.input.label","\uCFE0\uD3F0 \uCF54\uB4DC"),placeholder:a("coupons.input.placeholder","\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"),value:r,onChange:p,onKeyDown:v=>h(v,g),disabled:i,autoComplete:"off",spellCheck:!1}),c&&o.jsx("p",{className:"coupon-input-popup__error caption-1",role:"alert",children:c})]})})}var C7=".ihabdevteam-core-scope .tooltip-content.tooltip-training{pointer-events:none}.ihabdevteam-core-scope .tooltip-training__box{background:var(--color-white);border-radius:var(--radius-m);box-shadow:0 4px 16px rgba(0,0,0,.12);padding:10px 14px}.ihabdevteam-core-scope .tooltip-training__groups{align-items:stretch;display:flex;flex-direction:row;gap:0}.ihabdevteam-core-scope .tooltip-training__section{display:flex;flex-direction:column;flex-shrink:0;gap:6px;width:100px}.ihabdevteam-core-scope .tooltip-training__section-header{align-items:center;display:flex}.ihabdevteam-core-scope .tooltip-training__type-label{color:var(--color-darkGray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .tooltip-training__divider{align-self:center;background:var(--color-whiteLine);flex-shrink:0;height:20px;margin:0 10px;width:1px}.ihabdevteam-core-scope .tooltip-training__items{display:flex;flex-direction:column;gap:2px;pointer-events:none}.ihabdevteam-core-scope .tooltip-training__items .training-block-button--compact{cursor:default}";Q(C7);const qb=200;function _7(e){return e.itemId?(us()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function Yb({plan:e,anchorRect:t,offset:a=12,onClose:r}){const n=l.useMemo(()=>Zr.map(s=>({type:s,items:(e.items??[]).filter(c=>c.trainingType===s.key)})).filter(s=>s.items.length>0),[e.items]);if(n.length===0)return null;const i=o.jsx("div",{className:"tooltip-training__box",children:o.jsx("div",{className:"tooltip-training__groups",children:n.flatMap(({type:s,items:c},u)=>[u>0?o.jsx("div",{className:"tooltip-training__divider"},`div-${s.key}`):null,o.jsxs("div",{className:"tooltip-training__section",children:[o.jsx("div",{className:"tooltip-training__section-header",children:o.jsx("span",{className:"tooltip-training__type-label body-3b",children:s.label})}),o.jsx("div",{className:"tooltip-training__items",children:c.map((d,m)=>{const h=_7(d);return h?o.jsx(xn,{index:m,type:s,trainingData:h,size:"compact",hideCheckBadge:!0},d.itemId??m):null})})]},s.key)])})});return t?o.jsx(Sa,{anchorRect:t,offset:a,onClose:r,closeOnOutsideClick:!1,className:"tooltip-training",children:i}):i}var w7=".ihabdevteam-core-scope .party-container{inset:0;overflow:visible;pointer-events:none;position:fixed}.ihabdevteam-core-scope .confetti{display:none;left:0;opacity:0;position:fixed;top:0;transform:translateZ(0);will-change:transform,opacity}.ihabdevteam-core-scope .confetti--left{transform-origin:left bottom}.ihabdevteam-core-scope .confetti--right{transform-origin:right bottom}.ihabdevteam-core-scope .confetti.show{display:block;opacity:1;transition:opacity .2s linear}";Q(w7);const Ub=["var(--color-main)","var(--color-sub)"];function Dc({active:e=!1,count:t=40,duration:a=2e3,strength:r=1,onComplete:n,trigger:i=0}){const s=l.useMemo(()=>{const b=Math.floor(t/2),y=t-b,f=(x,_)=>Array.from({length:x}).map((C,A)=>{const w=6+Math.random()*12,S=Math.round(Math.min(18,w*Math.min(1.5,1+r*.4))),D=Ub[Math.floor(Math.random()*Ub.length)],T=Math.random()*300,E=(360+Math.random()*260)*r*1.2,W=(_==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,M=Math.cos(W)*E,k=Math.sin(W)*E*1.35,N=Math.random()*720-360,j=(1200+Math.random()*3e3)*Math.min(1.6,1+r*.3),F=Math.random()>.7?"50%":"3px";return{id:`${_}-${A}`,side:_,size:S,color:D,delay:T,vx:M,vy:k,angularVel:N,life:j,borderRadius:F}});return[...f(b,"left"),...f(y,"right")]},[t,r]),c=l.useRef(null),u=l.useRef({}),d=l.useRef(null),m=l.useRef(n);l.useEffect(()=>{m.current=n},[n]);const h=l.useRef(null),p=l.useRef(null),g=()=>{if(typeof document>"u")return null;let b=document.querySelector("[data-ihab-effect-root]");return b||(b=document.createElement("div"),b.className="app-effect",b.dataset.ihabEffectRoot="",b.style.position="fixed",b.style.inset="0",b.style.pointerEvents="none",b.style.zIndex="99998",document.body.appendChild(b)),b};if(typeof document<"u"&&p.current==null&&(p.current=g()),l.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){m.current?.();return}const b=1200,y=performance.now(),f=p.current&&p.current!==document.body?p.current.getBoundingClientRect():null,x=Math.max(60,(window.innerHeight||800)*.05),_=L=>Math.max(40,(L||window.innerWidth)*.02),C=f?.width||window.innerWidth||375,A=f?.height||window.innerHeight||812,w=L=>{const R=[...L].sort((O,H)=>O-H);return R[Math.floor(R.length/2)]||1},S=w(s.map(L=>Math.abs(L.vy))),D=w(s.map(L=>Math.abs(L.vx))),T=Math.sqrt(2*b*(A*.72+x))/S,E=S*T/b,W=C*.5/(D*E),M=(L,R,O)=>Math.min(O,Math.max(R,L)),k=M(T,.8,2.4),N=M(W,.7,2.2),j=s.map(L=>({...L,vx:L.vx*N,vy:L.vy*k,startTime:y+L.delay,ended:!1})),F=f?{x:f.left-_(f.width),y:f.top+f.height+x}:{x:-_(window.innerWidth),y:window.innerHeight+x},te=f?{x:f.left+f.width+_(f.width),y:f.top+f.height+x}:{x:window.innerWidth+_(window.innerWidth),y:window.innerHeight+x},Z=L=>{let R=!1;for(const O of j){const H=u.current[O.id];if(!H||!H)continue;if(L<O.startTime){H.style.display="none";continue}if(!O._inited){const ae=O.side==="left"?F.x:te.x,X=O.side==="left"?F.y:te.y;H.style.left=`${ae}px`,H.style.top=`${X}px`,H.style.transform="translate3d(0px, 0px, 0)",H.style.display="block",H.style.zIndex="100000";try{if(typeof window<"u"&&typeof O.color=="string"&&O.color.startsWith("var(")){const ce=O.color.slice(4,-1).trim(),xe=getComputedStyle(document.documentElement).getPropertyValue(ce).trim();xe?H.style.background=xe:H.style.background="#FF0060"}}catch{}O._inited=!0}const $=(L-O.startTime)/1e3;if($<0)continue;const q=O.life/1e3;if($>=q){H.style.opacity="0",H.style.display="none",O.ended=!0;continue}R=!0;const I=O.side==="left"?F.x:te.x,G=O.side==="left"?F.y:te.y,z=I+O.vx*$,Y=G+O.vy*$+.5*b*$*$,J=(O.angularVel||0)*$,ue=z-I,pe=Y-G;H.style.transform=`translate3d(${ue}px, ${pe}px, 0) rotate(${J}deg)`,H.style.opacity=`${Math.max(0,1-$/q)}`}R?d.current=requestAnimationFrame(Z):m.current?.()};d.current=requestAnimationFrame(Z);const ee=setTimeout(()=>{try{if((p.current?p.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const L=document.createElement("div");L.className="party-container",L.style.position="fixed",L.style.inset="0",L.style.pointerEvents="none",L.style.overflow="visible",L.style.zIndex="2147483647";for(const R of s){const O=document.createElement("span");O.className=`confetti confetti--${R.side}`,O.setAttribute("aria-hidden","true"),O.style.display="none",O.style.position="fixed",O.style.left="0px",O.style.top="0px",O.style.width=`${R.size}px`,O.style.height=`${Math.max(4,R.size*.6)}px`;let H=R.color;try{if(typeof H=="string"&&H.startsWith("var(")){const $=H.slice(4,-1).trim(),q=getComputedStyle(document.documentElement).getPropertyValue($).trim();q&&(H=q)}}catch{}O.style.background=H,O.style.borderRadius=R.borderRadius,O.style.transform="translate3d(0,0,0)",O.style.opacity="0",L.appendChild(O),u.current[R.id]=O}(document.body||p.current).appendChild(L),h.current=L}}catch{}},300);return()=>{if(d.current&&cancelAnimationFrame(d.current),clearTimeout(ee),h.current){try{h.current.remove()}catch{}h.current=null}}},[e,a,i,s]),!e)return null;const v=o.jsx("div",{className:"party-container",ref:c,children:s.map(b=>o.jsx("span",{"aria-hidden":!0,ref:y=>{u.current[b.id]=y},className:`confetti confetti--${b.side}`,style:{width:`${b.size}px`,height:`${Math.max(4,b.size*.6)}px`,background:b.color,borderRadius:b.borderRadius}},`${b.id}-${i}`))});return typeof document<"u"?qt.createPortal(v,p.current||document.body):v}function Kb({trigger:e=0,active:t=!1}){const a=l.useRef(0);return l.useEffect(()=>{a.current=e},[e]),o.jsx(Dc,{active:t,trigger:e})}var k7=".ihabdevteam-core-scope .page-title{align-items:center;display:flex;gap:12px;justify-content:space-between;padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .page-title__main{align-items:flex-start;display:flex;flex:1;flex-direction:column;min-width:0;text-align:left}.ihabdevteam-core-scope .page-title__title-row{align-items:center;display:flex;gap:12px}.ihabdevteam-core-scope .page-title__title{margin:0}.ihabdevteam-core-scope .page-title__title-action{align-items:center;display:flex;flex-shrink:0}.ihabdevteam-core-scope .page-title__badge{align-items:center;display:flex}.ihabdevteam-core-scope .page-title__sub{color:var(--color-gray);margin:6px 0 0}.ihabdevteam-core-scope .page-title__action{flex-shrink:0;margin-left:var(--spacing-s)}@media (max-width:767px){.ihabdevteam-core-scope .page-title{align-items:flex-start;flex-direction:column;gap:10px}.ihabdevteam-core-scope .page-title__action{align-self:flex-start;margin-left:0}}";Q(k7);function Zb({title:e,sub:t,rightAction:a,titleAction:r,badge:n,badgeVariant:i="default",documentTitle:s}){return Qs(typeof e=="string"?e:s??null),o.jsxs("div",{className:"page-title",children:[o.jsxs("div",{className:"page-title__main",children:[o.jsxs("div",{className:"page-title__title-row",children:[o.jsx("h1",{className:"page-title__title h1",children:e}),n&&o.jsx("div",{className:"page-title__badge",children:o.jsx(ht,{label:n,size:"small",variant:i,fill:"outline"})})]}),t&&o.jsx("p",{className:"page-title__sub body-2",children:t})]}),a?o.jsx("div",{className:"page-title__action",children:a}):null]})}function Xb(e){return e??""}const Qb=l.createContext({words:[],loading:!1});function Jb(){return l.useContext(Qb)}function eg({words:e,loading:t,error:a,statusMessage:r,localVersion:n,remoteVersion:i,progress:s,clearAndRefetch:c,checkRemoteVersion:u,children:d}){return o.jsx(Qb.Provider,{value:{words:e,loading:t,error:a,statusMessage:r,localVersion:n,remoteVersion:i,progress:s,clearAndRefetch:c,checkRemoteVersion:u},children:d})}var S7=".ihabdevteam-core-scope .summary-strip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--spacing-m) var(--spacing-l);width:100%}.ihabdevteam-core-scope .summary-strip__row{align-items:center;display:flex;gap:var(--spacing-l)}.ihabdevteam-core-scope .summary-strip__items{grid-gap:var(--spacing-s) var(--spacing-l);display:grid;flex:1;gap:var(--spacing-s) var(--spacing-l);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}@media (min-width:640px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1280px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-columns:repeat(var(--summary-strip-cols,4),minmax(0,1fr))}}.ihabdevteam-core-scope .summary-strip__item{min-width:0}.ihabdevteam-core-scope .summary-strip__label{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .summary-strip__value{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .summary-strip__actions{align-items:center;display:flex;flex-shrink:0;gap:var(--spacing-xs)}";Q(S7);function tg({items:e,actions:t,columns:a,className:r,style:n}){const i=a??e.length;return o.jsx("section",{className:ye("summary-strip",r),style:{"--summary-strip-cols":String(i),...n},children:o.jsxs("div",{className:"summary-strip__row",children:[o.jsx("div",{className:"summary-strip__items",children:e.map((s,c)=>o.jsxs("div",{className:"summary-strip__item",children:[o.jsx("p",{className:"summary-strip__label caption-1",children:s.label}),o.jsx("p",{className:"summary-strip__value body-3b",children:s.value})]},c))}),t&&o.jsx("div",{className:"summary-strip__actions",children:t})]})})}var A7='.ihabdevteam-core-scope .report-doc{--report-page-w:210mm;--report-page-h:297mm;--report-margin:14mm;display:flex;justify-content:safe center;max-width:100%;min-width:0;overflow-x:auto;padding-block:var(--spacing-s);width:100%}.ihabdevteam-core-scope .report-doc__pages{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-l)}.ihabdevteam-core-scope .report-doc__page{background:#fff;box-shadow:var(--shadow-card);color:#000;display:flex;flex-direction:column;flex-shrink:0;min-height:var(--report-page-h);padding:var(--report-margin);width:var(--report-page-w)}.ihabdevteam-core-scope .report-doc__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__title{margin:0}.ihabdevteam-core-scope .report-doc__footer{align-items:center;color:var(--color-gray);display:flex;justify-content:space-between;margin-top:auto;padding-top:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__footer-left{align-items:center;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__page-no{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ihabdevteam-core-scope .report-doc__logo{height:28px;width:auto}.ihabdevteam-core-scope .report-doc__measure{display:flex;flex-direction:column;opacity:0;pointer-events:none;position:absolute;width:calc(var(--report-page-w) - var(--report-margin)*2);z-index:-10}.ihabdevteam-core-scope .report-doc__measure-blocks{display:flex;flex-direction:column}.ihabdevteam-core-scope .report-doc__ruler{height:calc(var(--report-page-h) - var(--report-margin)*2)}@media print{.ihabdevteam-core-scope .report-doc{display:block;overflow:visible;padding-block:0}.ihabdevteam-core-scope .report-doc__pages{display:block}.ihabdevteam-core-scope .report-doc__page{-moz-column-break-after:page;box-shadow:none;break-after:page;page-break-after:always}.ihabdevteam-core-scope .report-doc__page:last-child{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}}';Q(A7);const T7=(e,t)=>`${e} / ${t}`;function ag({blocks:e,sectionTitles:t,logo:a,footer:r,pageLabel:n=T7,pageWidth:i,pageHeight:s,margin:c,className:u,style:d}){const m=l.useRef(null),h=l.useRef(null),p=l.useRef(null),[g,v]=l.useState(null),b=e.map(w=>`${w.id}\0${w.section??""}\0${w.group??""}`).join("");l.useLayoutEffect(()=>{const w=m.current,S=p.current;if(!w||!S)return;const D=h.current?.offsetHeight??0,T=S.offsetHeight-D,E=Array.from(w.children).map(F=>F.offsetHeight),W=[];e.forEach((F,te)=>{const Z=W[W.length-1],ee=Z?e[Z[0]]:void 0;ee&&F.group!=null&&ee.group===F.group?Z.push(te):W.push([te])});const M=[];let k=[],N=0;const j=()=>{k.length&&M.push(k),k=[],N=0};W.forEach(F=>{const te=F.reduce((Z,ee)=>Z+E[ee],0);k.length&&e[k[0]].section!==e[F[0]].section&&j(),k.length&&N+te>T&&j(),te>T?F.forEach(Z=>{k.length&&N+E[Z]>T&&j(),k.push(Z),N+=E[Z]}):(F.forEach(Z=>k.push(Z)),N+=te)}),j(),v(M)},[b]);const y=Nl,f=y,x=r??o.jsxs(o.Fragment,{children:[o.jsx("img",{src:f,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),_=(w,S,D)=>({header:o.jsxs("div",{className:"report-doc__header",children:[o.jsx("h2",{className:"report-doc__title h3b",children:D!=null&&t?.[D]||null}),a]}),footer:o.jsxs("div",{className:"report-doc__footer caption-1",children:[o.jsx("span",{className:"report-doc__footer-left",children:x}),o.jsx("span",{className:"report-doc__page-no",children:n(w,S)})]})}),C=_(1,1,e[0]?.section),A={...i?{"--report-page-w":i}:null,...s?{"--report-page-h":s}:null,...c?{"--report-margin":c}:null,...d};return o.jsxs("div",{className:ye("report-doc",u),style:A,children:[o.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[o.jsx("div",{ref:p,className:"report-doc__ruler"}),o.jsxs("div",{ref:h,children:[C.header,C.footer]}),o.jsx("div",{ref:m,className:"report-doc__measure-blocks",children:e.map(w=>o.jsx("div",{children:w.content},w.id))})]}),g&&o.jsx("div",{className:"report-doc__pages",children:g.map((w,S)=>{const{header:D,footer:T}=_(S+1,g.length,e[w[0]].section);return o.jsxs("section",{className:"report-doc__page",children:[D,w.map(E=>o.jsx("div",{children:e[E].content},e[E].id)),T]},S)})})]})}var B7=".ihabdevteam-core-scope .report-info{border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:var(--spacing-l);padding:var(--spacing-s) var(--spacing-m)}.ihabdevteam-core-scope .report-info__title{color:var(--color-darkGray);margin:0 0 var(--spacing-s)}.ihabdevteam-core-scope .report-info__grid{grid-gap:var(--spacing-xs) var(--spacing-l);display:grid;gap:var(--spacing-xs) var(--spacing-l);grid-template-columns:repeat(4,minmax(0,1fr));grid-template-columns:repeat(var(--report-info-cols,4),minmax(0,1fr))}@media (max-width:640px){.ihabdevteam-core-scope .report-info__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.ihabdevteam-core-scope .report-info__field{align-items:baseline;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .report-info__label{color:var(--color-gray);flex-shrink:0;width:3.5rem}.ihabdevteam-core-scope .report-info__value{color:var(--color-darkGray);white-space:nowrap}";Q(B7);function og({title:e,fields:t,columns:a=4,className:r,style:n}){return o.jsxs("div",{className:ye("report-info",r),style:{"--report-info-cols":String(a),...n},children:[e&&o.jsx("p",{className:"report-info__title h5b",children:e}),o.jsx("div",{className:"report-info__grid",children:t.map((i,s)=>o.jsxs("div",{className:"report-info__field body-2",children:[o.jsx("span",{className:"report-info__label body-3",children:i.label}),o.jsx("span",{className:"report-info__value",children:i.value})]},s))})]})}var N7=".ihabdevteam-core-scope .update-alert{animation:update-alert-slide-in .32s cubic-bezier(.34,1.56,.64,1) both;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:hsla(0,0%,97%,.92);border:1px solid var(--color-main);border-radius:var(--radius-m);box-shadow:0 4px 24px rgba(0,0,0,.14),0 1px 4px rgba(0,0,0,.08),inset 0 0 0 .5px rgba(0,0,0,.1);padding:var(--spacing-l);width:380px}.ihabdevteam-core-scope .update-alert,.ihabdevteam-core-scope .update-alert-stack{display:flex;flex-direction:column;gap:12px;max-width:calc(100vw - 32px);position:fixed;right:16px;top:16px;z-index:var(--z-alert)}.ihabdevteam-core-scope .update-alert-stack{align-items:flex-end}.ihabdevteam-core-scope .update-alert-stack .update-alert{position:relative;z-index:auto}.ihabdevteam-core-scope .update-alert:has(.update-alert__close) .update-alert__title{padding-right:24px}.ihabdevteam-core-scope .update-alert__close{align-items:center;background:none;border:none;border-radius:6px;border-radius:var(--radius-s,6px);color:#888;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;line-height:1;position:absolute;right:8px;top:8px;width:24px}.ihabdevteam-core-scope .update-alert__close:hover{background:rgba(0,0,0,.06);color:#333}.ihabdevteam-core-scope .update-alert__top{align-items:center;display:flex;gap:10px}@keyframes update-alert-slide-in{0%{opacity:0;transform:translateX(calc(100% + 24px))}to{opacity:1;transform:translateX(0)}}.ihabdevteam-core-scope .update-alert__icon{align-items:center;color:var(--color-main);display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.ihabdevteam-core-scope .update-alert__body{flex:1;min-width:0}.ihabdevteam-core-scope .update-alert__title{color:#1a1a1a;text-align:left}.ihabdevteam-core-scope .update-alert__message{color:#555;margin-top:2px;text-align:left}.ihabdevteam-core-scope .update-alert__action{width:100%}";Q(N7);function rg({title:e,message:t,actionLabel:a,onAction:r,icon:n,onClose:i,className:s=""}){const{t:c}=me.useTranslation(),u=a??c("common.update","\uC5C5\uB370\uC774\uD2B8");return o.jsxs("div",{className:ye("update-alert",s),role:"alert",children:[i&&o.jsx("button",{type:"button",className:"update-alert__close",onClick:i,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"}),o.jsxs("div",{className:"update-alert__top",children:[o.jsx("div",{className:"update-alert__icon",children:n??o.jsx(Kc,{size:20,strokeWidth:2})}),o.jsxs("div",{className:"update-alert__body",children:[o.jsx("div",{className:"update-alert__title h4",children:e}),o.jsx("div",{className:"update-alert__message body-3",children:t})]})]}),r&&o.jsx(le,{size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:r,children:u})]})}var D7=".ihabdevteam-core-scope .training-card{background:var(--color-white);border:1px solid transparent;border-radius:var(--radius-card);display:flex;flex-direction:column;gap:10px;max-width:100%;padding:18px;position:relative;transition:border-color .15s,box-shadow .15s;width:360px}.ihabdevteam-core-scope .training-card:hover{border-color:var(--color-main);box-shadow:0 4px 16px var(--color-main-a10)}.ihabdevteam-core-scope .training-card--dragging{opacity:.5}.ihabdevteam-core-scope .training-card--clickable{cursor:pointer}.ihabdevteam-core-scope .training-card__header{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .training-card__title-row{align-items:center;display:flex;gap:8px;justify-content:space-between;min-width:0}.ihabdevteam-core-scope .training-card__title{color:var(--color-darkGray);margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card__top-actions{align-items:center;display:flex;flex-shrink:0;gap:2px;margin-right:-8px}.ihabdevteam-core-scope .training-card__publisher{background:none;border:none;color:var(--color-gray);cursor:pointer;font-size:11px;font-weight:400;max-width:120px;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .training-card__publisher:hover{color:var(--color-main);text-decoration:underline}.ihabdevteam-core-scope .training-card__description{color:var(--color-gray);margin:0;min-height:1.55em;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card__body{display:flex;flex:1;flex-direction:column;gap:8px;justify-content:flex-end}.ihabdevteam-core-scope .training-card__empty{color:var(--color-lightGray)}.ihabdevteam-core-scope .training-card__types{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.ihabdevteam-core-scope .training-card__types .button{min-width:0;padding-inline:12px}.ihabdevteam-core-scope .training-card__type{background:color-mix(in srgb,var(--badge-color,var(--color-main)) 10%,transparent);border:1px solid color-mix(in srgb,var(--badge-color,var(--color-main)) 25%,transparent);border-radius:var(--radius-full);color:var(--badge-color,var(--color-main));display:inline-block;font-size:11px;font-weight:600;padding:2px 8px}.ihabdevteam-core-scope .training-card__tags{display:flex;flex-wrap:wrap;gap:5px}.ihabdevteam-core-scope .training-card__tag{color:var(--color-main);font-size:11px}.ihabdevteam-core-scope .training-card__words{align-content:flex-start;display:flex;flex-wrap:wrap;gap:4px}.ihabdevteam-core-scope .training-card__word{background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-full);color:var(--color-darkGray);display:inline-block;font-size:11px;padding:2px 8px;white-space:nowrap}.ihabdevteam-core-scope .training-card__footer{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:space-between;padding-top:8px}.ihabdevteam-core-scope .training-card__footer-left{align-items:center;display:flex;gap:6px;min-width:0}.ihabdevteam-core-scope .training-card__date{color:var(--color-gray);font-size:11px;white-space:nowrap}.ihabdevteam-core-scope .training-card__meta{align-items:center;display:flex;gap:4px}.ihabdevteam-core-scope .training-card__count{align-items:center;color:var(--color-lightGray);display:inline-flex;font-size:11px;gap:3px;white-space:nowrap}";Q(D7);function ng({title:e,description:t,topActions:a,children:r,footerLeft:n,footerRight:i,onClick:s,draggable:c,onDragStart:u,onDragEnd:d,className:m}){const h=n!=null||i!=null,p=r!=null&&r!==!1,g=l.useCallback(v=>{s&&v.target===v.currentTarget&&(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),s())},[s]);return o.jsxs("div",{className:ye("training-card",s?"training-card--clickable":"",m),onClick:s,onKeyDown:s?g:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,draggable:c,onDragStart:u,onDragEnd:d,children:[o.jsxs("div",{className:"training-card__header",children:[o.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?o.jsx("h3",{className:"training-card__title h4",children:e}):e,a!=null&&o.jsx("div",{className:"training-card__top-actions",onClick:v=>v.stopPropagation(),children:a})]}),t!=null?typeof t=="string"?o.jsx("p",{className:"training-card__description body-3",children:t}):t:o.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),p&&o.jsx("div",{className:"training-card__body",children:r}),h&&o.jsxs("div",{className:"training-card__footer",children:[n!=null&&o.jsx("div",{className:"training-card__footer-left",children:n}),i!=null&&o.jsx("div",{className:"training-card__meta",children:i})]})]})}var E7=".ihabdevteam-core-scope .training-card-group{background:var(--color-darkWhite);border:1px solid var(--color-darkWhite);border-radius:var(--radius-card);overflow:hidden;transition:border-color .15s,box-shadow .15s}.ihabdevteam-core-scope .training-card-group--dragover{border-color:var(--color-main);box-shadow:0 0 0 2px var(--color-main-a10)}.ihabdevteam-core-scope .training-card-group__header{align-items:center;cursor:pointer;display:flex;gap:8px;height:60px;padding:0 12px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .training-card-group__chevron{flex-shrink:0}.ihabdevteam-core-scope .training-card-group__title{color:var(--color-black);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card-group__count{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .training-card-group__actions{align-items:center;display:flex;flex-shrink:0;gap:8px;margin-left:auto}.ihabdevteam-core-scope .training-card-group__empty{color:var(--color-lightGray);padding:24px 16px;text-align:center}.ihabdevteam-core-scope .training-card-group__grid{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;padding:0 12px 12px}.ihabdevteam-core-scope .training-card-group__grid>*{min-width:0}";Q(E7);function ig({title:e,count:t,collapsed:a=!1,onToggle:r,sort:n,actions:i,empty:s=!1,emptyContent:c,dragOver:u=!1,onDragOver:d,onDragLeave:m,onDrop:h,children:p,className:g}){const{t:v}=me.useTranslation(),b=ye("training-card-group",u&&"training-card-group--dragover",a&&"training-card-group--collapsed",g);return o.jsxs("div",{className:b,onDragOver:d,onDragLeave:m,onDrop:h,children:[o.jsxs("header",{className:"training-card-group__header",children:[o.jsx(le,{size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:a?"chevron-right":"chevron-down",ariaLabel:a?v("common.expand","\uD3BC\uCE58\uAE30"):v("common.collapse","\uC811\uAE30"),className:"training-card-group__chevron",onClick:r}),typeof e=="string"?o.jsx("span",{className:"training-card-group__title h5b",children:e}):e,t!==void 0&&o.jsx("span",{className:"training-card-group__count body-3b",children:t}),(n||i!=null)&&o.jsxs("span",{className:"training-card-group__actions",onClick:y=>y.stopPropagation(),children:[n&&o.jsx(Ut,{size:40,options:n.options,value:n.value,placeholder:n.placeholder,onChange:n.onChange}),i]})]}),!a&&(s?o.jsx("div",{className:"training-card-group__empty body-3",children:c}):o.jsx("div",{className:"training-card-group__grid",children:p}))]})}var j7=".ihabdevteam-core-scope .word-table-block__meta{background:transparent}.ihabdevteam-core-scope .word-table-block__actions{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:space-between}.ihabdevteam-core-scope .word-table-block__actions-left,.ihabdevteam-core-scope .word-table-block__actions-right{display:flex;gap:var(--spacing-xs)}@media (max-width:767px){.ihabdevteam-core-scope .word-table-block__actions{align-items:stretch;flex-direction:column}.ihabdevteam-core-scope .word-table-block__actions-left,.ihabdevteam-core-scope .word-table-block__actions-right{display:grid;grid-template-columns:repeat(2,1fr)}.ihabdevteam-core-scope .word-table-block__actions .button{min-width:0;width:100%}}.ihabdevteam-core-scope .my-word-table-preview-popup .popup-panel{max-width:none;width:min(1400px,94vw)}.ihabdevteam-core-scope .my-word-table-preview-popup .popup-body{overflow:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .word-table-block__pages{display:flex;flex-direction:column;gap:24px;gap:var(--spacing-content,24px)}@media print{.ihabdevteam-core-scope .word-table-block>.filter-panel,.ihabdevteam-core-scope .word-table-block>.section__header,.ihabdevteam-core-scope .word-table-block__actions{display:none}.ihabdevteam-core-scope .word-table-block__pages .word-table{-moz-column-break-after:page;break-after:page;page-break-after:always;position:static}.ihabdevteam-core-scope .word-table-block__pages .word-table:last-child{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}}";Q(j7);const L7="speechear:saved_word_tables";function M7(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&Array.isArray(t.items)}function P7(){try{const e=localStorage.getItem(L7);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(M7):[]}catch{return[]}}function sg({title:e,titleIcon:t,disc:a,items:r,onSaveComplete:n,onLoad:i,onRemoveItem:s,onReset:c,resetLabel:u,saveButtonLabel:d,secondarySaveButtonLabel:m,onReorder:h,showCellCount:p,onAddItem:g,className:v,renderSavePopup:b,renderWordSearch:y,hideControls:f,saveOnly:x,tableName:_,nameValue:C,onNameChange:A,descriptionValue:w,onDescriptionChange:S,namePlaceholder:D,descriptionPlaceholder:T,existingNames:E,editingName:W,onCancel:M}){const{t:k}=me.useTranslation(),N=u??k("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),j=r===void 0,F=!!A,[te,Z]=l.useState([]),ee=(C??"").trim(),L=ee||(D??"").trim(),R=(w??"").trim()||(T??"").trim(),O=(E??[]).map(de=>de.trim().toLowerCase()),H=[W?.trim().toLowerCase(),...te].filter(de=>!!de),$=[...O];for(const de of H){const Te=$.indexOf(de);Te!==-1&&$.splice(Te,1)}const q=ee!==""&&$.includes(ee.toLowerCase()),[I,G]=l.useState(Array(4).fill(null)),[z,Y]=l.useState(4),[J,ue]=l.useState(null),[pe,ae]=l.useState("landscape"),[X,ce]=l.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[xe,Se]=l.useState("\uD45C\uC2DC"),[Ae,P]=l.useState(!0),[oe,re]=l.useState(!0),Ce=l.useRef(null),De=l.useRef([]),[Ie,Oe]=l.useState(8),[Fe,Qe]=l.useState("right"),[Re,Ge]=l.useState(!1),[We,be]=l.useState(!1),{toastMessage:at,toastType:He,showWarning:Le,clearToast:Ue}=un("warning"),Dt=l.useCallback(()=>ue(null),[ue]),[Ke,Ye]=l.useState(()=>Math.max(r?.length??1,1));l.useEffect(()=>{j||Ye(de=>Math.max(de,r?.length??1))},[r?.length,j]);const ut=j?z:p?Math.max(Ke,r?.length??1):Math.max(r?.length??0,1),{width:je,height:rt}=no[pe],Je=!j&&!p,$e=r?.length??0,Ze=Math.min(Ie,Math.max($e,1)),et=Je?Ze:ut,yt=Je?Sm(r??[],et):null,Et=!!yt&&yt.length>1,it=j?I.some(de=>de!==null&&de.length>1):(r??[]).some(de=>de.words.length>1),Ht=_?.trim()||`${Yr(Gr())} ${it?k("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):k("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,mt=l.useCallback(()=>Et?De.current.filter(de=>de!==null):Ce.current?[Ce.current]:[],[Et]),{print:Vt,openNewWindow:ia,downloadHtml:Gt}=An({getElements:mt,paperW:je,paperH:rt,fileName:Ht,onPopupBlocked:()=>{Le(k("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}}),Ea=de=>{Y(de),G(Te=>{const tt=Array(de).fill(null);return Te.slice(0,de).forEach((xt,Ct)=>{tt[Ct]=xt}),tt}),ue(null)},sa=de=>{G(Te=>{const tt=[...Te];return tt[de]=null,tt}),J===de&&ue(null)},Kt=de=>{if(J===null)return;const Te=J;G(xt=>{const Ct=[...xt];return Ct[Te]=de,Ct});const tt=I.findIndex((xt,Ct)=>Ct>Te&&xt===null);ue(tt!==-1?tt:null)},ja=j?I.some(de=>de?.some(Te=>!!Te.colloquialPronunciation)):(r??[]).some(de=>de.words.some(Te=>!!Te.colloquialLabel)),jt=l.useMemo(()=>Ma()?j?I.flatMap(de=>(de??[]).map(Te=>[Te.word,Te.homonum])):(r??[]).flatMap(de=>de.words.map(Te=>[Te.label,Te.homonum])):[],[j,I,r]),[Ga,$t]=l.useState(!1);l.useEffect(()=>{if(jt.length===0)return;let de=!1;return Promise.all(jt.map(([Te,tt])=>qo(Te,tt))).then(Te=>{de||$t(Te.some(Boolean))}),()=>{de=!0}},[jt]);const ya=jt.length>0&&Ga,qa=l.useMemo(()=>[...j||p?[{label:k("wordTable.filter.columns","\uCE78 \uC218"),items:sk.map(de=>({value:`${de}\uCE78`,displayLabel:k("wordTable.filter.column",{count:de})})),display:"segmented"}]:[],...Je&&(r?.length??0)>0?[Lm(k,{hasPairs:it,itemCount:$e})]:[],...Et?[Mm(k)]:[]],[k,j,p,Je,r?.length,it,$e,Et]),Xe={...j||p?{[k("wordTable.filter.columns","\uCE78 \uC218")]:`${j?z:Ke}\uCE78`}:{},...Je&&(r?.length??0)>0?{[k(it?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${Ze}\uAC1C`}:{},...Et?{[k("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Pm[Fe]}:{}},zt=(de,Te)=>{Te===k("wordTable.filter.columns","\uCE78 \uC218")?j?Ea(parseInt(de)):Ye(parseInt(de)):Te===k(it?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")?Oe(parseInt(de)):Te===k("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&Qe(Rm(de))},wt=j?I.filter(de=>de!==null).map(de=>({id:de[0].word,words:de.map(Te=>({label:Te.word,subLabel:Te.pronunciation,homonum:Te.homonum}))})):r??[],xa=(de=!1)=>{if(be(de),F&&n){const Te=L.trim().toLowerCase();Te&&Z(tt=>tt.includes(Te)?tt:[...tt,Te]),n(L,wt,R||void 0,de);return}if(x&&n){n("",wt,void 0,de);return}if(n){Ge(!0);return}Gt()},[la,ne]=l.useState(!1),[ge,fe]=l.useState(""),U=ge.trim(),ie=U!==""&&O.includes(U.toLowerCase()),ve=()=>{fe(L?`${L} (\uBCF5\uC0AC)`:""),ne(!0)},we=()=>{!U||ie||!n||(n(U,wt,R||void 0,!0),ne(!1))},ke=wt.length===0,Me=ke||F&&(L===""||q),nt=()=>{if(ke){Le(k("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(F&&L===""){Le(k("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}F&&q&&Le(k("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},ct=o.jsx(io,{items:wt,orientation:pe,contentTypes:X,cutLine:xe,showOutline:Ae,showDivLine:oe,count:ut});return o.jsxs(o.Fragment,{children:[o.jsxs(ro,{type:"page",icon:t,title:e,disc:a,className:ye("word-table-block",v),children:[la&&o.jsx(Ta,{size:"small",title:m??k("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>ne(!1),footer:({closeWithAnimation:de})=>o.jsxs(o.Fragment,{children:[o.jsx(le,{size:48,type:"bar",label:k("common.cancel","\uCDE8\uC18C"),onClick:de}),o.jsx(le,{size:48,type:"bar",variant:"main",label:k("common.save","\uC800\uC7A5"),disabled:!U||ie,onClick:we})]}),children:o.jsx(Wa,{label:k("wordTable.save.nameLabel","\uC774\uB984"),value:ge,onChange:fe,placeholder:k("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),maxLength:40,size:48,fullWidth:!0,autoFocus:!0,onEnter:we,error:ie?k("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),Re&&n&&b?.({defaultName:typeof e=="string"?e:k("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:ct,previewW:je,previewH:rt,items:wt,existingNames:P7().map(de=>de.name),saveAsNew:We,onSave:(de,Te)=>{n(de,wt,Te,We),Ge(!1)},onCancel:()=>Ge(!1)}),(j||g)&&J!==null&&y?.({cellIndex:J,onConfirm:j?Kt:de=>{if(g){const Te=de[0];Te&&g({id:Te.word,words:[{label:Te.word,subLabel:Te.pronunciation,homonum:Te.homonum}]})}ue(null)},onClose:Dt}),!f&&o.jsx(Sn,{hasImage:ya,hasColloquial:ja,contentTypes:X,orientation:pe,showOutline:Ae,cutLine:xe,showDivLine:oe,setters:{setContentTypes:ce,setOrientation:ae,setShowOutline:P,setCutLine:Se,setShowDivLine:re},showCutLine:(Je?et:ut)>1,showDivLine2:it,middleSections:qa,extraSelected:Xe,onExtraSelect:zt}),Et&&yt?o.jsx("div",{className:"word-table-block__pages",children:yt.map((de,Te)=>o.jsx(io,{orientation:pe,contentTypes:X,cutLine:xe,showOutline:Ae,showDivLine:oe,count:et,items:de,onRemoveItem:s,contentRef:tt=>{De.current[Te]=tt},pageNumber:{current:Te+1,total:yt.length},pageNumberPosition:Fe},Te))}):o.jsx(io,{orientation:pe,contentTypes:X,cutLine:xe,showOutline:Ae,showDivLine:oe,count:ut,items:j?void 0:r??[],editCells:j?I:void 0,activeCell:J,onActivateCell:j||g?ue:void 0,onRemoveCell:j?sa:void 0,onRemoveItem:j?void 0:s,onReorder:j?void 0:h,showFillerAdd:!!g,contentRef:Ce}),F&&!f&&o.jsxs(Cr,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[o.jsx(Na,{variant:"custom",label:k("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:o.jsx(Wa,{required:!0,value:C??"",onChange:A,placeholder:D?D+k("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):k("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:k("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:q?k("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:de=>{(de.key==="Tab"&&!de.shiftKey||de.key===" ")&&!(C??"").trim()&&(D??"").trim()&&(de.preventDefault(),A?.(D??""))}})}),o.jsx(Na,{variant:"custom",label:k("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:o.jsx(Wa,{value:w??"",onChange:S,placeholder:T?T+k("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):k("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:k("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:de=>{(de.key==="Tab"&&!de.shiftKey||de.key===" ")&&!(w??"").trim()&&(T??"").trim()&&(de.preventDefault(),S?.(T??""))}})})]})]}),!f&&o.jsxs("div",{className:"word-table-block__actions",children:[o.jsxs("div",{className:"word-table-block__actions-left",children:[!x&&c&&o.jsx(le,{size:40,type:"bar",label:N,onClick:c}),!x&&i&&o.jsx(le,{size:40,type:"bar",label:k("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:i}),!x&&o.jsx(le,{size:40,type:"bar",label:k("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:ia})]}),o.jsxs("div",{className:"word-table-block__actions-right",children:[M&&o.jsx(le,{size:"56",type:"bar",label:k("common.cancel","\uCDE8\uC18C"),onClick:M}),!x&&o.jsx(le,{size:"56",type:"bar",label:k("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:Vt}),m&&o.jsx(le,{size:"56",type:"bar",label:m,onClick:()=>F?ve():xa(!0),disabled:ke,onDisabledClick:()=>{Le(k("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),o.jsx(le,{size:"56",type:"bar",variant:"main",label:d??k("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>xa(!1),disabled:Me,onDisabledClick:nt})]})]}),o.jsx(oo,{message:at,type:He,onClose:Ue})]})}var R7=".ihabdevteam-core-scope .word-table-thumb{grid-gap:1px;background:var(--color-darkWhite);border-bottom:1px solid var(--color-darkWhite);display:grid;gap:1px;grid-auto-rows:minmax(min-content,1fr);height:140px;overflow:hidden}.ihabdevteam-core-scope .word-table-thumb__cell{align-items:center;background:var(--color-white);display:flex;flex-direction:column;gap:1px;justify-content:center;min-height:0;overflow:hidden;padding:4px}.ihabdevteam-core-scope .word-table-thumb__word{color:var(--color-black)}.ihabdevteam-core-scope .word-table-thumb .word-table-thumb__word{line-height:1.2}.ihabdevteam-core-scope .word-table-thumb__divider{background:var(--color-darkWhite);display:block;height:1px;margin:1px 0;width:30%}";Q(R7);function Ec({items:e,className:t}){const a=e.length,r=a<=3?1:2,n=Math.ceil(a/r)||1,i=r*n;return o.jsx("div",{className:ye("word-table-thumb",t),style:{gridTemplateColumns:`repeat(${r}, 1fr)`},children:Array.from({length:i},(s,c)=>{const u=e[c];return u?o.jsx("div",{className:"word-table-thumb__cell",children:(u.words.length?u.words:[{label:u.id}]).map((d,m)=>o.jsxs(l.Fragment,{children:[m>0&&o.jsx("span",{className:"word-table-thumb__divider"}),o.jsx("span",{className:"word-table-thumb__word body-3",children:d.label})]},m))},c):o.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},c)})})}var $7=".ihabdevteam-core-scope .word-table-button{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:8px;border-radius:var(--radius-s,8px);box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:border-color .15s,box-shadow .15s;width:240px}.ihabdevteam-core-scope .word-table-button:hover{border-color:var(--color-main);box-shadow:0 2px 10px rgba(0,0,0,.06)}.ihabdevteam-core-scope .word-table-button:focus-visible{outline:2px solid var(--color-main);outline-offset:1px}.ihabdevteam-core-scope .word-table-button--selected{border-color:var(--color-main);box-shadow:0 0 0 1px var(--color-main) inset}.ihabdevteam-core-scope .word-table-button__thumb{flex:0 0 auto;height:290px}.ihabdevteam-core-scope .word-table-button__info{align-items:flex-start;display:flex;flex-direction:row;gap:8px;min-width:0;padding:12px 14px 0;position:relative}.ihabdevteam-core-scope .word-table-button__more{position:absolute;right:10px;top:8px}.ihabdevteam-core-scope .word-table-button__title{padding-right:34px}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__info{flex:1 1 auto;min-height:0}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__info-text{align-self:stretch}.ihabdevteam-core-scope .word-table-button__info-text{align-items:flex-start;display:flex;flex:1 1 auto;flex-direction:column;gap:4px;min-width:0;text-align:left}.ihabdevteam-core-scope .word-table-button__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-black);display:-webkit-box;overflow:hidden;overflow-wrap:anywhere}.ihabdevteam-core-scope .word-table-button__desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-gray);display:-webkit-box;overflow:hidden}.ihabdevteam-core-scope .word-table-button__meta{color:var(--color-gray)}.ihabdevteam-core-scope .word-table-button__meta-row{align-items:center;display:flex;gap:8px;justify-content:space-between;min-width:0;padding:12px 14px 14px}.ihabdevteam-core-scope .word-table-button__badges{align-items:center;display:flex;flex:0 0 auto;gap:4px}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__meta-row{margin-top:auto}.ihabdevteam-core-scope .word-table-button__footer{display:flex;flex-direction:column;gap:8px;margin-top:auto;min-width:0;padding:12px 14px 14px}.ihabdevteam-core-scope .word-table-button__store-by{align-items:center;display:inline-flex;gap:6px;min-width:0;overflow:hidden}.ihabdevteam-core-scope .word-table-button__store-by .training-card__date{white-space:nowrap}.ihabdevteam-core-scope .word-table-button__store-stats{align-items:center;align-self:flex-end;display:inline-flex;gap:4px}.ihabdevteam-core-scope .word-table-button__more{flex:0 0 auto}.ihabdevteam-core-scope .word-table-button__badge{pointer-events:none}.ihabdevteam-core-scope .word-table-button__new-dot{background:var(--color-main);border-radius:50%;box-shadow:0 0 0 2px var(--color-white);height:10px;pointer-events:none;position:absolute;right:8px;top:8px;width:10px;z-index:3}";Q($7);function lg({items:e,name:t,description:a,createdAt:r,published:n,publishedLabel:i,shared:s,sharedLabel:c,isNew:u,publisherName:d,publishedAt:m,likeCount:h,downloadCount:p,onPublisherClick:g,selected:v,onClick:b,onMore:y,titleNode:f,className:x}){const{t:_}=me.useTranslation(),C=f!=null,A=d!=null||m!=null||h!=null||p!=null,w=S=>{!C&&(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),b?.())};return o.jsxs("div",{className:ye("word-table-button",v?"word-table-button--selected":"",A?"":"word-table-button--no-footer",x),role:"button",tabIndex:0,"aria-label":t,onClick:C?void 0:b,onKeyDown:w,children:[u&&o.jsx("span",{className:"word-table-button__new-dot","aria-label":_("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),o.jsx(Ec,{items:e,className:"word-table-button__thumb"}),o.jsxs("div",{className:"word-table-button__info",children:[o.jsxs("div",{className:"word-table-button__info-text",children:[f??o.jsx("div",{className:"word-table-button__title h4",children:t}),a&&o.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),y&&!C&&o.jsx(le,{className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:_("common.moreFor",{name:t}),onClick:S=>{S.stopPropagation(),y(S)}})]}),(r||n||s)&&o.jsxs("div",{className:"word-table-button__meta-row",children:[o.jsx("span",{className:"word-table-button__meta caption-1",children:r?qr(r,_):""}),o.jsxs("span",{className:"word-table-button__badges",children:[n&&o.jsx(ht,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:i??"\uBC1C\uD589\uB428"}),s&&o.jsx(ht,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:c??"\uACF5\uC720 \uC911"})]})]}),A&&o.jsxs("div",{className:"word-table-button__footer",children:[o.jsxs("span",{className:"word-table-button__store-by",children:[d&&o.jsx("button",{className:"training-card__publisher body-4",type:"button",onClick:S=>{S.stopPropagation(),g?.()},children:d}),m&&o.jsx("span",{className:"training-card__date body-4",children:qr(m,_)})]}),o.jsxs("span",{className:"word-table-button__store-stats",children:[h!=null&&o.jsx(ht,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(h)}),p!=null&&o.jsx(ht,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(p)})]})]})]})}/**
968
+ \uC804\uB2EC\uD558\uBBC0\uB85C(\uCF54\uB4DC \uD655\uC778\uB428) \uBAA8\uBC14\uC77C\uC5D0\uC11C \uC790\uC5F0 \uD3ED\uC73C\uB85C \uB418\uB3CC\uB9AC\uB824\uBA74 \uD2B9\uC774\uB3C4\uB85C\uB294 \uBD80\uC871. */.ihabdevteam-core-scope .trp-row__judge .badge{min-width:0!important;min-width:auto!important}.ihabdevteam-core-scope .result-table--answer .trp-row__judge .badge{height:26px;padding:0 12px}}`;Q(s7);function Sc(...e){for(const t of e)if(typeof t=="string"){const a=t.trim();if(a.length)return a}else{if(typeof t=="number"||typeof t=="boolean")return String(t);if(Array.isArray(t)&&t.length)return t.join(", ");if(t&&typeof t=="object"){const a=t,r=[a.text,a.label,a.value];for(const n of r){if(typeof n=="string"&&n.trim().length)return n.trim();if(typeof n=="number"||typeof n=="boolean")return String(n)}}}return null}function l7(e){return Sc(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function Rb(e){if(!e)return;if(typeof e.decision=="boolean")return e.decision;if(typeof e.correct=="boolean")return e.correct;if(typeof e.heard=="boolean")return e.heard;if(typeof e.judgement=="boolean")return e.judgement;const t=Sc(e?.status,e?.result,e?.judge,e?.note);if(t){const a=t.toLowerCase();if(["ok","true","\uB9DE\uC74C","\uC815\uB2F5"].some(r=>a.includes(r)))return!0;if(["ng","false","\uD2C0\uB9BC","\uC624\uB2F5"].some(r=>a.includes(r)))return!1}}function Ac(e){const{score:t,contextsLength:a,results:r=[],subtitle:n,onReplay:i,onClose:s,inline:c=!1}=e||{},{t:u}=me.useTranslation();l.useEffect(()=>{const b=a??0;t!=null&&b>0&&t/b>.5&&window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},[t,a]);const d=l.useCallback(b=>{const y=Rb(b),f=Sc(b?.wording,b?.label);return y===!0?{variant:"main",label:f??u("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:y===!1?{variant:"danger",label:f??u("training.result.notHeard","\uBABB \uB4E4\uC5C8\uC5B4\uC694")}:{variant:"disabled",label:f??u("training.result.notJudged","\uBBF8\uD310\uC815")}},[u]),m=a??0,h=t??0,p=l.useMemo(()=>Array.isArray(r)?r:[],[r]),g=l.useMemo(()=>p.map(b=>{const y=b??{},f=l7(y)||"(\uB0B4\uC6A9\uC5C6\uC74C)",{variant:x,label:_}=d(y),C=Array.isArray(y.corrects)?y.corrects:[],A=C.length?C.join(", "):y.answer!=null&&y.answer!==""?String(y.answer):null,w=typeof y.selectedText=="string"?y.selectedText:null,S=Rb(y)===!0;return{problem:f,variant:x,label:_,answer:A,selectedText:w,isCorrect:S}}),[p,d]),v=l.useMemo(()=>g.some(b=>b.answer!==null||b.selectedText!==null),[g]);return o.jsx(Ta,{onClose:s,inline:c,ariaLabel:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4."),className:"popup--training-result",footerClassName:"trp-result__foot",footer:({animateThen:b,closeWithAnimation:y})=>o.jsxs("div",{className:"trp-actions",children:[o.jsx(ce,{size:56,type:"bar",label:u("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>b(i)}),o.jsx(ce,{size:56,type:"bar",label:u("training.result.done","\uC644\uB8CC"),variant:"main",onClick:y})]}),children:()=>o.jsxs("div",{className:"trp-result is-on",children:[o.jsxs("header",{className:"trp-result__head",children:[o.jsx("p",{className:"trp-result__eyebrow caption-1",children:u("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),o.jsx("h1",{className:"trp-result__title h2",children:u("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),n&&o.jsx("p",{className:"trp-result__subtitle body-3",children:n}),o.jsx("div",{className:"trp-score",children:o.jsxs("div",{className:"trp-score__figure","aria-label":u("training.result.scoreAria",{correct:h,total:m}),children:[o.jsx("span",{className:"trp-score__big",children:h}),o.jsx("span",{className:"trp-score__sep",children:"/"}),o.jsx("span",{className:"trp-score__total",children:m})]})})]}),g.length>0&&o.jsx("section",{className:"trp-result__body",children:o.jsxs("div",{className:`result-table${v?" result-table--answer":""}`,role:"table","aria-label":u("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[o.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[o.jsx("span",{role:"columnheader",children:u("training.result.colProblem","\uBB38\uC81C")}),v&&o.jsx("span",{role:"columnheader",children:u("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),o.jsx("span",{className:"col-right",role:"columnheader",children:u("training.result.colJudge","\uD310\uC815")})]}),g.map((b,y)=>o.jsxs("div",{className:"result-table__row",role:"row",children:[o.jsxs("div",{className:"trp-row__problem",children:[o.jsx("span",{className:"trp-row__no caption-1",children:String(y+1).padStart(2,"0")}),o.jsx("div",{className:"trp-row__q body-2",children:b.problem})]}),v&&o.jsxs("div",{className:"trp-row__answers",children:[b.answer!==null&&o.jsxs("div",{className:"trp-row__answer-line",children:[o.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:u("training.result.colAnswer","\uC815\uB2F5")}),o.jsx("span",{className:"trp-row__answer-value body-2",children:b.answer})]}),o.jsxs("div",{className:"trp-row__answer-line",children:[o.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${b.isCorrect?"is-correct":"is-wrong"}`,children:u("training.result.colSelected","\uC120\uD0DD")}),o.jsx("span",{className:`trp-row__answer-value body-2 ${b.isCorrect?"is-correct":"is-wrong"}`,children:b.selectedText??"\u2014"})]})]}),o.jsx("div",{className:"trp-row__judge",children:o.jsx(ht,{variant:b.variant,label:b.label,fill:"soft",minWidth:80})})]},y))]})})]})})}function c7(e){l.useEffect(()=>{if(!e)return;const t=new Date;return()=>{const a=new Date;a.getTime()-t.getTime()<5e3||Ki({trainingType:e,startedAt:t.toISOString(),endedAt:a.toISOString()})}},[e])}function Tc(e,t){return e&&e.id||`page-${t??0}`}function Bc(e,t){return e&&e.key||`step-${t??0}`}function Mn(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function d7(e,t){return typeof e?.props=="function"?e.props(t)||{}:e?.props||{}}const $b=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]),u7=e=>o.jsx(Ac,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose}),p7='a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),[tabindex]:not([tabindex="-1"])';function h7(e){const{scenario:t,title:a,subTitle:r,depth:n,icon:i,wrapperStyle:s,iconTooltip:c,pageIndex:u,pageCount:d,stepIndex:m,stepCount:h,onBack:p,onComplete:g,onNext:v,onSettings:b,useNoiseSetting:y=!0,children:f,ariaLabel:x,label:_,buildResults:C,onResult:A,typeKey:w,entryPoint:S,dailyTotal:N,itemRef:T,renderResultPopup:E}=e;c7(w&&!$b.has(w)?w:"");const W=l.useRef(0);l.useEffect(()=>{W.current=Date.now()},[]);const{t:L}=me.useTranslation(),k=A,D=!!t,j=t?.id||null,F=t?.meta||{},ee=Array.isArray(t?.pages)?t.pages:[],Z=Array.isArray(f)||l.isValidElement(f)&&typeof f!="function"?l.Children.toArray(f).filter(l.isValidElement):[],J=Z.length>0,M=ie=>ie===_r||ie?.__isTrainingPage===!0,R=J&&Z.some(ie=>M(ie.type)),z=R?Z.filter(ie=>M(ie.type)).map((ie,ge)=>{const ve=ie.props||{};return{id:`children-page-${ge}`,steps:l.Children.toArray(ve.children).filter(l.isValidElement),pageTop:ve.pageTop||ve.top||null,pageBottom:ve.pageBottom||ve.bottom||null}}):[{id:"children-page-0",steps:Z}],H=J&&!D&&typeof f!="function",$=H?Math.max(1,z.length):0;l.useEffect(()=>{if(!(typeof document>"u"||!document.body)&&!document.body.classList.contains("ihabdevteam-core-scope"))return document.body.classList.add("ihabdevteam-core-scope"),()=>{document.body.classList.remove("ihabdevteam-core-scope")}},[]),l.useEffect(()=>{if(typeof document>"u"||!document.body)return;const ie=document.body;return ie.dataset.ihabTrainingPopupCount=String(Number(ie.dataset.ihabTrainingPopupCount||"0")+1),ie.classList.add("ihab-training-popup-open"),()=>{const ge=Number(ie.dataset.ihabTrainingPopupCount||"1")-1;ge>0?ie.dataset.ihabTrainingPopupCount=String(ge):(delete ie.dataset.ihabTrainingPopupCount,ie.classList.remove("ihab-training-popup-open"))}},[]),l.useEffect(()=>{if(!(typeof document>"u"||!document.body))return q8()},[]);const[q,O]=l.useState({...mb,enabled:!1}),G=l.useRef(q);l.useEffect(()=>{G.current=q},[q]),l.useEffect(()=>{let ie=!1;return es().then(ge=>{if(ie)return;const ve=ge?{...G.current,...ge}:{...mb};G.current=ve,O(ve)}),()=>{ie=!0}},[]);const[I,ne]=l.useState(null),[X,te]=l.useState(null),pe=l.useCallback((ie,ge)=>{ie==="main"?ne(ge):te(ge)},[]),ae=l.useCallback(ie=>{const ge={...G.current,...ie};G.current=ge,O(ge),ts(ge)},[]),Y=q.mainSpeed,de=q.mainVolume,fe=l.useCallback(ie=>ae({mainSpeed:ie}),[ae]),Se=l.useCallback(ie=>ae({mainVolume:ie}),[ae]),Ae=l.useMemo(()=>({settings:q,setSettings:ae,registerAnalyser:pe,mainAnalyser:I,noiseAnalyser:X,playbackRate:Y,setPlaybackRate:fe,mainVolume:de,setMainVolume:Se}),[q,ae,pe,I,X,Y,fe,de,Se]),P=l.useRef(null),[oe,re]=l.useState("center"),[Ce,De]=l.useState(!1),Ie=l.useRef(!1),Oe=l.useRef(null),Fe=l.useCallback(ie=>{Ie.current||(Ie.current=!0,De(!0),Oe.current=setTimeout(ie,Kk))},[]);l.useEffect(()=>()=>{Oe.current&&clearTimeout(Oe.current)},[]),l.useEffect(()=>{const ie=P.current;if(!ie)return;const ge=()=>Array.from(ie.querySelectorAll(p7)).filter(se=>!se.closest('[aria-hidden="true"]')),ve=ge()[0];if(ve)try{ve.focus()}catch{}const U=se=>{if(se.key==="Escape"){se.preventDefault(),Fe(()=>{typeof p=="function"&&p()});return}if(se.key==="Tab"){const ye=ge();if(ye.length===0)return;const we=ye[0],ke=ye[ye.length-1];se.shiftKey?document.activeElement===we&&(se.preventDefault(),ke.focus()):document.activeElement===ke&&(se.preventDefault(),we.focus())}};return ie.addEventListener("keydown",U),()=>ie.removeEventListener("keydown",U)},[p,Fe]);const[Qe,Re]=l.useState(!1),Ge=l.useRef(!1),[We,be]=l.useState(null),[at,He]=l.useState(""),[Le,Ue]=l.useState(()=>Mn()),Dt=l.useRef(typeof u=="number"?u:null);l.useEffect(()=>{!D&&!H||(Ue(Mn()),be(null))},[D,j,H]),l.useEffect(()=>{H&&Ue(ie=>{const ge=Math.max(0,Math.min(ie.pageIndex,Math.max(0,$-1)));return ge!==ie.pageIndex?{...ie,pageIndex:ge,stepIndex:0}:ie})},[H,$]);const Ke=H?Math.max(0,Math.min(Le.pageIndex,$-1)):0,Ye=H?z[Ke]:null,ut=H&&Ye&&Array.isArray(Ye.steps)?Ye.steps:[],je=D?Le.pageIndex:H?Ke:typeof u=="number"?u:0,rt=D?ee[Math.max(0,Math.min(Le.pageIndex,Math.max(0,ee.length-1)))]:null,Je=D&&rt&&Array.isArray(rt.steps)?rt.steps:[],$e=D?Je.length:H?ut.length:typeof h=="number"?h:0,Ze=D||H?Math.max(0,Math.min(Le.stepIndex,Math.max(0,$e))):typeof m=="number"?m:0,et=D?ee.length:H?$:typeof d=="number"?d:0;l.useLayoutEffect(()=>{const ie=Dt.current;if(typeof je=="number"&&ie!==null&&je!==ie&&je>ie)try{He(L("training.problemNotice",{n:je+1}))}catch{}Dt.current=typeof je=="number"?je:Dt.current},[je,u,L]),l.useLayoutEffect(()=>{const ie=P.current;if(!ie)return;const ge=()=>ie.querySelector(".page-popup__scroll");let ve=null,U=null,se=null;const ye=ct=>{const ue=ge();if(!ue)return;const Te=ue.scrollHeight<=ue.clientHeight;if(re(Te?"center":"top"),ct&&!Ge.current){Ge.current=!0;try{Re(!0)}catch{}try{Me.disconnect()}catch{}}},we=()=>{ve!==null&&cancelAnimationFrame(ve),ve=requestAnimationFrame(()=>{U!==null&&clearTimeout(U),U=setTimeout(()=>ye(!0),60)})},ke=()=>{se!==null&&cancelAnimationFrame(se),se=requestAnimationFrame(()=>ye(!1))};we(),window.addEventListener("resize",ke);const Me=new MutationObserver(we);Me.observe(ie,{childList:!0,subtree:!0,attributes:!0});const nt=setTimeout(()=>{Ge.current||ye(!0)},400);return()=>{window.removeEventListener("resize",ke),ve!==null&&cancelAnimationFrame(ve),U!==null&&clearTimeout(U),se!==null&&cancelAnimationFrame(se),clearTimeout(nt);try{Me.disconnect()}catch{}}},[P]);const yt=l.useCallback(ie=>{P.current&&(P.current._childOnNext=ie)},[]),Et=l.useCallback(ie=>{P.current&&(P.current._childOnResult=ie)},[]),it=l.useCallback((ie,ge,ve)=>{Ue(U=>{const se=U.answersByPage[ie]||{},ye=se[ge],we=Ln(ve),ke=Ln(ye);return ye&&ke>we?U:{...U,answersByPage:{...U.answersByPage,[ie]:{...se,[ge]:ve}}}})},[Ue]),Ht=l.useCallback((ie,ge,ve)=>{const U=Tc(rt,je),se=Bc(ie,ge);it(U,se,ve)},[rt,je,it]),mt=l.useCallback((ie,ge,ve)=>{const U=Tc(rt,je),se=Bc(ie,ge);it(U,se,ve),!ve?.allowChange&&ie?.autoAdvance!==!1&&Ue(ye=>({...ye,stepIndex:Math.max(ye.stepIndex,ge+1)}))},[rt,je,it,Ue]),Vt=l.useCallback((ie,ge)=>{const ve=Ye?.id||`children-page-${je??0}`,U=typeof ge=="number"?ge:Ze??0,se=`step-${U}`;it(ve,se,ie),ie?.allowChange||Ue(ye=>({...ye,stepIndex:Math.max(ye.stepIndex,U+1)}))},[Ye,je,Ze,it,Ue]),ia=l.useCallback((ie,ge)=>{const ve=Ye?.id||`children-page-${je??0}`,U=`step-${typeof ge=="number"?ge:Ze??0}`;it(ve,U,ie)},[Ye,je,Ze,it]),Gt=H?{currentPageIndex:je??0,currentStepIndex:Ze??0,totalStepsInPage:ut.length,handleStepDone:Vt,handleStepChange:ia}:null,Ea=async()=>{const ie=typeof t?.buildResults=="function"?await Promise.resolve(t.buildResults({scenario:t,pages:ee,flowState:Le,answersByPage:Le.answersByPage})):null;return typeof k=="function"&&await Promise.resolve(k(ie))||ie},sa=async()=>{const ie=Ye?.id||`children-page-${Le.pageIndex}`,ge=Le.answersByPage[ie]||{},ve=R?(()=>{const ye={};let we=0;return z.forEach(ke=>{const Me=Le.answersByPage[ke.id]||{},nt=Array.isArray(ke.steps)?ke.steps.length:0;for(let ct=0;ct<nt;ct+=1){const ue=Me[`step-${ct}`];typeof ue<"u"&&(ye[`step-${we+ct}`]=ue)}we+=nt}),ye})():ge;if(typeof C=="function"){const ye=await Promise.resolve(C(ve,{pageAnswers:ge,answersByPage:Le.answersByPage,pages:z,currentPageId:ie}));return typeof k=="function"&&await Promise.resolve(k(ye))||ye}const U=Object.entries(ge).map(([ye,we],ke)=>({index:ke,key:ye,payload:we})),se={results:U,answers:U,score:0};return typeof k=="function"&&await Promise.resolve(k(se))||se},Kt=()=>{try{if(typeof document<"u"&&document.body){try{document.dispatchEvent(new CustomEvent("speechear-close-tooltips"))}catch{}document.dispatchEvent(new PointerEvent("pointerdown",{bubbles:!0,cancelable:!0})),document.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0}))}}catch{}if(D){const ve=Ea();be({});const U=ve;Promise.resolve(U).then(se=>{be(se||{isEmpty:!0})}).catch(se=>{be({isEmpty:!0})});return}if(H){const ve=sa();be({});const U=ve;Promise.resolve(U).then(se=>{be(se||{isEmpty:!0})}).catch(se=>{be({isEmpty:!0})});return}const ie=P.current&&P.current._childOnResult,ge=ve=>{try{return ve?ve():void 0}catch{return}};if(typeof ie=="function"){const ve=ge(ie);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:Yt&&Yt.tagName.toUpperCase()==="SCRIPT"&&Yt.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}ve&&typeof ve.then!="function"?be(ve):be(ve&&typeof ve.then=="function"?{}:{}),Promise.resolve(ve).then(U=>{U&&be(U)}).catch(U=>{});return}if(typeof k=="function"){const ve=ge(k);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:Yt&&Yt.tagName.toUpperCase()==="SCRIPT"&&Yt.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}ve&&typeof ve.then!="function"?be(ve):be(ve&&typeof ve.then=="function"?{}:{}),Promise.resolve(ve).then(U=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:Yt&&Yt.tagName.toUpperCase()==="SCRIPT"&&Yt.src||new URL("ihabdevteam-core.cjs.js",document.baseURI).href}catch{}U&&be(U)}).catch(U=>{console.error("viewResults external handler failed",U)});return}},ja=()=>{if(D){if(typeof je=="number"&&typeof et=="number"&&je<et-1){Ue(ge=>({...ge,pageIndex:ge.pageIndex+1,stepIndex:0}));return}return Kt()}if(H){const ge=ut.length;if(typeof Ze=="number"&&Ze<ge-1){Ue(ve=>({...ve,stepIndex:ve.stepIndex+1}));return}if(typeof je=="number"&&typeof et=="number"&&je<et-1){Ue(ve=>({...ve,pageIndex:ve.pageIndex+1,stepIndex:0}));return}return Kt()}if(typeof v=="function"){try{v()}catch{}return}const ie=P.current&&P.current._childOnNext;if(typeof ie=="function"){try{ie()}catch{}return}},jt=D?F.title||F.label||x||L("common.popup","\uD31D\uC5C5"):a||_||(Array.isArray(n)?n[n.length-1]:void 0)||x||L("common.popup","\uD31D\uC5C5"),Ga=D?F.title??F.label??jt:a??_??jt,$t=(ie,ge)=>{const ve=Tc(rt,je),U=Bc(ie,ge),se=Le.answersByPage[ve]?.[U],ye=d7(ie,{page:rt,pageIndex:je,step:ie,stepIndex:ge,storedPayload:se,answersByPage:Le.answersByPage,flowState:Le}),we={key:U,index:ge,stepIndex:Ze,isLast:ge===Je.length-1};switch(ie?.type){case"listen":return o.jsx(En,{...we,...ye,onDone:ke=>mt(ie,ge,ke)});case"confirm":return o.jsx(Nn,{...we,...ye,onDone:ke=>mt(ie,ge,ke),onChange:ke=>Ht(ie,ge,ke)});case"confirmWithText":return o.jsx(Dn,{...we,...ye,onDone:ke=>mt(ie,ge,ke),onChange:ke=>Ht(ie,ge,ke)});case"orderList":return o.jsx(jn,{...we,...ye,onDone:ke=>mt(ie,ge,ke),onChange:ke=>Ht(ie,ge,ke)});default:return null}},ya=D?ee.length>0?o.jsx("div",{className:"training-steps",children:Je.map((ie,ge)=>$t(ie,ge))}):o.jsx("div",{className:"page-popup__content page-popup__content--center",children:o.jsx("div",{className:"pp-empty",children:t?.emptyMessage||L("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,qa=H?o.jsxs(Pb.Provider,{value:Gt,children:[Ye?.pageTop?o.jsx("div",{className:"training-page-top",children:Ye.pageTop}):null,o.jsx("div",{className:"training-steps",children:ut.map((ie,ge)=>{const ve=ie;return l.cloneElement(ve,{...ve.props,_stepIndex:ge,_totalSteps:ut.length,_stepKey:`step-${ge}`,_pageIndex:je})})}),Ye?.pageBottom?o.jsx("div",{className:"training-page-bottom",children:Ye.pageBottom}):null]}):null,Xe=l.useCallback(()=>{let ie;if(w){const ge=We,ve=ge?.results||ge?.answers||[],U=Array.isArray(ve)&&ve.length>0?ve.length:null,se=Array.isArray(ve)?ve.filter(we=>we?.correct===!0||we?.isCorrect===!0||we?.score===1||we?.heard===!0||we?.judgement===!0).length:null,ye=U!=null?se:null;Zi({items:Qi(ve),category:$b.has(w)?"sentence":"word",trainingType:w,entryPoint:S??"sentence",itemRef:T??null,correct:ye,total:U,score:typeof ge?.score=="number"?ge.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-W.current)/1e3)),dailyTotal:N??null}),ie={correct:ye,total:U}}be(null),Fe(()=>{typeof g=="function"&&g(ie),typeof p=="function"&&p()})},[g,p,w,S,N,T,We,be,Fe]),zt=l.useCallback(()=>He(""),[He]),wt=l.useCallback(()=>{Fe(()=>{typeof p=="function"&&p()})},[p,Fe]),xa=o.jsxs("div",{className:`page-popup${Ce?" page-popup--closing":""}`,role:"dialog","aria-label":jt,children:[o.jsxs("div",{ref:P,className:`page-popup__panel ${Qe?"":"page-popup__panel--measuring"} ${oe==="center"?"page-popup__panel--center":oe==="top"?"page-popup__panel--top":""}`,"aria-modal":"true",children:[o.jsx(fc,{title:Ga,subtitle:D?F.subtitle||F.label:Array.isArray(n)?n.join(" / "):void 0,desc:D?void 0:r,depth:D?F.depth:n,icon:D?F.icon:i,wrapperStyle:D?F.wrapperStyle:s,iconTooltip:D?F.iconTooltip:c,progressMax:et,progressIndex:je,pageIndex:je,pageCount:et,onBack:wt,onClose:wt}),o.jsx("div",{className:"page-popup__scroll",children:o.jsx("div",{className:`page-popup__content ${oe==="center"?"page-popup__content--center":"page-popup__content--top"}`,children:H?qa:D?ya:typeof f=="function"?f({registerOnNext:yt,registerOnResult:Et,panelRef:P,setResultOverlay:be}):f})}),o.jsx(gc,{onSettings:b,onNext:ja,onResult:Kt,useNoiseSettingBtn:!!(D?F.useNoiseSetting??!0:y),stepIndex:Ze,stepCount:$e,pageIndex:je,pageCount:et})]}),We&&!We.isEmpty&&(E??u7)({score:We.score,results:We.results||We.answers||[],contextsLength:We.results?We.results.length:We.answers?We.answers.length:0,onReplay:()=>{if(be(null),D){if(Ue(Mn()),typeof t?.onReplay=="function")try{t.onReplay()}catch{}return}if(H){Ue(Mn());return}try{const ie=P.current&&P.current._childOnResult;typeof ie=="function"&&ie({replay:!0})}catch{}},onClose:Xe}),We?.isEmpty&&o.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-label":L("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:o.jsxs("div",{className:"page-popup__panel page-popup__panel--center","aria-modal":"true",children:[o.jsx("div",{className:"page-popup__scroll",children:o.jsx("div",{className:"page-popup__content page-popup__content--center",children:o.jsx("div",{className:"page-popup__empty",children:L("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),o.jsx("div",{className:"page-popup__bottom",children:o.jsx(ce,{variant:"main",size:48,onClick:Xe,label:L("training.result.done","\uC644\uB8CC")})})]})}),o.jsx(oo,{message:at,position:"top",onClose:zt})]}),la=o.jsx(bb.Provider,{value:Ae,children:xa});return typeof document<"u"&&document.body?qt.createPortal(la,document.body):la}const Da=h7;Da.Page=_r,Da.ListenStep=xc,Da.ConfirmStep=Cc,Da.ConfirmWithTextStep=_c,Da.OrderListStep=wc,Da.CardStep=kc,Da.CardOrderStep=i7;var m7=".ihabdevteam-core-scope .word-search-result-block__actions{display:flex;gap:var(--spacing-xs);justify-content:center}.ihabdevteam-core-scope .word-search-result-block__toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:flex-end}.ihabdevteam-core-scope .word-search-result-block__inner{background:var(--color-white);border:1px solid var(--color-darkWhite);border-radius:var(--radius-m);padding:var(--spacing-content)}.ihabdevteam-core-scope .word-search-result-block__inner:has(+.word-search-result-block__actions:not(:empty)){margin-bottom:var(--spacing-content)}.ihabdevteam-core-scope .word-search-result-block__items{grid-gap:var(--spacing-xs);display:grid;gap:var(--spacing-xs);grid-template-columns:repeat(auto-fill,200px);justify-content:center}.ihabdevteam-core-scope .word-search-result-block__items .button__label-text,.ihabdevteam-core-scope .word-search-result-block__items .button__sub-label-text{white-space:nowrap;word-break:keep-all}.ihabdevteam-core-scope .word-search-result-block__items .button__label:has(.button__label-text:nth-child(4)){gap:4px 10px;grid-auto-columns:auto;grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr))}.ihabdevteam-core-scope .word-search-result-block__items .button-word:has(.button__label-text:nth-child(4)){height:auto;min-height:72px;padding-bottom:8px;padding-top:8px}@media (max-width:767px){.ihabdevteam-core-scope .word-search-result-block__items{grid-template-columns:repeat(2,1fr);justify-content:normal}.ihabdevteam-core-scope .word-search-result-block__items .button{min-width:0!important;width:100%}}.ihabdevteam-core-scope .word-search-result-block__empty{color:var(--color-gray);margin:0;padding:24px 0;text-align:center}.ihabdevteam-core-scope .word-search-result-block__group{display:flex;flex-direction:column;gap:10px}.ihabdevteam-core-scope .word-search-result-block__group+.word-search-result-block__group{border-top:1px solid var(--color-darkWhite);margin-top:var(--spacing-l);padding-top:var(--spacing-l)}.ihabdevteam-core-scope .word-search-result-block__pagination-bottom{display:flex;justify-content:center;margin-top:16px}.ihabdevteam-core-scope .word-search-result-block__empty-wrap{align-items:center;display:flex;flex-direction:column;gap:8px;gap:var(--spacing-xs,8px)}.ihabdevteam-core-scope .word-search-result-block__empty-hint{color:var(--color-sub);line-height:1.6;max-width:34em;text-align:center}.ihabdevteam-core-scope .word-search-result-block__disc,.ihabdevteam-core-scope .word-search-result-block__notice{display:block}.ihabdevteam-core-scope .word-search-result-block__notice{color:var(--color-text-primary)}";Q(m7);var b7='.ihabdevteam-core-scope .tooltip-word-image{background:var(--color-white);border-radius:var(--radius-m);box-shadow:var(--shadow-dropdown);padding:var(--spacing-s);position:fixed;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .tooltip-word-image__cells{display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .tooltip-word-image__cell{background:#f5f5f5;background:var(--color-white,#f5f5f5);border-radius:var(--radius-card);flex-shrink:0;height:120px;overflow:hidden;position:relative;width:120px}.ihabdevteam-core-scope .tooltip-word-image__cell img{display:block;height:100%;-o-object-fit:cover;object-fit:cover;transition:opacity .2s;width:100%}.ihabdevteam-core-scope .tooltip-word-image__spinner{align-items:center;display:flex;inset:0;justify-content:center;position:absolute}.ihabdevteam-core-scope .tooltip-word-image__spinner:after{animation:tooltip-spin .7s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top:3px solid var(--color-white,#e0e0e0);border:3px solid var(--color-white,#e0e0e0);border-top-color:var(--color-main,#4f6ef7);content:"";height:24px;width:24px}@keyframes tooltip-spin{to{transform:rotate(1turn)}}.ihabdevteam-core-scope .tooltip-word-image__cell--text{align-items:center;color:var(--color-black);display:flex;font-weight:700;justify-content:center}';Q(b7);function g7({label:e,homonum:t}){const a=Ma()?.(e,t)??"",{imgRef:r,loading:n,hasImage:i,onLoad:s,onError:c}=ql(a);return i?o.jsxs("div",{className:"tooltip-word-image__cell",children:[n&&o.jsx("div",{className:"tooltip-word-image__spinner"}),o.jsx("img",{ref:r,src:a,alt:e,draggable:!1,style:{opacity:n?0:1},onLoad:s,onError:c})]}):o.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:o.jsx("span",{children:e})})}function Nc({words:e,anchorRect:t}){const a=l.useRef(null),[r,n]=l.useState(null);return l.useLayoutEffect(()=>{if(!t||!a.current)return;const{offsetWidth:i,offsetHeight:s}=a.current,c=window.innerWidth;let u=t.left+t.width/2-i/2,d=t.top-s-8;d<8&&(d=t.bottom+8),u=Math.max(8,Math.min(u,c-i-8)),n({left:u,top:d})},[t]),!t||e.length===0?null:qt.createPortal(o.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:r?"visible":"hidden",left:r?.left??0,top:r?.top??-9999},children:o.jsx("div",{className:"tooltip-word-image__cells",children:e.map(i=>o.jsx(g7,{label:i.label,homonum:i.homonum},`${i.label}_${i.homonum??1}`))})}),document.body)}function zb({titleIcon:e,resultCount:t,resultUnit:a,searchQuery:r,items:n,groups:i,selected:s=[],onSelect:c,maxSelect:u,onClearSelection:d,onPrint:m,onPrintEmpty:h,className:p,emptyHint:g,sectionType:v="page",disc:b,notice:y}){const{t:f,i18n:x}=me.useTranslation(),_=x.language?.startsWith("ko")??!1,{anchorRect:C,openAt:A,close:w}=_o(),[S,N]=l.useState(null),T=l.useCallback(()=>{w(),N(null)},[w]),E=(r??"").trim(),W=/^[^,[\]\s]+$/.test(E)?E:"",L=W.length>0,[k,D]=l.useState("ganada"),[j,F]=l.useState("50"),[ee,Z]=l.useState(1),[J,M]=l.useState(L);J!==L&&(M(L),D(L?"match":"ganada"));const R=k==="match"&&!L?"ganada":k,z=l.useMemo(()=>[...L?[{value:"match",label:f("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],{value:"ganada",label:f("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:f("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:f("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:f("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:f("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:f("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[f,L]),H=l.useMemo(()=>["10","25","50","100"].map(P=>({value:P,label:f("wordSearch.pageSize",{count:Number(P),defaultValue:`${P}\uAC1C\uC529 \uBCF4\uAE30`})})),[f]),$=P=>P.words[0],q=l.useCallback((P,oe)=>{const re=Ie=>$(Ie)?.label??"",Ce=Ie=>$(Ie)?.syllables??[...re(Ie)].length,De=Ie=>{const Oe=parseInt($(Ie)?.grade??"",10);return Number.isFinite(Oe)?Oe:999};switch(R){case"match":{const Ie=[...W].length,Oe=Fe=>po(re(Fe).slice(0,Ie),W)?0:1;return Oe(P)-Oe(oe)||re(P).localeCompare(re(oe),"ko")}case"ganada":return re(P).localeCompare(re(oe),"ko");case"ganada_desc":return re(oe).localeCompare(re(P),"ko");case"syllable":return Ce(P)-Ce(oe)||re(P).localeCompare(re(oe),"ko");case"syllable_desc":return Ce(oe)-Ce(P)||re(P).localeCompare(re(oe),"ko");case"grade":return De(P)-De(oe)||re(P).localeCompare(re(oe),"ko");case"grade_desc":return De(oe)-De(P)||re(P).localeCompare(re(oe),"ko");default:return 0}},[R,W]),O=l.useMemo(()=>n.slice().sort(q),[n,q]),G=Number(j)||10,I=l.useMemo(()=>(i??[]).flatMap(P=>P.items.slice().sort(q).map(oe=>({item:oe,label:P.label}))),[i,q]),ne=i?I.length:O.length,X=Math.max(1,Math.ceil(ne/G)),te=Math.min(ee,X),pe=l.useMemo(()=>O.slice((te-1)*G,te*G),[O,te,G]),ae=l.useMemo(()=>{if(!i)return null;const P=I.slice((te-1)*G,te*G),oe=new Map;for(const{item:re,label:Ce}of P)oe.has(Ce)||oe.set(Ce,[]),oe.get(Ce).push(re);return[...oe.entries()].map(([re,Ce])=>({label:re,items:Ce}))},[i,I,te,G]);l.useEffect(()=>{Z(1)},[k,j,ne]);const Y=ne>0?o.jsxs("div",{className:"word-search-result-block__toolbar",children:[o.jsx(Ut,{size:40,options:z,value:R,onChange:D,ariaLabel:f("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),o.jsx(Ut,{size:40,options:H,value:j,onChange:F,ariaLabel:f("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),o.jsx(br,{page:te,totalPages:X,onChange:Z})]}):void 0,de=P=>{c&&c(P)},fe=t!==void 0&&a?o.jsxs(o.Fragment,{children:[f("wordSearch.resultTitlePrefix","\uCD1D "),o.jsx("span",{style:{color:"var(--color-main)"},children:t}),f("wordSearch.resultTitleSuffix",{unit:_?Bi(a):a})]}):void 0,Se=t!==void 0&&t>0&&u!==void 0&&a?f("wordSearch.resultDisc",{unit:_?Di(a):a,max:u,selected:s.length}):void 0,Ae=b??(y?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"word-search-result-block__notice",children:y}),Se?o.jsx("span",{className:"word-search-result-block__disc",children:Se}):null]}):Se);return o.jsxs(ro,{type:v,icon:e,title:fe,action:Y,disc:Ae,className:xe("word-search-result-block",p),children:[o.jsxs("div",{className:"word-search-result-block__inner",children:[(i?i.length===0:n.length===0)&&o.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[o.jsx("p",{className:"word-search-result-block__empty body-3",children:f("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),g&&o.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:g})]}),i?(ae??[]).map(P=>o.jsx("div",{className:"word-search-result-block__group",children:o.jsx("div",{className:"word-search-result-block__items",children:P.items.map(oe=>{const re=s.includes(oe.id);return o.jsx("div",{onMouseEnter:Ce=>{A(Ce.currentTarget),N(oe.words)},onMouseLeave:T,children:o.jsx(ce,{size:"word",align:"grid",label:oe.words.map(Ce=>Ce.label),subLabel:oe.words.map(Ce=>Ce.subLabel).filter(Boolean).length>0?oe.words.map(Ce=>Ce.subLabel):void 0,selected:re,onClick:()=>de(oe.id),minWidth:200})},oe.id)})})},P.label)):o.jsx("div",{className:"word-search-result-block__items",children:pe.map(P=>{const oe=s.includes(P.id);return o.jsx("div",{onMouseEnter:re=>{A(re.currentTarget),N(P.words)},onMouseLeave:T,children:o.jsx(ce,{size:"word",align:"grid",label:P.words.map(re=>re.label),subLabel:P.words.map(re=>re.subLabel).filter(Boolean).length>0?P.words.map(re=>re.subLabel):void 0,selected:oe,onClick:()=>de(P.id),minWidth:200})},P.id)})}),S&&C&&o.jsx(Nc,{words:S,anchorRect:C})]}),X>1&&o.jsx("div",{className:"word-search-result-block__pagination-bottom",children:o.jsx(br,{page:te,totalPages:X,onChange:Z})}),(d||m)&&o.jsxs("div",{className:"word-search-result-block__actions",children:[d&&o.jsx(ce,{size:"56",type:"bar",label:f("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:s.length===0,onClick:s.length===0?void 0:d}),m&&o.jsx("div",{onClick:s.length===0?h:void 0,children:o.jsx(ce,{size:"56",type:"bar",variant:"main",label:f("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:s.length===0,onClick:s.length===0?void 0:m})})]})]})}var f7='.ihabdevteam-core-scope .phoneme-select-block{align-items:flex-start;flex:1 1 auto;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell{align-items:center;display:flex;flex-direction:column;gap:12px}.ihabdevteam-core-scope .phoneme-select-block__controls{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-xs);justify-content:center;width:100%}@media (max-width:767px){.ihabdevteam-core-scope .phoneme-select-block__controls{align-items:center;flex-direction:column}}.ihabdevteam-core-scope .phoneme-select-block__count-control{align-self:center}.ihabdevteam-core-scope .phoneme-select-block__cell-group{align-items:flex-start;display:flex;gap:var(--spacing-xs)}.ihabdevteam-core-scope .phoneme-select-block__cell-vs{align-self:center;color:var(--color-lightGray);margin-bottom:22px;padding:0 16px}.ihabdevteam-core-scope .phoneme-select-block__pair-panels{display:flex;gap:var(--spacing-s);width:100%}.ihabdevteam-core-scope .phoneme-select-block__panel-group{display:flex;flex:1;flex-direction:column;gap:var(--spacing-m)}.ihabdevteam-core-scope .phoneme-select-block__cells{align-items:flex-start;display:flex;gap:var(--spacing-xs);justify-content:center;padding:var(--spacing-m) 0;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-circle{align-items:center;background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);box-shadow:var(--shadow-tooltip);display:flex;height:80px;justify-content:center;position:relative;width:240px}.ihabdevteam-core-scope .phoneme-select-block__cell-index{color:var(--color-gray);line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo{align-items:stretch;display:flex;flex-direction:row;height:100%;justify-content:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part{align-items:center;color:var(--color-black);display:flex;flex:1;flex-direction:column;gap:4px;justify-content:center;padding-top:3px;position:relative}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--no-label{padding-top:0}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-char.h1{line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-char--excluded{color:var(--color-whiteLine);transform:translateY(-2px)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty .phoneme-select-block__cell-jamo-char{transform:translateY(-2px)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-label{color:var(--color-lightGray);line-height:1}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty .phoneme-select-block__cell-jamo-label{color:var(--color-darkWhite)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part+.phoneme-select-block__cell-jamo-part:before{background:var(--color-whiteLine);content:"";height:20px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:1px}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part--empty{color:var(--color-darkWhite)}.ihabdevteam-core-scope .phoneme-select-block__panels{align-items:stretch;align-self:stretch;display:flex;flex-direction:column;gap:var(--spacing-m);width:100%}.ihabdevteam-core-scope .phoneme-select-block__detail{align-items:flex-start;display:flex;flex-direction:row;gap:var(--spacing-s);justify-content:center}.ihabdevteam-core-scope .phoneme-select-block__detail>.filter-panel{flex:1}.ihabdevteam-core-scope .phoneme-select-block>.filter-panel{align-self:stretch;width:100%}.ihabdevteam-core-scope .phoneme-select-block__controls .button38--bar{min-width:96px}.ihabdevteam-core-scope .phoneme-select-block__required{color:var(--color-main);line-height:1;margin-left:2px}.ihabdevteam-core-scope .phoneme-select-block__before-search{display:flex;justify-content:center;text-align:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__search-row{display:flex;gap:var(--spacing-xs);justify-content:center;width:100%}.ihabdevteam-core-scope .phoneme-select-block__checking{align-items:center;background:transparent;border:1px solid var(--color-whiteLine);border-radius:var(--radius-m);color:var(--color-disabled);cursor:default;display:flex;gap:10px;height:60px;min-width:198px;padding:0 28px}.ihabdevteam-core-scope .phoneme-select-block__checking-label{white-space:nowrap}.ihabdevteam-core-scope .phoneme-select-block__spinner{animation:phonemeSpinner .7s linear infinite;border:2px solid var(--color-whiteLine);border-radius:50%;border-top-color:var(--color-disabled);flex-shrink:0;height:18px;width:18px}@keyframes phonemeSpinner{to{transform:rotate(1turn)}}@media (max-width:767px){.ihabdevteam-core-scope .phoneme-select-block__detail,.ihabdevteam-core-scope .phoneme-select-block__pair-panels{flex-direction:column}.ihabdevteam-core-scope .phoneme-select-block__detail>.filter-panel{width:100%}.ihabdevteam-core-scope .phoneme-select-block__cell-vs{align-self:center;margin-bottom:0;padding:4px 0}.ihabdevteam-core-scope .phoneme-select-block__cells{flex-wrap:wrap}.ihabdevteam-core-scope .phoneme-select-block__cell-circle{height:64px;width:min(240px,100%)}.ihabdevteam-core-scope .phoneme-select-block__cell-jamo-part{font-size:24px}}';Q(f7);function v7(e,t){return t.map(a=>{const r=typeof a=="string"?a:a.label,n=typeof a=="string"?void 0:a.displayLabel;return{label:r,value:e[r]??"",displayLabel:n}})}function Ib({sections:e,selectedList:t,count:a,onCountChange:r,maxCount:n=4,minCount:i=1,combinationSections:s,combinationSectionsForSlot:c,onSelect:u,placeholder:d="-",className:m,title:h,titleIcon:p,disc:g,showInfoButton:v=!1,onClearPhoneme:b,onSearch:y,onSearchEmpty:f,searchDisabled:x=!1,searchLabel:_,searchChecking:C=!1,pairMode:A=!1,sectionType:w="page",beforeSearchContent:S,beforeContent:N,afterContent:T,hideCountControl:E=!1,ordinal:W=!1}){const{t:L}=me.useTranslation(),k=l.useMemo(()=>L("wordPairs.infoNotes",{returnObjects:!0}),[L]),D=l.useMemo(()=>Array.from({length:n-i+1},(O,G)=>{const I=i+G;return{key:String(I),label:L("wordPairs.count",{n:I})}}),[L,n,i]),j=l.useMemo(()=>L("wordPairs.ordinals",{returnObjects:!0}),[L]),F=l.useCallback(O=>W?L("wordPairs.phonemeOrdinalLabel",{ordinal:j[O-1]??O}):a===1?L("wordPairs.phonemeSingleLabel","\uC74C\uC808"):L("wordPairs.phonemeN",{n:O}),[W,j,a,L]),ee=l.useCallback(O=>W?L("wordPairs.phonemeContrastOrdinalLabel",{ordinal:j[O-1]??O}):a===1?L("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):L("wordPairs.phonemeContrast",{n:O}),[W,j,a,L]),Z=l.useCallback((O,G)=>G?o.jsxs(o.Fragment,{children:[O,o.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):O,[]),{anchorRect:J,toggleAt:M,close:R}=_o(),z=l.useCallback(O=>r(Number(O)),[r]),H=oa("(max-width: 767px)"),$=l.useCallback(O=>v7(O,e).map(({label:G,value:I,displayLabel:ne})=>{const X=!!I&&I!=="\uC5C6\uC74C";return o.jsxs("span",{className:xe("phoneme-select-block__cell-jamo-part",I?"":"phoneme-select-block__cell-jamo-part--empty",X?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[o.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${I==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:I==="\uC5C6\uC74C"?"x":I||d}),X&&o.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:ne??G})]},G)}),[e,d]),q=o.jsxs(o.Fragment,{children:[o.jsx("div",{"data-tooltip-ignore":!0,children:o.jsx(ce,{size:40,type:H?"dot":void 0,icon:"info",label:H?void 0:L("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),selected:!!J,onClick:O=>M(O.currentTarget)})}),J&&o.jsx(to,{title:L("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:k,anchorRect:J,onClose:R})]});return o.jsxs(ro,{type:w,title:h,icon:p,disc:g,action:q,className:xe("phoneme-select-block",m),children:[N,(!E||v&&!(h||g))&&o.jsxs("div",{className:"phoneme-select-block__controls",children:[!E&&o.jsx(Ha,{options:D,value:String(a),onChange:z,size:40,className:"phoneme-select-block__count-control"}),v&&!(h||g)&&q]}),o.jsx("div",{className:"phoneme-select-block__cells",children:A?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((O,G)=>{const I=t[G*2]??{};return o.jsxs("div",{className:"phoneme-select-block__cell",children:[o.jsx("div",{className:"phoneme-select-block__cell-circle",children:o.jsx("div",{className:"phoneme-select-block__cell-jamo",children:$(I)})}),o.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:F(G+1)})]},G)})}),o.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:L("wordPairs.phonemeSelect.vs","\uB300")}),o.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((O,G)=>{const I=t[G*2+1]??{};return o.jsxs("div",{className:"phoneme-select-block__cell",children:[o.jsx("div",{className:"phoneme-select-block__cell-circle",children:o.jsx("div",{className:"phoneme-select-block__cell-jamo",children:$(I)})}),o.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:ee(G+1)})]},G)})})]}):t.map((O,G)=>o.jsxs("div",{className:"phoneme-select-block__cell",children:[o.jsx("div",{className:"phoneme-select-block__cell-circle",children:o.jsx("div",{className:"phoneme-select-block__cell-jamo",children:$(O)})}),o.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:F(G+1)})]},G))}),(s||c)&&o.jsx("div",{className:"phoneme-select-block__panels",children:o.jsx("div",{className:"phoneme-select-block__detail",children:A?o.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[o.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((O,G)=>{const I=t[G*2]??{};return o.jsx(va,{title:Z(F(G+1),G===0),sections:c?c(I,G*2):s,selected:I,onSelect:u?.(G*2),align:"newline"},G)})}),o.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((O,G)=>{const I=t[G*2+1]??{};return o.jsx(va,{title:ee(G+1),sections:c?c(I,G*2+1):s,selected:I,onSelect:u?.(G*2+1),align:"newline"},G)})})]}):t.map((O,G)=>o.jsx(va,{title:Z(F(G+1),G===0),sections:c?c(O,G):s,selected:O,onSelect:u?.(G),align:"newline"},G))})}),S&&o.jsx("div",{className:"phoneme-select-block__before-search",children:S}),(b||y||C)&&(()=>{const O=t.every(G=>Object.entries(G).every(([I,ne])=>!ne||I==="\uC885\uC131"&&ne==="\uC5C6\uC74C"));return o.jsxs("div",{className:"phoneme-select-block__search-row",onClick:O?f:void 0,children:[b&&o.jsx(ce,{size:"56",type:"bar",label:L("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:O,onClick:O?void 0:b}),C?o.jsxs("div",{className:"phoneme-select-block__checking",children:[o.jsx("div",{className:"phoneme-select-block__spinner"}),o.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:_??L("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):y&&o.jsx(ce,{size:"56",type:"bar",variant:"main",label:_??L("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:O||x,onClick:O||x?void 0:y})]})})(),T]})}function Ob({title:e,sections:t,selected:a,onSelect:r,className:n}){const{t:i}=me.useTranslation();return o.jsx(va,{className:n,title:e??i("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:t,selected:a,onSelect:r,align:"inline"})}function Fb({title:e,headerAction:t,sections:a,selected:r,onSelect:n,className:i}){const{t:s}=me.useTranslation();return a.length===0?null:o.jsx(va,{className:i,title:e??s("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:t,sections:a,selected:r,onSelect:n,align:"newline"})}function Wb({title:e,mode:t,onModeChange:a,matchMode:r,onMatchModeChange:n,positionCount:i,onPositionCountChange:s,inputMode:c,onInputModeChange:u,className:d}){const{t:m}=me.useTranslation(),h={searchMode:m("wordPairs.filter.searchModeLabel","\uB300\uB9BD \uBC29\uC2DD"),phonemeOrder:m("wordPairs.filter.phonemeOrder","\uC785\uB825 \uC74C\uC808 \uC704\uCE58"),count:m("wordPairs.filter.countLabel","\uC785\uB825 \uC74C\uC808 \uAC2F\uC218"),inputMode:m("wordPairs.filter.inputModeLabel","\uC785\uB825 \uBC29\uC2DD"),orderAny:m("wordPairs.filter.orderAny","\uBB34\uAD00"),orderMatch:m("wordPairs.filter.orderMatch","\uC77C\uCE58"),include:m("wordPairs.mode.include","\uC74C\uC18C \uD3EC\uD568"),pick:m("wordPairs.mode.pick","\uC74C\uC18C \uB300\uB9BD"),explicit:m("wordPairs.mode.contrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815"),charInput:m("wordPairs.input.char","\uAE00\uC790 \uC120\uD0DD"),pronInput:m("wordPairs.input.pron","\uBC1C\uC74C \uC120\uD0DD")},p=y=>m("wordPairs.count",{n:y}),g=[{label:h.searchMode,items:[h.include,h.pick,h.explicit],display:"segmented",labelAction:o.jsx(wo,{title:m("wordPairs.mode.infoTitle","\uB300\uB9BD \uBC29\uC2DD"),items:[m("wordPairs.mode.infoInclude","\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."),m("wordPairs.mode.infoPick","\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694."),m("wordPairs.mode.infoContrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.")]})},{label:h.phonemeOrder,items:[h.orderAny,h.orderMatch],display:"segmented",labelAction:o.jsx(wo,{items:m("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:h.count,items:[p(1),p(2)],display:"segmented"},{label:h.inputMode,items:[h.charInput,h.pronInput],display:"segmented",labelAction:o.jsx(wo,{title:m("wordPairs.input.infoTitle","\uC785\uB825 \uBC29\uC2DD"),items:[m("wordPairs.input.infoChar","\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."),m("wordPairs.input.infoPron","\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.")]})}],v={[h.searchMode]:t==="explicit"?h.explicit:t==="pick"?h.pick:h.include,[h.phonemeOrder]:r==="ordered"?h.orderMatch:h.orderAny,[h.count]:p(i),[h.inputMode]:c==="phoneme"?h.pronInput:h.charInput},b=(y,f)=>{f===h.searchMode?a(y===h.explicit?"explicit":y===h.pick?"pick":"include"):f===h.phonemeOrder?n(y===h.orderMatch?"ordered":"unordered"):f===h.count?s(y===p(2)?2:1):f===h.inputMode&&u(y===h.pronInput?"phoneme":"word")};return o.jsx(va,{className:d,title:e??m("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:g,selected:v,onSelect:b,align:"inline"})}var y7=".ihabdevteam-core-scope .popup-list .popup-panel{max-height:calc(100% - 60px);max-width:880px;width:calc(100% - 40px)}.ihabdevteam-core-scope .popup-list .popup-content{display:flex;flex-direction:column;gap:var(--spacing-m);min-height:0;overflow:hidden}.ihabdevteam-core-scope .popup-list .table-wrap{flex:1;min-height:0;overflow-x:auto;overflow-y:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .popup-list .table-fields,.ihabdevteam-core-scope .popup-list .table-row{min-width:520px}.ihabdevteam-core-scope .popup-list__row--selected{background:var(--color-deepWhite);color:var(--color-main);font-weight:600}";Q(y7);function Hb(e){const{title:t,items:a,columns:r,gridTemplateColumns:n,searchPlaceholder:i,searchFn:s,defaultSortKey:c,defaultSortAsc:u=!0,selectedId:d,selectedIds:m,onSelect:h,onClose:p,pageSizeOptions:g=[10,25,50,100],initialPageSize:v,emptyText:b,countLabel:y,topContent:f,className:x=""}=e,{t:_}=me.useTranslation(),C=i??_("common.search","\uAC80\uC0C9"),A=b??_("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),[w,S]=l.useState(""),[N,T]=l.useState(c??r[0]?.key??""),[E,W]=l.useState(u),[L,k]=l.useState(String(v??g[0]??10)),[D,j]=l.useState(1);l.useEffect(()=>{j(1)},[w,L]);const F=s!==null,ee=l.useCallback((O,G)=>{if(!G)return!0;const I=G.toLowerCase();return r.some(ne=>{const X=O[ne.key];return X==null?!1:String(X).toLowerCase().includes(I)})},[r]),Z=s??ee,J=l.useMemo(()=>{const O=F?a.filter(G=>Z(G,w)):a;return N?[...O].sort((G,I)=>{const ne=G[N]??"",X=I[N]??"";return ne===X?0:E?ne>X?1:-1:ne<X?1:-1}):O},[a,w,N,E,F,Z]),M=Math.max(1,Math.ceil(J.length/Number(L))),R=J.slice((D-1)*Number(L),D*Number(L)),z=l.useCallback(O=>{N===O?W(G=>!G):(T(O),W(!0))},[N]),H=l.useMemo(()=>{if(typeof y=="string"&&y.includes("{n}")){const[O,G]=y.split("{n}");return{prefix:O,suffix:G}}return{prefix:_("common.totalCountPrefix","\uCD1D "),suffix:_("common.totalCountSuffix","\uAC1C")}},[y,_]),$=l.useMemo(()=>r.map(O=>({label:O.label,onClick:O.sortable!==!1?()=>z(O.key):void 0,className:O.className,sortDir:O.sortable!==!1&&N===O.key?E?"asc":"desc":null})),[r,N,E,z]),q=l.useMemo(()=>g.map(O=>({value:String(O),label:_("common.pageSizeLabel",{n:O})})),[g,_]);return o.jsxs(Ta,{className:`popup-list ${x}`,title:t,onClose:p,children:[f,o.jsx(mn,{count:{value:J.length,prefix:H.prefix,suffix:H.suffix},search:F?{value:w,onChange:S,placeholder:C}:void 0,pageSize:{options:q,value:L,onChange:k},pagination:{page:D,total:M,onChange:j}}),o.jsx(yn,{size:"medium",gridTemplateColumns:n,resizable:!0,fields:$,items:R,onRowClick:h,renderRow:O=>{const G=m!=null?O.id!=null&&m.has(O.id):d!=null&&O.id===d;return r.map(I=>({content:I.render?I.render(O):O[I.key]??"",className:G?"popup-list__row--selected":I.className}))},empty:A})]})}function Vb(e){const{title:t,message:a,topContent:r,details:n,children:i,confirmLabel:s,cancelLabel:c,hideCancel:u=!1,extraAction:d,confirmVariant:m="main",confirmDisabled:h=!1,onConfirm:p,closeOnConfirm:g=!0,onClose:v,inline:b,size:y="small",className:f}=e,{t:x}=me.useTranslation(),_=l.useRef(!1),[C,A]=l.useState(!1);return o.jsxs(Ta,{title:t,onClose:v,closeDisabled:C,inline:b,size:y,className:xe("confirm-popup",f),buttons:[...d?[{label:d.label,variant:d.variant??"default",disabled:C,onClick:({closeWithAnimation:w})=>{d.onClick(),w()}}]:[],...u?[]:[{label:c??x("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:C,onClick:({closeWithAnimation:w})=>w()}],{label:s??x("common.confirm","\uD655\uC778"),variant:m,disabled:h||C,onClick:async({closeWithAnimation:w})=>{if(!_.current){_.current=!0,A(!0);try{await p(w),g&&w()}finally{_.current=!1,A(!1)}}}}],children:[r!=null&&o.jsx("div",{className:"confirm-popup__top",children:r}),n&&n.length>0&&o.jsx(Cr,{children:n.map((w,S)=>o.jsx(Na,{label:w.label,children:o.jsx("span",{className:"panel-row__text body-2",children:w.value})},S))}),o.jsx("p",{className:"body-2 confirm-popup__message",children:a}),i]})}var x7=".ihabdevteam-core-scope .coupon-input-popup__input{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:var(--radius-s);box-sizing:border-box;color:var(--color-darkGray);font-family:inherit;height:48px;letter-spacing:.06em;padding:0 14px;text-transform:uppercase;transition:border-color .15s;width:100%}.ihabdevteam-core-scope .coupon-input-popup__input:focus{border-color:var(--color-main);outline:none}.ihabdevteam-core-scope .coupon-input-popup__input::-moz-placeholder{color:var(--color-lightGray);letter-spacing:normal;text-transform:none}.ihabdevteam-core-scope .coupon-input-popup__input::placeholder{color:var(--color-lightGray);letter-spacing:normal;text-transform:none}.ihabdevteam-core-scope .coupon-input-popup__error{color:#e84040;color:var(--color-red,#e84040);margin:var(--spacing-xs) 0 0}";Q(x7);function Gb({onApply:e,onCancel:t}){const{t:a}=me.useTranslation(),[r,n]=l.useState(""),[i,s]=l.useState(!1),[c,u]=l.useState(null),d=l.useRef(null);l.useEffect(()=>{d.current?.focus()},[]);const m=l.useCallback(async g=>{const v=r.trim();if(v){s(!0),u(null);try{await e(v),g()}catch(b){u(Vr(b)),s(!1)}}},[r,e]),h=l.useCallback((g,v)=>{g.key==="Enter"&&m(v)},[m]),p=g=>{n(g.target.value),u(null)};return o.jsx(Ta,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:t,closeDisabled:i,buttons:[{label:a("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:i,onClick:({closeWithAnimation:g})=>g()},{label:a("coupons.applyButton","\uC801\uC6A9"),variant:"main",disabled:!r.trim()||i,onClick:({closeWithAnimation:g})=>{m(g)}}],children:({closeWithAnimation:g})=>o.jsxs(o.Fragment,{children:[o.jsx("input",{ref:d,className:"coupon-input-popup__input body-2","aria-label":a("coupons.input.label","\uCFE0\uD3F0 \uCF54\uB4DC"),placeholder:a("coupons.input.placeholder","\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"),value:r,onChange:p,onKeyDown:v=>h(v,g),disabled:i,autoComplete:"off",spellCheck:!1}),c&&o.jsx("p",{className:"coupon-input-popup__error caption-1",role:"alert",children:c})]})})}var C7=".ihabdevteam-core-scope .tooltip-content.tooltip-training{pointer-events:none}.ihabdevteam-core-scope .tooltip-training__box{background:var(--color-white);border-radius:var(--radius-m);box-shadow:0 4px 16px rgba(0,0,0,.12);padding:10px 14px}.ihabdevteam-core-scope .tooltip-training__groups{align-items:stretch;display:flex;flex-direction:row;gap:0}.ihabdevteam-core-scope .tooltip-training__section{display:flex;flex-direction:column;flex-shrink:0;gap:6px;width:100px}.ihabdevteam-core-scope .tooltip-training__section-header{align-items:center;display:flex}.ihabdevteam-core-scope .tooltip-training__type-label{color:var(--color-darkGray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .tooltip-training__divider{align-self:center;background:var(--color-whiteLine);flex-shrink:0;height:20px;margin:0 10px;width:1px}.ihabdevteam-core-scope .tooltip-training__items{display:flex;flex-direction:column;gap:2px;pointer-events:none}.ihabdevteam-core-scope .tooltip-training__items .training-block-button--compact{cursor:default}";Q(C7);const qb=200;function _7(e){return e.itemId?(us()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function Yb({plan:e,anchorRect:t,offset:a=12,onClose:r}){const n=l.useMemo(()=>Zr.map(s=>({type:s,items:(e.items??[]).filter(c=>c.trainingType===s.key)})).filter(s=>s.items.length>0),[e.items]);if(n.length===0)return null;const i=o.jsx("div",{className:"tooltip-training__box",children:o.jsx("div",{className:"tooltip-training__groups",children:n.flatMap(({type:s,items:c},u)=>[u>0?o.jsx("div",{className:"tooltip-training__divider"},`div-${s.key}`):null,o.jsxs("div",{className:"tooltip-training__section",children:[o.jsx("div",{className:"tooltip-training__section-header",children:o.jsx("span",{className:"tooltip-training__type-label body-3b",children:s.label})}),o.jsx("div",{className:"tooltip-training__items",children:c.map((d,m)=>{const h=_7(d);return h?o.jsx(xn,{index:m,type:s,trainingData:h,size:"compact",hideCheckBadge:!0},d.itemId??m):null})})]},s.key)])})});return t?o.jsx(Sa,{anchorRect:t,offset:a,onClose:r,closeOnOutsideClick:!1,className:"tooltip-training",children:i}):i}var w7=".ihabdevteam-core-scope .party-container{inset:0;overflow:visible;pointer-events:none;position:fixed}.ihabdevteam-core-scope .confetti{display:none;left:0;opacity:0;position:fixed;top:0;transform:translateZ(0);will-change:transform,opacity}.ihabdevteam-core-scope .confetti--left{transform-origin:left bottom}.ihabdevteam-core-scope .confetti--right{transform-origin:right bottom}.ihabdevteam-core-scope .confetti.show{display:block;opacity:1;transition:opacity .2s linear}";Q(w7);const Ub=["var(--color-main)","var(--color-sub)"];function Dc({active:e=!1,count:t=40,duration:a=2e3,strength:r=1,onComplete:n,trigger:i=0}){const s=l.useMemo(()=>{const b=Math.floor(t/2),y=t-b,f=(x,_)=>Array.from({length:x}).map((C,A)=>{const w=6+Math.random()*12,S=Math.round(Math.min(18,w*Math.min(1.5,1+r*.4))),N=Ub[Math.floor(Math.random()*Ub.length)],T=Math.random()*300,E=(360+Math.random()*260)*r*1.2,W=(_==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,L=Math.cos(W)*E,k=Math.sin(W)*E*1.35,D=Math.random()*720-360,j=(1200+Math.random()*3e3)*Math.min(1.6,1+r*.3),F=Math.random()>.7?"50%":"3px";return{id:`${_}-${A}`,side:_,size:S,color:N,delay:T,vx:L,vy:k,angularVel:D,life:j,borderRadius:F}});return[...f(b,"left"),...f(y,"right")]},[t,r]),c=l.useRef(null),u=l.useRef({}),d=l.useRef(null),m=l.useRef(n);l.useEffect(()=>{m.current=n},[n]);const h=l.useRef(null),p=l.useRef(null),g=()=>{if(typeof document>"u")return null;let b=document.querySelector("[data-ihab-effect-root]");return b||(b=document.createElement("div"),b.className="app-effect",b.dataset.ihabEffectRoot="",b.style.position="fixed",b.style.inset="0",b.style.pointerEvents="none",b.style.zIndex="99998",document.body.appendChild(b)),b};if(typeof document<"u"&&p.current==null&&(p.current=g()),l.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){m.current?.();return}const b=1200,y=performance.now(),f=p.current&&p.current!==document.body?p.current.getBoundingClientRect():null,x=Math.max(60,(window.innerHeight||800)*.05),_=M=>Math.max(40,(M||window.innerWidth)*.02),C=f?.width||window.innerWidth||375,A=f?.height||window.innerHeight||812,w=M=>{const R=[...M].sort((z,H)=>z-H);return R[Math.floor(R.length/2)]||1},S=w(s.map(M=>Math.abs(M.vy))),N=w(s.map(M=>Math.abs(M.vx))),T=Math.sqrt(2*b*(A*.72+x))/S,E=S*T/b,W=C*.5/(N*E),L=(M,R,z)=>Math.min(z,Math.max(R,M)),k=L(T,.8,2.4),D=L(W,.7,2.2),j=s.map(M=>({...M,vx:M.vx*D,vy:M.vy*k,startTime:y+M.delay,ended:!1})),F=f?{x:f.left-_(f.width),y:f.top+f.height+x}:{x:-_(window.innerWidth),y:window.innerHeight+x},ee=f?{x:f.left+f.width+_(f.width),y:f.top+f.height+x}:{x:window.innerWidth+_(window.innerWidth),y:window.innerHeight+x},Z=M=>{let R=!1;for(const z of j){const H=u.current[z.id];if(!H||!H)continue;if(M<z.startTime){H.style.display="none";continue}if(!z._inited){const ae=z.side==="left"?F.x:ee.x,Y=z.side==="left"?F.y:ee.y;H.style.left=`${ae}px`,H.style.top=`${Y}px`,H.style.transform="translate3d(0px, 0px, 0)",H.style.display="block",H.style.zIndex="100000";try{if(typeof window<"u"&&typeof z.color=="string"&&z.color.startsWith("var(")){const de=z.color.slice(4,-1).trim(),fe=getComputedStyle(document.documentElement).getPropertyValue(de).trim();fe?H.style.background=fe:H.style.background="#FF0060"}}catch{}z._inited=!0}const $=(M-z.startTime)/1e3;if($<0)continue;const q=z.life/1e3;if($>=q){H.style.opacity="0",H.style.display="none",z.ended=!0;continue}R=!0;const O=z.side==="left"?F.x:ee.x,G=z.side==="left"?F.y:ee.y,I=O+z.vx*$,ne=G+z.vy*$+.5*b*$*$,X=(z.angularVel||0)*$,te=I-O,pe=ne-G;H.style.transform=`translate3d(${te}px, ${pe}px, 0) rotate(${X}deg)`,H.style.opacity=`${Math.max(0,1-$/q)}`}R?d.current=requestAnimationFrame(Z):m.current?.()};d.current=requestAnimationFrame(Z);const J=setTimeout(()=>{try{if((p.current?p.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const M=document.createElement("div");M.className="party-container",M.style.position="fixed",M.style.inset="0",M.style.pointerEvents="none",M.style.overflow="visible",M.style.zIndex="2147483647";for(const R of s){const z=document.createElement("span");z.className=`confetti confetti--${R.side}`,z.setAttribute("aria-hidden","true"),z.style.display="none",z.style.position="fixed",z.style.left="0px",z.style.top="0px",z.style.width=`${R.size}px`,z.style.height=`${Math.max(4,R.size*.6)}px`;let H=R.color;try{if(typeof H=="string"&&H.startsWith("var(")){const $=H.slice(4,-1).trim(),q=getComputedStyle(document.documentElement).getPropertyValue($).trim();q&&(H=q)}}catch{}z.style.background=H,z.style.borderRadius=R.borderRadius,z.style.transform="translate3d(0,0,0)",z.style.opacity="0",M.appendChild(z),u.current[R.id]=z}(document.body||p.current).appendChild(M),h.current=M}}catch{}},300);return()=>{if(d.current&&cancelAnimationFrame(d.current),clearTimeout(J),h.current){try{h.current.remove()}catch{}h.current=null}}},[e,a,i,s]),!e)return null;const v=o.jsx("div",{className:"party-container",ref:c,children:s.map(b=>o.jsx("span",{"aria-hidden":!0,ref:y=>{u.current[b.id]=y},className:`confetti confetti--${b.side}`,style:{width:`${b.size}px`,height:`${Math.max(4,b.size*.6)}px`,background:b.color,borderRadius:b.borderRadius}},`${b.id}-${i}`))});return typeof document<"u"?qt.createPortal(v,p.current||document.body):v}function Kb({trigger:e=0,active:t=!1}){const a=l.useRef(0);return l.useEffect(()=>{a.current=e},[e]),o.jsx(Dc,{active:t,trigger:e})}var k7=".ihabdevteam-core-scope .page-title{align-items:center;display:flex;gap:12px;justify-content:space-between;padding-bottom:var(--spacing-page)}.ihabdevteam-core-scope .page-title__main{align-items:flex-start;display:flex;flex:1;flex-direction:column;min-width:0;text-align:left}.ihabdevteam-core-scope .page-title__title-row{align-items:center;display:flex;gap:12px}.ihabdevteam-core-scope .page-title__title{margin:0}.ihabdevteam-core-scope .page-title__title-action{align-items:center;display:flex;flex-shrink:0}.ihabdevteam-core-scope .page-title__badge{align-items:center;display:flex}.ihabdevteam-core-scope .page-title__sub{color:var(--color-gray);margin:6px 0 0}.ihabdevteam-core-scope .page-title__action{flex-shrink:0;margin-left:var(--spacing-s)}@media (max-width:767px){.ihabdevteam-core-scope .page-title{align-items:flex-start;flex-direction:column;gap:10px}.ihabdevteam-core-scope .page-title__action{align-self:flex-start;margin-left:0}}";Q(k7);function Zb({title:e,sub:t,rightAction:a,titleAction:r,badge:n,badgeVariant:i="default",documentTitle:s}){return Qs(typeof e=="string"?e:s??null),o.jsxs("div",{className:"page-title",children:[o.jsxs("div",{className:"page-title__main",children:[o.jsxs("div",{className:"page-title__title-row",children:[o.jsx("h1",{className:"page-title__title h1",children:e}),n&&o.jsx("div",{className:"page-title__badge",children:o.jsx(ht,{label:n,size:"small",variant:i,fill:"outline"})})]}),t&&o.jsx("p",{className:"page-title__sub body-2",children:t})]}),a?o.jsx("div",{className:"page-title__action",children:a}):null]})}function Xb(e){return e??""}const Qb=l.createContext({words:[],loading:!1});function Jb(){return l.useContext(Qb)}function eg({words:e,loading:t,error:a,statusMessage:r,localVersion:n,remoteVersion:i,progress:s,clearAndRefetch:c,checkRemoteVersion:u,children:d}){return o.jsx(Qb.Provider,{value:{words:e,loading:t,error:a,statusMessage:r,localVersion:n,remoteVersion:i,progress:s,clearAndRefetch:c,checkRemoteVersion:u},children:d})}var S7=".ihabdevteam-core-scope .summary-strip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--spacing-m) var(--spacing-l);width:100%}.ihabdevteam-core-scope .summary-strip__row{align-items:center;display:flex;gap:var(--spacing-l)}.ihabdevteam-core-scope .summary-strip__items{grid-gap:var(--spacing-s) var(--spacing-l);display:grid;flex:1;gap:var(--spacing-s) var(--spacing-l);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}@media (min-width:640px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1280px){.ihabdevteam-core-scope .summary-strip__items{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-columns:repeat(var(--summary-strip-cols,4),minmax(0,1fr))}}.ihabdevteam-core-scope .summary-strip__item{min-width:0}.ihabdevteam-core-scope .summary-strip__label{color:var(--color-gray);margin:0}.ihabdevteam-core-scope .summary-strip__value{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .summary-strip__actions{align-items:center;display:flex;flex-shrink:0;gap:var(--spacing-xs)}";Q(S7);function tg({items:e,actions:t,columns:a,className:r,style:n}){const i=a??e.length;return o.jsx("section",{className:xe("summary-strip",r),style:{"--summary-strip-cols":String(i),...n},children:o.jsxs("div",{className:"summary-strip__row",children:[o.jsx("div",{className:"summary-strip__items",children:e.map((s,c)=>o.jsxs("div",{className:"summary-strip__item",children:[o.jsx("p",{className:"summary-strip__label caption-1",children:s.label}),o.jsx("p",{className:"summary-strip__value body-3b",children:s.value})]},c))}),t&&o.jsx("div",{className:"summary-strip__actions",children:t})]})})}var A7='.ihabdevteam-core-scope .report-doc{--report-page-w:210mm;--report-page-h:297mm;--report-margin:14mm;display:flex;justify-content:safe center;max-width:100%;min-width:0;overflow-x:auto;padding-block:var(--spacing-s);width:100%}.ihabdevteam-core-scope .report-doc__pages{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-l)}.ihabdevteam-core-scope .report-doc__page{background:#fff;box-shadow:var(--shadow-card);color:#000;display:flex;flex-direction:column;flex-shrink:0;min-height:var(--report-page-h);padding:var(--report-margin);width:var(--report-page-w)}.ihabdevteam-core-scope .report-doc__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__title{margin:0}.ihabdevteam-core-scope .report-doc__footer{align-items:center;color:var(--color-gray);display:flex;justify-content:space-between;margin-top:auto;padding-top:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__footer-left{align-items:center;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .report-doc__page-no{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ihabdevteam-core-scope .report-doc__logo{height:28px;width:auto}.ihabdevteam-core-scope .report-doc__measure{display:flex;flex-direction:column;opacity:0;pointer-events:none;position:absolute;width:calc(var(--report-page-w) - var(--report-margin)*2);z-index:-10}.ihabdevteam-core-scope .report-doc__measure-blocks{display:flex;flex-direction:column}.ihabdevteam-core-scope .report-doc__ruler{height:calc(var(--report-page-h) - var(--report-margin)*2)}@media print{.ihabdevteam-core-scope .report-doc{display:block;overflow:visible;padding-block:0}.ihabdevteam-core-scope .report-doc__pages{display:block}.ihabdevteam-core-scope .report-doc__page{-moz-column-break-after:page;box-shadow:none;break-after:page;page-break-after:always}.ihabdevteam-core-scope .report-doc__page:last-child{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}}';Q(A7);const T7=(e,t)=>`${e} / ${t}`;function ag({blocks:e,sectionTitles:t,logo:a,footer:r,pageLabel:n=T7,pageWidth:i,pageHeight:s,margin:c,className:u,style:d}){const m=l.useRef(null),h=l.useRef(null),p=l.useRef(null),[g,v]=l.useState(null),b=e.map(w=>`${w.id}\0${w.section??""}\0${w.group??""}`).join("");l.useLayoutEffect(()=>{const w=m.current,S=p.current;if(!w||!S)return;const N=h.current?.offsetHeight??0,T=S.offsetHeight-N,E=Array.from(w.children).map(F=>F.offsetHeight),W=[];e.forEach((F,ee)=>{const Z=W[W.length-1],J=Z?e[Z[0]]:void 0;J&&F.group!=null&&J.group===F.group?Z.push(ee):W.push([ee])});const L=[];let k=[],D=0;const j=()=>{k.length&&L.push(k),k=[],D=0};W.forEach(F=>{const ee=F.reduce((Z,J)=>Z+E[J],0);k.length&&e[k[0]].section!==e[F[0]].section&&j(),k.length&&D+ee>T&&j(),ee>T?F.forEach(Z=>{k.length&&D+E[Z]>T&&j(),k.push(Z),D+=E[Z]}):(F.forEach(Z=>k.push(Z)),D+=ee)}),j(),v(L)},[b]);const y=Nl,f=y,x=r??o.jsxs(o.Fragment,{children:[o.jsx("img",{src:f,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),_=(w,S,N)=>({header:o.jsxs("div",{className:"report-doc__header",children:[o.jsx("h2",{className:"report-doc__title h3b",children:N!=null&&t?.[N]||null}),a]}),footer:o.jsxs("div",{className:"report-doc__footer caption-1",children:[o.jsx("span",{className:"report-doc__footer-left",children:x}),o.jsx("span",{className:"report-doc__page-no",children:n(w,S)})]})}),C=_(1,1,e[0]?.section),A={...i?{"--report-page-w":i}:null,...s?{"--report-page-h":s}:null,...c?{"--report-margin":c}:null,...d};return o.jsxs("div",{className:xe("report-doc",u),style:A,children:[o.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[o.jsx("div",{ref:p,className:"report-doc__ruler"}),o.jsxs("div",{ref:h,children:[C.header,C.footer]}),o.jsx("div",{ref:m,className:"report-doc__measure-blocks",children:e.map(w=>o.jsx("div",{children:w.content},w.id))})]}),g&&o.jsx("div",{className:"report-doc__pages",children:g.map((w,S)=>{const{header:N,footer:T}=_(S+1,g.length,e[w[0]].section);return o.jsxs("section",{className:"report-doc__page",children:[N,w.map(E=>o.jsx("div",{children:e[E].content},e[E].id)),T]},S)})})]})}var B7=".ihabdevteam-core-scope .report-info{border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:var(--spacing-l);padding:var(--spacing-s) var(--spacing-m)}.ihabdevteam-core-scope .report-info__title{color:var(--color-darkGray);margin:0 0 var(--spacing-s)}.ihabdevteam-core-scope .report-info__grid{grid-gap:var(--spacing-xs) var(--spacing-l);display:grid;gap:var(--spacing-xs) var(--spacing-l);grid-template-columns:repeat(4,minmax(0,1fr));grid-template-columns:repeat(var(--report-info-cols,4),minmax(0,1fr))}@media (max-width:640px){.ihabdevteam-core-scope .report-info__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.ihabdevteam-core-scope .report-info__field{align-items:baseline;display:flex;gap:var(--spacing-s)}.ihabdevteam-core-scope .report-info__label{color:var(--color-gray);flex-shrink:0;width:3.5rem}.ihabdevteam-core-scope .report-info__value{color:var(--color-darkGray);white-space:nowrap}";Q(B7);function og({title:e,fields:t,columns:a=4,className:r,style:n}){return o.jsxs("div",{className:xe("report-info",r),style:{"--report-info-cols":String(a),...n},children:[e&&o.jsx("p",{className:"report-info__title h5b",children:e}),o.jsx("div",{className:"report-info__grid",children:t.map((i,s)=>o.jsxs("div",{className:"report-info__field body-2",children:[o.jsx("span",{className:"report-info__label body-3",children:i.label}),o.jsx("span",{className:"report-info__value",children:i.value})]},s))})]})}var N7=".ihabdevteam-core-scope .update-alert{animation:update-alert-slide-in .32s cubic-bezier(.34,1.56,.64,1) both;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:hsla(0,0%,97%,.92);border:1px solid var(--color-main);border-radius:var(--radius-m);box-shadow:0 4px 24px rgba(0,0,0,.14),0 1px 4px rgba(0,0,0,.08),inset 0 0 0 .5px rgba(0,0,0,.1);padding:var(--spacing-l);width:380px}.ihabdevteam-core-scope .update-alert,.ihabdevteam-core-scope .update-alert-stack{display:flex;flex-direction:column;gap:12px;max-width:calc(100vw - 32px);position:fixed;right:16px;top:16px;z-index:var(--z-alert)}.ihabdevteam-core-scope .update-alert-stack{align-items:flex-end}.ihabdevteam-core-scope .update-alert-stack .update-alert{position:relative;z-index:auto}.ihabdevteam-core-scope .update-alert:has(.update-alert__close) .update-alert__title{padding-right:24px}.ihabdevteam-core-scope .update-alert__close{align-items:center;background:none;border:none;border-radius:6px;border-radius:var(--radius-s,6px);color:#888;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;line-height:1;position:absolute;right:8px;top:8px;width:24px}.ihabdevteam-core-scope .update-alert__close:hover{background:rgba(0,0,0,.06);color:#333}.ihabdevteam-core-scope .update-alert__top{align-items:center;display:flex;gap:10px}@keyframes update-alert-slide-in{0%{opacity:0;transform:translateX(calc(100% + 24px))}to{opacity:1;transform:translateX(0)}}.ihabdevteam-core-scope .update-alert__icon{align-items:center;color:var(--color-main);display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.ihabdevteam-core-scope .update-alert__body{flex:1;min-width:0}.ihabdevteam-core-scope .update-alert__title{color:#1a1a1a;text-align:left}.ihabdevteam-core-scope .update-alert__message{color:#555;margin-top:2px;text-align:left}.ihabdevteam-core-scope .update-alert__action{width:100%}";Q(N7);function rg({title:e,message:t,actionLabel:a,onAction:r,icon:n,onClose:i,className:s=""}){const{t:c}=me.useTranslation(),u=a??c("common.update","\uC5C5\uB370\uC774\uD2B8");return o.jsxs("div",{className:xe("update-alert",s),role:"alert",children:[i&&o.jsx("button",{type:"button",className:"update-alert__close",onClick:i,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"}),o.jsxs("div",{className:"update-alert__top",children:[o.jsx("div",{className:"update-alert__icon",children:n??o.jsx(Kc,{size:20,strokeWidth:2})}),o.jsxs("div",{className:"update-alert__body",children:[o.jsx("div",{className:"update-alert__title h4",children:e}),o.jsx("div",{className:"update-alert__message body-3",children:t})]})]}),r&&o.jsx(ce,{size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:r,children:u})]})}var D7=".ihabdevteam-core-scope .training-card{background:var(--color-white);border:1px solid transparent;border-radius:var(--radius-card);display:flex;flex-direction:column;gap:10px;max-width:100%;padding:18px;position:relative;transition:border-color .15s,box-shadow .15s;width:360px}.ihabdevteam-core-scope .training-card:hover{border-color:var(--color-main);box-shadow:0 4px 16px var(--color-main-a10)}.ihabdevteam-core-scope .training-card--dragging{opacity:.5}.ihabdevteam-core-scope .training-card--clickable{cursor:pointer}.ihabdevteam-core-scope .training-card__header{display:flex;flex-direction:column;gap:4px}.ihabdevteam-core-scope .training-card__title-row{align-items:center;display:flex;gap:8px;justify-content:space-between;min-width:0}.ihabdevteam-core-scope .training-card__title{color:var(--color-darkGray);margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card__top-actions{align-items:center;display:flex;flex-shrink:0;gap:2px;margin-right:-8px}.ihabdevteam-core-scope .training-card__publisher{background:none;border:none;color:var(--color-gray);cursor:pointer;font-size:11px;font-weight:400;max-width:120px;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:-moz-fit-content;width:fit-content}.ihabdevteam-core-scope .training-card__publisher:hover{color:var(--color-main);text-decoration:underline}.ihabdevteam-core-scope .training-card__description{color:var(--color-gray);margin:0;min-height:1.55em;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card__body{display:flex;flex:1;flex-direction:column;gap:8px;justify-content:flex-end}.ihabdevteam-core-scope .training-card__empty{color:var(--color-lightGray)}.ihabdevteam-core-scope .training-card__types{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.ihabdevteam-core-scope .training-card__types .button{min-width:0;padding-inline:12px}.ihabdevteam-core-scope .training-card__type{background:color-mix(in srgb,var(--badge-color,var(--color-main)) 10%,transparent);border:1px solid color-mix(in srgb,var(--badge-color,var(--color-main)) 25%,transparent);border-radius:var(--radius-full);color:var(--badge-color,var(--color-main));display:inline-block;font-size:11px;font-weight:600;padding:2px 8px}.ihabdevteam-core-scope .training-card__tags{display:flex;flex-wrap:wrap;gap:5px}.ihabdevteam-core-scope .training-card__tag{color:var(--color-main);font-size:11px}.ihabdevteam-core-scope .training-card__words{align-content:flex-start;display:flex;flex-wrap:wrap;gap:4px}.ihabdevteam-core-scope .training-card__word{background:var(--color-deepWhite);border:1px solid var(--color-whiteLine);border-radius:var(--radius-full);color:var(--color-darkGray);display:inline-block;font-size:11px;padding:2px 8px;white-space:nowrap}.ihabdevteam-core-scope .training-card__footer{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:space-between;padding-top:8px}.ihabdevteam-core-scope .training-card__footer-left{align-items:center;display:flex;gap:6px;min-width:0}.ihabdevteam-core-scope .training-card__date{color:var(--color-gray);font-size:11px;white-space:nowrap}.ihabdevteam-core-scope .training-card__meta{align-items:center;display:flex;gap:4px}.ihabdevteam-core-scope .training-card__count{align-items:center;color:var(--color-lightGray);display:inline-flex;font-size:11px;gap:3px;white-space:nowrap}";Q(D7);function ng({title:e,description:t,topActions:a,children:r,footerLeft:n,footerRight:i,onClick:s,draggable:c,onDragStart:u,onDragEnd:d,className:m}){const h=n!=null||i!=null,p=r!=null&&r!==!1,g=l.useCallback(v=>{s&&v.target===v.currentTarget&&(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),s())},[s]);return o.jsxs("div",{className:xe("training-card",s?"training-card--clickable":"",m),onClick:s,onKeyDown:s?g:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,draggable:c,onDragStart:u,onDragEnd:d,children:[o.jsxs("div",{className:"training-card__header",children:[o.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?o.jsx("h3",{className:"training-card__title h4",children:e}):e,a!=null&&o.jsx("div",{className:"training-card__top-actions",onClick:v=>v.stopPropagation(),children:a})]}),t!=null?typeof t=="string"?o.jsx("p",{className:"training-card__description body-3",children:t}):t:o.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),p&&o.jsx("div",{className:"training-card__body",children:r}),h&&o.jsxs("div",{className:"training-card__footer",children:[n!=null&&o.jsx("div",{className:"training-card__footer-left",children:n}),i!=null&&o.jsx("div",{className:"training-card__meta",children:i})]})]})}var E7=".ihabdevteam-core-scope .training-card-group{background:var(--color-darkWhite);border:1px solid var(--color-darkWhite);border-radius:var(--radius-card);overflow:hidden;transition:border-color .15s,box-shadow .15s}.ihabdevteam-core-scope .training-card-group--dragover{border-color:var(--color-main);box-shadow:0 0 0 2px var(--color-main-a10)}.ihabdevteam-core-scope .training-card-group__header{align-items:center;cursor:pointer;display:flex;gap:8px;height:60px;padding:0 12px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ihabdevteam-core-scope .training-card-group__chevron{flex-shrink:0}.ihabdevteam-core-scope .training-card-group__title{color:var(--color-black);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ihabdevteam-core-scope .training-card-group__count{color:var(--color-main);flex-shrink:0}.ihabdevteam-core-scope .training-card-group__actions{align-items:center;display:flex;flex-shrink:0;gap:8px;margin-left:auto}.ihabdevteam-core-scope .training-card-group__empty{color:var(--color-lightGray);padding:24px 16px;text-align:center}.ihabdevteam-core-scope .training-card-group__grid{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;padding:0 12px 12px}.ihabdevteam-core-scope .training-card-group__grid>*{min-width:0}";Q(E7);function ig({title:e,count:t,collapsed:a=!1,onToggle:r,sort:n,actions:i,empty:s=!1,emptyContent:c,dragOver:u=!1,onDragOver:d,onDragLeave:m,onDrop:h,children:p,className:g}){const{t:v}=me.useTranslation(),b=xe("training-card-group",u&&"training-card-group--dragover",a&&"training-card-group--collapsed",g);return o.jsxs("div",{className:b,onDragOver:d,onDragLeave:m,onDrop:h,children:[o.jsxs("header",{className:"training-card-group__header",children:[o.jsx(ce,{size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:a?"chevron-right":"chevron-down",ariaLabel:a?v("common.expand","\uD3BC\uCE58\uAE30"):v("common.collapse","\uC811\uAE30"),className:"training-card-group__chevron",onClick:r}),typeof e=="string"?o.jsx("span",{className:"training-card-group__title h5b",children:e}):e,t!==void 0&&o.jsx("span",{className:"training-card-group__count body-3b",children:t}),(n||i!=null)&&o.jsxs("span",{className:"training-card-group__actions",onClick:y=>y.stopPropagation(),children:[n&&o.jsx(Ut,{size:40,options:n.options,value:n.value,placeholder:n.placeholder,onChange:n.onChange}),i]})]}),!a&&(s?o.jsx("div",{className:"training-card-group__empty body-3",children:c}):o.jsx("div",{className:"training-card-group__grid",children:p}))]})}var j7=".ihabdevteam-core-scope .word-table-block__meta{background:transparent}.ihabdevteam-core-scope .word-table-block__actions{align-items:center;display:flex;gap:var(--spacing-xs);justify-content:space-between}.ihabdevteam-core-scope .word-table-block__actions-left,.ihabdevteam-core-scope .word-table-block__actions-right{display:flex;gap:var(--spacing-xs)}@media (max-width:767px){.ihabdevteam-core-scope .word-table-block__actions{align-items:stretch;flex-direction:column}.ihabdevteam-core-scope .word-table-block__actions-left,.ihabdevteam-core-scope .word-table-block__actions-right{display:grid;grid-template-columns:repeat(2,1fr)}.ihabdevteam-core-scope .word-table-block__actions .button{min-width:0;width:100%}}.ihabdevteam-core-scope .my-word-table-preview-popup .popup-panel{max-width:none;width:min(1400px,94vw)}.ihabdevteam-core-scope .my-word-table-preview-popup .popup-body{overflow:auto;overscroll-behavior-y:contain}.ihabdevteam-core-scope .word-table-block__pages{display:flex;flex-direction:column;gap:24px;gap:var(--spacing-content,24px)}@media print{.ihabdevteam-core-scope .word-table-block>.filter-panel,.ihabdevteam-core-scope .word-table-block>.section__header,.ihabdevteam-core-scope .word-table-block__actions{display:none}.ihabdevteam-core-scope .word-table-block__pages .word-table{-moz-column-break-after:page;break-after:page;page-break-after:always;position:static}.ihabdevteam-core-scope .word-table-block__pages .word-table:last-child{-moz-column-break-after:auto;break-after:auto;page-break-after:auto}}";Q(j7);const L7="speechear:saved_word_tables";function M7(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&Array.isArray(t.items)}function P7(){try{const e=localStorage.getItem(L7);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(M7):[]}catch{return[]}}function sg({title:e,titleIcon:t,disc:a,items:r,onSaveComplete:n,onLoad:i,onRemoveItem:s,onReset:c,resetLabel:u,saveButtonLabel:d,secondarySaveButtonLabel:m,onReorder:h,showCellCount:p,onAddItem:g,className:v,renderSavePopup:b,renderWordSearch:y,hideControls:f,saveOnly:x,tableName:_,nameValue:C,onNameChange:A,descriptionValue:w,onDescriptionChange:S,namePlaceholder:N,descriptionPlaceholder:T,existingNames:E,editingName:W,onCancel:L}){const{t:k}=me.useTranslation(),D=u??k("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),j=r===void 0,F=!!A,[ee,Z]=l.useState([]),J=(C??"").trim(),M=J||(N??"").trim(),R=(w??"").trim()||(T??"").trim(),z=(E??[]).map(ue=>ue.trim().toLowerCase()),H=[W?.trim().toLowerCase(),...ee].filter(ue=>!!ue),$=[...z];for(const ue of H){const Te=$.indexOf(ue);Te!==-1&&$.splice(Te,1)}const q=J!==""&&$.includes(J.toLowerCase()),[O,G]=l.useState(Array(4).fill(null)),[I,ne]=l.useState(4),[X,te]=l.useState(null),[pe,ae]=l.useState("landscape"),[Y,de]=l.useState(["\uC774\uBBF8\uC9C0","\uB2E8\uC5B4","\uD45C\uC900 \uBC1C\uC74C"]),[fe,Se]=l.useState("\uD45C\uC2DC"),[Ae,P]=l.useState(!0),[oe,re]=l.useState(!0),Ce=l.useRef(null),De=l.useRef([]),[Ie,Oe]=l.useState(8),[Fe,Qe]=l.useState("right"),[Re,Ge]=l.useState(!1),[We,be]=l.useState(!1),{toastMessage:at,toastType:He,showWarning:Le,clearToast:Ue}=un("warning"),Dt=l.useCallback(()=>te(null),[te]),[Ke,Ye]=l.useState(()=>Math.max(r?.length??1,1));l.useEffect(()=>{j||Ye(ue=>Math.max(ue,r?.length??1))},[r?.length,j]);const ut=j?I:p?Math.max(Ke,r?.length??1):Math.max(r?.length??0,1),{width:je,height:rt}=no[pe],Je=!j&&!p,$e=r?.length??0,Ze=Math.min(Ie,Math.max($e,1)),et=Je?Ze:ut,yt=Je?Sm(r??[],et):null,Et=!!yt&&yt.length>1,it=j?O.some(ue=>ue!==null&&ue.length>1):(r??[]).some(ue=>ue.words.length>1),Ht=_?.trim()||`${Yr(Gr())} ${it?k("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):k("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,mt=l.useCallback(()=>Et?De.current.filter(ue=>ue!==null):Ce.current?[Ce.current]:[],[Et]),{print:Vt,openNewWindow:ia,downloadHtml:Gt}=An({getElements:mt,paperW:je,paperH:rt,fileName:Ht,onPopupBlocked:()=>{Le(k("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}}),Ea=ue=>{ne(ue),G(Te=>{const tt=Array(ue).fill(null);return Te.slice(0,ue).forEach((xt,Ct)=>{tt[Ct]=xt}),tt}),te(null)},sa=ue=>{G(Te=>{const tt=[...Te];return tt[ue]=null,tt}),X===ue&&te(null)},Kt=ue=>{if(X===null)return;const Te=X;G(xt=>{const Ct=[...xt];return Ct[Te]=ue,Ct});const tt=O.findIndex((xt,Ct)=>Ct>Te&&xt===null);te(tt!==-1?tt:null)},ja=j?O.some(ue=>ue?.some(Te=>!!Te.colloquialPronunciation)):(r??[]).some(ue=>ue.words.some(Te=>!!Te.colloquialLabel)),jt=l.useMemo(()=>Ma()?j?O.flatMap(ue=>(ue??[]).map(Te=>[Te.word,Te.homonum])):(r??[]).flatMap(ue=>ue.words.map(Te=>[Te.label,Te.homonum])):[],[j,O,r]),[Ga,$t]=l.useState(!1);l.useEffect(()=>{if(jt.length===0)return;let ue=!1;return Promise.all(jt.map(([Te,tt])=>qo(Te,tt))).then(Te=>{ue||$t(Te.some(Boolean))}),()=>{ue=!0}},[jt]);const ya=jt.length>0&&Ga,qa=l.useMemo(()=>[...j||p?[{label:k("wordTable.filter.columns","\uCE78 \uC218"),items:sk.map(ue=>({value:`${ue}\uCE78`,displayLabel:k("wordTable.filter.column",{count:ue})})),display:"segmented"}]:[],...Je&&(r?.length??0)>0?[Lm(k,{hasPairs:it,itemCount:$e})]:[],...Et?[Mm(k)]:[]],[k,j,p,Je,r?.length,it,$e,Et]),Xe={...j||p?{[k("wordTable.filter.columns","\uCE78 \uC218")]:`${j?I:Ke}\uCE78`}:{},...Je&&(r?.length??0)>0?{[k(it?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${Ze}\uAC1C`}:{},...Et?{[k("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:Pm[Fe]}:{}},zt=(ue,Te)=>{Te===k("wordTable.filter.columns","\uCE78 \uC218")?j?Ea(parseInt(ue)):Ye(parseInt(ue)):Te===k(it?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")?Oe(parseInt(ue)):Te===k("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&Qe(Rm(ue))},wt=j?O.filter(ue=>ue!==null).map(ue=>({id:ue[0].word,words:ue.map(Te=>({label:Te.word,subLabel:Te.pronunciation,homonum:Te.homonum}))})):r??[],xa=(ue=!1)=>{if(be(ue),F&&n){const Te=M.trim().toLowerCase();Te&&Z(tt=>tt.includes(Te)?tt:[...tt,Te]),n(M,wt,R||void 0,ue);return}if(x&&n){n("",wt,void 0,ue);return}if(n){Ge(!0);return}Gt()},[la,ie]=l.useState(!1),[ge,ve]=l.useState(""),U=ge.trim(),se=U!==""&&z.includes(U.toLowerCase()),ye=()=>{ve(M?`${M} (\uBCF5\uC0AC)`:""),ie(!0)},we=()=>{!U||se||!n||(n(U,wt,R||void 0,!0),ie(!1))},ke=wt.length===0,Me=ke||F&&(M===""||q),nt=()=>{if(ke){Le(k("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(F&&M===""){Le(k("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}F&&q&&Le(k("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},ct=o.jsx(io,{items:wt,orientation:pe,contentTypes:Y,cutLine:fe,showOutline:Ae,showDivLine:oe,count:ut});return o.jsxs(o.Fragment,{children:[o.jsxs(ro,{type:"page",icon:t,title:e,disc:a,className:xe("word-table-block",v),children:[la&&o.jsx(Ta,{size:"small",title:m??k("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>ie(!1),footer:({closeWithAnimation:ue})=>o.jsxs(o.Fragment,{children:[o.jsx(ce,{size:48,type:"bar",label:k("common.cancel","\uCDE8\uC18C"),onClick:ue}),o.jsx(ce,{size:48,type:"bar",variant:"main",label:k("common.save","\uC800\uC7A5"),disabled:!U||se,onClick:we})]}),children:o.jsx(Wa,{label:k("wordTable.save.nameLabel","\uC774\uB984"),value:ge,onChange:ve,placeholder:k("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),maxLength:40,size:48,fullWidth:!0,autoFocus:!0,onEnter:we,error:se?k("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),Re&&n&&b?.({defaultName:typeof e=="string"?e:k("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:ct,previewW:je,previewH:rt,items:wt,existingNames:P7().map(ue=>ue.name),saveAsNew:We,onSave:(ue,Te)=>{n(ue,wt,Te,We),Ge(!1)},onCancel:()=>Ge(!1)}),(j||g)&&X!==null&&y?.({cellIndex:X,onConfirm:j?Kt:ue=>{if(g){const Te=ue[0];Te&&g({id:Te.word,words:[{label:Te.word,subLabel:Te.pronunciation,homonum:Te.homonum}]})}te(null)},onClose:Dt}),!f&&o.jsx(Sn,{hasImage:ya,hasColloquial:ja,contentTypes:Y,orientation:pe,showOutline:Ae,cutLine:fe,showDivLine:oe,setters:{setContentTypes:de,setOrientation:ae,setShowOutline:P,setCutLine:Se,setShowDivLine:re},showCutLine:(Je?et:ut)>1,showDivLine2:it,middleSections:qa,extraSelected:Xe,onExtraSelect:zt}),Et&&yt?o.jsx("div",{className:"word-table-block__pages",children:yt.map((ue,Te)=>o.jsx(io,{orientation:pe,contentTypes:Y,cutLine:fe,showOutline:Ae,showDivLine:oe,count:et,items:ue,onRemoveItem:s,contentRef:tt=>{De.current[Te]=tt},pageNumber:{current:Te+1,total:yt.length},pageNumberPosition:Fe},Te))}):o.jsx(io,{orientation:pe,contentTypes:Y,cutLine:fe,showOutline:Ae,showDivLine:oe,count:ut,items:j?void 0:r??[],editCells:j?O:void 0,activeCell:X,onActivateCell:j||g?te:void 0,onRemoveCell:j?sa:void 0,onRemoveItem:j?void 0:s,onReorder:j?void 0:h,showFillerAdd:!!g,contentRef:Ce}),F&&!f&&o.jsxs(Cr,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[o.jsx(Na,{variant:"custom",label:k("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:o.jsx(Wa,{required:!0,value:C??"",onChange:A,placeholder:N?N+k("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):k("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:k("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:q?k("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:ue=>{(ue.key==="Tab"&&!ue.shiftKey||ue.key===" ")&&!(C??"").trim()&&(N??"").trim()&&(ue.preventDefault(),A?.(N??""))}})}),o.jsx(Na,{variant:"custom",label:k("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:o.jsx(Wa,{value:w??"",onChange:S,placeholder:T?T+k("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):k("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:k("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:ue=>{(ue.key==="Tab"&&!ue.shiftKey||ue.key===" ")&&!(w??"").trim()&&(T??"").trim()&&(ue.preventDefault(),S?.(T??""))}})})]})]}),!f&&o.jsxs("div",{className:"word-table-block__actions",children:[o.jsxs("div",{className:"word-table-block__actions-left",children:[!x&&c&&o.jsx(ce,{size:40,type:"bar",label:D,onClick:c}),!x&&i&&o.jsx(ce,{size:40,type:"bar",label:k("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:i}),!x&&o.jsx(ce,{size:40,type:"bar",label:k("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:ia})]}),o.jsxs("div",{className:"word-table-block__actions-right",children:[L&&o.jsx(ce,{size:"56",type:"bar",label:k("common.cancel","\uCDE8\uC18C"),onClick:L}),!x&&o.jsx(ce,{size:"56",type:"bar",label:k("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:Vt}),m&&o.jsx(ce,{size:"56",type:"bar",label:m,onClick:()=>F?ye():xa(!0),disabled:ke,onDisabledClick:()=>{Le(k("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),o.jsx(ce,{size:"56",type:"bar",variant:"main",label:d??k("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>xa(!1),disabled:Me,onDisabledClick:nt})]})]}),o.jsx(oo,{message:at,type:He,onClose:Ue})]})}var R7=".ihabdevteam-core-scope .word-table-thumb{grid-gap:1px;background:var(--color-darkWhite);border-bottom:1px solid var(--color-darkWhite);display:grid;gap:1px;grid-auto-rows:minmax(min-content,1fr);height:140px;overflow:hidden}.ihabdevteam-core-scope .word-table-thumb__cell{align-items:center;background:var(--color-white);display:flex;flex-direction:column;gap:1px;justify-content:center;min-height:0;overflow:hidden;padding:4px}.ihabdevteam-core-scope .word-table-thumb__word{color:var(--color-black)}.ihabdevteam-core-scope .word-table-thumb .word-table-thumb__word{line-height:1.2}.ihabdevteam-core-scope .word-table-thumb__divider{background:var(--color-darkWhite);display:block;height:1px;margin:1px 0;width:30%}";Q(R7);function Ec({items:e,className:t}){const a=e.length,r=a<=3?1:2,n=Math.ceil(a/r)||1,i=r*n;return o.jsx("div",{className:xe("word-table-thumb",t),style:{gridTemplateColumns:`repeat(${r}, 1fr)`},children:Array.from({length:i},(s,c)=>{const u=e[c];return u?o.jsx("div",{className:"word-table-thumb__cell",children:(u.words.length?u.words:[{label:u.id}]).map((d,m)=>o.jsxs(l.Fragment,{children:[m>0&&o.jsx("span",{className:"word-table-thumb__divider"}),o.jsx("span",{className:"word-table-thumb__word body-3",children:d.label})]},m))},c):o.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},c)})})}var $7=".ihabdevteam-core-scope .word-table-button{background:var(--color-white);border:1px solid var(--color-whiteLine);border-radius:8px;border-radius:var(--radius-s,8px);box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:border-color .15s,box-shadow .15s;width:240px}.ihabdevteam-core-scope .word-table-button:hover{border-color:var(--color-main);box-shadow:0 2px 10px rgba(0,0,0,.06)}.ihabdevteam-core-scope .word-table-button:focus-visible{outline:2px solid var(--color-main);outline-offset:1px}.ihabdevteam-core-scope .word-table-button--selected{border-color:var(--color-main);box-shadow:0 0 0 1px var(--color-main) inset}.ihabdevteam-core-scope .word-table-button__thumb{flex:0 0 auto;height:290px}.ihabdevteam-core-scope .word-table-button__info{align-items:flex-start;display:flex;flex-direction:row;gap:8px;min-width:0;padding:12px 14px 0;position:relative}.ihabdevteam-core-scope .word-table-button__more{position:absolute;right:10px;top:8px}.ihabdevteam-core-scope .word-table-button__title{padding-right:34px}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__info{flex:1 1 auto;min-height:0}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__info-text{align-self:stretch}.ihabdevteam-core-scope .word-table-button__info-text{align-items:flex-start;display:flex;flex:1 1 auto;flex-direction:column;gap:4px;min-width:0;text-align:left}.ihabdevteam-core-scope .word-table-button__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-black);display:-webkit-box;overflow:hidden;overflow-wrap:anywhere}.ihabdevteam-core-scope .word-table-button__desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-gray);display:-webkit-box;overflow:hidden}.ihabdevteam-core-scope .word-table-button__meta{color:var(--color-gray)}.ihabdevteam-core-scope .word-table-button__meta-row{align-items:center;display:flex;gap:8px;justify-content:space-between;min-width:0;padding:12px 14px 14px}.ihabdevteam-core-scope .word-table-button__badges{align-items:center;display:flex;flex:0 0 auto;gap:4px}.ihabdevteam-core-scope .word-table-button--no-footer .word-table-button__meta-row{margin-top:auto}.ihabdevteam-core-scope .word-table-button__footer{display:flex;flex-direction:column;gap:8px;margin-top:auto;min-width:0;padding:12px 14px 14px}.ihabdevteam-core-scope .word-table-button__store-by{align-items:center;display:inline-flex;gap:6px;min-width:0;overflow:hidden}.ihabdevteam-core-scope .word-table-button__store-by .training-card__date{white-space:nowrap}.ihabdevteam-core-scope .word-table-button__store-stats{align-items:center;align-self:flex-end;display:inline-flex;gap:4px}.ihabdevteam-core-scope .word-table-button__more{flex:0 0 auto}.ihabdevteam-core-scope .word-table-button__badge{pointer-events:none}.ihabdevteam-core-scope .word-table-button__new-dot{background:var(--color-main);border-radius:50%;box-shadow:0 0 0 2px var(--color-white);height:10px;pointer-events:none;position:absolute;right:8px;top:8px;width:10px;z-index:3}";Q($7);function lg({items:e,name:t,description:a,createdAt:r,published:n,publishedLabel:i,shared:s,sharedLabel:c,isNew:u,publisherName:d,publishedAt:m,likeCount:h,downloadCount:p,onPublisherClick:g,selected:v,onClick:b,onMore:y,titleNode:f,className:x}){const{t:_}=me.useTranslation(),C=f!=null,A=d!=null||m!=null||h!=null||p!=null,w=S=>{!C&&(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),b?.())};return o.jsxs("div",{className:xe("word-table-button",v?"word-table-button--selected":"",A?"":"word-table-button--no-footer",x),role:"button",tabIndex:0,"aria-label":t,onClick:C?void 0:b,onKeyDown:w,children:[u&&o.jsx("span",{className:"word-table-button__new-dot","aria-label":_("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),o.jsx(Ec,{items:e,className:"word-table-button__thumb"}),o.jsxs("div",{className:"word-table-button__info",children:[o.jsxs("div",{className:"word-table-button__info-text",children:[f??o.jsx("div",{className:"word-table-button__title h4",children:t}),a&&o.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),y&&!C&&o.jsx(ce,{className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:_("common.moreFor",{name:t}),onClick:S=>{S.stopPropagation(),y(S)}})]}),(r||n||s)&&o.jsxs("div",{className:"word-table-button__meta-row",children:[o.jsx("span",{className:"word-table-button__meta caption-1",children:r?qr(r,_):""}),o.jsxs("span",{className:"word-table-button__badges",children:[n&&o.jsx(ht,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:i??"\uBC1C\uD589\uB428"}),s&&o.jsx(ht,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:c??"\uACF5\uC720 \uC911"})]})]}),A&&o.jsxs("div",{className:"word-table-button__footer",children:[o.jsxs("span",{className:"word-table-button__store-by",children:[d&&o.jsx("button",{className:"training-card__publisher body-4",type:"button",onClick:S=>{S.stopPropagation(),g?.()},children:d}),m&&o.jsx("span",{className:"training-card__date body-4",children:qr(m,_)})]}),o.jsxs("span",{className:"word-table-button__store-stats",children:[h!=null&&o.jsx(ht,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(h)}),p!=null&&o.jsx(ht,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(p)})]})]})]})}/**
969
969
  * @license lucide-react v1.38.0 - ISC
970
970
  *
971
971
  * This source code is licensed under the ISC license.
@@ -979,4 +979,4 @@ ${f.badge}`:f.badge:void 0;if(_&&s(f.code))return null;if(!f.badge&&!c)return u(
979
979
 
980
980
  /* !important \uBD88\uD544\uC694 \u2014 WordDataUpdatePopup.tsx\uC758 \uC778\uB77C\uC778 width\uB294 pct/isDone/isError\uC77C \uB54C\uB9CC
981
981
  \uC124\uC815\uB418\uACE0 \uC774 indeterminate \uD074\uB798\uC2A4\uAC00 \uBD99\uB294 \uC0C1\uD0DC(state==='active' && pct===undefined)\uC5D0\uC11C\uB294
982
- \uC778\uB77C\uC778 width\uAC00 \uC544\uC608 \uC124\uC815\uB418\uC9C0 \uC54A\uC544(undefined) \uACBD\uD569 \uC790\uCCB4\uAC00 \uC5C6\uC74C(\uCF54\uB4DC \uD655\uC778\uB428). */.ihabdevteam-core-scope .wdup-bar__fill--indeterminate{animation:wdup-indeterminate 1.4s ease-in-out infinite;width:40%}@keyframes wdup-indeterminate{0%{transform:translateX(-150%)}to{transform:translateX(400%)}}.ihabdevteam-core-scope .wdup-phase-card__sub{color:var(--color-lightGray)}`;Q(W7);function H7(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function jc({icon:e,label:t,state:a,pct:r,subText:n}){const{t:i}=me.useTranslation(),s=a==="done",c=a==="pending",u=a==="error",d=s?100:r??0;return o.jsxs("div",{className:"wdup-phase-card",children:[o.jsx("div",{className:`wdup-phase-card__icon${s?" wdup-phase-card__icon--done":u?" wdup-phase-card__icon--error":""}`,children:s?o.jsx(Jc,{size:22,color:"white",strokeWidth:2.5}):u?o.jsx(F7,{size:22,color:"white",strokeWidth:2.5}):o.jsx("span",{className:`wdup-phase-card__icon-inner${c?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),o.jsxs("div",{className:"wdup-phase-card__body",children:[o.jsxs("div",{className:"wdup-phase-card__top",children:[o.jsx("span",{className:`wdup-phase-card__label body-2${c?" wdup-phase-card__label--pending":""}`,children:t}),s?o.jsx(ht,{variant:"sub",fill:"soft",size:"small",label:i("common.done","\uC644\uB8CC")}):u?o.jsx(ht,{variant:"danger",fill:"soft",size:"small",label:i("common.failed","\uC2E4\uD328")}):(n||r!==void 0)&&o.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[n,n&&r!==void 0?` \xB7 ${r}%`:r!==void 0?`${r}%`:""]})]}),!c&&o.jsx("div",{className:"wdup-bar",children:o.jsx("div",{className:`wdup-bar__fill${s?" wdup-bar__fill--done":u?" wdup-bar__fill--error":""}${a==="active"&&r===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:r!==void 0||s||u?`${u?100:d}%`:void 0}})})]})]})}function cg({title:e,progress:t,onDone:a,onRetry:r,inline:n}){const{t:i}=me.useTranslation(),{phase:s,error:c,wordCount:u,imagePage:d,imageDone:m,imageTotal:h,pairPercent:p}=t,g=H7(s),v=s==="done",b=!!c;function y(w){return b&&g===w?"error":g>w?"done":g===w?"active":"pending"}const f=y(1),x=y(2),_=y(3),C=s==="image-match"&&h?Math.round((m??0)/h*100):void 0,A=l.useMemo(()=>{if(x!=="done"){if(s==="image-list")return i("wordData.checkingPage",{page:d??1});if(s==="image-match"&&h)return i("wordData.imageCount",{done:or(m),total:or(h)})}},[x,s,d,h,m,i]);return o.jsx(Ta,{inline:n,className:"popup--word-data-update",title:e,footer:b?o.jsx(le,{size:56,variant:"main",onClick:r,children:i("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):o.jsx(le,{size:56,variant:"main",disabled:!v,onClick:a,children:i("common.done","\uC644\uB8CC")}),children:o.jsxs("div",{className:"wdup-cards",children:[o.jsx(jc,{icon:o.jsx(Uc,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:i("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:f,subText:f==="active"?i("wordData.downloadingCount",{n:or(u)}):void 0}),o.jsx(jc,{icon:o.jsx(I7,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:i("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:x,pct:C,subText:A}),o.jsx(jc,{icon:o.jsx(Xc,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:i("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:_,pct:_==="active"?p??0:void 0,subText:void 0})]})})}var V7=".ihabdevteam-core-scope .debug-result-launcher{bottom:18px;display:flex;flex-direction:column;gap:var(--spacing-xs);position:fixed;right:18px;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .debug-buttons{background:rgba(11,43,47,.02);border-radius:var(--radius-s);box-shadow:var(--shadow-dropdown);display:flex;flex-direction:column;gap:6px;padding:var(--spacing-xs)}.ihabdevteam-core-scope .debug-button{background:var(--color-white);border:1px solid rgba(11,43,47,.06);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;padding:8px 12px}.ihabdevteam-core-scope .debug-button:hover{transform:translateY(-1px)}";Q(V7);function dg({enabled:e=!1,renderResultPopup:t}={}){const[a,r]=l.useState(null),[n,i]=l.useState(null),s=p=>{let g=null;p==="noise"?g={score:3,contextsLength:5,results:[{sentence:"\uBB38\uC7A5 A",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 B",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 C",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 D",judgement:null,wording:"\uC548 \uD568",useAnswer:!1},{sentence:"\uBB38\uC7A5 E",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1}]}:p==="short"?g={score:2,contextsLength:3,results:[{sentence:"\uBE44\uBE54\uBC25 \uC124\uBA85",answer:"\uBE44\uBE54\uBC25",selected:"\uBE44\uBE54\uBC25",selectedText:"\uBE44\uBE54\uBC25",correct:!0},{sentence:"\uBCF4\uC308 \uC124\uBA85",answer:"\uBCF4\uC308",selected:"\uC871\uBC1C",selectedText:"\uC871\uBC1C",correct:!1},{sentence:"\uCE7C\uAD6D\uC218 \uC124\uBA85",answer:"\uCE7C\uAD6D\uC218",selected:void 0,selectedText:void 0,correct:void 0}]}:p==="long"?g={score:4,contextsLength:4,results:[{sentence:"\uAE34 \uC774\uC57C\uAE30 1",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",correct:!0},{sentence:"\uAE34 \uC774\uC57C\uAE30 2",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 2",selectedText:"\uC120\uD0DD \uD14D\uC2A4\uD2B8 2",correct:!1},{sentence:"\uAE34 \uC774\uC57C\uAE30 3",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 3",selectedText:void 0,correct:void 0},{sentence:"\uAE34 \uC774\uC57C\uAE30 4",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",correct:!0}]}:p==="order"&&(g={score:1,contextsLength:2,results:[{sentence:"\uC21C\uC11C \uBB38\uC81C 1",answer:"1,2,3",selectedText:"1,2,3",correct:!0},{sentence:"\uC21C\uC11C \uBB38\uC81C 2",answer:"A,B,C",selectedText:"B,A,C",correct:!1}]}),i(g),r(p)},c=l.useCallback(()=>{r(null),i(null)},[]),u=l.useCallback(()=>s("noise"),[]),d=l.useCallback(()=>s("short"),[]),m=l.useCallback(()=>s("long"),[]),h=l.useCallback(()=>s("order"),[]);return e?o.jsxs("div",{className:"debug-result-launcher",children:[o.jsxs("div",{className:"debug-buttons",children:[o.jsx("button",{className:"debug-button",onClick:u,children:"Noise \uACB0\uACFC\uBCF4\uAE30"}),o.jsx("button",{className:"debug-button",onClick:d,children:"ShortStory \uACB0\uACFC\uBCF4\uAE30"}),o.jsx("button",{className:"debug-button",onClick:m,children:"LongStory \uACB0\uACFC\uBCF4\uAE30"}),o.jsx("button",{className:"debug-button",onClick:h,children:"Order \uACB0\uACFC\uBCF4\uAE30"})]}),a&&n?t?.({score:n.score,contextsLength:n.contextsLength,results:n.results,onReplay:c,onClose:c}):null]}):null}var G7=Object.freeze({__proto__:null,Accordion:fh,ActionCard:jp,Alert:Rh,AppHeader:xh,AudioMeter:vn,AudioPlayer:xr,Avatar:Ih,Badge:ht,BarChart:nm,BarChartControls:Il,Board:qh,BottomNav:vl,BrandIdentity:_l,Breadcrumb:Fh,BulkBar:tm,Button:le,Calendar:bm,CardStep:kc,ChartLegend:gn,ChartSection:fn,ChartTotal:gr,Checkbox:Rl,ChoiceChips:db,CircleBadge:jh,CodeBox:em,ColorPicker:Hh,CompanyMeta:Qh,ConfirmPopup:Vb,ConfirmStep:Cc,ConfirmWithTextStep:_c,ContrastFilterPanel:Wb,CoreScope:Lp,CountTile:Vh,CouponInputPopup:Gb,DatePicker:am,DebugResultLauncher:dg,DescriptionTooltip:to,DeviceSideTable:mm,Dialog:Gh,Divider:Mh,Dropdown:Ut,EffectPartyPopper:Dc,EffectPartyPopperHost:Kb,EmptyState:Dp,ErrorState:Ep,FILTER_ALL_VALUE:Nt,FileUpload:Oh,FilterPanel:va,FilterSectionInfo:wo,Footer:ub,Header:wl,Icon:Pe,IconGridMenu:cb,IconRenderer:Pe,InfoTooltip:aa,LandingBottomSticky:hb,LandingHeader:pb,ListPopup:Hb,ListenStep:xc,Loader:Ao,MARKS:Yl,MARK_ICON:Kl,MARK_VARIANT:Zl,MediaQueryOverrideContext:on,MenuTooltip:hr,NoiseSettingsTooltip:bc,NoticeBox:Mp,OrderListStep:wc,PASS_CARD_BG_VARS:Fa,POS_LABEL:Ql,PROMO_BANNER_BG_COMPONENTS:Us,PROMO_BANNER_BG_OPTIONS:Pp,PROMO_BANNER_BG_VARS:xo,Page:_r,PageTitle:Zb,Pagination:br,Panel:Cr,PanelGrid:Cb,PanelRow:Na,PanelRowDevice:wb,PassCard:Bl,PassCardBg:Th,PassCardBgIHAB:Bh,PassCardBgLeftColorGrid:Nh,PassCardBgTwoCircle:Tl,PaymentPlan:Ah,PersonCard:Yh,PhonemeFilterPanel:Fb,PhonemeSelectBlock:Ib,Popup:Ta,ProgressBar:um,ProgressIndicator:Vl,PromoBanner:bh,PromoBannerBgDark:Ls,PromoBannerBgDeep:Ts,PromoBannerBgDiagonal:$s,PromoBannerBgDots:Is,PromoBannerBgInstagram:Ys,PromoBannerBgMain:Cs,PromoBannerBgNaver:Gs,PromoBannerBgOutline:Fs,PromoBannerBgRadial:Ps,PromoBannerBgSoft:ws,PromoBannerBgSoftSub:Ns,PromoBannerBgSub:Ss,PromoBannerBgSuccess:Hs,PromoBannerBgWarm:Es,PublicationCard:Kh,Radio:Ll,RadioGroup:Ph,Rating:Wh,ReportDocument:ag,ReportInfoPanel:og,RingChart:cm,SENTENCE_TRAINING_TYPES:Tn,SearchSummary:$h,Section:ro,SectionHeader:Xh,SegmentedControl:Ha,ShortcutBadge:Lh,SideNav:yl,Slider:Ol,SoundCompass:Dh,SplashLogo:Zh,StatChart:dm,SummaryStrip:tg,TRAINING_TOOLTIP_HOVER_DELAY_MS:qb,Table:yn,TableFilterPanel:Sn,Tabs:zh,TextBoxTooltip:Bo,TextField:Wa,Timeline:Uh,Toast:oo,Toggle:Pl,Toolbar:mn,Tooltip:Sa,TooltipInfo:aa,TooltipTextBox:Bo,TopBanner:gh,TrainingBlock:fm,TrainingBlockButton:xn,TrainingCard:ng,TrainingCardGroup:ig,TrainingPagePopup:Da,TrainingPagePopupBottom:gc,TrainingPagePopupTitle:fc,TrainingResultPopup:Ac,TrainingStep:Va,TrainingStepAudioPlayer:xr,TrainingStepBullet:lc,TrainingStepCard:pc,TrainingStepConfirm:Nn,TrainingStepConfirmWithText:Dn,TrainingStepListen:En,TrainingStepOrderList:jn,TrainingStepTextBox:uc,TrainingStepTitle:cc,TrainingTooltip:Yb,TrainingWordCard:_n,UpdateAlert:rg,WORD_TABLE_PAPER:no,WORD_TYPE_LABEL:Jl,WordDataProvider:eg,WordDataUpdatePopup:cg,WordImageTooltip:Nc,WordSearchFilterPanel:Ob,WordSearchResultBlock:zb,WordTable:io,WordTableBlock:sg,WordTableButton:lg,WordTablePopup:Om,WordTableThumbnail:Ec,buildMonthChartData:om,cellLabel:Vm,cellsForLabels:ab,clearPassCardBgTheme:fa,clearPromoBannerBgTheme:Bt,closeTrainingPopup:Sb,companyTypeLabel:Xb,createTrainingScenario:Bb,cx:ye,deriveNoiseContexts:Mb,derivePassCard:kl,draftValues:lb,expandSlashLabel:kn,formatDuration:ob,getControlDateRange:im,getPayloadTimestamp:Ln,getPromoBannerBgTheme:ys,getSelectedFromPayload:Db,getSelectedText:Eb,getStepPayload:yc,getSteppedPayload:jb,injectPassCardBgTheme:ga,injectPromoBannerBgTheme:Tt,isSelectionCorrect:Lb,labelsForSave:Hm,markAfterClick:Ul,marksForSave:wn,missesByType:Qm,nextFocus:Km,nextMisses:Xm,pageStartIndexes:Xl,passCardBgIhabTheme:Dl,passCardBgLeftColorGridTheme:El,passCardBgTwoCircleTheme:Al,printWordTable:km,promoBannerBgDarkTheme:js,promoBannerBgDeepTheme:As,promoBannerBgDiagonalTheme:Rs,promoBannerBgDotsTheme:zs,promoBannerBgInstagramTheme:qs,promoBannerBgMainTheme:xs,promoBannerBgNaverTheme:Vs,promoBannerBgOutlineTheme:Os,promoBannerBgRadialTheme:Ms,promoBannerBgSoftSubTheme:Bs,promoBannerBgSoftTheme:_s,promoBannerBgSubTheme:ks,promoBannerBgSuccessTheme:Ws,promoBannerBgWarmTheme:Ds,recommendTables:eb,regenerateUnpinned:sb,removeItem:ib,resolveTrainingItems:Tb,resolveTrainingPopupMeta:vc,reviewCells:Fm,reviewSetPlan:Jm,reviewTableName:Wm,scoreKey:yr,scoreSheetHeader:Gm,shouldConfirmDiscard:wm,splitTrainingVariants:Ab,summarize:_m,summarizeMisses:Zm,tableTrends:Um,toDraft:rb,toTrainingText:Nb,togglePin:nb,uncoveredLabels:tb,useAnchoredMenu:So,useBarChartControl:zl,useCalendarMonth:$l,useComboboxSuggestions:Ml,useFitScale:ec,useSoundCompassExam:Eh,useToastLifecycle:Hl,useWordData:Jb,useWordTableDisplaySettings:oc,useWordTablePrint:An,weakItems:Ym}),q7=Object.freeze({__proto__:null});const Y7={...G7,...o5,...u4,...q7};exports.Accordion=fh,exports.ActionCard=jp,exports.Alert=Rh,exports.AppHeader=xh,exports.AudioMeter=vn,exports.AudioPlayer=xr,exports.Avatar=Ih,exports.Badge=ht,exports.BarChart=nm,exports.BarChartControls=Il,exports.Board=qh,exports.BottomNav=vl,exports.BrandIdentity=_l,exports.Breadcrumb=Fh,exports.BulkBar=tm,exports.Button=le,exports.CACHE_GROUPS=Js,exports.CAPABILITY=go,exports.CHOSEONG=qe,exports.Calendar=bm,exports.CardStep=kc,exports.ChartLegend=gn,exports.ChartSection=fn,exports.ChartTotal=gr,exports.Checkbox=Rl,exports.ChoiceChips=db,exports.CircleBadge=jh,exports.CodeBox=em,exports.ColorPicker=Hh,exports.CompanyMeta=Qh,exports.ConfirmPopup=Vb,exports.ConfirmStep=Cc,exports.ConfirmWithTextStep=_c,exports.ContrastFilterPanel=Wb,exports.CoreScope=Lp,exports.CountTile=Vh,exports.CouponInputPopup=Gb,exports.DEFAULT_LOCALE=lo,exports.DatePicker=am,exports.DebugResultLauncher=dg,exports.DescriptionTooltip=to,exports.DeviceSideTable=mm,exports.Dialog=Gh,exports.Divider=Mh,exports.DocumentTitleSuppressContext=Xs,exports.Dropdown=Ut,exports.EMPTY_COMPOSITION=sn,exports.EffectPartyPopper=Dc,exports.EffectPartyPopperHost=Kb,exports.EmptyState=Dp,exports.ErrorState=Ep,exports.FILTER_ALL_VALUE=Nt,exports.FileUpload=Oh,exports.FilterPanel=va,exports.FilterSectionInfo=wo,exports.Footer=ub,exports.Header=wl,exports.I18nProvider=Rf,exports.Icon=Pe,exports.IconGridMenu=cb,exports.IconRenderer=Pe,exports.InfoTooltip=aa,exports.JONGSEONG=gt,exports.JUNGSEONG=dt,exports.LOCALE_STORAGE_KEY=$n,exports.LONG_STORIES=za,exports.LandingBottomSticky=hb,exports.LandingHeader=pb,exports.ListPopup=Hb,exports.ListenStep=xc,exports.Loader=Ao,exports.MARKS=Yl,exports.MARK_ICON=Kl,exports.MARK_VARIANT=Zl,exports.MediaQueryOverrideContext=on,exports.MenuTooltip=hr,exports.NETWORK_ERROR_MESSAGE=qi,exports.NOISE_DATAS=Ra,exports.NO_CODA=ra,exports.NoiseSettingsTooltip=bc,exports.NoticeBox=Mp,exports.ORDER_SETS=Ia,exports.OrderListStep=wc,exports.PASS_CARD_BG_VARS=Fa,exports.PLAN_FEATURES=_p,exports.PLAN_LIMITS=kp,exports.POS_LABEL=Ql,exports.PROMO_BANNER_BG_COMPONENTS=Us,exports.PROMO_BANNER_BG_OPTIONS=Pp,exports.PROMO_BANNER_BG_VARS=xo,exports.Page=_r,exports.PageTitle=Zb,exports.Pagination=br,exports.Panel=Cr,exports.PanelGrid=Cb,exports.PanelRow=Na,exports.PanelRowDevice=wb,exports.PassCard=Bl,exports.PassCardBg=Th,exports.PassCardBgIHAB=Bh,exports.PassCardBgLeftColorGrid=Nh,exports.PassCardBgTwoCircle=Tl,exports.PaymentPlan=Ah,exports.PersonCard=Yh,exports.PhonemeFilterPanel=Fb,exports.PhonemeSelectBlock=Ib,exports.Popup=Ta,exports.ProgressBar=um,exports.ProgressIndicator=Vl,exports.PromoBanner=bh,exports.PromoBannerBgDark=Ls,exports.PromoBannerBgDeep=Ts,exports.PromoBannerBgDiagonal=$s,exports.PromoBannerBgDots=Is,exports.PromoBannerBgInstagram=Ys,exports.PromoBannerBgMain=Cs,exports.PromoBannerBgNaver=Gs,exports.PromoBannerBgOutline=Fs,exports.PromoBannerBgRadial=Ps,exports.PromoBannerBgSoft=ws,exports.PromoBannerBgSoftSub=Ns,exports.PromoBannerBgSub=Ss,exports.PromoBannerBgSuccess=Hs,exports.PromoBannerBgWarm=Es,exports.PublicationCard=Kh,exports.Radio=Ll,exports.RadioGroup=Ph,exports.Rating=Wh,exports.ReportDocument=ag,exports.ReportInfoPanel=og,exports.RingChart=cm,exports.SENTENCE_TRAINING_TYPES=Tn,exports.SHORT_STORIES=$a,exports.SUPPORTED_LOCALES=jo,exports.SYLLABLE_MIN=na,exports.SearchSummary=$h,exports.Section=ro,exports.SectionHeader=Xh,exports.SegmentedControl=Ha,exports.ShortcutBadge=Lh,exports.SideNav=yl,exports.Slider=Ol,exports.SoundCompass=Dh,exports.SplashLogo=Zh,exports.StatChart=dm,exports.SummaryStrip=tg,exports.TIER_RANK=wp,exports.TOPIC_TYPES=cp,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=qb,exports.TRAINING_TYPES=Zr,exports.TRAINING_TYPE_I18N_KEY=bs,exports.Table=yn,exports.TableFilterPanel=Sn,exports.Tabs=zh,exports.TextBoxTooltip=Bo,exports.TextField=Wa,exports.Timeline=Uh,exports.Toast=oo,exports.Toggle=Pl,exports.Toolbar=mn,exports.Tooltip=Sa,exports.TooltipInfo=aa,exports.TooltipTextBox=Bo,exports.TopBanner=gh,exports.TrainingBlock=fm,exports.TrainingBlockButton=xn,exports.TrainingCard=ng,exports.TrainingCardGroup=ig,exports.TrainingPagePopup=Da,exports.TrainingPagePopupBottom=gc,exports.TrainingPagePopupTitle=fc,exports.TrainingResultPopup=Ac,exports.TrainingStep=Va,exports.TrainingStepAudioPlayer=xr,exports.TrainingStepBullet=lc,exports.TrainingStepCard=pc,exports.TrainingStepConfirm=Nn,exports.TrainingStepConfirmWithText=Dn,exports.TrainingStepListen=En,exports.TrainingStepOrderList=jn,exports.TrainingStepTextBox=uc,exports.TrainingStepTitle=cc,exports.TrainingTooltip=Yb,exports.TrainingWordCard=_n,exports.UpdateAlert=rg,exports.VAP_PAGE_SIZE_OPTIONS=tl,exports.WORD_SUGGESTION_ACCOUNT_LIMIT=Tp,exports.WORD_SUGGESTION_EXISTING_ERROR=Np,exports.WORD_SUGGESTION_WEEKLY_QUOTA=Ap,exports.WORD_TABLE_PAPER=no,exports.WORD_TYPE_LABEL=Jl,exports.WordDataProvider=eg,exports.WordDataUpdatePopup=cg,exports.WordImageTooltip=Nc,exports.WordSearchFilterPanel=Ob,exports.WordSearchResultBlock=zb,exports.WordTable=io,exports.WordTableBlock=sg,exports.WordTableButton=lg,exports.WordTablePopup=Om,exports.WordTableThumbnail=Ec,exports.applyFontScale=ls,exports.applyTheme=is,exports.buildChangeWholeSyllableProblem=Gi,exports.buildDropCompoundProblem=Oi,exports.buildDropContrast3Problem=Ii,exports.buildDropContrastProblem=zi,exports.buildDropFinalConsonantProblem=Fi,exports.buildGradeSection=nl,exports.buildMonthChartData=om,exports.buildMultiPartPosContrast=yi,exports.buildPairIndex=Qd,exports.buildPartOfSpeechSection=il,exports.buildPositionSection=Xp,exports.buildRemoveConsonantProblem=Hi,exports.buildSelectSection=Zp,exports.buildSyllableMaskIndex=Vi,exports.buildSyllableSection=Kp,exports.buildWordTypeSection=sl,exports.bulkSetImageExistence=Fd,exports.cardQuestionTitle=yu,exports.cellLabel=Vm,exports.cellsForLabels=ab,exports.charToPronValue=pl,exports.checkImageExists=qo,exports.classifyPairDifficulty=ii,exports.clearAudioExistsCache=Md,exports.clearImageExistenceCache=ri,exports.clearPairIndexCache=gi,exports.clearPassCardBgTheme=fa,exports.clearPromoBannerBgTheme=Bt,exports.closeTrainingPopup=Sb,exports.companyTypeLabel=Xb,exports.composeSyllable=ua,exports.computeDailySelection=ds,exports.configureImageResolver=Id,exports.configureNoiseSettingsStore=Wu,exports.configurePronunciationResolver=Rd,exports.configureStorage=Kn,exports.configureTTS=Ld,exports.configureTrainingCategories=tp,exports.convertComposition=ml,exports.copyText=as,exports.createDecompCache=ni,exports.createTTSUrlResolver=Gu,exports.createTrainingScenario=Bb,exports.cx=ye,exports.dateToDb=ep,exports.default=Y7,exports.deriveNoiseContexts=Mb,exports.derivePassCard=kl,exports.downloadCsvText=Su,exports.downloadSound=Br,exports.draftValues=lb,exports.ensureTrainingDataLoaded=ms,exports.escapeCsvField=ku,exports.expandSlashLabel=kn,exports.fileExists=Zn,exports.filterContrastCandidates=vi,exports.finalToPhoneme=Fr,exports.firstChoseongOf=si,exports.fmtBytes=Ip,exports.formatCount=or,exports.formatDateKo=qu,exports.formatDateLocale=Uu,exports.formatDateLongKo=Yu,exports.formatDateLongLocale=Ku,exports.formatDatetimeKo=Zu,exports.formatDuration=ob,exports.formatPhone=Qu,exports.formatRelativeTime=qr,exports.formatTimeHM=Ur,exports.formatYmd=Yr,exports.getAssetBaseUrl=Yn,exports.getControlDateRange=im,exports.getDailySelection=sp,exports.getElementAnalyser=Ho,exports.getErrorMessage=Vr,exports.getImageExistenceStats=Er,exports.getImageExistsCached=oi,exports.getImageResolver=Ma,exports.getNoiseBaseUrl=Xn,exports.getPairIndex=Ka,exports.getPayloadTimestamp=Ln,exports.getPlanTier=Sp,exports.getPromoBannerBgTheme=ys,exports.getPronunciationResolver=ei,exports.getSavedFontScale=ss,exports.getSavedTheme=ns,exports.getSelectedFromPayload=Db,exports.getSelectedText=Eb,exports.getSignedOrPublicUrl=Io,exports.getStepPayload=yc,exports.getSteppedPayload=jb,exports.getTTSFallbackUrlResolver=Jn,exports.getTTSUrlResolver=Oo,exports.getTodayKst=Gr,exports.getTopicTypes=Kr,exports.getTrainingPools=us,exports.getTrainingTypes=rs,exports.getWordPool=fo,exports.hasQuestionWordConstraint=pu,exports.hasSel=ft,exports.hasStructureContrast=Uo,exports.initFontScale=np,exports.initTheme=op,exports.injectPassCardBgTheme=ga,exports.injectPromoBannerBgTheme=Tt,exports.isAllChoseong=ci,exports.isManualOnlyType=mu,exports.isNetworkErrorMessage=Yi,exports.isSelectionCorrect=Lb,exports.isSyllablePattern=pi,exports.isThisWeekPick=Bp,exports.isTrainingDataLoaded=lp,exports.isValidQuestionWord=hu,exports.itemCorrectness=Xi,exports.jamoToNamesForSpeech=xu,exports.labelsForSave=Hm,exports.loadGameLeaderboard=Fu,exports.loadMyGameRanks=Ou,exports.loadNoiseSettings=es,exports.loadTrainingData=hs,exports.logCrossword=Eu,exports.logTrainingCompletion=Zi,exports.logTrainingTime=Ki,exports.lsBytes=el,exports.markAfterClick=Ul,exports.marksForSave=wn,exports.matchSyllables=Qa,exports.matchesChoseongSearch=Wd,exports.matchesSyllablePattern=hi,exports.matchesWordQuery=po,exports.meaningKey=dn,exports.mergeQuestionText=Ri,exports.minimalPairDistractors=jr,exports.missesByType=Qm,exports.nextFocus=Km,exports.nextMisses=Xm,exports.normalizeDate=Ju,exports.officialSoundPath=Vu,exports.pageStartIndexes=Xl,exports.parseSortValue=wu,exports.parseSyllable=Ne,exports.passCardBgIhabTheme=Dl,exports.passCardBgLeftColorGridTheme=El,exports.passCardBgTwoCircleTheme=Al,exports.patternToComposition=Ud,exports.phonemePartsOf=vu,exports.pickEuRo=Li,exports.pickEulReul=Ni,exports.pickEunNeun=Ei,exports.pickIga=Ti,exports.pickWaGwa=ji,exports.prewarmImageCache=Od,exports.primarySelPart=er,exports.printWordTable=km,exports.promoBannerBgDarkTheme=js,exports.promoBannerBgDeepTheme=As,exports.promoBannerBgDiagonalTheme=Rs,exports.promoBannerBgDotsTheme=zs,exports.promoBannerBgInstagramTheme=qs,exports.promoBannerBgMainTheme=xs,exports.promoBannerBgNaverTheme=Vs,exports.promoBannerBgOutlineTheme=Os,exports.promoBannerBgRadialTheme=Ms,exports.promoBannerBgSoftSubTheme=Bs,exports.promoBannerBgSoftTheme=_s,exports.promoBannerBgSubTheme=ks,exports.promoBannerBgSuccessTheme=Ws,exports.promoBannerBgWarmTheme=Ds,exports.pronToCharValue=hl,exports.readLevel=ti,exports.recommendTables=eb,exports.regenerateUnpinned=sb,exports.removeItem=ib,exports.reorderArray=Mi,exports.resolveAssetUrl=$o,exports.resolveSoundPath=Tr,exports.resolveTrainingItems=Tb,exports.resolveTrainingPopupMeta=vc,exports.resumeAudioMeter=Wo,exports.reviewCells=Fm,exports.reviewSetPlan=Jm,exports.reviewTableName=Wm,exports.sample=Qt,exports.saveLocale=Mf,exports.saveNoiseSettings=ts,exports.scoreKey=yr,exports.scoreSheetHeader=Gm,exports.searchAndRankWords=Zd,exports.setAssetBaseUrl=Ed,exports.setCrosswordLogger=Du,exports.setGameLeaderboardLoader=zu,exports.setGameRanksLoader=$u,exports.setGameScoreSubmitter=Ru,exports.setTrainingCompletionLogger=Nu,exports.setTrainingTimeLogger=Bu,exports.setWordPool=Tu,exports.shouldConfirmDiscard=wm,exports.shuffle=ze,exports.sortToValue=_u,exports.soundOf=Hr,exports.speak=Bd,exports.splitTrainingVariants=Ab,exports.stopSpeaking=Nd,exports.submitGameScore=Iu,exports.summarize=_m,exports.summarizeMisses=Zm,exports.syllMatchesComp=Pa,exports.syllableContrasts=Ja,exports.syllableLength=mo,exports.syllablePron=$i,exports.syllableToFilter=nn,exports.tableTrends=Um,exports.toBase64UrlSafe=Hu,exports.toChoseong=li,exports.toDraft=rb,exports.toItemResults=Qi,exports.toKstHm=Xu,exports.toKstYmd=ka,exports.toStandardPronunciation=lu,exports.toStorageName=tr,exports.toTrainingText=Nb,exports.toUserErrorMessage=Cu,exports.today=Co,exports.toggleAttributeFilter=Qp,exports.togglePin=nb,exports.uncoveredLabels=tb,exports.useAnchoredMenu=So,exports.useBarChartControl=zl,exports.useCacheManagement=Op,exports.useCalendarMonth=$l,exports.useComboboxSuggestions=Ml,exports.useDailyTrainingSelection=ch,exports.useDelayedHoverAnchor=Up,exports.useDeviceManagement=Yp,exports.useDocumentTitle=Qs,exports.useEscToClose=uh,exports.useFitScale=ec,exports.useFontScale=an,exports.useHoverAnchor=_o,exports.useI18n=Pf,exports.useMediaQuery=oa,exports.usePagedList=hh,exports.usePasswordChange=zp,exports.useRelativeDay=$p,exports.useSoundCompassExam=Eh,exports.useTablePaging=al,exports.useTableSort=ol,exports.useToastLifecycle=Hl,exports.useToastState=un,exports.useTrainingTypeLabels=mh,exports.useVisitAllPanel=qp,exports.useVisitHistory=Hp,exports.useVisitSchedule=Gp,exports.useWindowEvent=cr,exports.useWordAttributeFilterKeys=rl,exports.useWordData=Jb,exports.useWordDataStats=Fp,exports.useWordMeanings=ph,exports.useWordTableDisplaySettings=oc,exports.useWordTablePrint=An,exports.useWordTrainingDataGeneration=ih,exports.useWordTrainingFilter=nh,exports.validateSyllableSearchInput=Kd,exports.valueToJamos=ba,exports.weakItems=Ym,exports.withEuRo=uu,exports.withEulReul=Di,exports.withEunNeun=cu,exports.withIga=Bi,exports.withWaGwa=du,exports.wordContainsChoseong=Vd,exports.wordContainsJongseong=qd,exports.wordContainsJungseong=Gd,exports.wordHasNoCoda=di,exports.wordHasSyllableMatching=ui,exports.wrongItems=ju;
982
+ \uC778\uB77C\uC778 width\uAC00 \uC544\uC608 \uC124\uC815\uB418\uC9C0 \uC54A\uC544(undefined) \uACBD\uD569 \uC790\uCCB4\uAC00 \uC5C6\uC74C(\uCF54\uB4DC \uD655\uC778\uB428). */.ihabdevteam-core-scope .wdup-bar__fill--indeterminate{animation:wdup-indeterminate 1.4s ease-in-out infinite;width:40%}@keyframes wdup-indeterminate{0%{transform:translateX(-150%)}to{transform:translateX(400%)}}.ihabdevteam-core-scope .wdup-phase-card__sub{color:var(--color-lightGray)}`;Q(W7);function H7(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function jc({icon:e,label:t,state:a,pct:r,subText:n}){const{t:i}=me.useTranslation(),s=a==="done",c=a==="pending",u=a==="error",d=s?100:r??0;return o.jsxs("div",{className:"wdup-phase-card",children:[o.jsx("div",{className:`wdup-phase-card__icon${s?" wdup-phase-card__icon--done":u?" wdup-phase-card__icon--error":""}`,children:s?o.jsx(Jc,{size:22,color:"white",strokeWidth:2.5}):u?o.jsx(F7,{size:22,color:"white",strokeWidth:2.5}):o.jsx("span",{className:`wdup-phase-card__icon-inner${c?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),o.jsxs("div",{className:"wdup-phase-card__body",children:[o.jsxs("div",{className:"wdup-phase-card__top",children:[o.jsx("span",{className:`wdup-phase-card__label body-2${c?" wdup-phase-card__label--pending":""}`,children:t}),s?o.jsx(ht,{variant:"sub",fill:"soft",size:"small",label:i("common.done","\uC644\uB8CC")}):u?o.jsx(ht,{variant:"danger",fill:"soft",size:"small",label:i("common.failed","\uC2E4\uD328")}):(n||r!==void 0)&&o.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[n,n&&r!==void 0?` \xB7 ${r}%`:r!==void 0?`${r}%`:""]})]}),!c&&o.jsx("div",{className:"wdup-bar",children:o.jsx("div",{className:`wdup-bar__fill${s?" wdup-bar__fill--done":u?" wdup-bar__fill--error":""}${a==="active"&&r===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:r!==void 0||s||u?`${u?100:d}%`:void 0}})})]})]})}function cg({title:e,progress:t,onDone:a,onRetry:r,inline:n}){const{t:i}=me.useTranslation(),{phase:s,error:c,wordCount:u,imagePage:d,imageDone:m,imageTotal:h,pairPercent:p}=t,g=H7(s),v=s==="done",b=!!c;function y(w){return b&&g===w?"error":g>w?"done":g===w?"active":"pending"}const f=y(1),x=y(2),_=y(3),C=s==="image-match"&&h?Math.round((m??0)/h*100):void 0,A=l.useMemo(()=>{if(x!=="done"){if(s==="image-list")return i("wordData.checkingPage",{page:d??1});if(s==="image-match"&&h)return i("wordData.imageCount",{done:or(m),total:or(h)})}},[x,s,d,h,m,i]);return o.jsx(Ta,{inline:n,className:"popup--word-data-update",title:e,footer:b?o.jsx(ce,{size:56,variant:"main",onClick:r,children:i("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):o.jsx(ce,{size:56,variant:"main",disabled:!v,onClick:a,children:i("common.done","\uC644\uB8CC")}),children:o.jsxs("div",{className:"wdup-cards",children:[o.jsx(jc,{icon:o.jsx(Uc,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:i("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:f,subText:f==="active"?i("wordData.downloadingCount",{n:or(u)}):void 0}),o.jsx(jc,{icon:o.jsx(I7,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:i("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:x,pct:C,subText:A}),o.jsx(jc,{icon:o.jsx(Xc,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:i("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:_,pct:_==="active"?p??0:void 0,subText:void 0})]})})}var V7=".ihabdevteam-core-scope .debug-result-launcher{bottom:18px;display:flex;flex-direction:column;gap:var(--spacing-xs);position:fixed;right:18px;z-index:var(--z-tooltip)}.ihabdevteam-core-scope .debug-buttons{background:rgba(11,43,47,.02);border-radius:var(--radius-s);box-shadow:var(--shadow-dropdown);display:flex;flex-direction:column;gap:6px;padding:var(--spacing-xs)}.ihabdevteam-core-scope .debug-button{background:var(--color-white);border:1px solid rgba(11,43,47,.06);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;padding:8px 12px}.ihabdevteam-core-scope .debug-button:hover{transform:translateY(-1px)}";Q(V7);function dg({enabled:e=!1,renderResultPopup:t}={}){const[a,r]=l.useState(null),[n,i]=l.useState(null),s=p=>{let g=null;p==="noise"?g={score:3,contextsLength:5,results:[{sentence:"\uBB38\uC7A5 A",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 B",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 C",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 D",judgement:null,wording:"\uC548 \uD568",useAnswer:!1},{sentence:"\uBB38\uC7A5 E",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1}]}:p==="short"?g={score:2,contextsLength:3,results:[{sentence:"\uBE44\uBE54\uBC25 \uC124\uBA85",answer:"\uBE44\uBE54\uBC25",selected:"\uBE44\uBE54\uBC25",selectedText:"\uBE44\uBE54\uBC25",correct:!0},{sentence:"\uBCF4\uC308 \uC124\uBA85",answer:"\uBCF4\uC308",selected:"\uC871\uBC1C",selectedText:"\uC871\uBC1C",correct:!1},{sentence:"\uCE7C\uAD6D\uC218 \uC124\uBA85",answer:"\uCE7C\uAD6D\uC218",selected:void 0,selectedText:void 0,correct:void 0}]}:p==="long"?g={score:4,contextsLength:4,results:[{sentence:"\uAE34 \uC774\uC57C\uAE30 1",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",correct:!0},{sentence:"\uAE34 \uC774\uC57C\uAE30 2",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 2",selectedText:"\uC120\uD0DD \uD14D\uC2A4\uD2B8 2",correct:!1},{sentence:"\uAE34 \uC774\uC57C\uAE30 3",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 3",selectedText:void 0,correct:void 0},{sentence:"\uAE34 \uC774\uC57C\uAE30 4",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",correct:!0}]}:p==="order"&&(g={score:1,contextsLength:2,results:[{sentence:"\uC21C\uC11C \uBB38\uC81C 1",answer:"1,2,3",selectedText:"1,2,3",correct:!0},{sentence:"\uC21C\uC11C \uBB38\uC81C 2",answer:"A,B,C",selectedText:"B,A,C",correct:!1}]}),i(g),r(p)},c=l.useCallback(()=>{r(null),i(null)},[]),u=l.useCallback(()=>s("noise"),[]),d=l.useCallback(()=>s("short"),[]),m=l.useCallback(()=>s("long"),[]),h=l.useCallback(()=>s("order"),[]);return e?o.jsxs("div",{className:"debug-result-launcher",children:[o.jsxs("div",{className:"debug-buttons",children:[o.jsx("button",{className:"debug-button",onClick:u,children:"Noise \uACB0\uACFC\uBCF4\uAE30"}),o.jsx("button",{className:"debug-button",onClick:d,children:"ShortStory \uACB0\uACFC\uBCF4\uAE30"}),o.jsx("button",{className:"debug-button",onClick:m,children:"LongStory \uACB0\uACFC\uBCF4\uAE30"}),o.jsx("button",{className:"debug-button",onClick:h,children:"Order \uACB0\uACFC\uBCF4\uAE30"})]}),a&&n?t?.({score:n.score,contextsLength:n.contextsLength,results:n.results,onReplay:c,onClose:c}):null]}):null}var G7=Object.freeze({__proto__:null,Accordion:fh,ActionCard:jp,Alert:Rh,AppHeader:xh,AudioMeter:vn,AudioPlayer:xr,Avatar:Ih,Badge:ht,BarChart:nm,BarChartControls:Il,Board:qh,BottomNav:vl,BrandIdentity:_l,Breadcrumb:Fh,BulkBar:tm,Button:ce,Calendar:bm,CardStep:kc,ChartLegend:gn,ChartSection:fn,ChartTotal:gr,Checkbox:Rl,ChoiceChips:db,CircleBadge:jh,CodeBox:em,ColorPicker:Hh,CompanyMeta:Qh,ConfirmPopup:Vb,ConfirmStep:Cc,ConfirmWithTextStep:_c,ContrastFilterPanel:Wb,CoreScope:Lp,CountTile:Vh,CouponInputPopup:Gb,DatePicker:am,DebugResultLauncher:dg,DescriptionTooltip:to,DeviceSideTable:mm,Dialog:Gh,Divider:Mh,Dropdown:Ut,EffectPartyPopper:Dc,EffectPartyPopperHost:Kb,EmptyState:Dp,ErrorState:Ep,FILTER_ALL_VALUE:Nt,FileUpload:Oh,FilterPanel:va,FilterSectionInfo:wo,Footer:ub,Header:wl,Icon:Pe,IconGridMenu:cb,IconRenderer:Pe,InfoTooltip:aa,LandingBottomSticky:hb,LandingHeader:pb,ListPopup:Hb,ListenStep:xc,Loader:Ao,MARKS:Yl,MARK_ICON:Kl,MARK_VARIANT:Zl,MediaQueryOverrideContext:on,MenuTooltip:hr,NoiseSettingsTooltip:bc,NoticeBox:Mp,OrderListStep:wc,PASS_CARD_BG_VARS:Fa,POS_LABEL:Ql,PROMO_BANNER_BG_COMPONENTS:Us,PROMO_BANNER_BG_OPTIONS:Pp,PROMO_BANNER_BG_VARS:xo,Page:_r,PageTitle:Zb,Pagination:br,Panel:Cr,PanelGrid:Cb,PanelRow:Na,PanelRowDevice:wb,PassCard:Bl,PassCardBg:Th,PassCardBgIHAB:Bh,PassCardBgLeftColorGrid:Nh,PassCardBgTwoCircle:Tl,PaymentPlan:Ah,PersonCard:Yh,PhonemeFilterPanel:Fb,PhonemeSelectBlock:Ib,Popup:Ta,ProgressBar:um,ProgressIndicator:Vl,PromoBanner:bh,PromoBannerBgDark:Ls,PromoBannerBgDeep:Ts,PromoBannerBgDiagonal:$s,PromoBannerBgDots:Is,PromoBannerBgInstagram:Ys,PromoBannerBgMain:Cs,PromoBannerBgNaver:Gs,PromoBannerBgOutline:Fs,PromoBannerBgRadial:Ps,PromoBannerBgSoft:ws,PromoBannerBgSoftSub:Ns,PromoBannerBgSub:Ss,PromoBannerBgSuccess:Hs,PromoBannerBgWarm:Es,PublicationCard:Kh,Radio:Ll,RadioGroup:Ph,Rating:Wh,ReportDocument:ag,ReportInfoPanel:og,RingChart:cm,SENTENCE_TRAINING_TYPES:Tn,SearchSummary:$h,Section:ro,SectionHeader:Xh,SegmentedControl:Ha,ShortcutBadge:Lh,SideNav:yl,Slider:Ol,SoundCompass:Dh,SplashLogo:Zh,StatChart:dm,SummaryStrip:tg,TRAINING_TOOLTIP_HOVER_DELAY_MS:qb,Table:yn,TableFilterPanel:Sn,Tabs:zh,TextBoxTooltip:Bo,TextField:Wa,Timeline:Uh,Toast:oo,Toggle:Pl,Toolbar:mn,Tooltip:Sa,TooltipInfo:aa,TooltipTextBox:Bo,TopBanner:gh,TrainingBlock:fm,TrainingBlockButton:xn,TrainingCard:ng,TrainingCardGroup:ig,TrainingPagePopup:Da,TrainingPagePopupBottom:gc,TrainingPagePopupTitle:fc,TrainingResultPopup:Ac,TrainingStep:Va,TrainingStepAudioPlayer:xr,TrainingStepBullet:lc,TrainingStepCard:pc,TrainingStepConfirm:Nn,TrainingStepConfirmWithText:Dn,TrainingStepListen:En,TrainingStepOrderList:jn,TrainingStepTextBox:uc,TrainingStepTitle:cc,TrainingTooltip:Yb,TrainingWordCard:_n,UpdateAlert:rg,WORD_TABLE_PAPER:no,WORD_TYPE_LABEL:Jl,WordDataProvider:eg,WordDataUpdatePopup:cg,WordImageTooltip:Nc,WordSearchFilterPanel:Ob,WordSearchResultBlock:zb,WordTable:io,WordTableBlock:sg,WordTableButton:lg,WordTablePopup:Om,WordTableThumbnail:Ec,buildMonthChartData:om,cellLabel:Vm,cellsForLabels:ab,clearPassCardBgTheme:fa,clearPromoBannerBgTheme:Bt,closeTrainingPopup:Sb,companyTypeLabel:Xb,createTrainingScenario:Bb,cx:xe,deriveNoiseContexts:Mb,derivePassCard:kl,draftValues:lb,expandSlashLabel:kn,formatDuration:ob,getControlDateRange:im,getPayloadTimestamp:Ln,getPromoBannerBgTheme:ys,getSelectedFromPayload:Db,getSelectedText:Eb,getStepPayload:yc,getSteppedPayload:jb,injectPassCardBgTheme:ga,injectPromoBannerBgTheme:Tt,isSelectionCorrect:Lb,labelsForSave:Hm,markAfterClick:Ul,marksForSave:wn,missesByType:Qm,nextFocus:Km,nextMisses:Xm,pageStartIndexes:Xl,passCardBgIhabTheme:Dl,passCardBgLeftColorGridTheme:El,passCardBgTwoCircleTheme:Al,printWordTable:km,promoBannerBgDarkTheme:js,promoBannerBgDeepTheme:As,promoBannerBgDiagonalTheme:Rs,promoBannerBgDotsTheme:zs,promoBannerBgInstagramTheme:qs,promoBannerBgMainTheme:xs,promoBannerBgNaverTheme:Vs,promoBannerBgOutlineTheme:Os,promoBannerBgRadialTheme:Ms,promoBannerBgSoftSubTheme:Bs,promoBannerBgSoftTheme:_s,promoBannerBgSubTheme:ks,promoBannerBgSuccessTheme:Ws,promoBannerBgWarmTheme:Ds,recommendTables:eb,regenerateUnpinned:sb,removeItem:ib,resolveTrainingItems:Tb,resolveTrainingPopupMeta:vc,reviewCells:Fm,reviewSetPlan:Jm,reviewTableName:Wm,scoreKey:yr,scoreSheetHeader:Gm,shouldConfirmDiscard:wm,splitTrainingVariants:Ab,summarize:_m,summarizeMisses:Zm,tableTrends:Um,toDraft:rb,toTrainingText:Nb,togglePin:nb,uncoveredLabels:tb,useAnchoredMenu:So,useBarChartControl:zl,useCalendarMonth:$l,useComboboxSuggestions:Ml,useFitScale:ec,useSoundCompassExam:Eh,useToastLifecycle:Hl,useWordData:Jb,useWordTableDisplaySettings:oc,useWordTablePrint:An,weakItems:Ym}),q7=Object.freeze({__proto__:null});const Y7={...G7,...o5,...u4,...q7};exports.Accordion=fh,exports.ActionCard=jp,exports.Alert=Rh,exports.AppHeader=xh,exports.AudioMeter=vn,exports.AudioPlayer=xr,exports.Avatar=Ih,exports.Badge=ht,exports.BarChart=nm,exports.BarChartControls=Il,exports.Board=qh,exports.BottomNav=vl,exports.BrandIdentity=_l,exports.Breadcrumb=Fh,exports.BulkBar=tm,exports.Button=ce,exports.CACHE_GROUPS=Js,exports.CAPABILITY=go,exports.CHOSEONG=qe,exports.Calendar=bm,exports.CardStep=kc,exports.ChartLegend=gn,exports.ChartSection=fn,exports.ChartTotal=gr,exports.Checkbox=Rl,exports.ChoiceChips=db,exports.CircleBadge=jh,exports.CodeBox=em,exports.ColorPicker=Hh,exports.CompanyMeta=Qh,exports.ConfirmPopup=Vb,exports.ConfirmStep=Cc,exports.ConfirmWithTextStep=_c,exports.ContrastFilterPanel=Wb,exports.CoreScope=Lp,exports.CountTile=Vh,exports.CouponInputPopup=Gb,exports.DEFAULT_LOCALE=lo,exports.DatePicker=am,exports.DebugResultLauncher=dg,exports.DescriptionTooltip=to,exports.DeviceSideTable=mm,exports.Dialog=Gh,exports.Divider=Mh,exports.DocumentTitleSuppressContext=Xs,exports.Dropdown=Ut,exports.EMPTY_COMPOSITION=sn,exports.EffectPartyPopper=Dc,exports.EffectPartyPopperHost=Kb,exports.EmptyState=Dp,exports.ErrorState=Ep,exports.FILTER_ALL_VALUE=Nt,exports.FileUpload=Oh,exports.FilterPanel=va,exports.FilterSectionInfo=wo,exports.Footer=ub,exports.Header=wl,exports.I18nProvider=Rf,exports.Icon=Pe,exports.IconGridMenu=cb,exports.IconRenderer=Pe,exports.InfoTooltip=aa,exports.JONGSEONG=gt,exports.JUNGSEONG=dt,exports.LOCALE_STORAGE_KEY=$n,exports.LONG_STORIES=za,exports.LandingBottomSticky=hb,exports.LandingHeader=pb,exports.ListPopup=Hb,exports.ListenStep=xc,exports.Loader=Ao,exports.MARKS=Yl,exports.MARK_ICON=Kl,exports.MARK_VARIANT=Zl,exports.MediaQueryOverrideContext=on,exports.MenuTooltip=hr,exports.NETWORK_ERROR_MESSAGE=qi,exports.NOISE_DATAS=Ra,exports.NO_CODA=ra,exports.NoiseSettingsTooltip=bc,exports.NoticeBox=Mp,exports.ORDER_SETS=Ia,exports.OrderListStep=wc,exports.PASS_CARD_BG_VARS=Fa,exports.PLAN_FEATURES=_p,exports.PLAN_LIMITS=kp,exports.POS_LABEL=Ql,exports.PROMO_BANNER_BG_COMPONENTS=Us,exports.PROMO_BANNER_BG_OPTIONS=Pp,exports.PROMO_BANNER_BG_VARS=xo,exports.Page=_r,exports.PageTitle=Zb,exports.Pagination=br,exports.Panel=Cr,exports.PanelGrid=Cb,exports.PanelRow=Na,exports.PanelRowDevice=wb,exports.PassCard=Bl,exports.PassCardBg=Th,exports.PassCardBgIHAB=Bh,exports.PassCardBgLeftColorGrid=Nh,exports.PassCardBgTwoCircle=Tl,exports.PaymentPlan=Ah,exports.PersonCard=Yh,exports.PhonemeFilterPanel=Fb,exports.PhonemeSelectBlock=Ib,exports.Popup=Ta,exports.ProgressBar=um,exports.ProgressIndicator=Vl,exports.PromoBanner=bh,exports.PromoBannerBgDark=Ls,exports.PromoBannerBgDeep=Ts,exports.PromoBannerBgDiagonal=$s,exports.PromoBannerBgDots=Is,exports.PromoBannerBgInstagram=Ys,exports.PromoBannerBgMain=Cs,exports.PromoBannerBgNaver=Gs,exports.PromoBannerBgOutline=Fs,exports.PromoBannerBgRadial=Ps,exports.PromoBannerBgSoft=ws,exports.PromoBannerBgSoftSub=Ns,exports.PromoBannerBgSub=Ss,exports.PromoBannerBgSuccess=Hs,exports.PromoBannerBgWarm=Es,exports.PublicationCard=Kh,exports.Radio=Ll,exports.RadioGroup=Ph,exports.Rating=Wh,exports.ReportDocument=ag,exports.ReportInfoPanel=og,exports.RingChart=cm,exports.SENTENCE_TRAINING_TYPES=Tn,exports.SHORT_STORIES=$a,exports.SUPPORTED_LOCALES=jo,exports.SYLLABLE_MIN=na,exports.SearchSummary=$h,exports.Section=ro,exports.SectionHeader=Xh,exports.SegmentedControl=Ha,exports.ShortcutBadge=Lh,exports.SideNav=yl,exports.Slider=Ol,exports.SoundCompass=Dh,exports.SplashLogo=Zh,exports.StatChart=dm,exports.SummaryStrip=tg,exports.TIER_RANK=wp,exports.TOPIC_TYPES=cp,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=qb,exports.TRAINING_TYPES=Zr,exports.TRAINING_TYPE_I18N_KEY=bs,exports.Table=yn,exports.TableFilterPanel=Sn,exports.Tabs=zh,exports.TextBoxTooltip=Bo,exports.TextField=Wa,exports.Timeline=Uh,exports.Toast=oo,exports.Toggle=Pl,exports.Toolbar=mn,exports.Tooltip=Sa,exports.TooltipInfo=aa,exports.TooltipTextBox=Bo,exports.TopBanner=gh,exports.TrainingBlock=fm,exports.TrainingBlockButton=xn,exports.TrainingCard=ng,exports.TrainingCardGroup=ig,exports.TrainingPagePopup=Da,exports.TrainingPagePopupBottom=gc,exports.TrainingPagePopupTitle=fc,exports.TrainingResultPopup=Ac,exports.TrainingStep=Va,exports.TrainingStepAudioPlayer=xr,exports.TrainingStepBullet=lc,exports.TrainingStepCard=pc,exports.TrainingStepConfirm=Nn,exports.TrainingStepConfirmWithText=Dn,exports.TrainingStepListen=En,exports.TrainingStepOrderList=jn,exports.TrainingStepTextBox=uc,exports.TrainingStepTitle=cc,exports.TrainingTooltip=Yb,exports.TrainingWordCard=_n,exports.UpdateAlert=rg,exports.VAP_PAGE_SIZE_OPTIONS=tl,exports.WORD_SUGGESTION_ACCOUNT_LIMIT=Tp,exports.WORD_SUGGESTION_EXISTING_ERROR=Np,exports.WORD_SUGGESTION_WEEKLY_QUOTA=Ap,exports.WORD_TABLE_PAPER=no,exports.WORD_TYPE_LABEL=Jl,exports.WordDataProvider=eg,exports.WordDataUpdatePopup=cg,exports.WordImageTooltip=Nc,exports.WordSearchFilterPanel=Ob,exports.WordSearchResultBlock=zb,exports.WordTable=io,exports.WordTableBlock=sg,exports.WordTableButton=lg,exports.WordTablePopup=Om,exports.WordTableThumbnail=Ec,exports.applyFontScale=ls,exports.applyTheme=is,exports.buildChangeWholeSyllableProblem=Gi,exports.buildDropCompoundProblem=Oi,exports.buildDropContrast3Problem=Ii,exports.buildDropContrastProblem=zi,exports.buildDropFinalConsonantProblem=Fi,exports.buildGradeSection=nl,exports.buildMonthChartData=om,exports.buildMultiPartPosContrast=yi,exports.buildPairIndex=Qd,exports.buildPartOfSpeechSection=il,exports.buildPositionSection=Xp,exports.buildRemoveConsonantProblem=Hi,exports.buildSelectSection=Zp,exports.buildSyllableMaskIndex=Vi,exports.buildSyllableSection=Kp,exports.buildWordTypeSection=sl,exports.bulkSetImageExistence=Fd,exports.cardQuestionTitle=yu,exports.cellLabel=Vm,exports.cellsForLabels=ab,exports.charToPronValue=pl,exports.checkImageExists=qo,exports.classifyPairDifficulty=ii,exports.clearAudioExistsCache=Md,exports.clearImageExistenceCache=ri,exports.clearPairIndexCache=gi,exports.clearPassCardBgTheme=fa,exports.clearPromoBannerBgTheme=Bt,exports.closeTrainingPopup=Sb,exports.companyTypeLabel=Xb,exports.composeSyllable=ua,exports.computeDailySelection=ds,exports.configureImageResolver=Id,exports.configureNoiseSettingsStore=Wu,exports.configurePronunciationResolver=Rd,exports.configureStorage=Kn,exports.configureTTS=Ld,exports.configureTrainingCategories=tp,exports.convertComposition=ml,exports.copyText=as,exports.createDecompCache=ni,exports.createTTSUrlResolver=Gu,exports.createTrainingScenario=Bb,exports.cx=xe,exports.dateToDb=ep,exports.default=Y7,exports.deriveNoiseContexts=Mb,exports.derivePassCard=kl,exports.downloadCsvText=Su,exports.downloadSound=Br,exports.draftValues=lb,exports.ensureTrainingDataLoaded=ms,exports.escapeCsvField=ku,exports.expandSlashLabel=kn,exports.fileExists=Zn,exports.filterContrastCandidates=vi,exports.finalToPhoneme=Fr,exports.firstChoseongOf=si,exports.fmtBytes=Ip,exports.formatCount=or,exports.formatDateKo=qu,exports.formatDateLocale=Uu,exports.formatDateLongKo=Yu,exports.formatDateLongLocale=Ku,exports.formatDatetimeKo=Zu,exports.formatDuration=ob,exports.formatPhone=Qu,exports.formatRelativeTime=qr,exports.formatTimeHM=Ur,exports.formatYmd=Yr,exports.getAssetBaseUrl=Yn,exports.getControlDateRange=im,exports.getDailySelection=sp,exports.getElementAnalyser=Ho,exports.getErrorMessage=Vr,exports.getImageExistenceStats=Er,exports.getImageExistsCached=oi,exports.getImageResolver=Ma,exports.getNoiseBaseUrl=Xn,exports.getPairIndex=Ka,exports.getPayloadTimestamp=Ln,exports.getPlanTier=Sp,exports.getPromoBannerBgTheme=ys,exports.getPronunciationResolver=ei,exports.getSavedFontScale=ss,exports.getSavedTheme=ns,exports.getSelectedFromPayload=Db,exports.getSelectedText=Eb,exports.getSignedOrPublicUrl=Io,exports.getStepPayload=yc,exports.getSteppedPayload=jb,exports.getTTSFallbackUrlResolver=Jn,exports.getTTSUrlResolver=Oo,exports.getTodayKst=Gr,exports.getTopicTypes=Kr,exports.getTrainingPools=us,exports.getTrainingTypes=rs,exports.getWordPool=fo,exports.hasQuestionWordConstraint=pu,exports.hasSel=ft,exports.hasStructureContrast=Uo,exports.initFontScale=np,exports.initTheme=op,exports.injectPassCardBgTheme=ga,exports.injectPromoBannerBgTheme=Tt,exports.isAllChoseong=ci,exports.isManualOnlyType=mu,exports.isNetworkErrorMessage=Yi,exports.isSelectionCorrect=Lb,exports.isSyllablePattern=pi,exports.isThisWeekPick=Bp,exports.isTrainingDataLoaded=lp,exports.isValidQuestionWord=hu,exports.itemCorrectness=Xi,exports.jamoToNamesForSpeech=xu,exports.labelsForSave=Hm,exports.loadGameLeaderboard=Fu,exports.loadMyGameRanks=Ou,exports.loadNoiseSettings=es,exports.loadTrainingData=hs,exports.logCrossword=Eu,exports.logTrainingCompletion=Zi,exports.logTrainingTime=Ki,exports.lsBytes=el,exports.markAfterClick=Ul,exports.marksForSave=wn,exports.matchSyllables=Qa,exports.matchesChoseongSearch=Wd,exports.matchesSyllablePattern=hi,exports.matchesWordQuery=po,exports.meaningKey=dn,exports.mergeQuestionText=Ri,exports.minimalPairDistractors=jr,exports.missesByType=Qm,exports.nextFocus=Km,exports.nextMisses=Xm,exports.normalizeDate=Ju,exports.officialSoundPath=Vu,exports.pageStartIndexes=Xl,exports.parseSortValue=wu,exports.parseSyllable=Ne,exports.passCardBgIhabTheme=Dl,exports.passCardBgLeftColorGridTheme=El,exports.passCardBgTwoCircleTheme=Al,exports.patternToComposition=Ud,exports.phonemePartsOf=vu,exports.pickEuRo=Li,exports.pickEulReul=Ni,exports.pickEunNeun=Ei,exports.pickIga=Ti,exports.pickWaGwa=ji,exports.prewarmImageCache=Od,exports.primarySelPart=er,exports.printWordTable=km,exports.promoBannerBgDarkTheme=js,exports.promoBannerBgDeepTheme=As,exports.promoBannerBgDiagonalTheme=Rs,exports.promoBannerBgDotsTheme=zs,exports.promoBannerBgInstagramTheme=qs,exports.promoBannerBgMainTheme=xs,exports.promoBannerBgNaverTheme=Vs,exports.promoBannerBgOutlineTheme=Os,exports.promoBannerBgRadialTheme=Ms,exports.promoBannerBgSoftSubTheme=Bs,exports.promoBannerBgSoftTheme=_s,exports.promoBannerBgSubTheme=ks,exports.promoBannerBgSuccessTheme=Ws,exports.promoBannerBgWarmTheme=Ds,exports.pronToCharValue=hl,exports.readLevel=ti,exports.recommendTables=eb,exports.regenerateUnpinned=sb,exports.removeItem=ib,exports.reorderArray=Mi,exports.resolveAssetUrl=$o,exports.resolveSoundPath=Tr,exports.resolveTrainingItems=Tb,exports.resolveTrainingPopupMeta=vc,exports.resumeAudioMeter=Wo,exports.reviewCells=Fm,exports.reviewSetPlan=Jm,exports.reviewTableName=Wm,exports.sample=Qt,exports.saveLocale=Mf,exports.saveNoiseSettings=ts,exports.scoreKey=yr,exports.scoreSheetHeader=Gm,exports.searchAndRankWords=Zd,exports.setAssetBaseUrl=Ed,exports.setCrosswordLogger=Du,exports.setGameLeaderboardLoader=zu,exports.setGameRanksLoader=$u,exports.setGameScoreSubmitter=Ru,exports.setTrainingCompletionLogger=Nu,exports.setTrainingTimeLogger=Bu,exports.setWordPool=Tu,exports.shouldConfirmDiscard=wm,exports.shuffle=ze,exports.sortToValue=_u,exports.soundOf=Hr,exports.speak=Bd,exports.splitTrainingVariants=Ab,exports.stopSpeaking=Nd,exports.submitGameScore=Iu,exports.summarize=_m,exports.summarizeMisses=Zm,exports.syllMatchesComp=Pa,exports.syllableContrasts=Ja,exports.syllableLength=mo,exports.syllablePron=$i,exports.syllableToFilter=nn,exports.tableTrends=Um,exports.toBase64UrlSafe=Hu,exports.toChoseong=li,exports.toDraft=rb,exports.toItemResults=Qi,exports.toKstHm=Xu,exports.toKstYmd=ka,exports.toStandardPronunciation=lu,exports.toStorageName=tr,exports.toTrainingText=Nb,exports.toUserErrorMessage=Cu,exports.today=Co,exports.toggleAttributeFilter=Qp,exports.togglePin=nb,exports.uncoveredLabels=tb,exports.useAnchoredMenu=So,exports.useBarChartControl=zl,exports.useCacheManagement=Op,exports.useCalendarMonth=$l,exports.useComboboxSuggestions=Ml,exports.useDailyTrainingSelection=ch,exports.useDelayedHoverAnchor=Up,exports.useDeviceManagement=Yp,exports.useDocumentTitle=Qs,exports.useEscToClose=uh,exports.useFitScale=ec,exports.useFontScale=an,exports.useHoverAnchor=_o,exports.useI18n=Pf,exports.useMediaQuery=oa,exports.usePagedList=hh,exports.usePasswordChange=zp,exports.useRelativeDay=$p,exports.useSoundCompassExam=Eh,exports.useTablePaging=al,exports.useTableSort=ol,exports.useToastLifecycle=Hl,exports.useToastState=un,exports.useTrainingTypeLabels=mh,exports.useVisitAllPanel=qp,exports.useVisitHistory=Hp,exports.useVisitSchedule=Gp,exports.useWindowEvent=cr,exports.useWordAttributeFilterKeys=rl,exports.useWordData=Jb,exports.useWordDataStats=Fp,exports.useWordMeanings=ph,exports.useWordTableDisplaySettings=oc,exports.useWordTablePrint=An,exports.useWordTrainingDataGeneration=ih,exports.useWordTrainingFilter=nh,exports.validateSyllableSearchInput=Kd,exports.valueToJamos=ba,exports.weakItems=Ym,exports.withEuRo=uu,exports.withEulReul=Di,exports.withEunNeun=cu,exports.withIga=Bi,exports.withWaGwa=du,exports.wordContainsChoseong=Vd,exports.wordContainsJongseong=qd,exports.wordContainsJungseong=Gd,exports.wordHasNoCoda=di,exports.wordHasSyllableMatching=ui,exports.wrongItems=ju;