{
  "common": {
    "brand": "KINTEX",
    "appSuffix": "AI 전시·행사시스템",
    "actions": {
      "prev": "이전",
      "next": "다음",
      "cancel": "취소",
      "close": "닫기",
      "home": "홈으로 이동",
      "viewMore": "자세히 보기",
      "confirm": "확인"
    },
    "states": {
      "loading": "불러오는 중입니다…",
      "empty": "표시할 내용이 없습니다."
    },
    "aiWatermark": "AI 생성 예상 이미지 — 실제 시공 결과와 다를 수 있습니다",
    "aiNotice": "AI 생성 이미지는 계약·심사 서류에 사용할 수 없습니다 — 시공 기준은 도면입니다",
    "weekday": {
      "0": "일",
      "1": "월",
      "2": "화",
      "3": "수",
      "4": "목",
      "5": "금",
      "6": "토"
    }
  },
  "lang": {
    "select": "언어 선택"
  },
  "shell": {
    "menu": {
      "home": "홈",
      "groups": {
        "ops": "전시 운영",
        "design": "설계·시공",
        "visitor": "관람객·마케팅",
        "finance": "정산·분석",
        "work": "업무 공통",
        "system": "시스템관리"
      },
      "items": {
        "dashboard": "대시보드",
        "exhibitors": "참가업체 관리",
        "schedule": "전시 일정",
        "halls": "홀 배정",
        "boothSales": "부스 판매",
        "operations": "현장운영",
        "floorplan": "플로어플랜 스튜디오",
        "documents": "서류·마일스톤",
        "auctions": "공사 옥션",
        "contractor": "수주 부스",
        "logistics": "반입·반출",
        "visitors": "관람객",
        "checkin": "체크인 데스크",
        "leads": "리드",
        "campaigns": "마케팅",
        "sponsorship": "스폰서십",
        "cms": "콘텐츠 CMS",
        "settlement": "정산",
        "analytics": "경영분석",
        "worklog": "업무일지",
        "workSchedule": "일정",
        "message": "쪽지",
        "notice": "공지",
        "meeting": "회의록",
        "report": "업무보고",
        "approval": "결재",
        "opinion": "의견접수",
        "search": "통합검색",
        "appqr": "모바일 앱 설치",
        "admin": "관리 대시보드",
        "users": "사용자 관리",
        "roles": "역할/권한",
        "depts": "조직 관리",
        "companies": "회사 관리",
        "menus": "메뉴 관리",
        "programs": "프로그램 관리",
        "roleMenus": "역할-메뉴 매핑",
        "codes": "공통코드",
        "authPolicy": "인증 정책",
        "loginHistory": "로그인 이력",
        "audit": "감사로그",
        "errorLog": "오류 로그",
        "systemHealth": "시스템 상태",
        "settings": "시스템설정",
        "mailConfig": "메일 설정",
        "notifyConfig": "알림 설정",
        "tenants": "테넌트",
        "rulesets": "룰셋",
        "slides": "로그인 슬라이드",
        "msgTemplates": "메시지 관리"
      },
      "sections": {
        "userOrg": "사용자·조직",
        "menuAuth": "메뉴·프로그램·코드",
        "policyLog": "정책·이력·로그",
        "statusConfig": "상태·설정",
        "masterEtc": "마스터·기타"
      }
    },
    "nav": {
      "events": "행사",
      "exhibit": "참가안내",
      "visit": "관람안내",
      "transport": "교통"
    },
    "searchPlaceholder": "행사 검색",
    "cta": {
      "register": "관람 사전등록"
    },
    "menuOpen": "메뉴 열기",
    "menuClose": "메뉴 닫기",
    "homeAria": "{{brand}} 홈",
    "primaryMenu": "주요 메뉴",
    "mobileMenu": "모바일 메뉴",
    "footer": {
      "brandDesc": "대한민국 최대 규모의 전시 컨벤션 센터. 비즈니스와 문화의 혁신을 잇습니다.",
      "quickTitle": "바로가기",
      "quickSchedule": "행사 일정",
      "quickExhibit": "참가 안내",
      "quickDirections": "오시는 길",
      "quickSitemap": "사이트맵",
      "supportTitle": "고객지원",
      "supportPrivacy": "개인정보처리방침",
      "supportTerms": "이용약관",
      "supportContact": "문의하기",
      "contactTitle": "연락처",
      "contactAddress": "경기도 고양시 일산서구 킨텍스로 217-60",
      "contactTel": "대표번호 1899-1001",
      "contactEmail": "exhibition@kintex.com",
      "bottom": "2026 © KINTEX. All Rights Reserved. (10390) 217-60, Kintex-ro, Ilsanseo-gu, Goyang-si"
    },
    "footerbar": {
      "copyright": "© 2026 KINTEX. All rights reserved.",
      "systemOk": "시스템 정상",
      "systemDown": "시스템 점검",
      "support": "고객지원"
    },
    "login": "로그인"
  },
  "home": {
    "heroAria": "킨텍스 소개",
    "eyebrow": "Global Exhibition Platform",
    "heroTitleLine1": "세계로 통하는 전시,",
    "heroTitleEm": "킨텍스",
    "heroLead": "대한민국 최대 규모의 전시 컨벤션 센터 KINTEX에서 펼쳐지는 비즈니스와 문화의 새로운 혁신을 경험하세요.",
    "ctaRegister": "관람 사전등록",
    "ctaFacility": "시설 안내 보기",
    "eventsAria": "진행중 예정 행사",
    "eventsTitle": "진행중 · 예정 행사",
    "eventsSub": "지금 킨텍스에서 열리는 주요 소식을 확인하세요.",
    "eventsMore": "전체 일정 보기",
    "loading": "행사 정보를 불러오는 중입니다…",
    "empty": "현재 진행 중이거나 예정된 행사가 없습니다.",
    "tagExhibition": "EXHIBITION",
    "booth": "부스 {{count}}",
    "aiOptimized": "AI 최적화",
    "ongoing": "진행중",
    "ended": "종료",
    "dday": "D-{{n}}",
    "ddayZero": "D-DAY",
    "register": "사전등록",
    "hallTbd": "홀 배정 예정",
    "transportAria": "오시는 길",
    "transportTitle": "오시는 길",
    "transportSub": "더욱 빨라진 접근성으로 킨텍스를 만나보세요.",
    "gtxTitle": "GTX-A 킨텍스역 개통",
    "gtxDesc": "킨텍스역에서 도보 3분 거리",
    "transit": "대중교통",
    "transitDesc": "광역버스 및 지하철",
    "parking": "주차안내",
    "parkingDesc": "4,000대 동시 주차",
    "shuttle": "셔틀버스",
    "shuttleDesc": "주요 거점 순환",
    "mapAria": "킨텍스 위치 지도",
    "mapAddress": "고양시 일산서구 킨텍스로 217-60",
    "mapPlace": "KINTEX 제1, 2전시장",
    "mapViewAria": "지도 보기",
    "pageAria": "메인 홈",
    "greeting": "안녕하세요, {{name}}님",
    "greetingGuest": "안녕하세요",
    "viewAll": "전체 보기",
    "loadError": "불러오지 못했습니다",
    "role": {
      "organizer": "주최자",
      "exhibitor": "참가업체",
      "contractor": "장치업체",
      "hallManager": "홀매니저",
      "admin": "관리자"
    },
    "kpi": {
      "aria": "요약 지표"
    },
    "banner": {
      "aria": "행사 소개 배너",
      "prev": "이전 배너",
      "next": "다음 배너",
      "emptyTitle": "등록된 배너가 없습니다",
      "emptyDesc": "관리자에서 행사 배너를 등록하면 이곳에 노출됩니다."
    },
    "showcase": {
      "title": "진행 중·다가오는 전시",
      "all": "전체 보기",
      "prev": "이전",
      "next": "다음",
      "statusOngoing": "진행중",
      "statusUpcoming": "예정",
      "emptyTitle": "해당 기간 전시가 없습니다",
      "emptyCta": "전체 일정 보기",
      "tab": {
        "ongoing": "진행 중",
        "thisMonth": "이번 달",
        "nextMonth": "다음 달"
      }
    },
    "calendar": {
      "title": "전시 일정",
      "prev": "이전 달",
      "next": "다음 달",
      "today": "오늘",
      "all": "전체",
      "centerFilter": "전시장 필터",
      "yearMonth": "{{y}}년 {{m}}월",
      "legendOngoing": "진행중",
      "legendUpcoming": "예정",
      "legendEnded": "종료",
      "more": "+{{n}}",
      "moreTitle": "{{date}} 전시",
      "popupEmpty": "해당 일자에 전시가 없습니다",
      "listTitle": "진행 중·예정 전시",
      "listEmpty": "예정된 전시가 없습니다",
      "listEmptyCta": "전체 일정 보기",
      "loadError": "일정을 불러오지 못했습니다"
    },
    "todo": {
      "title": "내 할 일",
      "noDue": "기한 없음",
      "emptyTitle": "모두 완료",
      "emptyDesc": "처리할 작업이 없습니다",
      "emptyCta": "알림 열기"
    },
    "notice": {
      "title": "공지사항",
      "more": "더보기",
      "new": "NEW",
      "pinned": "고정",
      "emptyTitle": "등록된 공지가 없습니다",
      "emptyCta": "전체 공지 보기"
    },
    "quick": {
      "title": "빠른 작업",
      "editor": "배치 에디터",
      "invite": "참가업체 초대",
      "docs": "서류 워크플로",
      "settlement": "정산",
      "notice": "공지 작성",
      "search": "통합검색"
    },
    "activity": {
      "title": "최근 활동",
      "emptyTitle": "최근 활동이 없습니다",
      "emptyCta": "알림 설정"
    },
    "time": {
      "justNow": "방금",
      "minutes": "{{n}}분 전",
      "hours": "{{n}}시간 전",
      "days": "{{n}}일 전"
    },
    "workspace": {
      "title": "내 행사",
      "emptyTitle": "참여 중인 행사가 없습니다",
      "emptyDesc": "초대 링크 또는 초대 코드를 확인하세요",
      "invite": "초대 코드 확인",
      "codePh": "초대 코드 입력"
    },
    "charts": {
      "title": "전시 현황 차트",
      "statusTitle": "행사 상태",
      "trendTitle": "월별 추이",
      "centerTitle": "전시장별 개최",
      "monthSuffix": "월",
      "empty": "표시할 데이터가 없습니다"
    },
    "ai": {
      "aria": "KINTEX AI 기능",
      "title": "KINTEX AI",
      "badge": "AI",
      "subtitle": "배치 설계부터 시공 시안·리드 분석까지 AI가 합니다",
      "askPh": "무엇이든 물어보세요 — 예: 이번 달 매출은?",
      "askBtn": "질문",
      "askAria": "AI에게 질문",
      "tool": {
        "layout": {
          "title": "AI 부스 배치 스튜디오",
          "desc": "1·2·3안 자동 생성"
        },
        "gallery": {
          "title": "시공 예상 시안 갤러리",
          "desc": "나노바나나 AI 렌더"
        },
        "nlquery": {
          "title": "자연어 데이터 조회",
          "desc": "질문하면 표로 답합니다"
        },
        "rules": {
          "title": "규정 AI 챗봇",
          "desc": "전시 규정 근거 답변"
        },
        "leads": {
          "title": "리드 AI 스코어링",
          "desc": "유망 리드 자동 분석"
        }
      }
    },
    "prodEyebrow": "AI 전시 자동화 플랫폼",
    "prodTitle": "킨텍스 AI 전시 운영 플랫폼",
    "prodTagline": "부스 설계부터 시공 시안, 정산까지 하나의 흐름으로 완성합니다.",
    "ctaLogin": "로그인",
    "ctaPreReg": "사전등록",
    "roleAria": "역할별 소개",
    "roleTitle": "역할별 맞춤 기능",
    "roleSub": "주최자·참가업체·시공사·관람객 모두를 위한 도구를 제공합니다.",
    "stepsAria": "핵심 기능",
    "stepsTitle": "AI로 완성하는 전시 운영",
    "stepsSub": "AI 배치에서 시공 시안, 역경매 옥션, 실시간 정산까지 이어집니다."
  },
  "detail": {
    "tabs": {
      "intro": "소개",
      "program": "프로그램",
      "speakers": "연사",
      "exhibitors": "참가업체",
      "transport": "교통",
      "faq": "FAQ"
    },
    "eyebrow": "KINTEX Exhibition",
    "loadingTitle": "행사 정보를 불러오는 중…",
    "fallbackTitle": "행사 상세",
    "dateTbd": "일정 확인 중",
    "placeTbd": "홀 배정 예정",
    "lead": "킨텍스에서 열리는 전시회 정보를 확인하고 사전등록하세요.",
    "factDate": "일시",
    "factPlace": "장소",
    "ctaRegister": "사전등록하기",
    "ctaFloorplan": "전시장 도면 보기",
    "navAria": "행사 상세 내비게이션",
    "shareAria": "공유",
    "share": "공유하기",
    "copyLink": "링크 복사",
    "overviewAria": "전시회 개요",
    "overviewTitle": "전시회 개요",
    "overviewLead": "스마트팩토리 코리아 2026은 차세대 제조 기술의 집약체입니다. AI, 로보틱스, IoT, 그리고 디지털 트윈 기술이 결합된 최신 솔루션을 한자리에서 확인하십시오. 전 세계 500개 이상의 선도 기업이 참여합니다.",
    "statBooth": "참가 부스",
    "statVisitors": "예상 참관객",
    "statVisitorsValue": "30,000+",
    "themesTitle": "주요 전시 테마",
    "theme1Title": "AI & 자율 로봇",
    "theme1Desc": "스스로 학습하고 판단하는 스마트 로봇 솔루션",
    "theme2Title": "디지털 트윈 & IoT",
    "theme2Desc": "가상 세계와 현실 제조 현장의 실시간 동기화",
    "theme3Title": "탄소중립 스마트 제조",
    "theme3Desc": "에너지 효율 극대화를 위한 친환경 공정 기술",
    "programAria": "프로그램 일정",
    "programTitle": "프로그램 일정",
    "day1": "9월 5일 (Day 1)",
    "day2": "9월 6일 (Day 2)",
    "agenda1Title": "제조업의 미래: AI가 이끄는 생산성 혁명",
    "agenda1Desc": "AI 글로벌 석학들이 제안하는 2030 제조 전략과 실제 구현 사례 분석",
    "agenda1Room": "메인 컨퍼런스 홀",
    "agenda2Title": "산업용 5G와 엣지 컴퓨팅의 결합",
    "agenda2Desc": "지연 없는 데이터 전송을 통한 실시간 공정 제어 기술 시연",
    "agenda2Room": "세미나실 A",
    "agenda3Title": "Global Buyers Matching Day",
    "agenda3Desc": "해외 유망 기업과 국내 공급사 간의 1:1 비즈니스 미팅",
    "agenda3Room": "비즈니스 라운지",
    "speakersTitle": "주요 연사",
    "speaker1Role": "AI 연구소장 | TechCorp",
    "speaker2Role": "CTO | Automatech",
    "speaker3Role": "로봇공학 석좌교수 | Korea Univ.",
    "speaker4Role": "Global VP | Digitron",
    "profileAria": "{{name}} 프로필",
    "faqAria": "자주 묻는 질문",
    "faqTitle": "자주 묻는 질문",
    "faq1Q": "사전등록은 어떻게 하나요?",
    "faq1A": "상단 \"사전등록하기\" 버튼에서 유형 선택 후 정보를 입력하면 모바일 배지가 발급됩니다.",
    "faq2Q": "입장료가 있나요?",
    "faq2A": "일반 관람객은 사전등록 시 무료입니다. 현장 등록은 유료로 운영될 수 있습니다.",
    "faq3Q": "주차 공간이 있나요?",
    "faq3A": "킨텍스 제1·2전시장에 최대 4,000대 동시 주차가 가능합니다.",
    "fabCta": "사전등록 바로가기"
  },
  "register": {
    "steps": {
      "type": "유형",
      "info": "정보",
      "interest": "관심분야",
      "done": "완료"
    },
    "stepsAria": "사전등록 단계",
    "type": {
      "general": "일반 관람객",
      "generalDesc": "전시 및 공개 세션 참관이 가능한 일반 방문객",
      "buyer": "바이어",
      "buyerDesc": "B2B 매칭 및 비즈니스 상담을 위한 기업 담당자",
      "vip": "VIP",
      "vipDesc": "초청 인사 전용 라운지 및 전 세션 입장 귀빈"
    },
    "step0Title": "참가 유형 선택",
    "step0Sub": "KINTEX 전시회에 참여하실 자격을 선택해 주세요.",
    "typeGroupAria": "참가 유형",
    "step1Title": "기본 정보 입력",
    "step1Sub": "연락 및 출입증 발급을 위한 정보를 입력해 주세요.",
    "name": "이름",
    "namePh": "성함을 입력하세요",
    "phone": "연락처 (Mobile)",
    "email": "이메일",
    "emailPh": "example@domain.com",
    "org": "소속 (회사/기관)",
    "orgPh": "회사명 또는 학교명",
    "step2Title": "관심 분야 선택",
    "step2Sub": "관심 분야를 선택하시면 맞춤형 정보를 제공해 드립니다.",
    "interestsAria": "관심 분야",
    "interest": {
      "ai": "AI 솔루션",
      "factory": "스마트 팩토리",
      "robotics": "로보틱스",
      "bigdata": "빅데이터",
      "cloud": "클라우드"
    },
    "consentPrivacy": "개인정보 수집·이용 동의",
    "required": "(필수)",
    "consentMarketing": "마케팅 수신 동의 (선택)",
    "consentMore": "상세보기",
    "errPrivacy": "개인정보 수집·이용 동의(필수)에 체크해 주세요.",
    "errName": "이름을 입력해 주세요.",
    "errEvent": "행사 정보를 확인할 수 없습니다.",
    "doneTitle": "사전등록이 접수되었습니다",
    "doneSub": "{{name}}님의 사전등록이 완료되었습니다. 모바일 배지를 입구 키오스크에서 사용하세요.",
    "visitorDefault": "관람객",
    "badgeAria": "모바일 배지 미리보기",
    "badgeName": "홍길동",
    "badgeCodeLabel": "Badge Code",
    "doneNote": "입구 키오스크에서 QR을 인식해 실물 배지를 출력할 수 있습니다.",
    "regNo": "등록번호: {{id}}",
    "submitting": "등록 중…",
    "submit": "등록하기",
    "eventBrowse": "행사 둘러보기",
    "floorplan": "전시장 도면 보기"
  },
  "floorplan": {
    "sideAria": "부스 검색 및 목록",
    "filtersTitle": "업종 · 존 · 키워드",
    "searchPh": "참가업체 또는 부스번호 검색",
    "searchAria": "부스 검색",
    "typeFilter": "부스 유형 필터",
    "hallSelect": "전시장 선택",
    "allHalls": "전체 홀",
    "listAria": "부스 목록 (비시각 대안)",
    "loading": "부스 정보를 불러오는 중…",
    "searchResults": "검색 결과 ({{count}})",
    "noMatch": "일치하는 부스가 없습니다.",
    "reservedBooth": "예약 부스",
    "availableBooth": "분양 가능",
    "type": {
      "assembled": "조립부스",
      "independent": "독립부스",
      "corner": "코너부스",
      "island": "아일랜드",
      "default": "부스"
    },
    "stageAria": "인터랙티브 홀 지도",
    "boothLayoutAria": "부스 배치",
    "boothAria": "부스 {{no}} {{name}}",
    "loadFail": "도면을 불러오지 못했습니다.",
    "noBooth": "표시할 부스가 없습니다.",
    "popInfoAria": "{{name}} 정보",
    "popDetail": "부스 상세",
    "directions": "길찾기",
    "zoomIn": "확대",
    "zoomOut": "축소",
    "reset": "초기화",
    "myLocation": "내 위치",
    "legendAria": "범례",
    "legendAvailable": "판매 (Available)",
    "legendReserved": "예약 (Reserved)",
    "legendPublic": "공용부 (Public)"
  },
  "inquiry": {
    "heroAria": "참가 문의",
    "heroTitle": "참가 문의",
    "heroLead": "KINTEX와 함께 귀사의 비즈니스를 글로벌 시장으로 확장하세요. 전문 컨설턴트가 최적의 전시 공간을 제안해 드립니다.",
    "cta": "참가 문의",
    "guideAria": "참가 안내",
    "guideTitle": "참가 안내",
    "booth1Tier": "Entry Tier",
    "booth1Title": "조립부스 (Shell Scheme)",
    "booth1Desc": "기본 벽체와 바닥이 제공되는 가장 경제적인 선택. 소규모 기업에 추천합니다.",
    "booth1Price": "₩ 2,500,000 / unit",
    "booth2Tier": "Design Freedom",
    "booth2Title": "독립부스 (Raw Space)",
    "booth2Desc": "공간만 제공되어 브랜드에 맞는 자유로운 디자인 설계가 가능합니다.",
    "booth2Price": "₩ 2,000,000 / unit",
    "booth3Tier": "Full Solution",
    "booth3Title": "프리미엄 (Premium)",
    "booth3Desc": "AI 최적화 동선 설계 및 맞춤형 브랜딩 패키지가 포함된 올인원 솔루션입니다.",
    "booth3Price": "별도 문의",
    "boothExampleAria": "{{title}} 예시",
    "formAria": "문의하기",
    "formTitle": "문의하기",
    "formSub": "참가 신청 및 전시 관련 궁금한 점을 남겨주세요. 담당자가 영업일 기준 24시간 이내에 답변드립니다.",
    "contactPhone": "전화 문의",
    "contactPhoneVal": "+82-31-810-8114",
    "contactEmail": "이메일 문의",
    "contactEmailVal": "exhibit@kintex.com",
    "contactLoc": "위치 안내",
    "contactLocVal": "경기도 고양시 일산서구 킨텍스로 217-60",
    "loginHintQ": "이미 계정이 있으신가요?",
    "loginHintA": "로그인하여 빠른 문의하기",
    "company": "회사명",
    "companyPh": "회사명을 입력하세요",
    "name": "담당자",
    "namePh": "성함을 입력하세요",
    "contact": "연락처 (이메일 또는 전화번호)",
    "contactPh": "연락 가능한 정보를 입력하세요",
    "scale": "예상 규모",
    "scaleSelect": "선택하세요",
    "scale1": "1개 부스 (9sqm)",
    "scale2": "2-4개 부스 (18-36sqm)",
    "scale3": "5-9개 부스 (45-81sqm)",
    "scale4": "10개 이상",
    "hall": "희망 홀",
    "hallSelect": "홀 선택",
    "message": "문의 내용",
    "messagePh": "참가 목적이나 특별 요청사항이 있다면 남겨주세요.",
    "agree": "개인정보 수집 및 이용에 동의합니다.",
    "required": "(필수)",
    "errAgree": "개인정보 수집 및 이용에 동의해 주세요.",
    "errName": "담당자 이름을 입력해 주세요.",
    "errContact": "연락 가능한 이메일 또는 전화번호를 입력해 주세요.",
    "errMessage": "문의 내용을 입력해 주세요.",
    "success": "문의가 접수되었습니다. 접수번호 {{no}}",
    "submitting": "전송 중…",
    "submit": "문의 보내기"
  },
  "microsite": {
    "introAria": "{{brand}} 소개",
    "eyebrow": "KINTEX Exhibitor",
    "ctaMeeting": "미팅 예약",
    "ctaBrochure": "기업 소개서",
    "defaultBrand": "(주)한빛로보틱스",
    "defaultTagline": "미래를 움직이는 지능형 로보틱스 솔루션",
    "defaultBoothLoc": "부스 A-102 · 홀7",
    "boothUndetermined": "미정",
    "boothPrefix": "부스",
    "boothLocLabel": "KINTEX 전시장 부스 위치",
    "viewMap": "전시장 도면 보기",
    "productsAria": "핵심 제품 라인업",
    "productsTitle": "핵심 제품 라인업",
    "productsSub": "현장에서 만나보실 대표 제품입니다.",
    "product": "제품",
    "product1Tag": "Industrial COBOT",
    "product1Title": "HR-A1 협동 로봇",
    "product1Desc": "고도의 정밀도와 안전성을 갖춘 산업용 협동 로봇. 인간과의 협업을 최우선으로 설계했습니다.",
    "product2Tag": "Smart Logistics",
    "product2Title": "HR-M3 자율주행 AMR",
    "product2Desc": "스마트 팩토리 물류 효율을 극대화하는 자율 이동 로봇. 실시간 장애물 회피와 경로 최적화.",
    "product3Tag": "AI Vision",
    "product3Title": "HR-Q Vision 스캐너",
    "product3Desc": "AI 딥러닝 기반 완벽한 품질 검수. 미세 결함도 놓치지 않는 초정밀 3D 스캐닝.",
    "productImgAria": "{{title}} 이미지",
    "previewAria": "부스 미리보기",
    "previewTitle": "부스 미리보기",
    "previewSub": "AI가 생성한 예상 부스 이미지입니다. 실제 시공 결과와 다를 수 있습니다.",
    "galleryMain": "메인 전시 존",
    "galleryVip": "VIP 라운지",
    "galleryAria": "{{label}} AI 생성 예상 이미지",
    "watermark": "AI 생성 예상 이미지 — 실제 시공 결과와 다를 수 있음",
    "meetingAria": "미팅 예약",
    "ctaBanner": "귀사의 비즈니스에 맞는 맞춤형 로봇 솔루션을 제안해 드립니다.",
    "ctaBannerBtn": "지금 미팅 예약하기"
  },
  "ticket": {
    "viewPurchase": "입장권 예매",
    "viewManage": "예매 확인 · 취소",
    "viewSwitchAria": "티켓 화면 전환",
    "type": {
      "general": "일반권",
      "generalDesc": "일반 관람객 및 개인 참가자",
      "generalPrice": "₩0 (사전등록 할인가)",
      "buyer": "바이어권",
      "buyerDesc": "유관 기업 종사자 및 바이어 전용",
      "buyerPrice": "무료 · 자격심사 필요",
      "group": "단체권 (10매 이상)",
      "groupDesc": "기업 단체 관람 전용",
      "groupPrice": "₩9,000 / 1인",
      "vip": "VIP권",
      "vipDesc": "전시회 올패스 + VIP 라운지 이용권",
      "vipPrice": "₩50,000"
    },
    "steps": {
      "s1": "행사·권종",
      "s2": "예매자",
      "s3": "결제",
      "s4": "완료"
    },
    "stepsAria": "예매 단계",
    "bannerTitle": "스마트팩토리 코리아 2026",
    "bannerDate": "2026.09.05 – 09.08",
    "bannerPlace": "제2전시장 홀7",
    "posterAria": "행사 포스터",
    "loginBanner": "로그인하면 예매 내역이 자동 저장됩니다.",
    "loginLink": "로그인하기",
    "sample": "샘플 데이터",
    "h2Type": "티켓 권종 선택",
    "aiOptimized": "AI OPTIMIZED",
    "off10": "10% OFF",
    "soldout": "매진",
    "qtyAria": "{{name}} 수량",
    "decrease": "감소",
    "increase": "증가",
    "h2Booker": "예매자 정보",
    "bookerName": "이름",
    "bookerNamePh": "성함",
    "bookerTel": "연락처",
    "bookerEmail": "이메일 (티켓 발송)",
    "consentPrivacy": "개인정보 수집·이용 동의",
    "required": "(필수)",
    "consentMarketing": "마케팅 수신 동의 (선택)",
    "h2Pay": "결제 수단",
    "payCard": "신용카드",
    "payEasy": "간편결제",
    "payBank": "계좌이체",
    "payGroupAria": "결제 수단",
    "pgNote": "결제는 PG사 보안 페이지에서 진행되며, 카드정보는 본 사이트에 저장되지 않습니다. 모든 거래는 256비트 SSL 암호화로 보호됩니다. (PG 미연동 — 데모 플로우)",
    "doneTitle": "예매가 접수되었습니다",
    "doneNo": "KTX-2026-0000-DEMO",
    "doneSub": "이메일로 티켓을 보내드립니다. (실서비스 연동 시) 총 {{count}}매 · 결제 {{total}}",
    "sampleReady": "샘플 데이터 · 결제 준비 중",
    "walletBtn": "모바일 티켓 지갑 열기",
    "manageBtn": "예매 확인 / 취소",
    "summaryAria": "예매 내역 요약",
    "summaryTitle": "예매 내역 요약",
    "summaryCount": "선택 매수",
    "count": "{{n}}매",
    "subtotal": "소계",
    "discount": "할인",
    "finalTotal": "최종 결제 금액",
    "nextStep": "다음 단계로 이동",
    "freeDone": "무료 예매 완료",
    "pay": "결제하기",
    "payProceed": "결제 진행",
    "customerCenter": "고객센터 1588-0000 (평일 09–18시)",
    "manageTitle": "예매 확인 · 취소",
    "manageSub": "비회원 예매 내역을 조회하고 취소하실 수 있습니다.",
    "lookNo": "예매번호",
    "lookNoPh": "KTX-YYYY-XXXXXX",
    "lookEmail": "이메일",
    "lookEmailPh": "example@email.com",
    "lookBtn": "조회하기",
    "loginToView": "로그인하여 내 예매 보기",
    "notLooked": "예매번호와 이메일을 입력해 조회하세요. (샘플: 아무 값이나 입력 후 조회)",
    "booked": "예매완료",
    "bookNoLabel": "예매번호",
    "paidAt": "결제일시",
    "colType": "권종",
    "colQty": "수량",
    "colAmount": "금액",
    "bookerInfo": "예매자 정보",
    "totalPaid": "총 결제 금액",
    "refundTitle": "취소·환불 정책",
    "refundD7": "방문 7일 전 (D-7)",
    "refundD7Val": "100% 환불",
    "refundD3": "방문 3일 전 (D-3)",
    "refundD3Val": "50% 환불",
    "refundDay": "방문 당일",
    "refundDayVal": "0% (환불불가)",
    "refundEst": "현재 예상 환불액",
    "cancelBooking": "예매 취소",
    "refundNote": "환불은 PG사를 통해 원결제수단으로 처리됩니다.",
    "aiHelper": "AI 정산 도우미",
    "aiHelperDesc": "신용카드 할부 결제 건은 취소 시 카드사를 통해 한도 복구까지 약 3–5영업일이 소요될 수 있습니다.",
    "cancelModalAria": "예매 취소 확인",
    "cancelModalTitle": "예매를 취소하시겠습니까?",
    "cancelModalDesc": "D-15 기준 100% 환불(₩40,000)이 적용됩니다. 환불은 원결제수단으로 PG사를 통해 처리되며, 실서비스 연동 시 실제 환불이 진행됩니다.",
    "cancelConfirm": "취소하기"
  },
  "login": {
    "title": "로그인",
    "sub": "KINTEX 전시 관리 시스템에 오신 것을 환영합니다.",
    "email": "이메일",
    "emailPh": "name@company.com",
    "password": "비밀번호",
    "remember": "아이디 기억",
    "forgot": "비밀번호 찾기",
    "errResponse": "로그인 응답을 처리하지 못했습니다. 다시 시도해 주세요.",
    "errLocked": "로그인 시도가 일시적으로 제한되었습니다. 잠시 후 다시 시도해 주세요.",
    "errNotImpl": "로그인 서비스가 준비 중입니다. 잠시 후 다시 시도해 주세요.",
    "errGeneric": "로그인 중 오류가 발생했습니다.",
    "submitting": "로그인 중…",
    "submit": "로그인",
    "signupPrompt": "아직 계정이 없으신가요?",
    "signup": "회원가입",
    "or": "또는",
    "internalLogin": "킨텍스 내부 계정으로 로그인",
    "inviteLink": "초대 코드로 참여하기 →",
    "copyright": "© 2026 KINTEX. All rights reserved.",
    "wsTitle": "행사 워크스페이스",
    "wsSub": "참여 중인 행사를 선택하세요.",
    "wsEmptyTitle": "참여 중인 행사가 없습니다",
    "wsEmptyDesc": "초대 링크를 확인하거나 초대 코드로 참여하세요.",
    "wsInvite": "초대 코드로 참여하기",
    "prodTagline": "킨텍스 AI 전시 운영 플랫폼"
  },
  "signup": {
    "title": "회원가입",
    "desc": "KINTEX AI 전시관리 계정을 만듭니다. 회사명·초대코드는 선택 사항입니다.",
    "email": "이메일",
    "emailPh": "name@company.com",
    "name": "이름",
    "namePh": "홍길동",
    "password": "비밀번호",
    "passwordPh": "8자 이상",
    "password2": "비밀번호 확인",
    "password2Ph": "비밀번호 재입력",
    "company": "회사명 (선택)",
    "companyPh": "(주)킨텍스",
    "invite": "초대 코드 (선택)",
    "invitePh": "INV-XXXX",
    "mismatch": "비밀번호가 일치하지 않습니다.",
    "errNotImpl": "회원가입 서비스가 준비 중입니다. 잠시 후 다시 시도해 주세요.",
    "errConflict": "이미 가입된 이메일입니다.",
    "errGeneric": "회원가입 중 오류가 발생했습니다.",
    "noticePending": "계정이 생성되었습니다. 관리자 승인 후 로그인할 수 있습니다.",
    "noticeActive": "계정이 생성되었습니다. 이제 로그인해 주세요.",
    "doneTitle": "회원가입 완료",
    "goLogin": "로그인하러 가기",
    "cancel": "취소",
    "submitting": "가입 중…",
    "submit": "가입하기"
  },
  "forgot": {
    "requestTitle": "비밀번호 찾기",
    "requestDesc": "가입한 이메일로 인증코드를 보내드립니다. 등록된 계정인 경우 메일이 발송됩니다.",
    "email": "이메일",
    "emailPh": "name@company.com",
    "sending": "전송 중…",
    "requestBtn": "인증코드 받기",
    "resetTitle": "비밀번호 재설정",
    "resetDesc": "<0>{{email}}</0> 로 받은 인증코드와 새 비밀번호를 입력하세요.",
    "code": "인증코드",
    "codePh": "메일로 받은 코드",
    "newpw": "새 비밀번호",
    "newpwPh": "8자 이상",
    "prev": "이전",
    "changing": "변경 중…",
    "changeBtn": "비밀번호 변경",
    "doneTitle": "비밀번호 변경 완료",
    "doneDesc": "새 비밀번호로 로그인해 주세요.",
    "goLogin": "로그인하러 가기",
    "errInvalid": "인증코드가 올바르지 않거나 만료되었습니다.",
    "errNotImpl": "비밀번호 재설정 서비스가 준비 중입니다. 잠시 후 다시 시도해 주세요.",
    "errRequest": "요청 중 오류가 발생했습니다.",
    "errReset": "재설정 중 오류가 발생했습니다.",
    "cancel": "취소"
  },
  "dashboard": {
    "countdown": "개장 D-{{n}}",
    "degradedTag": "오프라인 — 샘플",
    "degradedMsg": "집계 API에 연결하지 못해 시연용 샘플을 표시합니다.",
    "loadError": "대시보드 집계를 불러오지 못했습니다.",
    "timelineAria": "마일스톤 타임라인",
    "milestoneEmptyTitle": "파생 일정이 없습니다",
    "milestoneEmptyDesc": "행사 시작일이 확정되면 마일스톤이 표시됩니다.",
    "mstate": {
      "done": "완료",
      "current": "진행 중",
      "upcoming": "예정"
    },
    "kpisAria": "핵심 지표",
    "kpiEmpty": "집계된 지표가 없습니다",
    "exhibitorStatus": "참가업체 현황",
    "sampleTag": "샘플",
    "exhibitorEmptyTitle": "참가업체 부스가 없습니다",
    "exhibitorEmptyDesc": "부스 배치·설계안이 등록되면 여기에 표시됩니다.",
    "colBoothNo": "부스번호",
    "colCompany": "업체명",
    "colStatus": "설계 상태",
    "feedAria": "알림 피드",
    "feedTitle": "알림",
    "feedEmpty": "새 알림이 없습니다",
    "aerialAria": "홀 전경 조감",
    "aerialTitle": "홀 전경 조감",
    "aerialShot": "S7 홀 전경",
    "aerialAlt": "홀 전경 조감 예상 이미지"
  },
  "schedule": {
    "title": "전시 일정",
    "subtitle": "킨텍스 전 홀 행사 일정 관리·모니터링 — {{n}}건",
    "crawlFallback": "(kintex.com 크롤링 폴백)",
    "yearFilter": "연도 필터",
    "allYears": "전체 연도",
    "yearN": "{{y}}년",
    "hallFilter": "홀 필터",
    "allHalls": "전체 홀 (1-10)",
    "hall1": "제1전시장 (홀 1-5)",
    "hall2": "제2전시장 (홀 6-10)",
    "catFilter": "카테고리 필터",
    "allCats": "전체 카테고리",
    "statusFilter": "상태 필터",
    "allStatus": "전체 상태",
    "cat": {
      "exhibition": "전시",
      "culture": "문화·예술",
      "trade": "무역·산업",
      "tech": "기술"
    },
    "status": {
      "ongoing": "진행중",
      "upcoming": "예정",
      "ended": "종료"
    },
    "catExhibit": "{{cat}} 전시",
    "apiWait": "행사 API 대기 (크롤링 데이터)",
    "viewSwitch": "보기 전환",
    "viewList": "목록",
    "viewCalendar": "캘린더",
    "listLoading": "행사 목록 로딩 중",
    "listAria": "행사 목록",
    "loadError": "전시 일정을 불러오지 못했습니다.",
    "count": "{{n}}건",
    "emptyTitle": "등록된 행사가 없습니다",
    "emptyDesc": "필터를 조정하거나 새 행사를 생성하세요.",
    "newEvent": "새 행사 생성",
    "period": "기간",
    "assignedHall": "배정 홀",
    "estVisitors": "추정 인원",
    "editDetail": "상세 편집",
    "viewLogistics": "반입/물류 보기",
    "monthCal": "월 캘린더",
    "prev": "이전",
    "next": "다음",
    "today": "오늘",
    "yearMonth": "{{y}}년 {{m}}월",
    "miniCal": "미니 캘린더",
    "prevMonth": "이전 달",
    "nextMonth": "다음 달",
    "offlineSample": "오프라인 — 샘플",
    "day": "{{d}}일",
    "dayHasEvent": "{{d}}일 (행사 있음)",
    "hallUtil": "홀 가동률",
    "hallUtilMonth": "홀 가동률 ({{y}}년 {{m}}월)",
    "availTitle": "홀 가용 현황",
    "availMonth": "홀 가용 ({{y}}년 {{m}}월)",
    "availHalls": "전체 홀 {{n}}개",
    "availFreeDays": "가용 {{free}}/{{total}}일",
    "availOpen": "가용",
    "availFull": "만실"
  },
  "boothsales": {
    "title": "부스 판매",
    "subtitleManager": "부스 판매 인벤토리 관리 — 상태·가격·차단 및 정산 연계",
    "subtitleExhibitor": "가용 부스를 선택해 선점 후 구매를 확정하세요",
    "noEventTitle": "행사를 선택해 주세요",
    "noEventDesc": "부스 판매를 조회할 행사가 지정되지 않았습니다.",
    "summaryAria": "부스 판매 상태 요약",
    "stAvailable": "가용",
    "stHeld": "선점",
    "stSold": "판매완료",
    "stBlocked": "차단",
    "rate": "임대 요율 {{rate}}원/㎡ ({{ver}})",
    "hallFilter": "홀 필터",
    "allHalls": "전체 홀",
    "loadError": "부스 판매 인벤토리를 불러오지 못했습니다.",
    "emptyTitle": "표시할 부스가 없습니다",
    "emptyManage": "이 행사의 배치안(layout)에 등록된 부스가 없습니다.",
    "emptyExhibitor": "현재 선택 가능한 가용 부스가 없습니다.",
    "status": {
      "available": "가용",
      "held": "선점됨",
      "sold": "판매완료",
      "blocked": "차단됨"
    },
    "wonUnit": "원",
    "hallLabel": "홀",
    "areaLabel": "면적",
    "soldTo": "판매처: {{c}}",
    "hold": "선점하기",
    "purchase": "구매 확정",
    "release": "선점 해제",
    "setPrice": "가격 설정",
    "block": "차단",
    "unblock": "차단 해제",
    "settle": "청구서 생성",
    "settling": "생성 중…",
    "heldToast": "부스를 선점했습니다. 제한 시간 내에 구매를 확정하세요.",
    "purchasedToast": "구매가 확정되었습니다.",
    "releasedToast": "선점을 해제했습니다.",
    "blockToast": "부스 상태를 변경했습니다.",
    "priceToast": "판매가를 변경했습니다.",
    "settleToast": "청구서 생성 완료 — 신규 {{created}}건, 기존 유지 {{skipped}}건.",
    "settleFail": "청구서 생성에 실패했습니다(권한 확인).",
    "holdConflict": "이미 다른 사용자가 선점했거나 판매/차단된 부스입니다.",
    "purchaseConflict": "선점이 만료되었거나 다른 사용자가 선점한 부스입니다.",
    "blockConflict": "이미 판매된 부스는 차단할 수 없습니다.",
    "actionFail": "요청을 처리하지 못했습니다.",
    "pricePrompt": "판매가(원)를 입력하세요. 빈칸이면 면적×요율 자동 계산으로 복원합니다.",
    "priceInvalid": "0 이상의 금액을 입력해 주세요."
  },
  "settlement": {
    "title": "정산·결제",
    "subtitle": "행사 참가업체 청구 · 수납 현황 관리",
    "generate": "청구서 생성",
    "generating": "생성 중…",
    "noEventTitle": "행사를 선택해 주세요",
    "noEventDesc": "정산 현황을 조회할 행사가 지정되지 않았습니다.",
    "genDone": "청구서 생성 완료 — 신규 {{created}}건, 기존 유지 {{skipped}}건.",
    "genError": "청구서 생성에 실패했습니다. 권한 또는 대상 데이터를 확인해 주세요.",
    "dashError": "정산 현황 집계를 불러오지 못했습니다.",
    "kpisAria": "정산 핵심 지표",
    "kpiBilled": "총 청구액",
    "kpiCollected": "수납액",
    "kpiOutstanding": "미수금",
    "kpiOverdue": "연체 청구",
    "count": "{{n}}건",
    "collectionRate": "수납률 {{rate}}%",
    "outstandingSub": "미수 잔액",
    "overdueSub": "납부 기한 경과",
    "distTitle": "청구 상태 분포",
    "distEmpty": "집계된 청구가 없습니다",
    "listTitle": "청구서 목록",
    "invoices": "청구서",
    "statusFilter": "상태 필터",
    "status": {
      "all": "전체",
      "pending": "미발행",
      "invoiced": "청구됨",
      "paid": "완납",
      "overdue": "연체",
      "cancelled": "취소"
    },
    "listError": "청구서 목록을 불러오지 못했습니다.",
    "emptyTitle": "청구서가 없습니다",
    "emptyManage": "상단의 청구서 생성으로 참가업체별 청구를 집계하세요.",
    "emptyView": "아직 발행된 청구서가 없습니다.",
    "colNo": "청구번호",
    "colExhibitor": "참가업체",
    "colBilled": "청구액",
    "colPaid": "수납",
    "colOutstanding": "미수",
    "colDue": "납부기한",
    "colStatus": "상태",
    "detail": "상세",
    "prev": "이전",
    "next": "다음",
    "pageInfo": "{{page}} / {{total}} · 총 {{cnt}}건",
    "modalAria": "청구서 상세",
    "invoice": "청구서",
    "close": "닫기",
    "detailError": "청구서 상세를 불러오지 못했습니다.",
    "liItem": "항목",
    "liQty": "수량",
    "liUnit": "단가",
    "liAmount": "금액",
    "noLines": "라인 항목 없음",
    "supplyAmount": "공급가액",
    "vat": "부가세(10%)",
    "grandTotal": "청구 총액",
    "paidOutstanding": "수납 / 미수",
    "payHistory": "수납 이력",
    "noPayments": "수납 기록이 없습니다.",
    "won": "{{v}}원",
    "issue": "청구서 발행",
    "issuing": "발행 중…",
    "payAmount": "수납 금액",
    "payAmountPh": "수납 금액(원)",
    "payMethod": "수납 방법",
    "methodTransfer": "계좌이체",
    "methodCard": "카드",
    "methodOther": "기타",
    "memo": "메모",
    "memoPh": "메모(선택)",
    "recordPay": "수납 기록",
    "recording": "기록 중…",
    "payFail": "수납 기록에 실패했습니다. 금액(총액 이내)·권한을 확인해 주세요.",
    "errPositive": "0보다 큰 금액을 입력해 주세요.",
    "errExceed": "미수 잔액을 초과할 수 없습니다.",
    "pgNote": "실제 결제는 외부 PG로 위임됩니다. 본 화면은 수납 확인 기록 전용입니다.",
    "managerOnly": "수납·발행은 주최자/홀매니저만 수행할 수 있습니다.",
    "colCategory": "유형",
    "catRental": "임대·유틸",
    "catAuctionFee": "옥션 수수료",
    "reportTitle": "정산 리포트",
    "reportShow": "리포트 보기",
    "reportHide": "닫기",
    "reportHint": "카테고리·상태별 합계와 수납율·미수를 집계하고 CSV로 내려받습니다.",
    "reportError": "리포트를 불러오지 못했습니다.",
    "reportCsv": "CSV 다운로드",
    "reportByCategory": "카테고리별 합계",
    "reportByStatus": "상태별 합계",
    "reportEmpty": "집계할 청구가 없습니다.",
    "reportNote": "합계는 취소된 청구를 제외한 값입니다. 금액은 서버 계산 기준입니다.",
    "reportRate": "수납율",
    "reportCount": "건수",
    "taxTitle": "세금계산서",
    "taxNo": "계산서 번호",
    "taxSupplier": "공급자",
    "taxBuyer": "공급받는자",
    "taxItem": "품목",
    "taxNone": "발행된 세금계산서가 없습니다.",
    "taxIssue": "세금계산서 발행",
    "taxIssuing": "발행 중…",
    "taxIssueFail": "세금계산서 발행에 실패했습니다.",
    "cancelledNote": "취소된 청구입니다.",
    "cancelInvoice": "청구 취소",
    "refundPreview": "환불 산정 미리보기",
    "refundError": "환불 산정을 불러오지 못했습니다.",
    "refundBracket": "적용 구간",
    "refundRate": "환불율",
    "refundBase": "기준액(납입)",
    "refundAmount": "환불액",
    "forfeitAmount": "공제·위약액",
    "refundManual": "행사 개막일 미확정 등으로 자동 산정이 불가합니다 — 재무 수기 검토 대상입니다.",
    "cancelReason": "취소 사유",
    "cancelReasonPh": "취소 사유(선택)",
    "cancelAbort": "취소 중단",
    "cancelConfirm": "취소 확정",
    "cancelling": "처리 중…",
    "cancelFail": "청구 취소에 실패했습니다."
  },
  "hallassign": {
    "title": "홀 배정 · 자동 견적",
    "subtitle": "홀×기간 배정 현황과 요율 룰셋 기반 즉시 견적(M1).",
    "start": "시작",
    "end": "종료",
    "newAssign": "새 배정",
    "board": "배정 보드",
    "boardHint": "겹치는 배정은 충돌로 표시됩니다.",
    "forbiddenTitle": "홀매니저 전용 보드",
    "forbiddenDesc": "배정 현황 조회는 킨텍스 홀매니저 계정만 가능합니다. 자동 견적은 아래에서 이용하세요.",
    "noHalls": "홀 마스터가 없습니다.",
    "noAssign": "배정 없음",
    "release": "배정 해제",
    "releaseConfirm": "{{event}}의 {{hall}} 배정을 해제할까요?",
    "assignedToast": "홀이 배정되었습니다.",
    "releasedToast": "배정이 해제되었습니다.",
    "releaseFail": "해제에 실패했습니다(권한 확인).",
    "conflictErr": "배정하려는 홀·기간이 다른 행사와 겹칩니다.",
    "assignFail": "배정에 실패했습니다.",
    "pickEventHall": "행사와 홀을 선택하세요.",
    "modalTitle": "홀 배정",
    "close": "닫기",
    "event": "행사",
    "pickEvent": "행사 선택…",
    "hall": "홀",
    "pickHall": "홀 선택…",
    "occupyStart": "점유 시작",
    "occupyEnd": "점유 종료",
    "primary": "주 배정 홀(primary)",
    "note": "비고",
    "optional": "선택 입력",
    "cancel": "취소",
    "assign": "배정",
    "assigning": "배정 중…",
    "autoQuote": "자동 견적",
    "quoteHint": "요율 룰셋 기준 · 최종 금액은 킨텍스 확정 시 안내",
    "startDate": "시작일",
    "endDate": "종료일",
    "boothSize": "부스 규모(선택)",
    "countPh": "개수",
    "calcQuote": "견적 계산",
    "calculating": "계산 중…",
    "quoteFail": "견적 계산에 실패했습니다.",
    "quoteReq": "홀·시작일·종료일을 입력하세요.",
    "qItem": "항목",
    "qBasis": "산출 근거",
    "qAmount": "금액",
    "rentalSubtotal": "임대료 소계",
    "rentalTotal": "임대료 합계 ({{days}}일)",
    "deposit": "관리비 예치금(별도)",
    "ruleset": "(룰셋 {{v}})",
    "openDetail": "{{event}} 배정 상세 열기",
    "detailTitle": "배정 상세",
    "edit": "수정",
    "dHall": "홀",
    "dPeriod": "점유 기간",
    "dStatus": "상태",
    "dNote": "비고",
    "primaryTag": "주 배정 홀",
    "dConflict": "충돌 여부",
    "dNoConflict": "겹치는 배정이 없습니다.",
    "dQuote": "자동 견적 요약",
    "dQuoteNoPeriod": "점유 기간이 없어 견적을 계산할 수 없습니다.",
    "dQuoteFail": "견적을 불러오지 못했습니다."
  },
  "ai": {
    "console": {
      "title": "AI 콘솔",
      "subtitle": "자연어로 데이터를 조회하고 전시 규정을 질의합니다. 결과는 참고용이며 근거를 함께 표기합니다.",
      "badge": "참고용",
      "tabsAria": "AI 콘솔 탭",
      "tabNlquery": "자연어 조회",
      "tabRules": "규정 챗봇"
    },
    "common": {
      "running": "실행 중…",
      "provClaude": "Claude 응답",
      "provOllama": "Ollama 응답",
      "provRules": "규정 원문 기반",
      "provNone": "응답 없음",
      "unavailable": "AI 기능을 일시적으로 사용할 수 없습니다. 잠시 후 다시 시도해 주세요.",
      "invalid": "안전 규칙에 위배되어 실행할 수 없는 조회입니다.",
      "forbidden": "이 기능을 사용할 권한이 없습니다.",
      "error": "요청 처리 중 오류가 발생했습니다."
    },
    "nlquery": {
      "placeholder": "예: 상태가 active 인 행사 목록을 보여줘",
      "inputAria": "자연어 조회 질문",
      "run": "조회",
      "guardNote": "읽기 전용 SELECT만 실행되며 개인정보 컬럼은 조회되지 않습니다. 최대 200행.",
      "rowCount": "{{n}}행",
      "showSql": "생성 SQL 보기",
      "hideSql": "생성 SQL 숨기기",
      "sqlAria": "생성된 SQL",
      "emptyTitle": "결과가 없습니다",
      "emptyDesc": "조건에 해당하는 데이터가 없습니다. 질문을 바꿔 다시 시도해 주세요."
    },
    "rules": {
      "placeholder": "예: 장치물 최대 높이가 얼마인가요?",
      "inputAria": "규정 질문",
      "run": "질의",
      "groundNote": "규정·요율 룰셋을 근거로 답하며, 근거가 없으면 정직하게 알려드립니다.",
      "citations": "근거 규정",
      "notFound": "규정에서 찾지 못함",
      "degraded": "규정 원문 요약(AI 미가용)"
    },
    "assistant": {
      "label": "AI 도우미",
      "inputAria": "관람 도우미에게 질문하기",
      "sendAria": "질문 보내기",
      "chipsLabel": "자주 묻는 질문",
      "chip1": "이번 주말 로봇 전시 있어?",
      "chip2": "킨텍스 주차 어디에 해요?",
      "chip3": "가족과 볼만한 전시 추천",
      "chip4": "사전등록 어떻게 해요?",
      "chip5": "GTX-A로 얼마나 걸려요?",
      "thinking": "답변 생성 중…",
      "error": "답변을 가져오지 못했습니다. 다시 시도해 주세요.",
      "retry": "다시 시도",
      "degraded": "AI 도우미 점검 중 — 적재 데이터 검색으로 안내합니다",
      "providerAi": "AI 답변",
      "notFound": "해당 정보를 찾지 못했어요 — 전체 일정·가이드를 확인해 보세요.",
      "cardEventsTitle": "관련 전시",
      "cardTransportTitle": "오시는 길",
      "cardGuideTitle": "방문 안내",
      "followupLabel": "이어서 물어보기",
      "followup1": "무료인가요?",
      "followup2": "주차 어디에 해요?",
      "followup3": "사전등록 방법",
      "citations": "근거 출처",
      "register": "사전등록",
      "disclaimer": "AI 생성 답변 — 정확한 정보는 공식 안내를 확인하세요."
    }
  },
  "analytics": {
    "title": "경영분석",
    "subtitle": "킨텍스 운영 수익성 · 참가업체 인사이트",
    "perspective": "분석 관점",
    "operator": "운영사",
    "exhibitor": "참가업체",
    "periodAria": "분석 기간",
    "periodEvent": "이번 행사",
    "periodD90": "최근 90일",
    "periodAnnual": "연간",
    "exportPdf": "PDF 내보내기",
    "exportExcel": "Excel 내보내기",
    "noEventTitle": "행사를 선택해 주세요",
    "noEventDesc": "분석할 행사가 지정되지 않았습니다.",
    "offlineSample": "오프라인 — 샘플",
    "degradedMsg": "집계 API에 연결하지 못해 시연용 샘플을 표시합니다.",
    "loadError": "경영분석 집계를 불러오지 못했습니다.",
    "kpisAria": "핵심 지표",
    "kpiEmpty": "집계된 지표가 없습니다",
    "trendAria": "추세 차트",
    "trendTitle": "매출 · 부스 추이",
    "monthlyAgg": "월별 집계",
    "trendHint": "월별 임대·유틸리티 매출과 부스 수 추이입니다 (매출 단위: 원).",
    "trendEmptyTitle": "추이 데이터가 없습니다",
    "trendEmptyDesc": "집계 가능한 기간의 매출·부스 레코드가 없습니다.",
    "revenue": "매출",
    "booth": "부스",
    "boothsUnit": "{{n}} 부스",
    "sectorsAria": "업종별 구성",
    "sectorsTitle": "업종별 구성",
    "sectorsEmptyTitle": "업종 분류 미집계",
    "sectorsEmptyDesc": "업종 분류 원천(M13)이 연동되면 표시됩니다.",
    "perfTable": "성과 테이블",
    "pnlTitle": "손익(P&L) 구성",
    "exhibitorPerfTitle": "참가사 성과",
    "sampleTag": "샘플",
    "pnlEmptyTitle": "손익 항목이 없습니다",
    "pnlEmptyDesc": "부스 임대·유틸리티 매출 레코드가 집계되면 표시됩니다.",
    "colItem": "항목",
    "colAmount": "금액",
    "colGrade": "등급",
    "perfEmptyTitle": "참가사 성과 미집계",
    "perfEmptyDesc": "리드·전환율 원천(M13 방문자)이 연동되면 표시됩니다.",
    "colCompany": "업체명",
    "colLeads": "리드",
    "colConversion": "전환율"
  },
  "global": {
    "sectionAria": "테넌트 전역 경영분석",
    "title": "전사 경영분석 (행사 횡단)",
    "subtitle": "행사 간 매출 비교 · 홀 가동률 추이 · 참가사 리텐션 · 수요예측",
    "yearsAria": "분석 연수",
    "years3": "최근 3년",
    "years5": "최근 5년",
    "years10": "최근 10년",
    "loadErrorTitle": "전역 집계를 불러오지 못했습니다",
    "loadErrorDesc": "잠시 후 다시 시도해 주세요.",
    "kpisAria": "전역 핵심 지표",
    "kpiEmpty": "집계된 지표가 없습니다",
    "evComp": "행사 간 매출 비교",
    "top8": "상위 8개",
    "evCompHint": "부스가 배치된 행사의 임대+유틸리티 매출 순위입니다 (단위: 원).",
    "evCompEmptyTitle": "비교할 행사가 없습니다",
    "evCompEmptyDesc": "부스가 배치된 행사 매출이 집계되면 표시됩니다.",
    "revenue": "매출",
    "retention": "참가사 리텐션",
    "retentionCum": "누적 재참가율",
    "returning": "재참가",
    "retentionEmptyTitle": "연도별 리텐션 미집계",
    "retentionEmptyDesc": "부스 배정사 원천이 연동되면 표시됩니다.",
    "retentionRate": "재참가율",
    "occupancy": "홀 가동률 추이 (월별)",
    "occupancyHint": "개최 행사-일수 ÷ (홀수 × 그달 일수) 기준 월별 가동률입니다.",
    "occupancyEmpty": "가동률 데이터가 없습니다",
    "occupancyRate": "가동률",
    "forecast": "수요예측",
    "forecastTitle": "수요예측 (개최 추세)",
    "trendProjection": "추세 투영",
    "forecastHint": "연도별 개최 행사 수 실측 + 최소자승 선형 추세로 향후 2년 투영(점선).",
    "forecastEmptyTitle": "예측할 이력이 없습니다",
    "forecastEmptyDesc": "연도별 개최 이력이 집계되면 표시됩니다.",
    "casesUnit": "{{n}}건",
    "actual": "실측",
    "projected": "예측"
  },
  "ops": {
    "title": "홀 현장운영",
    "subtitle": "체크인·유틸리티 실집계 기반 현황",
    "modeAria": "조회 모드",
    "live": "실시간",
    "history": "이력 조회",
    "noEventTitle": "행사를 선택해 주세요",
    "noEventDesc": "현장 운영을 조회할 행사가 지정되지 않았습니다.",
    "offlineSample": "오프라인 — 샘플",
    "degradedMsg": "집계 API에 연결하지 못해 시연용 샘플을 표시합니다.",
    "loadError": "현장 운영 현황을 불러오지 못했습니다.",
    "hallStatus": "홀별 현황",
    "checkinDerived": "체크인(M10) 파생 · 면적 비중 분배",
    "sensorNoneHalls": "센서 미연동 · 배정 홀 목록",
    "noHallsTitle": "배정된 홀이 없습니다",
    "noHallsDesc": "행사에 홀이 배정되면 표시됩니다.",
    "busy": "혼잡",
    "smooth": "원활",
    "moderate": "보통",
    "people": "{{n}}명",
    "onSiteCheckin": "현장 체크인 <0>{{n}}</0>명",
    "noCheckinAgg": "체크인 집계 없음",
    "powerLoad": "전력 부하",
    "totalKw": "총 <0>{{v}}</0>kW",
    "utilLoadAgg": "유틸리티 신청(M4) 부하 집계",
    "noLoadTitle": "신청 부하 없음",
    "noLoadDesc": "전기 유틸리티 신청이 접수되면 홀별 부하가 표시됩니다.",
    "kw": "{{v}}kW",
    "hourlyCheckin": "시간대별 체크인",
    "hourlyAgg": "체크인(M10) 시간대 집계",
    "noSeriesTitle": "체크인 추이 없음",
    "noSeriesDesc": "현장 체크인이 기록되면 시간대별 추이가 표시됩니다.",
    "facilitySensor": "시설 센서 연동",
    "facilitySensorTitle": "시설 센서 (공조·조명·주차)",
    "sensorNoneTitle": "시설 센서 미연동",
    "sensorNoneDesc": "공조(HVAC)·조명 IoT·주차(iparking) 연계는 센서(M14) 연동 시 표시됩니다.",
    "temp": "온도",
    "humidity": "습도",
    "parkingSlots": "{{zone}}: {{occ}}/{{cap}}면"
  },
  "admin": {
    "deniedTitle": "접근 권한이 없습니다",
    "deniedAuthed": "이 페이지는 시스템 관리자(홀매니저·ADMIN)만 이용할 수 있습니다. 접근이 필요하면 관리자에게 문의하세요.",
    "deniedGuest": "관리자 백오피스는 로그인 후 이용할 수 있습니다.",
    "overviewTitle": "시스템 개요",
    "overviewSub": "실시간 지표 및 운영 상태",
    "loginSlides": "로그인 슬라이드 관리",
    "tenantSwitch": "테넌트 전환",
    "systemNormal": "시스템 정상",
    "moduleShortcuts": "관리 모듈 바로가기",
    "offlineSample": "오프라인 — 샘플",
    "degradedMsg": "집계 API에 연결하지 못해 시연용 샘플을 표시합니다.",
    "dashLoadError": "관리자 대시보드를 불러오지 못했습니다.",
    "kpisAria": "핵심 지표",
    "kpiEmpty": "집계된 지표가 없습니다",
    "visitorTrend": "방문객 추이",
    "hourlyVisitors": "시간대별 관람객",
    "visitors": "관람객",
    "visitorTrendEmptyTitle": "관람객 추이 미집계",
    "visitorTrendEmptyDesc": "관람객 계측 센서(M14)가 연동되면 시간대별 추이가 표시됩니다.",
    "liveEvents": "진행 중 이벤트",
    "noLiveEvents": "진행 중인 행사가 없습니다",
    "hallTbd": "홀 미배정",
    "occupancy": "점유 {{n}}%",
    "modUsers": "사용자",
    "modRoles": "역할·권한",
    "modCodes": "공통코드",
    "modMenus": "메뉴",
    "modAudit": "감사로그",
    "modSettings": "시스템설정",
    "modRulesets": "룰셋",
    "modTenants": "테넌트",
    "modMessages": "메시지 관리"
  },
  "tenant": {
    "title": "테넌트 관리·온보딩",
    "subtitle": "플랫폼 슈퍼관리자 전용 · 코드 배포 없이 데이터 온보딩으로 전시관을 추가합니다.",
    "sampleTag": "샘플 · 미구현",
    "sampleNote": "멀티테넌시(테넌트 CRUD·온보딩·격리)가 백엔드에 아직 없어 화면은 목표 IA 를 표시합니다. 실 데이터 연동은 멀티테넌시 도입 후 배선됩니다.",
    "listAria": "테넌트 목록",
    "venue": "전시관",
    "notImpl": "미구현",
    "addVenue": "전시관 추가",
    "code": "코드",
    "domain": "도메인",
    "status": "상태",
    "events": "행사",
    "users": "사용자",
    "wizardAria": "온보딩 위저드",
    "onboardingOf": "{{name}} 온보딩",
    "dataOnboarding": "코드 배포 없이 데이터 온보딩",
    "wiz": {
      "create": {
        "label": "테넌트 생성",
        "desc": "코드·표시명 등록"
      },
      "domain": {
        "label": "서브도메인",
        "desc": "DNS·브랜딩 도메인 배정"
      },
      "brand": {
        "label": "브랜딩",
        "desc": "로고·색상·공개사이트 테마"
      },
      "master": {
        "label": "마스터데이터 입력",
        "desc": "홀·요율·룰셋 시드"
      },
      "admin": {
        "label": "관리자 계정",
        "desc": "테넌트 관리자 초대"
      },
      "smoke": {
        "label": "격리 스모크",
        "desc": "크로스-테넌트 격리 검증"
      },
      "activate": {
        "label": "활성화",
        "desc": "운영 전환"
      }
    },
    "tstatus": {
      "active": "활성",
      "onboarding": "온보딩중",
      "suspended": "중지"
    }
  },
  "ruleset": {
    "title": "규정 룰셋 버전 관리",
    "subtitle": "규정 개정 대응을 위한 룰셋 버전 이력과 규칙 항목입니다.",
    "readonly": "읽기 전용",
    "readonlyNote": "룰셋은 배포 리소스(rulesets/*.json)로 버전 관리됩니다. 편집·버전 생성은 규정 개정 시 리소스 교체로 수행되며 화면에서는 조회만 가능합니다.",
    "listError": "룰셋 목록을 불러오지 못했습니다.",
    "noRulesets": "배포된 룰셋이 없습니다",
    "versionHistory": "버전 히스토리",
    "rulesCount": "규칙 {{n}}",
    "effectiveDate": "발효일 {{date}}",
    "ruleList": "규칙 목록",
    "rulesOf": "{{name}} 규칙 ({{n}}개)",
    "detailError": "규칙 전문을 불러오지 못했습니다.",
    "noRulesTitle": "규칙 배열이 없는 룰셋입니다",
    "noRulesDesc": "요율 마스터 등 규칙(rules) 없이 요율·단가만 정의된 룰셋입니다.",
    "colRuleName": "규칙명",
    "colValue": "수치/설정값",
    "colLogic": "논리 / 요구사항",
    "colSeverity": "위반 수준",
    "block": "차단",
    "warn": "경고",
    "required": "필수",
    "perHall": "홀별 {{unit}}",
    "docNeeded": "문서 필요: {{doc}}"
  },
  "audit": {
    "title": "감사 로그",
    "subtitle": "승인·낙찰·설정변경 등 모든 관리 액션과 중요 도메인 이벤트를 추적합니다. (무결성 유지)",
    "exportCsv": "CSV 내보내기",
    "filterAria": "감사 로그 필터",
    "actionType": "액션 유형",
    "allActions": "전체 액션",
    "actorId": "담당자 ID",
    "actorIdPh": "예: user-102",
    "eventId": "행사 ID",
    "eventIdPh": "예: EVT-2026-01",
    "reset": "초기화",
    "applyFilter": "필터 적용",
    "loadError": "감사 로그를 불러오지 못했습니다.",
    "tableAria": "감사 로그 테이블",
    "emptyTitle": "조건에 맞는 감사 기록이 없습니다",
    "emptyDesc": "필터를 조정하거나 초기화해 다시 조회하세요.",
    "colTime": "시각",
    "colUser": "사용자",
    "colAction": "액션",
    "colTarget": "대상",
    "colEvent": "행사",
    "colResult": "결과",
    "showing": "표시 중 <0>{{from}}-{{to}}</0> / 총 <1>{{total}}</1>개",
    "prev": "이전",
    "next": "다음",
    "rowsShow": "행 표시",
    "rowsPerPage": "페이지당 행 수",
    "rowsN": "{{n}}개",
    "success": "성공",
    "failure": "실패",
    "csvTime": "시각",
    "csvActorId": "담당자ID",
    "csvActorName": "담당자명",
    "csvAction": "액션",
    "csvTargetType": "대상유형",
    "csvTargetId": "대상ID",
    "csvEventId": "행사ID",
    "csvResult": "결과",
    "csvSummary": "요약"
  },
  "role": {
    "title": "역할 · 권한 (RBAC)",
    "subtitle": "역할(주최자·참가업체·장치업체·홀매니저·관리자·관람객)별 리소스 권한을 매트릭스로 배정합니다.",
    "addRole": "역할 추가",
    "loadError": "역할·권한 정보를 불러오지 못했습니다.",
    "noRolesTitle": "정의된 역할이 없습니다",
    "noRolesDesc": "역할을 추가해 RBAC 를 구성하세요.",
    "roleList": "역할 목록",
    "role": "역할",
    "codePerm": "{{code}} · 권한 {{n}}",
    "unused": "미사용",
    "permMatrix": "권한 매트릭스",
    "rolePerm": "{{name}} 권한",
    "roleInfo": "역할 정보",
    "deleteConfirm": "역할 '{{name}}' 을(를) 삭제하시겠습니까?",
    "delete": "삭제",
    "noPerms": "정의된 권한이 없습니다",
    "selectRole": "역할을 선택하세요",
    "saved": "역할을 저장했습니다.",
    "deleted": "역할을 삭제했습니다.",
    "addRoleModal": "역할 추가",
    "editRole": "역할 정보 수정",
    "modalDesc": "권한 배정은 저장 후 매트릭스에서 체크로 관리합니다.",
    "roleCode": "역할 코드 *",
    "roleCodePh": "예: ORGANIZER",
    "roleName": "역할 이름 *",
    "description": "설명",
    "useYn": "사용 여부",
    "use": "사용",
    "noUse": "미사용",
    "cancel": "취소",
    "save": "저장",
    "saving": "저장 중…",
    "errRequired": "역할 코드와 이름은 필수입니다.",
    "errDupCode": "이미 존재하는 역할 코드입니다."
  },
  "menu": {
    "title": "메뉴 관리",
    "subtitle": "역할별 내비게이션 메뉴 트리와 경로·접근 역할을 관리합니다.",
    "addMenu": "메뉴 추가",
    "loadError": "메뉴를 불러오지 못했습니다.",
    "treeAria": "메뉴 트리",
    "emptyTitle": "등록된 메뉴가 없습니다",
    "emptyDesc": "메뉴를 추가하세요.",
    "colName": "메뉴명",
    "colPath": "경로",
    "colType": "유형",
    "colRole": "접근 역할",
    "colSort": "정렬",
    "colUse": "사용",
    "colManage": "관리",
    "all": "전체",
    "unused": "미사용",
    "used": "사용",
    "edit": "수정",
    "delete": "삭제",
    "deleteConfirm": "메뉴 '{{name}}' 을(를) 삭제하시겠습니까? 하위 메뉴가 있으면 함께 정리됩니다.",
    "saved": "메뉴를 저장했습니다.",
    "deleted": "메뉴를 삭제했습니다.",
    "editMenu": "메뉴 수정",
    "menuId": "메뉴 ID (고유 키) *",
    "menuIdPh": "예: admin-users",
    "menuName": "메뉴명 *",
    "parent": "상위 메뉴",
    "topLevel": "(최상위)",
    "path": "경로(path)",
    "pathPh": "예: /admin/users",
    "type": "유형",
    "accessRole": "접근 역할",
    "accessRolePh": "예: ADMIN (비우면 전체)",
    "sort": "정렬",
    "useYn": "사용 여부",
    "cancel": "취소",
    "save": "저장",
    "saving": "저장 중…",
    "errName": "메뉴명은 필수입니다.",
    "errId": "메뉴 ID(고유 키)는 필수입니다.",
    "errDupId": "이미 존재하는 메뉴 ID 입니다."
  },
  "code": {
    "title": "공통코드 관리",
    "subtitle": "드롭다운·분류에 쓰이는 공통코드 그룹과 코드 값을 관리합니다.",
    "addGroup": "그룹 추가",
    "groupLoadError": "코드 그룹을 불러오지 못했습니다.",
    "noGroupsTitle": "코드 그룹이 없습니다",
    "noGroupsDesc": "그룹을 추가해 공통코드를 구성하세요.",
    "codeGroup": "코드 그룹",
    "codeValues": "코드 값",
    "valuesOf": "{{name}} 값",
    "editGroup": "코드 그룹 수정",
    "deleteGroup": "그룹 삭제",
    "deleteGroupConfirm": "그룹 '{{name}}' 과 하위 코드를 삭제하시겠습니까?",
    "addCode": "코드 추가",
    "codeLoadError": "코드 값을 불러오지 못했습니다.",
    "noCodesTitle": "코드가 없습니다",
    "noCodesDesc": "코드를 추가하세요.",
    "code": "코드",
    "name": "이름",
    "value": "값",
    "sort": "정렬",
    "use": "사용",
    "manage": "관리",
    "unused": "미사용",
    "used": "사용",
    "edit": "수정",
    "delete": "삭제",
    "deleteCodeConfirm": "코드 '{{name}}' 을(를) 삭제하시겠습니까?",
    "groupSaved": "코드 그룹을 저장했습니다.",
    "groupDeleted": "코드 그룹을 삭제했습니다.",
    "codeSaved": "코드를 저장했습니다.",
    "codeDeleted": "코드를 삭제했습니다.",
    "groupCode": "그룹 코드 *",
    "groupName": "그룹 이름 *",
    "description": "설명",
    "useYn": "사용 여부",
    "cancel": "취소",
    "save": "저장",
    "saving": "저장 중…",
    "errGroupRequired": "그룹 코드와 이름은 필수입니다.",
    "errDupGroup": "이미 존재하는 그룹 코드입니다.",
    "editCode": "코드 수정",
    "group": "그룹",
    "codeReq": "코드 *",
    "nameReq": "이름 *",
    "attr1": "속성1(attr1)",
    "errCodeRequired": "코드와 이름은 필수입니다.",
    "errDupCode": "이미 존재하는 코드입니다."
  },
  "sysuser": {
    "title": "사용자 관리",
    "subtitle": "계정 생성·수정, 역할 배정, 상태(활성/잠금/비활성)와 OTP 초기화를 관리합니다. 비밀번호는 마스킹되어 표시되지 않습니다.",
    "addUser": "사용자 추가",
    "searchAria": "사용자 검색",
    "keyword": "검색어",
    "keywordPh": "이름·이메일",
    "role": "역할",
    "status": "상태",
    "all": "전체",
    "reset": "초기화",
    "search": "검색",
    "loadError": "사용자 목록을 불러오지 못했습니다.",
    "listAria": "사용자 목록",
    "emptyTitle": "사용자가 없습니다",
    "emptyDesc": "검색 조건을 조정하거나 사용자를 추가하세요.",
    "colUser": "사용자",
    "colEmail": "이메일",
    "colRole": "역할",
    "colDept": "부서",
    "colStatus": "상태",
    "colLastLogin": "최근 로그인",
    "colManage": "관리",
    "hallManagerTag": "홀매니저",
    "otpSet": "설정됨",
    "otpUnset": "미설정",
    "edit": "수정",
    "lock": "잠금",
    "unlock": "잠금해제",
    "otpResetBtn": "OTP초기화",
    "otpResetConfirm": "{{name}} 의 OTP 를 초기화하시겠습니까?",
    "saved": "사용자를 저장했습니다.",
    "statusChanged": "상태를 변경했습니다.",
    "otpReset": "OTP 를 초기화했습니다.",
    "active": "활성",
    "locked": "잠금",
    "disabled": "비활성",
    "editUser": "사용자 수정",
    "newDesc": "초기 비밀번호는 저장 후 화면에 표시되지 않습니다.",
    "editDesc": "이메일은 수정할 수 없습니다. 비밀번호 재설정은 별도 정책을 따릅니다.",
    "email": "이메일 *",
    "displayName": "표시 이름 *",
    "dept": "부서",
    "initPassword": "초기 비밀번호 *",
    "hallManagerCheck": "홀매니저(내부 운영자)",
    "cancel": "취소",
    "save": "저장",
    "saving": "저장 중…",
    "errRequired": "이메일과 표시 이름은 필수입니다.",
    "errPassword": "신규 사용자는 초기 비밀번호가 필요합니다.",
    "totalUsers": "총 <0>{{total}}</0>명",
    "prev": "이전",
    "next": "다음"
  },
  "settings": {
    "title": "시스템 설정",
    "subtitle": "전역 정책·기능 토글·AI 게이트 등 시스템 파라미터를 관리합니다. 시크릿 값은 마스킹 표시됩니다.",
    "loadError": "시스템 설정을 불러오지 못했습니다.",
    "emptyTitle": "등록된 설정이 없습니다",
    "emptyDesc": "아래 폼에서 첫 설정 항목을 추가하세요.",
    "saved": "설정을 저장했습니다.",
    "deleted": "설정을 삭제했습니다.",
    "deleteConfirm": "설정 '{{key}}' 을(를) 삭제하시겠습니까?",
    "general": "일반",
    "groupAria": "설정 그룹 {{name}}",
    "secret": "시크릿",
    "secretTitle": "시크릿 — 값 마스킹",
    "on": "켜짐",
    "off": "꺼짐",
    "secretPh": "설정됨(마스킹) — 변경 시 새 값 입력",
    "save": "저장",
    "delete": "삭제",
    "deleteKey": "{{key}} 삭제",
    "secretHint": "시크릿 원문은 노출되지 않습니다. 값을 입력하지 않고 저장하면 기존 값이 유지됩니다.",
    "addAria": "설정 추가",
    "addTitle": "설정 추가 / 재정의",
    "settingKey": "설정 키",
    "settingKeyPh": "예: deadline.utility.days",
    "value": "값",
    "type": "타입",
    "description": "설명",
    "secretCheck": "시크릿(값 마스킹)"
  },
  "slide": {
    "title": "로그인 슬라이드 관리",
    "subtitle": "로그인 화면 좌측 캐러셀 이미지·문구 — 활성 슬라이드 중 <0>최신 등록순 5건</0>이 로테이션됩니다.",
    "addAria": "새 슬라이드 추가",
    "addTitle": "새 슬라이드 추가",
    "imageLabel": "이미지 (PNG/JPG/WebP, 8MB 이하)",
    "preview": "미리보기",
    "titleLabel": "타이틀 문구",
    "titlePh": "예) 아시아를 대표하는 전시컨벤션센터, KINTEX",
    "captionLabel": "캡션(보조 문구)",
    "captionPh": "예) 10만㎡ 전시 공간에서 펼쳐지는 비즈니스 기회를 만나보세요.",
    "submitting": "등록 중…",
    "submit": "슬라이드 등록",
    "listAria": "슬라이드 목록",
    "registered": "등록된 슬라이드",
    "countActive": "총 {{total}}건 · 활성 {{active}}건",
    "emptyTitle": "등록된 슬라이드가 없습니다",
    "emptyDesc": "이미지와 문구를 등록하면 로그인 화면 캐러셀에 노출됩니다. (미등록 시 기본 5종 표시)",
    "live": "노출 중",
    "inactive": "비활성",
    "registeredAt": "등록 {{date}}",
    "active": "활성",
    "delete": "삭제",
    "listError": "목록을 불러오지 못했습니다.",
    "errImage": "슬라이드 이미지를 선택해 주세요.",
    "errTitle": "타이틀 문구를 입력해 주세요.",
    "createFail": "등록에 실패했습니다.",
    "updateFail": "변경에 실패했습니다.",
    "deleteFail": "삭제에 실패했습니다.",
    "deleteConfirm": "\"{{title}}\" 슬라이드를 삭제할까요?"
  },
  "approval": {
    "queueTitle": "결재 대기함",
    "search": "검색",
    "searchPlaceholder": "제목 검색…",
    "pendingCount": "결재 대기",
    "pendingList": "내 결재 대기 문서",
    "colTitle": "제목",
    "colDocType": "유형",
    "colDrafter": "기안자",
    "colSubmitted": "상신일",
    "colStep": "단계",
    "colStatus": "상태",
    "colAction": "처리",
    "open": "열기",
    "emptyPending": "결재할 문서가 없습니다",
    "status": {
      "DRAFT": "임시저장",
      "SUBMITTED": "상신",
      "IN_PROGRESS": "진행중",
      "APPROVED": "승인완료",
      "REJECTED": "반려",
      "CANCELED": "회수"
    },
    "reviewTitle": "결재 검토",
    "version": "버전",
    "drafter": "기안자",
    "step": "단계",
    "demoMode": "미리보기(데모)",
    "downloadOriginal": "원본 다운로드",
    "previewAria": "문서 미리보기",
    "lineAria": "결재선·이력",
    "docBody": "본문",
    "line": "결재선",
    "history": "처리 이력",
    "noHistory": "처리 이력이 없습니다",
    "lineStatus": {
      "WAIT": "대기",
      "CURRENT": "결재 진행",
      "APPROVED": "승인",
      "REJECTED": "반려",
      "SKIPPED": "건너뜀"
    },
    "action": {
      "SUBMIT": "상신",
      "APPROVE": "승인",
      "REJECT": "반려",
      "RESUBMIT": "재상신",
      "CANCEL": "회수"
    },
    "approve": "승인",
    "reject": "반려",
    "approvedDone": "승인 처리되었습니다.",
    "rejectedDone": "반려 처리되었습니다.",
    "canActHint": "이 문서의 현재 단계 결재자입니다.",
    "notApproverHint": "현재 단계 결재자만 처리할 수 있습니다.",
    "demoFootNote": "결재 대기함에서 문서를 선택하면 실제 승인/반려가 가능합니다.",
    "demoHint": "결재 문서가 지정되지 않았습니다. 결재 대기함에서 문서를 열어 주세요.",
    "commentPlaceholder": "의견(반려 시 필수)을 입력하세요",
    "comment": "의견",
    "boxTitle": "결재함",
    "compose": "기안",
    "composeTitle": "결재 기안",
    "resubmitTitle": "반려 문서 재상신",
    "backToList": "목록",
    "tab": {
      "PENDING": "결재할 문서",
      "DRAFTED": "상신한 문서",
      "REJECTED": "반려",
      "DONE": "완료"
    },
    "empty": {
      "PENDING": "결재할 문서가 없습니다",
      "DRAFTED": "상신한 문서가 없습니다",
      "REJECTED": "반려된 문서가 없습니다",
      "DONE": "완료된 문서가 없습니다"
    },
    "resubmitBtn": "재상신",
    "draftSave": "임시저장",
    "submitDoc": "상신",
    "cancel": "취소",
    "saving": "처리 중…",
    "docType": "문서유형",
    "docTypes": {
      "GENERAL": "일반",
      "DESIGN": "디자인/도면",
      "DOCUMENT": "서류",
      "EXPENSE": "비용/지출",
      "ETC": "기타"
    },
    "titleLabel": "제목",
    "titlePlaceholder": "결재 문서 제목을 입력하세요",
    "contentLabel": "내용",
    "contentPlaceholder": "결재 문서 내용을 입력하세요",
    "err": {
      "titleRequired": "제목을 입력하세요.",
      "lineRequired": "결재선을 1명 이상 지정하세요."
    },
    "createdDraft": "임시저장되었습니다.",
    "submittedDone": "상신되었습니다.",
    "resubmittedDone": "재상신되었습니다.",
    "rejectedReason": "반려 사유",
    "canResubmitHint": "반려된 기안입니다. 수정 후 재상신할 수 있습니다.",
    "lineEditor": {
      "empty": "지정된 결재자가 없습니다. 결재자를 추가하세요.",
      "stepNo": "{{n}}단계",
      "idPlaceholder": "결재자 ID",
      "namePlaceholder": "표시명(선택)",
      "approverId": "{{n}}단계 결재자 ID",
      "approverName": "{{n}}단계 결재자 이름",
      "moveUp": "위로 이동",
      "moveDown": "아래로 이동",
      "remove": "결재자 삭제",
      "add": "결재자 추가"
    },
    "rejectModalTitle": "반려 처리",
    "approveModalTitle": "승인 처리",
    "rejectReason": "반려 사유",
    "rejectReasonPlaceholder": "반려 사유를 입력하세요",
    "rejectReasonHint": "반려 사유는 기안자에게 전달되며 재상신 시 표시됩니다.",
    "commentOptional": "의견(선택)을 입력하세요"
  },
  "auction": {
    "boq": {
      "title": "물량서(BOQ) 자동산출",
      "error": "물량서를 불러오지 못했습니다.",
      "scopeBooth": "{{label}} 부스 기준",
      "scopeEvent": "행사 전체 부스 집계",
      "summary": "부스 {{count}}실 · {{area}}㎡",
      "colSeq": "No",
      "colTrade": "공종",
      "colItem": "품명",
      "colQty": "수량",
      "colUnit": "단위",
      "colBasis": "산출 근거"
    }
  },
  "logistics": {
    "title": "물류 허브",
    "subtitle": "반입·반출 도크 · 부대장비 · 렌탈 · 선입고 트래킹",
    "tabsAria": "물류 기능 전환",
    "tabs": {
      "dock": "도크 예약",
      "equipment": "장비 신청",
      "rental": "렌탈 주문",
      "inbound": "선입고"
    },
    "boothNo": "부스 번호",
    "qty": "수량",
    "estimate": "예상 금액",
    "submitting": "처리 중…",
    "submitOk": "접수되었습니다.",
    "submitErr": "처리에 실패했습니다.",
    "statusUpdated": "상태가 변경되었습니다.",
    "loadErr": "물류 정보를 불러오지 못했습니다.",
    "serverAmountNote": "금액은 서버 기준으로 확정됩니다",
    "equipment": {
      "formTitle": "부대장비 신청",
      "item": "장비 품목",
      "days": "사용 일수",
      "daysUnit": "일",
      "useDate": "사용 예정일",
      "submit": "장비 신청",
      "listTitle": "신청 내역",
      "empty": "신청 내역이 없습니다",
      "emptyDesc": "지게차·리프트 등 부대장비를 신청하세요.",
      "approve": "승인",
      "reject": "반려",
      "rejectReason": "현장 여건상 반려",
      "done": "처리 완료",
      "st": {
        "requested": "신청됨",
        "approved": "승인",
        "rejected": "반려",
        "done": "완료"
      }
    },
    "rental": {
      "formTitle": "부대물품 렌탈 주문",
      "item": "렌탈 품목",
      "start": "시작일",
      "end": "종료일",
      "submit": "렌탈 주문",
      "listTitle": "주문 내역",
      "empty": "주문 내역이 없습니다",
      "emptyDesc": "테이블·의자·모니터 등을 주문하세요.",
      "period": "{{days}}일",
      "confirm": "확정",
      "cancel": "취소",
      "deliver": "납품 완료",
      "st": {
        "ordered": "주문됨",
        "confirmed": "확정",
        "cancelled": "취소",
        "delivered": "납품"
      }
    },
    "inbound": {
      "formTitle": "선입고 운송장 등록",
      "trackingNo": "운송장 번호",
      "carrier": "운송사",
      "itemDesc": "화물 내용",
      "eta": "입고 예정일",
      "submit": "운송장 등록",
      "submitSub": "등록 후 입고 상태를 추적합니다",
      "listTitle": "선입고 현황",
      "empty": "선입고 내역이 없습니다",
      "emptyDesc": "사전 배송 운송장을 등록하세요.",
      "st": {
        "registered": "등록됨",
        "inbound_scheduled": "입고 예정",
        "arrived_warehouse": "창고 도착",
        "delivered_booth": "부스 전달"
      },
      "advance": {
        "inbound_scheduled": "입고 예정 처리",
        "arrived_warehouse": "창고 도착 처리",
        "delivered_booth": "부스 전달 완료"
      }
    }
  },
  "appqr": {
    "title": "킨텍스 전시 앱 다운로드",
    "subtitle": "모바일 앱 설치",
    "intro": "QR 코드를 스캔하거나 아래 버튼으로 킨텍스 전시 앱을 설치하세요.",
    "about": "앱 크기 {{size}}",
    "appName": "킨텍스 AI 전시 앱",
    "builtAt": "{{date}} 빌드",
    "download": "APK 다운로드",
    "copyLink": "링크 복사",
    "copied": "복사됨",
    "refresh": "새로고침",
    "retry": "다시 시도",
    "qrAlt": "앱 다운로드 QR 코드",
    "iosNote": "iOS는 App Store 정식 출시 후 지원될 예정입니다.",
    "notReady": {
      "title": "앱을 준비 중입니다",
      "desc": "설치 파일이 아직 게시되지 않았습니다. 잠시 후 다시 시도해 주세요."
    },
    "steps": {
      "heading": "설치 방법",
      "s1": "휴대폰 카메라로 QR 코드를 스캔합니다.",
      "s2": "표시된 링크를 열어 APK를 다운로드합니다.",
      "s3": "'출처를 알 수 없는 앱 설치'를 허용합니다.",
      "s4": "설치 후 앱을 열어 로그인합니다."
    },
    "eyebrow": "모바일 앱",
    "platformChip": "Android",
    "qrHint": "휴대폰 카메라로 QR을 스캔하세요.",
    "features": {
      "heading": "핵심 기능",
      "sub": "현장 운영부터 승인·시각화까지 전시 업무를 모바일에서 처리합니다.",
      "checkin": {
        "title": "현장 체크인",
        "desc": "반입·통행증과 공정 체크리스트를 현장에서 바로 확인하고 기록합니다."
      },
      "inspection": {
        "title": "현장 검수",
        "desc": "홀매니저가 부스 시공 상태를 사진과 함께 검수하고 승인합니다."
      },
      "gallery": {
        "title": "시각화 갤러리",
        "desc": "AI가 생성한 시공 후 예상 이미지를 갤러리로 열람합니다."
      },
      "approval": {
        "title": "서류·승인",
        "desc": "제출 서류와 승인 진행 상황을 이동 중에도 조회합니다."
      },
      "notify": {
        "title": "실시간 알림",
        "desc": "옥션 순위, 승인 결과, 현장 공지를 푸시 알림으로 받습니다."
      },
      "offline": {
        "title": "오프라인 지원",
        "desc": "통신이 불안정한 전시장에서도 작성한 내용을 저장·동기화합니다."
      }
    },
    "preview": {
      "heading": "앱 미리보기",
      "sub": "주요 화면을 미리 살펴보세요. 실제 화면은 업데이트에 따라 달라질 수 있습니다.",
      "s1": "현장 체크리스트",
      "s2": "시각화 갤러리",
      "s3": "서류·승인 조회"
    },
    "requirements": {
      "heading": "설치 요구사항",
      "os": "Android 8.0 이상",
      "space": "여유 저장공간 100MB 이상",
      "network": "설치 시 Wi-Fi 연결 권장"
    },
    "store": {
      "getOn": "다운로드",
      "android": "Android APK",
      "comingSoon": "준비 중",
      "ios": "iOS (TestFlight)"
    }
  },
  "authPolicy": {
    "title": "인증 정책",
    "subtitle": "비밀번호 규칙과 로그인 잠금 정책을 설정합니다.",
    "loadError": "인증 정책을 불러오지 못했습니다.",
    "saved": "인증 정책이 저장되었습니다.",
    "pwSection": "비밀번호 정책",
    "pwMinLength": "최소 길이",
    "pwExpireDays": "만료 기간(일)",
    "pwRequireUpper": "대문자 포함",
    "pwRequireNumber": "숫자 포함",
    "pwRequireSpecial": "특수문자 포함",
    "lockSection": "로그인 잠금",
    "loginMaxFail": "최대 실패 횟수",
    "lockMinutes": "잠금 시간(분)",
    "sessionTimeoutMin": "세션 만료(분)"
  },
  "company": {
    "title": "업체 관리",
    "subtitle": "참가업체와 협력사 정보를 관리합니다.",
    "add": "업체 추가",
    "edit": "업체 수정",
    "searchPh": "업체명 또는 사업자번호 검색",
    "partnerType": "구분",
    "allTypes": "전체 유형",
    "bizType": "업종",
    "ceo": "대표자",
    "contact": "담당자",
    "tel": "연락처",
    "telEditHint": "숫자만 입력하세요.",
    "telMaskNote": "연락처는 보안을 위해 마스킹되어 표시됩니다.",
    "address": "주소",
    "colName": "업체명",
    "colBizNo": "사업자번호",
    "colType": "구분",
    "colContact": "담당자",
    "colTel": "연락처",
    "colUse": "사용",
    "deleteConfirm": "{{name}} 업체를 삭제하시겠습니까?",
    "deleted": "업체가 삭제되었습니다.",
    "saved": "업체 정보가 저장되었습니다.",
    "errRequired": "필수 항목을 입력하세요.",
    "loadError": "업체 목록을 불러오지 못했습니다.",
    "emptyTitle": "등록된 업체가 없습니다",
    "emptyDesc": "새 업체를 추가해 주세요."
  },
  "dept": {
    "title": "부서 관리",
    "subtitle": "조직 부서 구조를 관리합니다.",
    "addRoot": "최상위 부서 추가",
    "addChild": "하위 부서 추가",
    "add": "부서 추가",
    "edit": "부서 수정",
    "name": "부서명",
    "deleteConfirm": "{{name}} 부서를 삭제하시겠습니까?",
    "deleted": "부서가 삭제되었습니다.",
    "saved": "부서가 저장되었습니다.",
    "errRequired": "부서명을 입력하세요.",
    "loadError": "부서 목록을 불러오지 못했습니다.",
    "emptyTitle": "등록된 부서가 없습니다",
    "emptyDesc": "최상위 부서를 추가해 주세요.",
    "searchPlaceholder": "부서명 검색",
    "searchNoResult": "검색 결과가 없습니다.",
    "treeAria": "부서 조직도 트리",
    "expand": "펼치기",
    "collapse": "접기",
    "expandAll": "모두 펼치기",
    "collapseAll": "모두 접기",
    "selectHint": "좌측에서 부서를 선택하세요.",
    "colId": "부서 ID",
    "colParent": "상위 부서",
    "topLevel": "최상위",
    "colChildCount": "하위 부서 수",
    "childCountValue": "{{n}}개",
    "errHasChildren": "하위 부서가 있어 삭제할 수 없습니다."
  },
  "errorLog": {
    "title": "오류 로그",
    "subtitle": "시스템 오류 이력을 조회합니다.",
    "filterAria": "오류 로그 필터",
    "code": "오류 코드",
    "codePh": "오류 코드 입력",
    "loadError": "오류 로그를 불러오지 못했습니다.",
    "emptyTitle": "오류 로그가 없습니다",
    "emptyDesc": "조건에 맞는 오류 로그가 없습니다.",
    "colTime": "발생 시각",
    "colCode": "코드",
    "colMethod": "메서드",
    "colPath": "경로",
    "colSummary": "요약"
  },
  "loginHistory": {
    "title": "로그인 이력",
    "subtitle": "로그인 성공/실패 이력을 조회합니다.",
    "filterAria": "로그인 이력 필터",
    "result": "결과",
    "allResults": "전체 결과",
    "userId": "사용자 ID",
    "userIdPh": "사용자 ID 입력",
    "loadError": "로그인 이력을 불러오지 못했습니다.",
    "emptyTitle": "로그인 이력이 없습니다",
    "emptyDesc": "조건에 맞는 로그인 이력이 없습니다.",
    "colTime": "일시",
    "colResult": "결과",
    "colUser": "사용자",
    "colEmail": "이메일",
    "colIp": "IP 주소",
    "colReason": "사유"
  },
  "marketing": {
    "sentDone": "{{n}}건이 발송되었습니다.",
    "sentDisabled": "이미 발송됨 ({{n}})",
    "sendFail": "발송에 실패했습니다.",
    "confirm": "{{name}} 캠페인을 발송하시겠습니까?",
    "sending": "발송 중…",
    "sendBtn": "발송"
  },
  "program": {
    "title": "프로그램 관리",
    "subtitle": "화면 프로그램과 접근 URL을 관리합니다.",
    "add": "프로그램 추가",
    "edit": "프로그램 수정",
    "searchPh": "프로그램명 검색",
    "deleteConfirm": "{{name}} 프로그램을 삭제하시겠습니까?",
    "deleted": "프로그램이 삭제되었습니다.",
    "saved": "프로그램이 저장되었습니다.",
    "errRequired": "필수 항목을 입력하세요.",
    "loadError": "프로그램 목록을 불러오지 못했습니다.",
    "emptyTitle": "등록된 프로그램이 없습니다",
    "emptyDesc": "새 프로그램을 추가해 주세요.",
    "colName": "프로그램명",
    "colType": "유형",
    "colUrl": "URL",
    "colCategory": "분류",
    "colUse": "사용"
  },
  "roleMenu": {
    "title": "역할별 메뉴 권한",
    "subtitle": "역할에 메뉴 접근 권한을 부여합니다.",
    "loadError": "권한 정보를 불러오지 못했습니다.",
    "noRoles": "등록된 역할이 없습니다.",
    "roleList": "역할 목록",
    "role": "역할",
    "matrix": "권한 매트릭스",
    "noMenus": "메뉴가 없습니다.",
    "colMenu": "메뉴",
    "colAccess": "접근",
    "colRead": "읽기",
    "colWrite": "쓰기",
    "saved": "권한이 저장되었습니다."
  },
  "sysHealth": {
    "title": "시스템 상태",
    "subtitle": "서버와 서비스 상태를 모니터링합니다.",
    "refresh": "새로고침",
    "loadError": "시스템 상태를 불러오지 못했습니다.",
    "db": "데이터베이스",
    "redis": "Redis",
    "worker": "워커",
    "queueDepth": "큐 적재량 {{n}}",
    "disk": "디스크",
    "diskFree": "여유 {{mb}}MB",
    "mem": "메모리",
    "uptime": "가동 시간",
    "version": "버전"
  },
  "sysadmin": {
    "actions": "작업",
    "cancel": "취소",
    "delete": "삭제",
    "edit": "수정",
    "keyword": "검색어",
    "next": "다음",
    "noUse": "미사용",
    "prev": "이전",
    "save": "저장",
    "saving": "저장 중…",
    "search": "검색",
    "sortOrder": "정렬 순서",
    "totalN": "총 {{n}}건",
    "use": "사용",
    "useYn": "사용 여부"
  },
  "public": {
    "home": {
      "heroTitle": "AI가 설계하는 전시의 미래"
    }
  },
  "calendar": {
    "prev": "이전",
    "next": "다음",
    "today": "오늘",
    "yearMonth": "{{y}}년 {{m}}월",
    "viewSwitch": "뷰 전환",
    "view": {
      "month": "월",
      "week": "주",
      "day": "일"
    },
    "loading": "불러오는 중…",
    "legend": "범례",
    "dayEmpty": "등록된 일정이 없습니다.",
    "dayAll": "{{date}} 전체 일정",
    "close": "닫기"
  },
  "holiday": {
    "title": "공휴일 관리",
    "subtitle": "법정공휴일·대체공휴일 조회 및 임시공휴일 관리. 달력에 붉은색으로 표시됩니다.",
    "year": "연도",
    "yearLabel": "{{y}}년",
    "add": "임시공휴일 추가",
    "created": "공휴일이 추가되었습니다.",
    "deleted": "삭제되었습니다.",
    "toggled": "휴무 여부가 변경되었습니다.",
    "loadError": "공휴일을 불러오지 못했습니다.",
    "emptyTitle": "공휴일이 없습니다",
    "emptyDesc": "선택한 연도에 등록된 공휴일이 없습니다.",
    "listOf": "{{y}}년 공휴일",
    "count": "휴무 {{n}}일",
    "date": "날짜",
    "weekday": "요일",
    "name": "명칭",
    "type": "구분",
    "status": "휴무",
    "manage": "관리",
    "substitute": "대체공휴일",
    "legal": "법정공휴일",
    "on": "휴무",
    "off": "정상근무",
    "setOff": "임시휴무 해제",
    "setOn": "임시휴무 설정",
    "delete": "삭제",
    "deleteConfirm": "'{{name}}'을(를) 삭제할까요?",
    "errRequired": "날짜와 명칭을 입력해 주세요.",
    "errDup": "이미 등록된 날짜입니다.",
    "substituteHint": "대체공휴일로 등록",
    "cancel": "취소",
    "saving": "저장 중…",
    "save": "저장"
  },
  "track": {
    "shell": {
      "wordmark": "KINTEX AI 전시·행사시스템",
      "tablistAria": "트랙 선택",
      "tab": {
        "visitor": "관람",
        "business": "비즈니스",
        "agency": "협력사"
      },
      "login": "로그인",
      "myHome": "내 홈"
    },
    "gateway": {
      "heroAria": "제품 소개 히어로",
      "aiWatermark": "AI 생성 예상 이미지",
      "eyebrow": "AI 전시·행사 운영 플랫폼",
      "title": "KINTEX AI 전시·행사시스템",
      "subtitle": "전시 기획부터 시공·관람까지 전 과정을 AI로 자동화합니다.",
      "ctaPreReg": "관람 사전등록",
      "ctaInquiry": "참가 문의",
      "tracksAria": "트랙 분기",
      "tracksTitle": "어떤 목적으로 방문하셨나요?",
      "tracksSub": "목적에 맞는 트랙을 선택하세요.",
      "card": {
        "visitor": {
          "label": "관람객",
          "title": "행사 관람",
          "desc": "행사 일정·사전등록·오시는 길",
          "cta": "관람 트랙"
        },
        "business": {
          "label": "주최·참가",
          "title": "전시 개최·참가",
          "desc": "대관·자동견적·부스 신청·시공 시안",
          "cta": "비즈니스 트랙"
        },
        "agency": {
          "label": "공사·협력사",
          "title": "전시 시공 참여",
          "desc": "등록업체·공사 옥션·작업신고",
          "cta": "협력사 트랙"
        }
      },
      "eventsAria": "진행 중·예정 전시",
      "eventsTitle": "진행 중 · 예정 전시",
      "eventsSub": "지금 열리는 전시와 곧 열릴 전시를 확인하세요.",
      "eventsMore": "전체 일정 보기"
    },
    "visitor": {
      "heroAria": "관람 안내 히어로",
      "eyebrow": "관람객 안내",
      "title": "전시 관람, 여기서 시작하세요",
      "subtitle": "사전등록하고 더 빠르게 입장하세요. 관심 분야 알림도 받아보세요.",
      "ctaPreReg": "사전등록",
      "ctaTicket": "입장권 예매",
      "eventsAria": "행사 일정",
      "eventsTitle": "행사 일정",
      "eventsSub": "진행 중·예정 전시를 확인하고 사전등록하세요.",
      "guideAria": "방문 가이드",
      "guideTitle": "방문 가이드",
      "guideSub": "교통·주차·편의시설·접근성 정보를 한 곳에서.",
      "guide": {
        "transport": {
          "title": "교통",
          "desc": "GTX-A 킨텍스역 도보 3분·광역버스",
          "link": "오시는 길"
        },
        "parking": {
          "title": "주차",
          "desc": "실시간 주차 안내·요금·게이트",
          "link": "주차 안내"
        },
        "wayfinding": {
          "title": "실내 길찾기",
          "desc": "홀·부스까지 실내 경로 안내",
          "link": "길찾기 열기"
        },
        "amenities": {
          "title": "편의시설",
          "desc": "식음·수유실·물품보관·ATM",
          "link": "편의시설 보기"
        },
        "accessibility": {
          "title": "접근성·편의",
          "desc": "휠체어·수어통역 안내",
          "link": "접근성 안내"
        },
        "inquiry": {
          "title": "고객문의",
          "desc": "FAQ·연락처 안내",
          "link": "문의하기"
        }
      },
      "noticeAria": "공지사항",
      "noticeTitle": "공지사항",
      "noticeSub": "최근 공지·알림을 확인하세요.",
      "noticeEmpty": "등록된 공지가 없습니다.",
      "aiWatermark": "AI 생성 예상 이미지",
      "hero": {
        "title": "무엇이든 물어보세요 — AI가 관람을 안내합니다",
        "subtitle": "전시 일정·오시는 길·입장권·부스 위치를 대화로 한 번에"
      },
      "aiTiles": {
        "title": "AI가 도와드립니다",
        "sub": "관람의 모든 순간을 AI가 함께합니다.",
        "soon": "준비 중",
        "assistant": {
          "title": "AI 관람 도우미",
          "desc": "무엇이든 물어보세요"
        },
        "recommend": {
          "title": "AI 전시 추천",
          "desc": "관심사 맞춤 큐레이션"
        },
        "wayfinding": {
          "title": "AI 길찾기",
          "desc": "실내 최적 동선"
        },
        "schedule": {
          "title": "AI 일정 도우미",
          "desc": "나만의 관람 코스"
        },
        "crowd": {
          "title": "AI 혼잡·대기 안내",
          "desc": "여유로운 시간 추천"
        },
        "render": {
          "title": "AI 시공 예상 이미지",
          "desc": "부스 미리보기 (비즈니스 트랙)"
        }
      },
      "showcaseTitle": "진행 중 · 예정 전시",
      "showcaseSub": "지금 열리는 전시와 곧 열릴 전시를 한눈에.",
      "recommendTitle": "당신의 관심사에 맞는 전시",
      "recommendSub": "관심 분야를 선택하면 AI가 맞춤 전시를 추천합니다.",
      "recommendTag": "AI 추천",
      "interests": {
        "robot": "로봇·자동화",
        "smartfactory": "스마트팩토리",
        "healthcare": "헬스케어",
        "eco": "친환경·에너지",
        "mobility": "모빌리티",
        "content": "콘텐츠·문화"
      },
      "guideMore": "자세히 보기",
      "journeyTitle": "관람은 이렇게 진행됩니다",
      "journeySub": "사전등록부터 현장 입장까지 3단계로 간편하게.",
      "journey": {
        "register": {
          "title": "사전등록",
          "desc": "온라인으로 관람 정보를 등록하세요.",
          "link": "전시 보기"
        },
        "badge": {
          "title": "배지·QR 발급",
          "desc": "모바일 배지와 입장 QR을 받으세요.",
          "link": "입장권 조회"
        },
        "checkin": {
          "title": "현장 체크인",
          "desc": "입구에서 QR을 스캔하고 바로 입장하세요.",
          "link": "로그인"
        }
      },
      "venueTitle": "킨텍스 전시장 소개",
      "venueSub": "국내 최대 규모의 전시·컨벤션 센터.",
      "venue": {
        "halls": {
          "label": "전시홀",
          "value": "10개"
        },
        "area": {
          "label": "전시면적",
          "value": "108,556㎡"
        },
        "parking": {
          "label": "주차",
          "value": "7,500대"
        },
        "access": {
          "label": "교통",
          "value": "GTX-A 도보 3분"
        }
      },
      "briefing": {
        "title": "AI 전시·행사 기획 브리핑",
        "sub": "올 한 해와 이번 달, AI가 개최 예정 전시를 먼저 정리해 드립니다.",
        "viewYear": "연간 ({{year}})",
        "viewMonth": "월간",
        "aiSummary": "AI 요약",
        "loading": "AI 요약 생성 중…",
        "empty": "이 기간에 예정된 전시가 없습니다.",
        "yearSummary": "{{year}}년에는 총 {{count}}건의 전시·행사가 예정되어 있으며, {{peak}}에 집중됩니다.",
        "monthSummary": "이번 달은 {{count}}건의 전시가 열립니다 · 주말 방문을 추천합니다.",
        "monthLabel": "{{month}}월",
        "eventsCount": "{{count}}건",
        "prevMonth": "이전 달",
        "nextMonth": "다음 달"
      },
      "stats": {
        "aria": "킨텍스 전시 규모",
        "exhibitions": {
          "label": "누적 전시",
          "countTo": "1200",
          "suffix": "+"
        },
        "exhibitors": {
          "label": "참가업체",
          "countTo": "30000",
          "suffix": "+"
        },
        "visitors": {
          "label": "연 관람객",
          "countTo": "500",
          "suffix": "만+"
        }
      }
    },
    "business": {
      "heroAria": "비즈니스 안내 히어로",
      "eyebrow": "주최자·참가업체 안내",
      "title": "전시 개최·참가, 온라인 신청 일원화",
      "subtitle": "대관부터 부스 신청·시공까지 모든 절차를 온라인에서 처리하세요.",
      "ctaApply": "신청·문의",
      "ctaLogin": "로그인",
      "ctaInquiry": "문의하기",
      "valueAria": "가치 제안",
      "valueTitle": "역할에 맞는 진입",
      "valueSub": "주최자와 참가업체를 위한 기능을 안내합니다.",
      "value": {
        "organizer": {
          "title": "주최자 · 홀 임대",
          "desc": "대관 절차부터 홀 배정·플로어플랜까지 한 번에.",
          "item": {
            "rental": "대관 절차 안내",
            "quote": "자동견적",
            "floorplan": "홀 배정·플로어플랜",
            "rate": "요금·시설 규격"
          },
          "cta": "대관 문의·로그인"
        },
        "exhibitor": {
          "title": "참가업체 · 부스 신청",
          "desc": "부스 신청·유틸리티부터 AI 시공 시안까지.",
          "item": {
            "apply": "부스 신청",
            "utility": "유틸리티 신청",
            "compliance": "규정 사전검증",
            "render": "AI 시공 시안"
          },
          "cta": "참가 신청·로그인"
        }
      },
      "processAria": "임대 절차",
      "processTitle": "임대 절차",
      "processSub": "문의부터 시공·검수까지 한눈에.",
      "process": {
        "inquiry": {
          "title": "문의",
          "desc": "대관 상담 접수"
        },
        "quote": {
          "title": "가견적",
          "desc": "자동견적 산출"
        },
        "contract": {
          "title": "계약",
          "desc": "계약 체결"
        },
        "assign": {
          "title": "홀 배정",
          "desc": "홀·구획 배정"
        },
        "booth": {
          "title": "부스 신청",
          "desc": "참가업체 부스·유틸리티"
        },
        "inspect": {
          "title": "시공·검수",
          "desc": "시공 후 현장 검수"
        }
      },
      "rateAria": "요금·서류",
      "rateTitle": "요금 · 서류 안내",
      "rateSub": "부스 유형별 요율과 주요 서류를 안내합니다.",
      "rate": {
        "shell": {
          "label": "조립부스",
          "price": "기본형",
          "desc": "기본 부스·기본 전기 포함"
        },
        "space": {
          "label": "독립부스",
          "price": "공간형",
          "desc": "자유 시공·구조계산서 필요"
        },
        "premium": {
          "label": "프리미엄",
          "price": "특화형",
          "desc": "프리미엄 위치·추가 유틸리티"
        }
      },
      "doc": {
        "assign": {
          "title": "배정신청서",
          "desc": "홀 배정 신청 서식"
        },
        "flame": {
          "title": "방염 확인서",
          "desc": "방염 처리 확인 서류"
        },
        "structure": {
          "title": "구조계산서",
          "desc": "독립부스·리깅 구조 검토"
        }
      },
      "ctaBandAria": "로그인·문의",
      "ctaBandText": "이미 계정이 있으신가요?"
    },
    "agency": {
      "heroAria": "협력사 안내 히어로",
      "eyebrow": "공사·장치·협력업체 안내",
      "title": "킨텍스 공식 등록업체로 전시 시공에 참여하세요",
      "subtitle": "공사 옥션(역경매)으로 투명하게 수주하세요. 킨텍스만의 차별화된 방식입니다.",
      "ctaLogin": "등록업체 로그인",
      "ctaRegister": "등록 신청",
      "ctaAuctionLogin": "로그인하고 옥션 응찰",
      "ctaWorkReport": "작업신고 하기",
      "registryAria": "등록업체 안내",
      "registryTitle": "등록업체 안내",
      "registrySub": "등록업체 739개사 · 14개 분류로 운영됩니다.",
      "gateTitle": "미등록 업체는 전시 시공에 참여할 수 없습니다 (자체시공 불가)",
      "gateBody": "전시 시공은 반드시 킨텍스 공식 등록업체를 통해야 합니다. 등록 절차를 확인하고 신청하세요.",
      "reg": {
        "apply": {
          "title": "신청",
          "desc": "등록 신청서 제출"
        },
        "review": {
          "title": "자격심사",
          "desc": "자격·실적 심사"
        },
        "register": {
          "title": "등록",
          "desc": "공식 등록업체 등재"
        },
        "eligible": {
          "title": "수주 자격",
          "desc": "옥션 응찰·수주 가능"
        }
      },
      "auctionAria": "공사 옥션",
      "auctionTitle": "진행 중 공사 옥션 (역경매)",
      "auctionSub": "예산 범위 안에서 투명하게 경쟁 응찰하세요.",
      "auctionEmptyTitle": "공개 옥션 공고는 로그인 후 확인하실 수 있습니다",
      "auctionEmptyBody": "등록업체 로그인 시 진행 중인 공사 옥션 공고·예산·마감·응찰 현황을 확인하고 응찰할 수 있습니다.",
      "safetyAria": "작업신고·안전 규정",
      "safetyTitle": "작업신고 · 안전 규정",
      "safetySub": "현장 작업 전 필수 절차와 규정을 확인하세요.",
      "safety": {
        "report": {
          "title": "작업신고 절차",
          "desc": "현장 작업 전 온라인 작업신고"
        },
        "prohibited": {
          "title": "금지작업·소음",
          "desc": "금지작업·소음 한도·리깅 구조계산서"
        },
        "docs": {
          "title": "필수 서류",
          "desc": "방염 확인서·보험 증서"
        }
      },
      "ctaBandAria": "등록업체 로그인",
      "ctaBandText": "이미 등록된 업체이신가요?"
    }
  },
  "_note": "SCR-T1 visitor v2.3.2 신규 i18n 키 (append-only). frontend가 단독 편집자로 4개 로케일 병합. 병렬 편집 금지.",
  "keys": {
    "ko": "AI 도우미",
    "en": "AI Guide",
    "zh": "AI 助手",
    "ja": "AI ガイド"
  },
  "customizer": {
    "title": "화면 설정",
    "lead": "테마·레이아웃·강조색을 개인화합니다. 이 기기에 저장됩니다.",
    "reset": "기본값으로 복원",
    "theme": {
      "title": "테마",
      "light": "라이트",
      "dark": "다크",
      "system": "시스템"
    },
    "layout": {
      "title": "레이아웃",
      "sidebar": "사이드바",
      "sidebarExpanded": "펼침 — 메뉴 표시",
      "sidebarCollapsed": "접힘 — 콘텐츠 전폭"
    },
    "density": {
      "title": "밀도",
      "comfortable": "보통",
      "compact": "컴팩트"
    },
    "accent": {
      "title": "강조색",
      "default": "브랜드 블루",
      "indigo": "인디고",
      "teal": "틸",
      "violet": "바이올렛",
      "rose": "로즈",
      "amber": "앰버"
    }
  },
  "exhibitorsPage": {
    "title": "참가업체 관리",
    "subtitle": "참가사 로스터·부스 배정·설계/정산 현황·담당 연락",
    "noEventTitle": "선택된 행사가 없습니다",
    "noEventDesc": "워크스페이스에서 행사를 먼저 선택해 주세요.",
    "kpisAria": "참가업체 요약 지표",
    "kpiTotal": "참가업체",
    "kpiContracted": "계약 완료",
    "kpiDesignApproved": "설계 승인",
    "kpiOutstanding": "미수 발생",
    "listTitle": "참가업체 목록",
    "searchPlaceholder": "회사명·부스 번호 검색",
    "saleFilterLabel": "부스 배정 상태 필터",
    "filterAll": "전체",
    "loadError": "참가업체 목록을 불러오지 못했습니다.",
    "emptyTitle": "표시할 참가업체가 없습니다",
    "emptyDesc": "검색어나 필터를 조정하거나, 부스 배정을 먼저 진행하세요.",
    "colCompany": "회사명",
    "colBooth": "부스",
    "colType": "부스 유형",
    "colArea": "면적(m²)",
    "colSale": "배정",
    "colDesign": "설계",
    "colSettlement": "정산",
    "colContact": "담당 연락",
    "dueShort": "미수 {{won}}원",
    "contactNone": "미등록",
    "count": "총 {{n}}개 참가업체",
    "detailTitle": "참가업체 상세",
    "statusSection": "진행 상태",
    "contactSection": "담당 연락",
    "boothLabel": "부스 번호",
    "typeLabel": "부스 유형",
    "areaLabel": "면적",
    "saleLabel": "부스 배정",
    "designLabel": "설계 상태",
    "settlementLabel": "정산 상태",
    "outstandingLabel": "미수금",
    "contactNameLabel": "담당자",
    "contactPhoneLabel": "연락처",
    "won": "{{won}}원",
    "sale": {
      "sold": "계약 완료",
      "held": "예약",
      "available": "미배정",
      "none": "미상"
    },
    "design": {
      "approved": "승인",
      "review": "검토 중",
      "draft": "작성 중",
      "rejected": "반려",
      "none": "미상"
    },
    "invoice": {
      "pending": "발행 대기",
      "invoiced": "발행",
      "paid": "완납",
      "overdue": "연체",
      "cancelled": "취소",
      "none": "청구 없음"
    },
    "boothType": {
      "assembled": "조립부스",
      "independent": "독립부스",
      "corner": "코너부스",
      "island": "아일랜드부스"
    }
  },
  "datatable": {
    "search": "검색",
    "searchAria": "표 검색",
    "csv": "CSV 내보내기",
    "prev": "이전",
    "next": "다음",
    "pageSize": "표시 개수",
    "pageInfo": "{{page}} / {{total}} 페이지",
    "count": "{{shown}}건 표시 · 총 {{total}}건",
    "emptyTitle": "표시할 데이터가 없습니다",
    "emptyFiltered": "검색 조건에 맞는 결과가 없습니다",
    "sortAsc": "오름차순 정렬",
    "sortDesc": "내림차순 정렬",
    "sortClear": "정렬 해제"
  },
  "breadcrumb": {
    "aria": "경로",
    "docsAuthoring": "신고서류 작성",
    "micrositeBuilder": "마이크로사이트 빌더",
    "i18nCms": "다국어 CMS",
    "notifications": "알림센터",
    "me": "마이페이지",
    "auctionDetail": "옥션 상세",
    "auctionAward": "낙찰 비교",
    "exhibitorHome": "참가업체 홈",
    "comparison": "AI 배치안 비교",
    "design": "부스 설계 스튜디오",
    "utility": "유틸리티 배선",
    "utilityOrder": "유틸리티 신청",
    "compliance": "규정 검증",
    "approvals": "검수 대기열",
    "reviewDetail": "검수 상세",
    "gallery": "시각화 갤러리"
  },
  "notFound": {
    "title": "페이지를 찾을 수 없습니다",
    "desc": "요청하신 페이지가 존재하지 않거나 이동되었습니다. 주소를 확인해 주세요.",
    "home": "홈으로",
    "back": "이전 페이지"
  },
  "msg": {
    "title": "메시지 관리",
    "subtitle": "알림·이메일·통지 문구를 코드·로케일별 템플릿으로 관리합니다 ({key} 플레이스홀더 치환)",
    "add": "템플릿 추가",
    "category": "분류",
    "allCategories": "전체 분류",
    "locale": "로케일",
    "allLocales": "전체 로케일",
    "search": "검색",
    "searchPlaceholder": "코드·제목·본문 검색",
    "filterAria": "메시지 필터",
    "loadError": "메시지 목록을 불러오지 못했습니다",
    "emptyTitle": "메시지가 없습니다",
    "emptyDesc": "조건에 맞는 템플릿이 없습니다. 새 템플릿을 추가해 보세요.",
    "code": "코드",
    "msgTitle": "제목",
    "placeholders": "플레이스홀더",
    "use": "사용",
    "manage": "관리",
    "used": "사용",
    "unused": "미사용",
    "preview": "미리보기",
    "edit": "수정",
    "delete": "삭제",
    "deleteConfirm": "{{code}} ({{locale}}) 템플릿을 삭제할까요?",
    "saved": "저장되었습니다",
    "deleted": "삭제되었습니다",
    "errRequired": "코드·제목·본문은 필수입니다",
    "useYn": "사용 여부",
    "template": "본문 템플릿",
    "templatePlaceholder": "{name}·{eventName} 형식의 {key} 플레이스홀더를 사용하세요",
    "detectedParams": "감지된 파라미터",
    "cancel": "취소",
    "save": "저장",
    "saving": "저장 중…",
    "close": "닫기",
    "render": "렌더",
    "rendering": "렌더 중…",
    "renderResult": "렌더 결과",
    "noParams": "치환할 파라미터가 없는 템플릿입니다"
  }
}
