import { futuresPageByLocale } from './futuresPage.i18n'
import { financePageByLocale } from './financePage.i18n'

export default {
  nav: {
    home: '홈',
    market: '시세',
    spot: '현물',
    futures: '선물',
    copyTrade: '복사거래',
    finance: '재테크',
    idoPresale: 'IDO 프리세일',
    claimAirdrop: '에어드롭 받기',
    announcements: '공지사항',
    download: '다운로드',
  },
  lang: {
    title: '언어',
    zhCN: '简体中文',
    zhTW: '繁體中文',
    en: 'English',
    ko: '한국어',
    ja: '日本語',
    hi: 'हिन्दी',
    id: 'Bahasa Indonesia',
    es: 'Español',		   // 西班牙语
    ru: 'Русский',         // 俄语
    pt: 'Português',       // 葡萄牙语
    de: 'Deutsch',         // 德语
    fr: 'Français',        // 法语
    tr: 'Türkçe',          // 土耳其语
    vi: 'Tiếng Việt'       // 越南语
  },
  header: {
    login: '로그인',
    register: '회원가입',
    account: '계정',
    assets: '내 자산',
    security: '보안 설정',
    broker: '브로커',
    logout: '로그아웃',
    logoutShort: '로그아웃',
    downloadTitle: '다운로드',
    brokerApplyTitle: '브로커 신청',
    brokerApplyDesc: '아직 브로커가 아닙니다. 시스템이 귀하의 계정 정보를 사용하여 자동으로 신청서를 제출합니다. 승인 후 브로커 기능을 사용할 수 있습니다.',
    cancel: '취소',
    applyNow: '지금 신청',
    viewApplyList: '심사 목록 보기',
    submitting: '제출 중…',
    menu: '메뉴',
  },
  common: {
    loading: '로딩 중...',
    retry: '재시도',
    cancel: '취소',
    confirm: '확인',
    submit: '제출',
    save: '저장',
    send: '전송',
    back: '뒤로',
    next: '다음',
    done: '완료',
    noData: '데이터 없음',
    noRecord: '기록 없음',
    search: '검색',
    all: '전체',
    max: '최대',
    copied: '복사됨',
    networkError: '네트워크 오류, 재시도하세요',
    loadFailed: '로드 실패',
    operationFailed: '작업 실패, 재시도하세요',
    saveSuccess: '저장됨',
    more: '더보기',
    perpetual: '영구',
    set: '설정됨',
    notSet: '미설정',
    change: '변경',
    bind: '연결',
    unbind: '연결 해제',
    on: '켜짐',
    off: '꺼짐',
    status: '상태',
    time: '시간',
    amount: '수량',
    type: '유형',
    coin: '코인',
    from: '출처',
    to: '대상',
    close: '닫기',
    contactService: '고객 지원',
  },
  home: {
    heroTitle: '안전 · 효율 · 글로벌\n디지털 자산 거래 플랫폼',
    heroDesc: 'iBit은 선도적인 기술과 엄격한 위험 관리를 통해 전 세계 사용자에게 안정적이고 투명하며 전문적인 디지털 자산 거래 서비스를 제공합니다.',
    register: '회원가입',
    viewMarket: '시세 보기',
    downloadApp: '앱 다운로드',
    coreAdvantages: '핵심 장점',
    assetSafetyTitle: '자산 보안',
    assetSafetyDesc: '콜드/핫 월렛 분리, 다중 서명 및 권한 제어와 24/7 위험 모니터링으로 사용자 자산을 완벽하게 보호합니다.',
    highPerfTitle: '고성능 매칭',
    highPerfDesc: '자체 개발한 고성능 매칭 엔진으로 밀리초 단위 주문 처리를 지원하며, 저지연 환경에서도 안정적이고 원활한 거래 경험을 제공합니다.',
    globalComplianceTitle: '글로벌 컴플라이언스',
    globalComplianceDesc: '다지역 컴플라이언스 기준을 준수하고 지속적으로 컴플라이언스를 발전시켜 전 세계 사용자에게 신뢰할 수 있는 디지털 자산 거래 환경을 제공합니다.',
    transparentFeeTitle: '투명한 수수료',
    transparentFeeDesc: '명확하고 투명한 수수료 구조로 숨겨진 비용이 없어 사용자가 거래 비용을 효과적으로 관리할 수 있습니다.',
    aboutUs: '회사 소개',
    aboutDesc: 'iBit은 기술 혁신과 준법 운영을 통해 사용자에게 안전하고 안정적이며 효율적인 거래 서비스를 제공하는 글로벌 디지털 자산 거래 플랫폼입니다.',
    foundedYear: '2023년 설립',
    headquarters: '본사는 두바이에 소재하고 현지에 등록되었으며 미국, 캐나다, 호주 등 국가의 관련 라이선스를 보유하고 있습니다',
    ourVision: '비전',
    visionSubtitle: '장기적으로 신뢰할 수 있는 글로벌 디지털 자산 거래 인프라 구축',
    ecoTitle: '생태계',
    ecoDesc: '새로운 디지털 자산 크립토 거래 생태계 구축',
    missionTitle: '미션',
    missionDesc: '글로벌 시나리오에서 디지털 가치 흐름 촉진',
    purposeTitle: '목적',
    purposeDesc: '사용자가 암호화폐 디지털 자산을 쉽게 관리하고 투자할 수 있도록 지원',
    heroImageAlt: 'iBit 거래 플랫폼',
    aboutImageAlt: '회사 소개',
  },
  market: {
    title: '실시간 시세',
    desc: '주요 디지털 자산의 실시간 가격, 거래량, 24시간 등락폭 데이터를 제공하여 사용자가 시장 동향을 빠르게 파악할 수 있도록 합니다.',
    hot: '인기',
    topVolume: '거래량 순위',
    gainers: '상승',
    losers: '하락',
    perpetual: '영구',
    name: '이름',
    latestPrice: '현재가',
    change24h: '24h 변동',
    turnover: '거래량',
    searchPair: '페어 검색',
    searchMarket: '코인, 페어, 선물 검색',
    price: '가격',
    change24hShort: '24h 변동',
    high24h: '24h 고가',
    low24h: '24h 저가',
    volume24hLabel: '24h 거래량',
  },
  auth: {
    loginTitle: '로그인',
    emailLogin: '이메일 로그인',
    emailPlaceholder: '이메일을 입력하세요',
    password: '비밀번호',
    passwordPlaceholder: '비밀번호를 입력하세요',
    forgotPassword: '비밀번호 찾기',
    loginBtn: '로그인',
    noAccount: '계정이 없으신가요?',
    registerNow: '지금 가입',
    verifyTitle: '인증 코드 입력',
    codeSentDesc: '{email}로 인증 코드가 발송되었습니다. 이메일을 확인하세요.',
    codeSendDesc: '아래 버튼을 클릭하여 {email}로 인증 코드를 발송하세요.',
    countdownResend: '{n}초 후 재발송',
    resendCode: '코드 재발송',
    confirmBtn: '확인',
    sendCode: '코드 발송',
    forgotVerify: '인증 방법을 잊으셨나요?',
    loginSuccess: '로그인 성공',
    codeSentAgain: '코드가 재발송되었습니다',
    registerTitle: '회원가입',
    emailRegister: '이메일 가입',
    inviteCodeLabel: '초대 코드 (선택)',
    inviteCodePlaceholder: '초대 코드 입력',
    hasAccount: '이미 계정이 있으신가요?',
    loginNow: '지금 로그인',
    verifyPageTitle: '보안 인증',
    emailVerifyLabel: '이메일 인증',
    codePlaceholder: '인증 코드 입력',
    sendBtn: '발송',
    passwordTitle: '비밀번호 만들기',
    backBtn: '‹ 뒤로',
    inputPasswordLabel: '비밀번호',
    confirmPasswordLabel: '비밀번호 확인',
    confirmPasswordPlaceholder: '비밀번호 다시 입력',
    doneBtn: '완료',
    resetSuccess: '비밀번호가 재설정되었습니다. 새 비밀번호로 로그인하세요.',
    registerSuccess: '가입 완료',
    welcomeJoin: 'iBit에 오신 것을 환영합니다',
    loginNowBtn: '지금 로그인',
    forgotPasswordTitle: '비밀번호 찾기',
    emailLabel: '이메일',
    emailRegisteredPlaceholder: '가입한 이메일을 입력하세요',
    codeSentToast: '코드가 발송되었습니다',
  },
  error: {
    emailRequired: '이메일을 입력하세요',
    emailInvalid: '올바른 이메일 형식이 아닙니다',
    passwordRequired: '비밀번호를 입력하세요',
    code6Required: '6자리 코드를 입력하세요',
    codeRequired: '인증 코드를 입력하세요',
    loginFailed: '아이디 또는 비밀번호가 올바르지 않습니다',
    networkError: '네트워크 오류, 나중에 다시 시도하세요',
    emailAlreadyRegistered: '이미 가입된 이메일입니다. 로그인하세요.',
    confirmPasswordRequired: '비밀번호를 다시 입력하세요',
    passwordMismatch: '비밀번호가 일치하지 않습니다',
    loadFailed: '보안 정보 로드 실패',
    refreshFailed: '새로고침 실패',
    statusUpdated: '상태가 업데이트되었습니다',
    currentPasswordRequired: '현재 비밀번호를 입력하세요',
    sixDigitCode: '6자리 이메일 인증 코드를 입력하세요',
    sixDigitGoogleCode: '6자리 Google 코드를 입력하세요',
    sendFailed: '전송 실패',
    operationFailed: '작업 실패',
  },
  security: {
    title: '보안 설정',
    back: '‹ 뒤로',
    warningBanner: '계정 보안을 위해 이메일 인증, Google 인증 및 자금 비밀번호 설정을 완료하는 것을 권장합니다.',
    accountSecurity: '계정 보안',
    loginPassword: '로그인 비밀번호',
    loginPasswordDesc: '정기적으로 비밀번호를 변경하면 계정 보안이 향상됩니다',
    emailVerify: '이메일 인증',
    emailVerifyDesc: '계정 인증 및 비밀번호 복구를 위해 이메일을 연결하세요',
    googleAuth: 'Google 인증',
    googleAuthDesc: 'Google 인증기를 연결하여 계정 보안을 강화하세요',
    fundPassword: '자금 비밀번호',
    fundPasswordDesc: '자산 보호를 위해 자금 비밀번호를 설정하세요',
    set: '설정됨',
    notSet: '미설정',
    change: '변경',
    bind: '연결',
    set2: '설정',
    statusUpdated: '상태 업데이트됨',
    loadFailed: '보안 정보 로드 실패',
    refreshFailed: '새로고침 실패',
    bound: '연결됨',
    notBound: '미연결',
    refresh: '새로고침',
    googleHelpTitle: 'Google 인증기 도움말',
    googleHelpDesc: '인증 코드를 받을 수 없거나 연결 해제가 필요하면 온라인 고객 지원에 문의하세요.',
    changeLoginPassword: '로그인 비밀번호 변경',
    changePasswordHint: '변경 후 새 비밀번호로 로그인하세요. 인증 코드가 등록된 이메일로 전송됩니다.',
    currentPassword: '현재 비밀번호',
    newPassword: '새 비밀번호',
    confirmNewPassword: '새 비밀번호 확인',
    emailCode: '이메일 인증 코드',
    sendCode: '코드 전송',
    codeSent: '이메일로 인증 코드가 전송되었습니다',
    changeSuccess: '비밀번호가 변경되었습니다',
    confirmChange: '변경 확인',
    submitting: '제출 중…',
    setFundPassword: '자금 비밀번호 설정',
    resetFundPassword: '자금 비밀번호 재설정',
    fundPasswordHint: '자금 비밀번호는 출금, 이체 등 민감한 작업에 사용됩니다. 안전하게 보관하세요.',
    fundPasswordResetHint: '자금 비밀번호를 재설정하세요. 인증 코드가 등록된 이메일로 전송됩니다.',
    newFundPassword: '새 자금 비밀번호',
    confirmFundPassword: '비밀번호 확인',
    fundPasswordUpdated: '자금 비밀번호가 업데이트되었습니다',
    fundPasswordSet: '자금 비밀번호가 설정되었습니다',
    bindGoogle: 'Google 인증기 연결',
    boundEmail: '등록 이메일:',
    googleQrStep: '1. QR 코드 스캔 또는 키 수동 입력',
    googleCodeStep: '2. Google 인증 코드 (6자리)',
    emailCodeStep: '3. 이메일 인증 코드',
    copyKey: '키 복사',
    keyCopied: '키 복사됨',
    copyFailed: '복사 실패, 키 텍스트를 수동으로 선택하세요',
    clipboardDeniedMac: '클립보드에 접근할 수 없습니다. 주소창 왼쪽 자물쇠 → 사이트 설정 → 「클립보드」를 「허용」으로 변경한 뒤 다시 시도하세요.',
    clipboardDenied: '클립보드에 접근할 수 없습니다. 브라우저에서 이 사이트의 클립보드 권한을 허용한 뒤 다시 시도하세요.',
    invalidSecret: '유효하지 않은 키, 페이지를 새로 고침하세요',
    googleCodeRequired: '6자리 Google 코드를 입력하세요',
    emailCodeSent: '이메일 인증 코드가 전송되었습니다',
    bindSuccess: '연결 성공',
    confirmBind: '연결 확인',
    googleAuthLead: '먼저 휴대폰 앱스토어에서 Google Authenticator 또는 Microsoft Authenticator를 다운로드하여 일회용 코드를 저장하세요.',
    googleAuthTip1: '연결 후 로그인 및 민감한 작업에 앱의 6자리 코드가 필요할 수 있습니다.',
    googleAuthTip2: '기기를 안전하게 보관하세요. 코드를 받을 수 없는 경우 고객 지원에 문의하세요.',
    googleAuthStart: '다운로드 완료, 연결하기',
  },
  assets: {
    title: '내 자산',
    totalAssets: '총 자산',
    todayPnl: '오늘 손익',
    deposit: '입금',
    withdraw: '출금',
    transfer: '이체',
    history: '내역',
    spot: '현물',
    futures: '선물',
    copyTrade: '복사거래',
    finance: '재테크',
    idoPresale: 'IDO 프리세일',
    claimAirdrop: '에어드롭 받기',
    fund: '출금 가능',
    walletBalance: '지갑 잔액',
    unrealizedPnl: '미실현 손익',
    positions: '포지션',
    noPositions: '포지션 없음',
    assetBalance: '자산 잔액',
    unavailable: '사용 불가',
    depositCoin: '입금',
    withdrawCoin: '출금',
    depositRecord: '입금 내역',
    withdrawRecord: '출금 내역',
    transferRecord: '이체 내역',
    assetRecord: '거래 내역',
    overview: '개요',
    spotAccount: '현물 계좌',
    swapAccount: '선물 계좌',
    followAccount: '카피 계좌',
    fundAccount: '출금 가능 계정',
    spotTradingAccount: '현물 거래 계좌',
    ibitAccount: 'iBit Account',
    lockedStakingAccount: 'Locked Account',
    stakingTab: '락업',
    ibitUnit: 'iBit',
    releaseTotal: '총 해제 수량',
    totalLockedBalance: '총 락업 잔액(iBit)',
    myStakingOrders: '내 락업 주문',
    stakingOrderNo: '주문 번호',
    purchaseQty: '구매 수량',
    stakingTotal: '락업 총액',
    released: '해제됨',
    pendingRelease: '해제 대기',
    startTime: '시작 시간',
    subscribing: '청약 중',
    releasing: '해제 중',
    completed: '완료됨',
    pullToRefresh: '아래로 당겨 새로고침',
    releaseToRefresh: '놓아서 새로고침',
    refreshing: '새로고침 중...',
    totalAccount: '계좌 총 자산 평가',
    showBalance: '잔액 표시',
    hideBalance: '잔액 숨기기',
    followBalance: '카피 잔액',
    accountTransfer: '계좌 이체',
    transferFrom: '출금 계좌',
    transferTo: '입금 계좌',
    available: '사용 가능',
    freeTransfer: '무료 이체, 즉시 입금',
    followPositions: '현재 카피 포지션',
    noFollowPositions: '카피 포지션 없음',
    followLoading: '로딩 중…',
    long: '롱',
    short: '숏',
    trader: '트레이더',
    openPrice: '진입가',
    currentPrice: '현재가',
    amountLever: '수량 · 레버리지',
    closing: '청산 중…',
    closePosition: '청산',
    noLossPosition: '무손실 카피 포지션은 수동 청산 불가',
    invalidPosition: '포지션 정보 오류, 청산 불가',
    confirmClose: '이 포지션을 청산하시겠습니까? 청산 후에는 최종 수익을 받을 수 없습니다.',
    closeSuccess: '청산 성공',
    closeFailed: '청산 실패',
    sameAccountError: '출금 계좌와 입금 계좌가 같을 수 없습니다',
    amountError: '유효한 금액을 입력하세요',
    insufficientBalance: '사용 가능 잔액 부족',
    transferSuccess: '이체 성공',
    transferFailed: '이체 실패',
    goCopyTrade: '카피 트레이드',
    goSpotTrade: '거래하기',
    hideZeroBalance: '0 잔액 자산 숨기기',
    depositRecord2: '입금 내역',
    amountCoin: 'Amount ({coin})',
    availableCoin: 'Available: {available} {coin}',
    amountUsdt: '수량 (USDT)',
    transferring: '이체 중…',
    confirmTransferBtn: '이체 확인',
    statementPageTitle: '자금 내역',
    statementStartDate: '시작일',
    statementEndDate: '종료일',
    statementReset: '초기화',
    statementSearch: '조회',
    statementSearching: '조회 중…',
    statementEmpty: '내역이 없습니다',
    statementDirectionOpen: '진입',
    statementDirectionClose: '청산',
    statementTypes: {
      '43': '현물 수익',
      '44': '현물 손실',
      '45': '현물 거래 수수료',
      '46': '현물 리베이트',
      '48': '현물 거래',
      '49': '스테이킹',
      '50': '스테이킹 잠금 해제',
      '51': '에어드롭 보상',
      '52': '스테이킹 지갑 입금',
      '53': '스테이킹 지갑 출금',
    },
  },
  finance: {
    ...financePageByLocale.ko,
  },
  copyTrade: {
    comprehensive: '종합',
    winRate14d: '14일 승률',
    profit14d: '14일 수익률',
    normal: '일반 복사',
    lossless: '무손실 복사',
    favorite: '즐겨찾기',
    topTraders: '최고 트레이더',
    twoWeekReturn: '2주 수익',
    followers: '팔로워',
    days: '일수',
    applyTrader: '트레이더 신청',
    myFollowing: '내 복사거래',
    myTrading: '내 거래',
    traderIdentity: '리드 트레이더',
    myFollowingAccount: '내 카피 계정',
    leadManage: '리드 관리',
    applyLead: '리드 트레이더 신청',
    pageTitle: '카피 트레이딩',
    heroDesc: '탭 한 번으로 상위 트레이더를 따라 전략적 수익을 추구하세요.',
    traderOverview: '리드 트레이더 요약',
    copyFollowersCount: '카피 팔로워',
    cumulativeTradingDays: '누적 거래 일수',
    cumulativeLeadProfit: '누적 카피 수익',
    goLeadManage: '리드 관리 이동 →',
    copyWalletTitle: '카피 계정 현황',
    cumulativePnlUsdt: '누적 카피 손익(USDT)',
    availableUsdt: '사용 가능(USDT)',
    unrealizedPnlUsdtShort: '미실현 손익(USDT)',
    followingTradersSummary: '현재 {n}명 트레이더 팔로우 중',
    newBadge: 'NEW',
    losslessShieldTitle: '무손실 카피 보호',
    losslessShieldDesc: ': 카피 손실 시 플랫폼이 리스크 완충을 제공해 통제된 리스크 내에서 수익을 노릴 수 있습니다.',
    learnHowItWorks: '작동 방식 →',
    myStarredTraders: '즐겨찾은 트레이더',
    traderTotalCount: '총 {count}명 트레이더',
    filterLoadingShort: '로딩 중…',
    loadTraderListFailed: '트레이더 목록을 불러오지 못했습니다',
    loadFavoritesFailed: '즐겨찾기를 불러오지 못했습니다',
    favoritedToast: '저장됨',
    defaultTraderName: '트레이더',
    levelJunior: '초급',
    badgeLossless: '무손실',
    metaDaysTrades: '{days}일 · {trades}건',
    followAction: '카피',
    profitUsdtBracket: '손익(USDT)',
    profitShareRate: '수익 분배',
    trend14Days: '14일 추세',
    emptyFavoriteHint: '즐겨찾기가 없습니다. 우수 트레이더를 찾아보세요.',
    emptyTraderListDefault: '표시할 트레이더가 없습니다',
    emptyTraderListLossless: '무손실 트레이더가 없습니다',
    browseTraders: '트레이더 보기',
    losslessInfoHeading: '무손실 카피 안내',
    llInfoCard1Title: '조건부 보호',
    llInfoCard1Body: '보호는 규칙과 발생 조건이 충족될 때 적용되며 플랫폼 리스크 시스템이 처리합니다.',
    llInfoCard2Title: '제한적 책임',
    llInfoCard2Body: '보전은 허용 범위 내 단일 카피에 한하며 범위를 넘는 손실은 보장하지 않습니다.',
    llInfoCard3Title: '리스크 통제 우선',
    llInfoCard3Body: '허용 리스크를 넘는 손실 발생 시 우선 리스크 보호 메커니즘이 가동되어 공정성을 지킵니다.',
    llInfoCard4Title: '리스크 고지',
    llInfoCard4Body: '디지털 자산 거래 위험이 큽니다. 무손실 카피도 무위험을 뜻하지 않으며 여유 있는 범위에서 참여하세요.',
    followingPlaza: '카피 광장',
    followingWalletFail: '카피 계정 정보를 불러오지 못했습니다',
    followingTabPositions: '진행 중 포지션',
    followingTabTraders: '내 트레이더',
    followingTabHistory: '히스토리',
    followingHistEmpty: '히스토리가 없습니다',
    followingNoTradersYet: '아직 팔로우한 트레이더가 없습니다',
    followingGoPlaza: '카피 광장으로',
    confirmStopFollow: '"{name}" 팔로우를 취소할까요?',
    noLossManualCloseTooltip: '무손실 카피는 수동 청산할 수 없습니다',
    followingThContract: '계약',
    followingThDirection: '방향',
    followingThOpenPrice: '진입가',
    followingThCurPrice: '표시 가격',
    followingThQty: '수량',
    followingThLever: '레버리지',
    followingThUnrealized: '미실현 손익',
    followingThOpenTime: '진입 시간',
    followingThAction: '작업',
    followingOpenLong: '롱 진입',
    followingOpenShort: '숏 진입',
    closeQtyWithBase: '청산 수량 ({base})',
    followingRealizedPnlUsdt: '실현 손익 (USDT)',
    followingYieldRate: '수익률',
    followingAvgOpenUsdt: '평균 진입가 (USDT)',
    followingAvgCloseUsdt: '평균 청산가 (USDT)',
    marginCrossMode: '교차',
    marginIsolatedMode: '격리',
    stopFollowing: '언팔로우',
    lead: {
      pageTitle: '내 리드 트레이딩',
      navMyFollowing: '내 카피 트레이딩 →',
      becomeTitle: '리드 트레이더 되기',
      becomeDesc: '아래 조건을 충족하면 트레이더로 신청할 수 있습니다.',
      condMinBalance: '선물 계정 잔액 ≥ {min} USDT',
      goTransfer: '이체하기',
      condNotFollowing: '다른 트레이더를 팔로우 중이 아니어야 함',
      agreePrefix: '다음에 동의합니다:',
      agreeLink: '트레이더 약관',
      submitting: '제출 중…',
      submitApply: '신청 제출',
      applyFailed: '신청 실패, 나중에 다시 시도하세요',
      reviewingTitle: '심사 중',
      reviewingDesc: '트레이더 신청이 심사 중입니다. 승인 후 리드 트레이딩을 시작할 수 있습니다.',
      agreementTitle: '트레이더 약관',
      agreementEmpty: '약관을 불러올 수 없습니다. 나중에 다시 시도하세요.',
      leadingBadge: '리드 중',
      noBio: '소개 없음',
      cancelLeadProcessing: '처리 중…',
      cancelLeadApply: '리드 자격 취소 신청',
      confirmCancelLead: '리드 자격을 취소하시겠습니까? 모든 카피 관계가 종료됩니다.',
      operationFailed: '작업 실패',
      statFollowers: '현재 팔로워',
      statRegisterDays: '가입 일수',
      statCapital: '자금 규모',
      statCumulativeProfit: '누적 카피 수익(USDT)',
      statTotalFollowers: '누적 팔로워',
      statTradingDays: '누적 거래 일수',
      tabFollowers: '팔로워({n})',
      tabCurrent: '현재 리드',
      tabHistory: '리드 내역',
      tabSettings: '트레이더 설정',
      emptyFollowers: '팔로워 없음',
      removeFollower: '제거',
      followerEquity: '계정 자산(USDT)',
      followerTotalShare: '누적 분润(USDT)',
      followerLastShare: '이전 기간 분润',
      followerSince: '팔로우 시작: {time}',
      emptyCurrent: '현재 리드 포지션 없음',
      emptyHistory: '리드 내역 없음',
      settingsBasic: '기본 정보',
      avatar: '아바타',
      nickname: '닉네임',
      nicknamePlaceholder: '최대 10자',
      bio: '소개',
      bioPlaceholder: '최대 25자',
      saveSuccess: '저장됨',
      saveBasicProcessing: '저장 중…',
      saveBasic: '기본 정보 저장',
      leadSymbols: '리드 계약',
      saveProcessing: '저장 중…',
      save: '저장',
      tagsTitle: '태그(최대 4개)',
      confirmRemoveFollower: '팔로워 "{name}"을(를) 제거하시겠습니까?',
      saveFailed: '저장 실패',
      uploadFailed: '업로드 실패, 다시 시도하세요',
      defaultFollower: '팔로워',
      defaultUser: '사용자',
    },
  },
  footer: {
    aboutSection: '소개',
    companyIntro: '회사 소개',
    brand: '브랜드',
    community: 'iBit 커뮤니티',
    riskWarning: '위험 공시',
    terms: '이용약관',
    privacy: '개인정보처리방침',
    futuresTrade: '선물 거래',
    spotTrade: '현물 거래',
    losslessCopy: '무손실 복사',
    beginnerGuide: '입문 가이드',
    helpCenter: '고객센터',
    glossary: '용어집',
    compliance: '규정 준수',
    products: '제품',
    resources: '리소스',
  },
  announcements: {
    title: '공지사항',
    noAnnouncements: '공지사항이 없습니다',
    back: '뒤로',
    backToList: '목록으로 돌아가기',
    loadMore: '더 보기',
  },
  download: {
    title: 'iBit 다운로드',
    heroTitle: '실시간 시세 언제든지 거래\n다중 보호로 자산 안전',
    desc: '언제 어디서나 거래하세요',
    appDesc: '앱에서 모든 인기 기능 지원, 언제 어디서나 거래하세요',
    latestVersion: '최신 버전',
    updateNotes: '업데이트 내용',
    ios: 'iOS 다운로드',
    iosNotReleased: 'iOS 미출시',
    android: 'Android 다운로드',
    androidNotReleased: 'Android 미출시',
    scanToDownload: 'QR 코드로 다운로드',
  },
  account: {
    title: '계정 센터',
    uid: 'UID',
    email: '이메일',
    profile: '프로필',
    security: '보안 설정',
    securityDesc: '비밀번호, 인증, 자금 비밀번호',
    assets: '내 자산',
    assetsDesc: '입금, 출금, 이체',
    inviteCode: '초대 코드',
    inviteFriends: '친구 초대',
    inviteDesc: '친구를 초대하고 리베이트 보상을 받으세요',
    helpSupport: '도움말 & 지원',
    helpDesc: 'FAQ 및 티켓',
    broker: '브로커',
    brokerDesc: '리베이트 관리, 팀 내역',
    logout: '로그아웃',
    securityScore: '보안 점수',
    twofa: 'Google 인증',
    supportTitle: '고객 지원',
    supportHours: '7×24 온라인 지원',
    onlineSupport: '온라인 채팅',
    instantChat: '즉시 채팅',
    telegramSupport: 'Telegram 지원',
    emailSupport: '이메일 지원',
    applySubmitted: '신청이 제출되었습니다. 검토를 기다려 주세요',
    scoreHigh: '우수',
    scoreMedium: '보통',
    scoreLow: '개선 필요',
  },
  transfer: {
    title: '이체',
    amount: '이체 금액',
    amountPlaceholder: '이체 금액 입력',
    maxTransferable: '최대 이체 가능',
    success: '이체 성공',
    selectCoin: '코인 선택',
    enterAmount: '이체 금액을 입력하세요',
    histEmpty: '이체 내역 없음',
    balanceLabel: '잔액',
  },
  withdraw: {
    title: '출금',
    network: '네트워크',
    networkTip: '수신 플랫폼에서 사용하는 네트워크와 출금 네트워크가 일치하는지 확인하세요. 그렇지 않으면 자산이 손실될 수 있습니다.',
    address: '출금 주소',
    addressPlaceholder: '출금 주소 입력',
    amount: '출금 금액',
    received: '수령 금액',
    fee: '수수료',
    submitted: '출금 제출됨',
    fundPassword: '자금 비밀번호',
    emailCode: '이메일 코드',
    googleCode: 'Google 코드',
    securityVerification: '보안 인증',
    recordTitle: '출금 내역',
    recordEmpty: '출금 내역 없음',
    confirmCancelApply: '이 출금 신청을 취소하시겠습니까?',
    withdrawCancelledToast: '취소됨',
    withdrawCancelFailedToast: '취소 실패',
    statusPending: '검토 중',
    statusReleasing: '출금 처리 중',
    statusWithdrawFailed: '실패',
    statusWithdrawSuccess: '완료',
    statusWithdrawCancelled: '취소됨',
    typeInternalTransfer: '내부 이체',
    typeOnChainWithdraw: '온체인 출금',
    cancelApplyBtn: '취소',
    initFailed: '초기화 실패',
    submitOnChainFailed: '출금 실패',
    transferSubmitFailed: '이체 실패',
    availWithdrawBalance: '출금 가능 잔액:',
    availTransferBalance: '이체 가능 잔액:',
    withdrawNetworkLabel: '출금 네트워크',
    withdrawAmountUsdt: '출금 금액 (USDT)',
    transferAmountUsdt: '이체 금액 (USDT)',
    expectedArrival: '예상 수령',
    minWithdrawRowLabel: '최소 출금',
    internalTransferFeeLabel: '내부 이체 수수료',
    free: '무료',
    minTransferRowLabel: '최소 이체',
    recipientUidLabel: '받는 주소 (UID)',
    recipientUidPlaceholder: '수취인 UID 입력',
    addressForNetwork: 'USDT-{network} 주소 입력',
    codePlaceholder6Digits: '6자리 코드',
    googlePlaceholder6: '6자리 OTP',
    sendVerificationCode: '코드 보내기',
    confirmWithdrawSubmit: '출금 확인',
    confirmTransferSubmit: '이체 확인',
    codeSentToEmailToast: '이메일로 인증코드를 보냈습니다',
    onchainSubmittedPendingToast: '출금 신청이 제출되어 검토 대기 중입니다',
    transferSubmittedToast: '내부 이체가 제출되었습니다',
    submitFailed: '제출 실패',
    detailTitleOnChain: '출금 상세',
    detailTitleTransfer: '내부 이체 상세',
    amountHeroWithdraw: '출금 수량',
    amountHeroTransfer: '이체 수량',
    stepApplied: '신청 접수',
    stepDone: '완료',
    recipientLabel: '수취인',
    appliedAt: '신청 시간',
    finishedAt: '완료 시간',
    cancelApplyFull: '신청 취소',
    copyBtn: '복사',
    bindGoogleFirst: 'Google OTP를 먼저 등록해 주세요',
    errFillAddressBeforeCode: '먼저 출금 주소를 입력해 주세요',
    errFillAmountBeforeCode: '먼저 출금 금액을 입력해 주세요',
    errFillUidBeforeCode: '먼저 수취인 UID를 입력해 주세요',
    errFillTransferAmtBeforeCode: '먼저 이체 금액을 입력해 주세요',
    errEnterWithdrawAddress: '출금 주소 입력',
    errEnterWithdrawAmount: '출금 금액 입력',
    errMinWithdrawWithAmt: '최소 출금 {min} USDT',
    errExceedWithdrawBalance: '출금 가능 잔액 초과',
    errEnterFundPassword: '자금 비밀번호 입력',
    errEnterEmailCode: '이메일 코드 입력',
    errEnterGoogleCode: 'Google 코드 입력',
    errEnterRecipientUid: '수취인 UID 입력',
    errEnterTransferAmount: '이체 금액 입력',
    errMinTransferWithAmt: '최소 이체 {min} USDT',
    errExceedTransferBalance: '이체 가능 잔액 초과',
  },
  deposit: {
    title: '입금',
    address: '입금 주소',
    network: '네트워크',
    saveQrCode: 'QR 코드 저장',
    addressCopied: '주소 복사됨',
    minDeposit: '최소 입금',
    arrivals: '확인 수',
    coin: '코인',
    protocol: '네트워크 / 프로토콜',
    subCoin: '서브 코인',
    contract: '계약',
    depositAmount: '입금 금액',
    amountPlaceholder: '금액 입력',
    generateOrder: '주문 생성',
    generating: '생성 중…',
    notice: '주의 사항',
    notice1: '이체 전에 주문을 먼저 생성하세요. 주문에 표시된 주소와 금액을 기준으로 하세요.',
    notice2: '잘못된 네트워크나 계약으로 입금하지 마세요. 자산이 영구적으로 손실될 수 있습니다.',
    notice3: '이체 완료 후 시스템 확인을 위해 빠른 시일 내에 거래 해시를 제출하세요.',
    intro: '안내',
    introText: '코인과 네트워크를 선택하고 금액을 입력한 후 "주문 생성"을 클릭하면 전용 수취 주소와 주문 번호가 생성됩니다. 온체인 이체 완료 후 이 페이지에서 TxHash를 제출하세요.',
    newDeposit: '← 새 입금',
    orderInfo: '주문 정보',
    orderNo: '주문 번호',
    status: '상태',
    coinLabel: '코인',
    networkLabel: '네트워크',
    amount: '금액',
    payAddress: '입금 주소',
    payAddressHint: '주문 금액을 이 주소로 이체하세요. 코인과 네트워크는 주문과 일치해야 합니다.',
    qrTitle: 'QR 코드 결제',
    qrHint: '지갑으로 스캔하여 위 주소로 이체하세요 (주소와 금액을 수정하지 마세요)',
    contractAddress: '계약 주소',
    copy: '⎘ 복사',
    copyAddress: '복사',
    submitHash: '거래 해시 제출',
    submittingHash: '제출 중…',
    hashPlaceholder: '온체인 Tx Hash / Tron TxID 붙여넣기',
    orSubmitHash: '또는: 이체 완료 후 거래 해시 / TxID 입력',
    hashRequired: '거래 해시를 입력하세요',
    statusNotSubmittable: '현재 상태에서는 해시를 제출할 수 없습니다',
    orderCreated: '주문이 생성되었습니다. 아래 주소로 이체하세요.',
    orderFailed: '주문 생성 실패',
    addressCopy: '주소 복사됨',
    orderNoCopy: '주문 번호 복사됨',
    hashSubmitted: '제출됨, 온체인 확인 대기 중',
    hashFailed: '제출 실패',
    broadcastSuccess: '트랜잭션 브로드캐스트, 해시 제출됨',
    tronBroadcastSuccess: '트랜잭션 브로드캐스트, TxID 제출됨',
    noNetwork: '사용 가능한 네트워크 없음',
    noSubCoin: '이 네트워크에 사용 가능한 서브 코인이 없습니다',
    amountRequired: '입금 금액을 입력하세요',
    amountPositive: '0보다 큰 금액을 입력하세요',
    submittedHash: '제출된 해시: ',
    manualDepositTab: '수동 입금',
    walletDepositTab: '온체인 입금',
    walletPayEvm: '지갑 연결 및 결제 (EVM)',
    walletPayingEvm: '지갑 처리 중…',
    walletPayTron: '지갑 연결 및 결제 (Tron)',
    walletPayingTron: 'Tron 지갑 처리 중…',
    histLink: '입금 내역',
    retryBtn: '재시도',
    backWithArrow: '‹ 뒤로',
    rechargeStatus0: '결제 대기',
    rechargeStatus1: '온체인 확인 대기',
    rechargeStatus2: '완료',
    rechargeStatus3: '취소됨',
    rechargeStatus4: '실패',
    statusUnknown: '상태 {status}',
    qrAlt: '입금 주소 QR 코드',
    loadNetworksFailed: '네트워크 로드 실패',
    wcHintEvmConfigured:
      'WalletConnect로 EVM 지갑을 연결해 주문 금액만큼 입금 주소로 온체인 전송할 수 있습니다(네트워크·코인 일치 확인).',
    wcHintEvmUnconfigured:
      'EVM WalletConnect가 설정되지 않았습니다: 환경 변수에 VITE_WALLETCONNECT_PROJECT_ID를 설정하거나 수동 입금으로 전환해 거래 해시를 제출하세요.',
    wcHintTronConfigured:
      'WalletConnect(Tron 네임스페이스)로 호환 지갑을 연결할 수 있으며, 서명 후 트랜잭션이 브로드캐스트되고 Tron TxID를 제출합니다(0x 이더리움 해시 아님).',
    wcHintTronUnconfigured:
      'Tron WalletConnect에는 VITE_WALLETCONNECT_PROJECT_ID가 필요합니다. 미설정 시 수동 입금으로 전환해 TxID를 제출하세요.',
    wcHintTronManualOnly: '현재 네트워크는 지갑 호출을 지원하지 않습니다. 수동 입금으로 전환해 TxID를 제출하세요.',
    walletPayFallback: '지갑 결제 실패',
    tronWalletPayFallback: 'Tron 지갑 결제 실패',
    currentPrefix: '현재:',
    histEmpty: '입금 내역이 없습니다',
    histOrderNo: '주문번호',
    histTx: 'TX:',
    histLoadMore: '더 보기',
    histLoadedAll: '모든 기록을 불러왔습니다',
  },
  broker: {
    title: '브로커 센터',
    applyTitle: '브로커 신청',
    myBrokerCode: '내 브로커 코드',
    referralCount: '추천 수',
    totalCommission: '총 커미션',
    applyStatus: '신청 상태',
    pending: '검토 중',
    approved: '승인됨',
    rejected: '거부됨',
    defaultName: '브로커',
    greeting: '안녕하세요, {name}',
    uidLabel: 'UID: {uid}',
    introBanner: '사용자를 초대해 등록·거래하면 리베이트를 받을 수 있습니다. 리베이트는 실시간 정산되며 매일 계정에 자동 입금됩니다.',
    statNewToday: '오늘 신규 (명)',
    statTradeToday: '오늘 거래 (명)',
    statRebateToday: '오늘 리베이트 (USDT)',
    inviteList: '초대 목록',
    emptyInviteList: '초대 기록 없음',
    thAccount: '계정',
    thLevel: '등급',
    thPerpCopy: '선물 / 카피',
    levelBroker: '브로커',
    levelNormal: '일반',
    editRateTooltip: '리베이트 비율 수정',
    todayRebate: '오늘 리베이트',
    emptyTodayRebate: '오늘 리베이트 없음',
    thId: 'ID',
    rebateUsdt: '리베이트 (USDT)',
    teamDetails: '팀 상세',
    filterAll: '전체',
    filterWeek: '1주일',
    filterToday: '오늘',
    filterMonth: '이번 달',
    teamTotalAssets: '팀 총 자산',
    rebateHistory: '리베이트 내역',
    emptyRebateHistory: '리베이트 기록 없음',
    amountUsdt: '금액 (USDT)',
    loadMore: '더 보기',
    loadingMore: '로딩 중…',
    loadedAll: '전체 로드됨',
    editModalTitle: '리베이트 비율 수정',
    perpRebateRate: '선물 리베이트 비율',
    copyRebateRate: '카피 리베이트 비율',
    editTip: '변경 즉시 적용됩니다. 신중히 설정하세요.',
    perpRateError: '선물 리베이트 비율은 0–100 정수여야 합니다',
    copyRateError: '카피 리베이트 비율은 0–100 정수여야 합니다',
    setSuccess: '저장되었으며 즉시 적용됩니다',
  },
  help: {
    title: '고객센터',
    supportTitle: '도움말 및 지원',
    search: '검색',
    searchPlaceholder: '키워드 검색',
    telegramSupport: 'Telegram 지원',
    quickResponse: '빠른 응답',
    emailSupport: '이메일 지원',
    docs: '도움말 문서',
    viewFullGuide: '전체 가이드 보기',
    detailTitle: '도움말 상세',
    backToHelp: '고객센터로 돌아가기',
  },
  invite: {
    title: '친구 초대',
    myCode: '내 초대 코드',
    copy: '코드 복사',
    copied: '코드 복사됨',
    share: '초대 링크 공유',
    shareLink: '초대 링크 복사',
    linkCopied: '링크 복사됨',
    desc: '친구를 초대하여 가입하면 친구가 거래할 때 리베이트 보상을 받습니다',
    totalInvited: '총 초대 수',
    totalReward: '총 리베이트',
    noRecord: '초대 기록 없음',
    heroLine1: '친구 초대',
    heroLine2: '리베이트 받기',
    heroDesc:
      '초대로 가입을 완료한 친구 한 명당 플랫폼 초대 리베이트 프로그램 참여 자격이 있을 수 있습니다. 세부 규칙은 공식 공지를 따릅니다.',
    myInviteInfo: '내 초대 정보',
    inviteCodeLabel: '초대 코드',
    inviteLinkShort: '초대 링크',
    qrCodeLabel: 'QR 코드',
    copyShort: '복사',
    copiedDone: '복사됨 ✓',
    qrInviteAlt: '초대 QR 코드',
    scanToRegister: '스캔하여 가입',
    rebateRulesTitle: '리베이트 규칙',
    step1Title: '초대 코드 공유',
    step1Desc: '전용 초대 코드나 링크를 친구에게 보내세요',
    step2Title: '친구 가입',
    step2Desc: '친구가 링크로 가입 및 인증을 완료합니다',
    step3Title: '리베이트 획득',
    step3Desc: '친구 거래 수수료 리베이트는 플랫폼 규칙에 따라 정산됩니다',
  },
  futuresPage: futuresPageByLocale.ko,
  spot: {
    tag: '현물',
    side: { buy: '매수', sell: '매도' },
    orderType: { limit: '지정가', market: '시장가' },
    orderStatus: {
      pending: '주문 중',
      partial: '부분 체결',
      filled: '체결 완료',
      cancelled: '취소됨',
      pending_cancel: '취소 중',
      expired: '만료됨',
      init: '초기화',
    },
    recordType: {
      transferIn: '자금 입금',
      transferOut: '자금 출금',
      orderFreeze: '주문 동결',
      cancelUnfreeze: '취소 해제',
      trade: '체결',
      fee: '수수료',
      unfreeze: '해제',
      unknown: '유형 {type}',
    },
    tabs: {
      currentOrders: '미체결',
      historyOrders: '주문 내역',
      trades: '체결 내역',
      funding: '자금 흐름',
    },
    table: {
      pair: '거래쌍',
      side: '방향',
      type: '유형',
      price: '가격',
      orderPrice: '주문가',
      amount: '수량',
      orderAmount: '주문량',
      filled: '체결',
      status: '상태',
      time: '시간',
      action: '작업',
      dealPrice: '체결가',
      dealVolume: '체결량',
      turnover: '체결액',
      recordType: '유형',
      quantity: '수량',
      coin: '코인',
    },
    trade: {
      buy: '매수',
      sell: '매도',
      limit: '지정가',
      market: '시장가',
      processing: '처리 중...',
      buySymbol: '{symbol} 매수',
      sellSymbol: '{symbol} 매도',
      priceUsdt: '가격 (USDT)',
      limitPlaceholder: '지정가',
      marketHint: '최적 시장가로 체결',
      amountUsdt: '금액 (USDT)',
      amountBase: '수량 ({base})',
      available: '사용 가능',
      transfer: '이체',
      loginForBalance: '로그인 후 잔액 확인',
      spotAssets: '현물 자산',
    },
    order: { cancel: '취소', cancelAll: '전체 취소' },
    empty: {
      loginLink: '로그인',
      loginOrdersPrompt: '{link} 후 주문 보기',
      loginViewPrompt: '{link} 후 보기',
      noOrders: '미체결 주문 없음',
      noHistoryOrders: '주문 내역 없음',
      noTrades: '체결 내역 없음',
      noFunding: '기록 없음',
    },
    errors: {
      symbolNotReady: '거래쌍이 준비되지 않았습니다',
      invalidAmount: '유효한 수량을 입력하세요',
      invalidPrice: '유효한 가격을 입력하세요',
      minLimitVolume: '수량은 {min} 이상이어야 합니다',
      minMarketBuy: '시장가 매수 금액은 최소 {min} USDT 이상이어야 합니다',
      minMarketSell: '시장가 매도 수량은 최소 {min} 이상이어야 합니다',
      orderSubmitted: '주문이 제출되었습니다',
      orderFailed: '주문 실패',
      cancelSuccess: '주문이 취소되었습니다',
      cancelFailed: '취소 실패',
      cancelAllSuccess: '모든 주문이 취소되었습니다',
      cancelAllPartialFailed: '일부 주문 취소에 실패했습니다',
    },
    loadedAll: '전체 로드됨',
    ticker: {
      change24h: '24시간 변동',
      high24h: '24시간 고가',
      low24h: '24시간 저가',
      turnover24h: '24시간 거래대금',
    },
    chartSub: { chart: '차트', coinInfo: '코인 정보' },
    tf: { 
      m1: '1분', 
      m5: '5분', 
      m15: '15분', 
      m30: '30분', 
      h1: '1시간', 
      h4: '4시간', 
      d1: '1일',
      w1: '1주',
      mo1: '1개월',
      mo3: '3개월'
    },
    ohlcv: {
      spotLabel: '현물',
      open: '시',
      high: '고',
      low: '저',
      close: '종',
      volume: '거래량',
      changePct: '변동',
    },
    draw: {
      cursor: '커서',
      trend: '추세선',
      hline: '수평선',
      ray: '광선',
      channel: '채널',
      fib: '피보나치',
      text: '텍스트',
      clearAll: '그리기 지우기',
      zoomOut: '축소',
    },
    mobileTab: { chart: '시세', trade: '거래' },
    pair: { search: '검색', loading: '로딩 중…', noMatch: '결과 없음', retryLater: ', 나중에 다시 시도' },
    book: {
      waiting: '데이터 대기 중…',
      orderbook: '호가',
      trades: '체결',
      priceUsdt: '가격 (USDT)',
      amountBase: '수량 ({base})',
      total: '합계',
      buyRatio: '매수 {n}%',
      sellRatio: '{n}% 매도',
      price: '가격',
      amount: '수량',
      time: '시간',
      pricePrecision: '가격 정밀도',
    },
    coinInfo: {
      marketCap: '시가총액',
      circulating: '유통량',
      issuePrice: '발행가',
      ath: '역대 최고가',
      athDate: '최고가 일자',
      whitepaper: '백서',
      empty: '코인 정보 없음',
      reload: '다시 불러오기',
    },
    transferModal: {
      title: '자금 이체',
      amount: '이체 수량',
      amountPlaceholder: '수량 입력',
      availableUsdt: '이체 가능 USDT:',
      transferring: '이체 중...',
      invalidAmount: '유효한 이체 수량을 입력하세요',
      insufficientBalance: '이체 수량이 사용 가능 잔액을 초과합니다',
      transferFailed: '이체 실패, 나중에 다시 시도하세요',
    },
  },
}
