{
  "app.name": "MageStock",
  "lang.label": "언어",
  "theme.toggle": "Changer de thème",
  "btn.logout": "로그아웃",
  "btn.login": "로그인",
  "btn.save": "저장",
  "btn.cancel": "취소",
  "btn.close": "닫기",
  "btn.delete": "삭제",
  "btn.add": "추가",
  "btn.edit": "편집",
  "btn.export": "Exporter",
  "btn.export_pdf": "Exporter PDF",
  "btn.print": "인쇄",
  "btn.search": "검색",
  "search.placeholder": "검색…",
  "login.title": "로그인",
  "login.username": "사용자 이름",
  "login.password": "비밀번호",
  "login.error": "잘못된 자격 증명입니다.",
  "nav.dashboard": "홈",
  "nav.products": "제품",
  "nav.warehouses": "창고",
  "nav.warehouse_manager": "창고 관리",
  "nav.movements": "입출고",
  "nav.inventory": "재고 조사",
  "nav.scanner": "스캐너",
  "nav.barcodes": "바코드",
  "nav.reports": "보고서",
  "nav.settings": "설정",
  "nav.users": "사용자",
  "nav.alerts": "알림",
  "nav.suppliers": "공급업체",
  "nav.brands": "브랜드",
  "nav.orders": "주문",
  "auto.21cb337616": "모든 창고",
  "auto.318262fcf6": "Nouvelle alerte",
  "auto.b0b7cddbe9": "Alertes critiques",
  "auto.e238b76e11": "Alertes actives",
  "auto.b1a735917d": "Produits OK",
  "auto.38cfc9c7f5": "Status actuel",
  "auto.a1230fab7a": "Règles d'alerte",
  "auto.e30e2cb9aa": "제품",
  "auto.055c3b9395": "창고",
  "auto.a1fa277792": "Type",
  "auto.3e8e07eb39": "Seuil",
  "auto.b7c0fdcea6": "Qté actuelle",
  "auto.87a831bc99": "상태",
  "auto.06df33001c": "작업",
  "auto.194eef0e3d": "Générateur d’étiquettes",
  "auto.c313d6dc96": "Sélectionnez des produits, choisissez un style + un format, prévisualisez et imprimez.",
  "auto.7ce1f3fdf2": "Vider",
  "auto.94c48b9ef5": "Exporter PDF",
  "auto.943021b255": "Imprimer",
  "auto.e06ff32467": "🎨 Style",
  "auto.2f7174f197": "📏 Format",
  "auto.a777aa1532": "🖼️ Options",
  "auto.2186767964": "🖼️ Image + Code-barres",
  "auto.99e780809b": "Visuel produit + code-barres compact",
  "auto.d46181e2a6": "📊 Code-barres seul",
  "auto.9ad7781b20": "Impression rapide et lisible",
  "auto.241ee90c1d": "🏷️ QR Code",
  "auto.1e813ad6bd": "Encodage texte/URL ou payload produit",
  "auto.dd26d4798f": "📋 Étiquette complète",
  "auto.da652b69a5": "Image + infos + code-barres",
  "auto.966f80ae51": "Format de code-barres",
  "auto.db053df979": "CODE128",
  "auto.52eb5928a3": "EAN13",
  "auto.ed7ef6f38d": "Code personnalisé (optionnel)",
  "auto.a8fe1a3b2f": "📄 A4 — planche 24",
  "auto.3ebf618916": "3 colonnes × 8 lignes",
  "auto.dbde0d64d0": "🏷️ Avery L7160",
  "auto.da16c67df4": "63,5×38,1mm (3×7)",
  "auto.6507e11634": "📦 70×37mm",
  "auto.ee40c8a5ad": "3×8 (approx.)",
  "auto.f99b1a642e": "📦 105×37mm",
  "auto.8ace2ca182": "2 colonnes (approx.)",
  "auto.d3cbaa3e9e": "🎯 Personnalisé",
  "auto.368b7fb41b": "Largeur/hauteur + grille",
  "auto.505279d1db": "Largeur (mm)",
  "auto.5cd5426490": "Hauteur (mm)",
  "auto.be920cea70": "Colonnes",
  "auto.1945ed4570": "Lignes",
  "auto.af847154be": "Contenu",
  "auto.ca0dbad92a": "Code",
  "auto.be53a0541a": "Image",
  "auto.251040e9a0": "QR — texte personnalisé (optionnel)",
  "auto.a65da323a9": "📷 Scanner un QR",
  "auto.9100e163bb": "Prévisualisation",
  "auto.00882b098c": "Aucune sélection",
  "auto.7159991d00": "📦 Sélection produits",
  "auto.bbbe4b9ce4": "모든 카테고리",
  "auto.0e520a1ffa": "Impression",
  "auto.7d206237f9": "닫기",
  "auto.aa38fb6cd7": "Lancer l'impression",
  "auto.168a75f6c4": "window.SM_PAGE = 'barcodes';",
  "auto.2bef3061dc": "0 marque(s)",
  "auto.9aa58eb9b1": "Nouvelle marque",
  "auto.a3e2b2eac8": "Marque",
  "auto.d3b02c902c": "Fournisseurs liés",
  "auto.88c61ac25a": "제품",
  "auto.793b746788": "Créée le",
  "auto.d045fd5356": "Valorisation par magasin",
  "auto.2b335b2844": "Activité récente",
  "auto.b1beaad72e": "Voir tout",
  "auto.b24e631664": "Gérer",
  "auto.d167478c48": "Aperçu du stock",
  "auto.91dbfff7a0": "Coût unit.",
  "auto.debedfb449": "Valeur",
  "auto.f86f444e68": "Démarrer un inventaire",
  "auto.5eb62fda83": "Sélectionner un magasin",
  "auto.8fa534403b": "Catégorie (optionnel)",
  "auto.5bb4f30971": "Démarrer",
  "auto.35723f9629": "이력",
  "auto.54628887e8": "Total produits",
  "auto.86bdb2b73d": "Validés",
  "auto.ffacbac836": "Écarts",
  "auto.439149be8b": "En attente",
  "auto.948505fb20": "Scanner",
  "auto.d12c3b0dcf": "취소",
  "auto.e1c50082af": "Valider l'inventaire",
  "auto.18d925e4d5": "Ajouter",
  "auto.754a3f71bd": "Stock théorique",
  "auto.cdd262917a": "Compté",
  "auto.0dc60556d9": "Écart",
  "auto.5104751360": "\" class=\"sidebar-link",
  "auto.354e62ea5b": "\" title=\"",
  "auto.d2766d9b56": "\" data-label=\"",
  "auto.19dd00a2a6": "\" class=\"header-btn header-alerts\">",
  "auto.d0976037d2": "개발",
  "auto.166ad53556": "KREMER Régis",
  "auto.1e8d587771": "&copy;",
  "auto.f83511a305": "MageStock",
  "auto.b61541208d": "메뉴",
  "auto.3e75196365": "\" class=\"slide-item",
  "auto.59e7b5977f": "로그아웃",
  "auto.99fb48ddce": "Titre",
  "auto.121dc34a0d": "Codes à barres",
  "auto.2cddd28fee": "window.SM_PAGE = '",
  "auto.d3794314a9": "'; window.SM_ROLE = '",
  "auto.3978edca6e": "'; window.USER_ROLE = '",
  "auto.ecdfac8b01": "'; window.CSRF_TOKEN = '",
  "auto.5cd9831e35": "'; document.addEventListener('DOMContentLoaded', ()=> App.init());",
  "auto.47b404afa4": "모든 유형",
  "auto.e49ab34478": "Ajout",
  "auto.772ae0b683": "Sortie",
  "auto.b0be74ed47": "Transfert",
  "auto.66c1fb3547": "Inventaire",
  "auto.d0f84e00bb": "Entrée",
  "auto.4cfc9c2fee": "Filtres +",
  "auto.3f181e87bd": "Opérateur",
  "auto.532a44859a": "Chantier / Site",
  "auto.fed0b874ff": "BL / Référence",
  "auto.73d163bfa7": "공급업체",
  "auto.612eae5e7f": "0개 이동",
  "auto.60b1cf36a1": "Ajout stock",
  "auto.6788c41f73": "Sortie stock",
  "auto.41c2e8aa4b": "Date / Heure",
  "auto.27ce7f8b56": "재고",
  "auto.c18c12d75b": "Raison / Chantier",
  "auto.3b0649c726": "메모",
  "auto.0945359809": "Document",
  "auto.153d913716": "Pièce",
  "auto.511924d443": "Page 1 / 1",
  "auto.292d37187f": "이전",
  "auto.257a7b4c17": "다음",
  "auto.42895bd48e": "20 / page",
  "auto.1b6aabe1ed": "50 / page",
  "auto.74a0253db2": "100 / page",
  "auto.d60f3bbc79": "Toutes marques",
  "auto.f813c866dd": "제품 0개",
  "auto.aee5874ea5": "Entrée de stock",
  "auto.69cc8fa3c3": "새 제품",
  "auto.cac8eee4d8": "📂 Import CSV",
  "auto.8c6b7f2067": "카테고리",
  "auto.bc13813162": "가격",
  "auto.3c5f34af12": "12 / page",
  "auto.551635d5bd": "24 / page",
  "auto.154a663289": "48 / page",
  "auto.554522921a": "📦 Stock",
  "auto.4ecf2a7c1a": "📊 Valorisation",
  "auto.1dc86dc039": "📈 Mouvements",
  "auto.7a98add9ae": "📉 Alertes",
  "auto.c53a63874f": "🏷️ Marques",
  "auto.1ce60d078c": "📊 Écarts inventaire",
  "auto.c6c34fda97": "💰 Historique prix",
  "auto.fec8c371a7": "📦 Rapport de Stock",
  "auto.50304dcf67": "🖨️ Imprimer",
  "auto.360f889205": "📥 Exporter CSV",
  "auto.feec0f0326": "🏢 Tous les magasins",
  "auto.089490558f": "📦 Toutes les catégories",
  "auto.9cbdde64e6": "🏷️ Toutes les marques",
  "auto.80343600a3": "⚠️ Tous les seuils",
  "auto.d3b1d82825": "Stock bas uniquement",
  "auto.173562e26f": "Stock normal",
  "auto.7a1206e827": "🔄 Réinitialiser",
  "auto.1f78ab905c": "Unités totales",
  "auto.6d2a66c81f": "Valeur totale",
  "auto.e1ded249ca": "Stock bas",
  "auto.894a31e48b": "Stock actuel",
  "auto.db19dd4050": "Seuil mini",
  "auto.7660ba0d20": "Coût unitaire",
  "auto.796c5a9d55": "📊 Valorisation du Stock",
  "auto.5e2c9b7c0b": "Valeur totale stock",
  "auto.95726adbb0": "Magasins",
  "auto.3059d560a9": "Unités",
  "auto.9b1acffafa": "Valeur moyenne/produit",
  "auto.2083a88a18": "📈 Rapport des Mouvements",
  "auto.42da2a07fe": "Tous les types",
  "auto.ff0f4810b8": "Entrées",
  "auto.c9a2bb2291": "Ajouts",
  "auto.4fc39f3ee2": "Sorties",
  "auto.7ebbd5c301": "Transferts",
  "auto.9d02934dab": "Tous les magasins",
  "auto.44749712db": "날짜",
  "auto.1b27b371c9": "수량",
  "auto.f628ae7eac": "사용자",
  "auto.a530dc1ad2": "📉 Alertes Stock Bas",
  "auto.d0e1705373": "⚠️ Priorité",
  "auto.3e81dfbadd": "Déficit",
  "auto.004bf6c9a4": "Action",
  "auto.82b55b0cfc": "🏷️ Rapport par Marques",
  "auto.e3d3e6972a": "총 재고",
  "auto.20a50f9498": "공급업체",
  "auto.7a05a317f8": "📊 Rapport d'écarts inventaire",
  "auto.a494117a99": "Avec écart",
  "auto.15bd1cc7e9": "Valeur écarts",
  "auto.70a0ad141f": "Théorique",
  "auto.5b95306754": "Écart qté",
  "auto.7173ba9784": "Écart valeur",
  "auto.ba1154f241": "Date inventaire",
  "auto.65191f650c": "Cliquez sur l'onglet pour charger",
  "auto.1097e12af1": "💰 Historique des prix d'achat",
  "auto.1cde1caea4": "Tous les produits",
  "auto.e02d1a9572": "Prix unitaire",
  "auto.79cf6cf5a0": "Prix base",
  "auto.c92101a214": "Sélectionnez un produit",
  "auto.274f5cdec9": "window.SM_PAGE = 'reports';",
  "auto.959b190c85": "Caméra inactive",
  "auto.468f4252a6": "Activer caméra",
  "auto.2d9361e513": "Arrêter",
  "auto.9e3272ea56": "QR Code",
  "auto.110420912f": "Produit trouvé",
  "auto.6ca9a16a57": "Voir le produit",
  "auto.3ed833a118": "+ Stock",
  "auto.6cb59842f7": "- Stock",
  "auto.de0b6a7cce": "Saisie manuelle",
  "auto.3a8a7a8a2d": "Rechercher",
  "auto.a31799d611": "Scans récents",
  "auto.1c3c733a59": "Aucun scan récent",
  "auto.69fed99374": "Les codes scannés apparaîtront ici",
  "auto.4aeb99590e": "일반 설정",
  "auto.c70d8f1160": "회사명",
  "auto.8e2a02bfc3": "Préfixe SKU",
  "auto.f58eb11abe": "Le prochain SKU sera basé sur ce préfixe",
  "auto.aed88202e2": "저장",
  "auto.aa599a041b": "Sauvegarde & Restauration",
  "auto.267166e23f": "Exporter sauvegarde",
  "auto.306d178741": "Importer sauvegarde",
  "auto.5c21b459de": "Notifications Push",
  "auto.2ec16d5047": "Activer",
  "auto.3095c3e4f1": "Tester",
  "auto.0944d1cb93": "Types de notifications :",
  "auto.2f1ebdf889": "📤 Sorties de stock",
  "auto.cf1d483131": "📥 Entrées de stock",
  "auto.61bdca438f": "🔄 Transferts entre magasins",
  "auto.ba836f3d98": "⚠️ Alertes de stock (minimum/maximum atteint)",
  "auto.614ffce03f": "📋 Inventaires terminés",
  "auto.104fa50318": "위험 구역",
  "auto.4f53516a3a": "Ces actions sont irréversibles. Soyez certain de ce que vous faites.",
  "auto.d9dcbeffaf": "모든 제품 삭제",
  "auto.2e6def894b": "모든 이동 삭제",
  "auto.aba3cbc459": "모두 삭제",
  "auto.b5fd93d382": "0 fournisseur(s)",
  "auto.ff5e5012cd": "Nouveau fournisseur",
  "auto.bbaff12800": "Contact",
  "auto.ce8ae9da5b": "Email",
  "auto.301dc874dc": "Téléphone",
  "auto.fc29e0aa3d": "Marques liées",
  "auto.1297ef5077": "Délai livraison",
  "auto.229eb04083": "Conditions",
  "auto.4eeea5804e": "0 utilisateur(s)",
  "auto.c898411faf": "Nouvel utilisateur",
  "auto.c9437f7d5f": "Identifiant",
  "auto.19772a94ff": "역할",
  "auto.212078f396": "생성일",
  "auto.f7f9943ba3": "Gestion Magasins & Catégories",
  "auto.e209935d37": "Nouveau magasin",
  "auto.2a53fbe526": "window.SM_PAGE = 'warehouse-manager';",
  "auto.e5915f5f8b": "0 magasin(s)",
  "auto.50d46c2f99": "주소",
  "auto.83f62264e3": "카테고리",
  "btn.duplicate": "복제",
  "btn.duplicate.tooltip": "이 제품의 사본 만들기",
  "sizes.baby": "0M,3M,6M,9M,12M,18M,24M,2세,3세,4세,5세,6세,8세,10세,12세,14세,16세",
  "sizes.clothing": "XS,S,M,L,XL,XXL,3XL,4XL",
  "sizes.eyewear": "프리사이즈,S,M,L",
  "sizes.gloves": "6,7,8,9,10,11,12",
  "sizes.headwear": "S,M,L,XL,프리사이즈",
  "sizes.label.allSizes": "모든 사이즈",
  "sizes.label.generateVariants": "옵션 생성",
  "sizes.label.parentProduct": "상위 제품",
  "sizes.label.selectSizes": "생성할 사이즈 선택",
  "sizes.label.size": "사이즈",
  "sizes.label.sizeNorm": "사이즈 기준",
  "sizes.label.sizeType": "사이즈 및 옵션",
  "sizes.label.variantsWillCreate": "옵션이 생성됩니다",
  "sizes.norm.eu": "EU (유럽)",
  "sizes.norm.uk": "UK (영국)",
  "sizes.norm.us": "US (미국)",
  "sizes.pants.eu": "34,36,38,40,42,44,46,48,50,52,54",
  "sizes.pants.uk": "24,26,28,30,32,34,36,38,40,42",
  "sizes.pants.us": "24,26,28,30,32,34,36,38,40,42",
  "sizes.shoes.eu": "36,37,38,39,40,41,42,43,44,45,46,47,48",
  "sizes.shoes.uk": "3,3.5,4,4.5,5,5.5,6,6.5,7,7.5,8,8.5,9,9.5,10,10.5,11,11.5,12,13",
  "sizes.shoes.us": "4,4.5,5,5.5,6,6.5,7,7.5,8,8.5,9,9.5,10,10.5,11,11.5,12,12.5,13,14",
  "sizes.type.baby": "유아 / 아동 (0M → 16세)",
  "sizes.type.clothing": "의류 (XS → 4XL)",
  "sizes.type.eyewear": "안경 / 액세서리 (S → L)",
  "sizes.type.gloves": "장갑 (6 → 12)",
  "sizes.type.headwear": "모자 / 헬멧 (S → XL)",
  "sizes.type.none": "없음 (표준 제품)",
  "sizes.type.pants": "바지 (FR 사이즈 34 → 54)",
  "sizes.type.shoes": "신발 (EU / UK / US)",
  "settings.country.label": "회사 국가",
  "settings.country.hint": "국가는 관리 기준으로 사용되며 저장된 금액을 변경하지 않습니다.",
  "settings.locale.label": "지역 형식",
  "settings.locale.hint": "자동 모드에서는 숫자와 날짜가 각 사용자의 언어를 따릅니다.",
  "settings.locale.auto": "언어에 따라 자동",
  "settings.currency.label": "회계 통화",
  "settings.currency.hint": "이 통화는 가격, 주문, 가중 평균 원가 및 평가에 적용됩니다.",
  "settings.currency.warning": "통화를 변경하면 표시 단위만 바뀝니다. MageStock은 이미 저장된 재무 값을 환산하지 않습니다.",
  "settings.preview.label": "형식 미리보기",
  "nav.kits": "키트",
  "nav.reservations": "예약",
  "nav.locations": "위치",
  "nav.plans": "도면",
  "nav.analytics": "분석",
  "nav.help": "도움말",
  "nav.more": "더보기",
  "nav.logout": "로그아웃",
  "nav.section.operations": "운영",
  "nav.section.organization": "조직",
  "nav.section.monitoring": "모니터링 및 관리",
  "nav.section.administration": "관리",
  "page.dashboard": "대시보드",
  "page.products": "제품",
  "page.warehouses": "창고",
  "page.movements": "입출고",
  "page.inventory": "재고 조사",
  "page.scanner": "스캐너",
  "page.barcodes": "바코드",
  "page.reports": "보고서",
  "page.settings": "설정",
  "page.users": "사용자",
  "page.alerts": "알림",
  "page.suppliers": "공급업체",
  "page.brands": "브랜드",
  "page.orders": "구매 주문",
  "page.locations": "위치",
  "page.lots": "로트",
  "page.kits": "키트",
  "page.reservations": "예약",
  "page.analytics": "분석",
  "page.warehouse_manager": "창고 관리",
  "page.plans": "위치 도면",
  "page.plans_edit": "도면 편집",
  "page.help": "도움말",
  "shell.menu.toggle": "메뉴 열기/닫기",
  "shell.menu.open": "메뉴 열기",
  "shell.menu.close": "메뉴 닫기",
  "shell.language": "언어",
  "shell.theme.change": "테마 변경",
  "shell.theme.light": "밝은 테마로 전환",
  "shell.theme.dark": "어두운 테마로 전환",
  "shell.role.admin": "관리자",
  "shell.role.user": "사용자",
  "shell.logout": "로그아웃",
  "shell.footer.developed_by": "개발",
  "shell.footer.license": "사용권",
  "shell.modal.title": "제목",
  "shell.pwa.title": "MageStock 설치",
  "shell.pwa.text": "이 기기에 MageStock을 앱으로 추가하세요. 안내는 브라우저에 맞게 표시됩니다.",
  "shell.pwa.install": "설치",
  "shell.pwa.dismiss": "숨기기",
  "shell.print.barcodes": "바코드",
  "shell.print.print": "인쇄",
  "shell.print.close": "닫기",
  "shell.alerts": "알림",
  "login.page_title": "로그인",
  "login.meta_description": "MageStock 로그인 — 다중 창고 재고 관리.",
  "login.tagline": "재고 관리 • MageStock",
  "login.submit": "로그인",
  "login.language": "언어",
  "login.theme.light": "밝은 테마로 전환",
  "login.theme.dark": "어두운 테마로 전환",
  "login.logo_alt": "{company} — 로고",
  "login.footer": "© {year} {company} — KREMER Régis",
  "login.error.rate_limit": "로그인 시도가 너무 많습니다. 5분 후 다시 시도하세요.",
  "login.error.users_missing": "이 서버에서 data/users.json 파일을 찾을 수 없습니다.",
  "login.error.users_unreadable": "data/users.json 파일은 존재하지만 PHP가 읽을 수 없습니다. data/ 및 users.json 권한을 확인하세요.",
  "login.error.users_empty": "data/users.json 파일이 비어 있거나 읽을 수 없습니다.",
  "login.error.users_invalid_json": "data/users.json 파일이 올바른 JSON이 아닙니다: {error}",
  "login.error.invalid_credentials": "로그인 정보가 올바르지 않거나 계정이 비활성화되었습니다.",
  "dashboard.greeting.morning": "좋은 아침입니다",
  "dashboard.greeting.afternoon": "안녕하세요",
  "dashboard.greeting.evening": "좋은 저녁입니다",
  "dashboard.shortcut.scanner": "스캐너",
  "dashboard.shortcut.movement": "입출고",
  "dashboard.shortcut.inventory": "재고 조사",
  "dashboard.shortcut.orders": "주문",
  "dashboard.chart.movements_14_days": "입출고(14일)",
  "dashboard.chart.valuation_by_warehouse": "창고별 평가액",
  "dashboard.section.recent_activity": "최근 활동",
  "dashboard.section.active_alerts": "활성 알림",
  "dashboard.action.view_all": "모두 보기 →",
  "dashboard.action.manage": "관리 →",
  "dashboard.kpi.products": "제품",
  "dashboard.kpi.units_in_stock": "재고 단위",
  "dashboard.kpi.stock_value": "재고 가치",
  "dashboard.kpi.active_alerts": "활성 알림",
  "dashboard.kpi.pending_orders": "진행 중인 주문",
  "dashboard.kpi.warehouses": "창고",
  "dashboard.chart.movements": "입출고",
  "dashboard.chart.value_currency": "가치 ({currency})",
  "dashboard.warehouse_fallback": "창고 {id}",
  "dashboard.activity.none": "활동 없음",
  "dashboard.activity.title": "{name} — {type} ({quantity})",
  "dashboard.unit.short": "{value}개",
  "dashboard.movement.add": "추가",
  "dashboard.movement.remove": "출고",
  "dashboard.movement.transfer": "이동",
  "dashboard.movement.entry": "입고",
  "dashboard.movement.inventory": "재고 조사",
  "dashboard.pagination.previous": "◀ 이전",
  "dashboard.pagination.page": "{current} / {total} 페이지",
  "dashboard.pagination.next": "다음 ▶",
  "dashboard.alerts.all_ok": "모든 상태가 정상입니다",
  "dashboard.alerts.badge_min": "↓ 최소",
  "dashboard.alerts.badge_max": "↑ 최대",
  "dashboard.alerts.stock_detail": "재고: <strong>{qty}</strong> / 기준 <strong>{threshold}</strong>",
  "date.weekday.0": "일요일",
  "date.weekday.1": "월요일",
  "date.weekday.2": "화요일",
  "date.weekday.3": "수요일",
  "date.weekday.4": "목요일",
  "date.weekday.5": "금요일",
  "date.weekday.6": "토요일",
  "date.month.1": "1월",
  "date.month.2": "2월",
  "date.month.3": "3월",
  "date.month.4": "4월",
  "date.month.5": "5월",
  "date.month.6": "6월",
  "date.month.7": "7월",
  "date.month.8": "8월",
  "date.month.9": "9월",
  "date.month.10": "10월",
  "date.month.11": "11월",
  "date.month.12": "12월",
  "date.long": "{year}년 {month} {day}일 {weekday}",
  "shell.meta_description": "MageStock — 다중 창고 재고 관리, 스캔, 입출고, 재고 조사 및 알림.",
  "shell.scroll_top": "맨 위로",
  "shell.role.storekeeper": "창고 담당자",
  "warehouse.manager.heading": "창고 관리",
  "warehouse.manager.intro": "창고를 만들고 정보를 입력한 뒤 카테고리를 구성합니다.",
  "warehouse.manager.new": "새 창고",
  "warehouse.manager.load_error": "창고를 불러오지 못했습니다.",
  "warehouse.manager.empty_title": "창고 없음",
  "warehouse.manager.empty_text": "재고 관리를 위해 첫 창고를 만드세요.",
  "warehouse.manager.not_provided": "미입력",
  "warehouse.manager.edit": "창고 수정",
  "warehouse.manager.add_category": "추가",
  "warehouse.manager.remove_category": "{category} 제거",
  "warehouse.manager.address": "주소",
  "warehouse.manager.contact": "연락처",
  "warehouse.manager.capacity": "최대 용량",
  "warehouse.manager.indicators": "창고 지표",
  "warehouse.manager.products": "제품",
  "warehouse.manager.categories": "카테고리",
  "warehouse.manager.no_categories": "카테고리 없음",
  "warehouse.manager.cancel": "취소",
  "warehouse.manager.confirm": "확인",
  "warehouse.manager.existing_categories": "이 창고에 이미 {count}개의 카테고리가 있습니다.",
  "warehouse.manager.no_categories_defined": "아직 정의된 카테고리가 없습니다.",
  "warehouse.manager.add_category_title": "카테고리 추가 — {warehouse}",
  "warehouse.manager.category_name": "카테고리 이름",
  "warehouse.manager.category_placeholder": "예: 수직 표지판",
  "warehouse.manager.add": "추가",
  "warehouse.manager.category_required": "카테고리 이름은 필수입니다.",
  "warehouse.manager.category_exists": "이 카테고리는 이미 존재합니다.",
  "warehouse.manager.category_added": "카테고리가 추가되었습니다.",
  "warehouse.manager.category_add_error": "카테고리를 추가하지 못했습니다.",
  "warehouse.manager.remove_category_title": "카테고리 제거",
  "warehouse.manager.remove_category_question": "“{warehouse}”에서 “{category}”를 제거할까요? 제품의 기존 라벨은 유지됩니다.",
  "warehouse.manager.remove": "제거",
  "warehouse.manager.category_removed": "카테고리가 제거되었습니다.",
  "warehouse.manager.category_remove_error": "카테고리를 제거하지 못했습니다.",
  "warehouse.manager.edit_title": "창고 수정",
  "warehouse.manager.new_title": "새 창고",
  "warehouse.manager.name": "이름",
  "warehouse.manager.name_placeholder": "예: 주 작업장",
  "warehouse.manager.address_placeholder": "전체 주소",
  "warehouse.manager.optional": "선택 사항",
  "warehouse.manager.contact_placeholder": "창고 담당자",
  "warehouse.manager.notes": "메모",
  "warehouse.manager.save": "저장",
  "warehouse.manager.create": "생성",
  "warehouse.manager.delete": "삭제",
  "warehouse.manager.name_required": "이름은 필수입니다.",
  "warehouse.manager.updated": "창고가 업데이트되었습니다.",
  "warehouse.manager.created": "창고가 생성되었습니다.",
  "warehouse.manager.save_error": "저장하지 못했습니다.",
  "warehouse.manager.dep_products": "제품",
  "warehouse.manager.dep_stock": "재고 행",
  "warehouse.manager.dep_movements": "이동",
  "warehouse.manager.dep_inventories": "재고 조사",
  "warehouse.manager.dep_orders": "주문",
  "warehouse.manager.dep_locations": "위치",
  "warehouse.manager.dep_plans": "도면",
  "warehouse.manager.dep_alerts": "알림",
  "warehouse.manager.dep_reservations": "예약",
  "warehouse.manager.dep_users": "사용자",
  "warehouse.manager.dep_ldap": "LDAP 매핑",
  "warehouse.manager.delete_blocked_title": "삭제할 수 없음",
  "warehouse.manager.delete_blocked_text": "창고 “{warehouse}”가 아직 사용 중입니다. 삭제 전에 아래 항목을 재할당하세요.",
  "warehouse.manager.close": "닫기",
  "warehouse.manager.delete_products_notice": "이 창고에 {count}개의 제품이 할당되어 있습니다.",
  "warehouse.manager.delete_title": "창고 삭제",
  "warehouse.manager.delete_question": "“{warehouse}”를 영구 삭제할까요?",
  "warehouse.manager.deleted": "창고가 삭제되었습니다.",
  "warehouse.manager.delete_error": "창고를 삭제하지 못했습니다.",
  "update.analysis.baseline": "Migration baseline",
  "update.analysis.blocker": "Blocker",
  "update.analysis.corrections": "Corrections required before installation",
  "update.analysis.files": "Targeted files",
  "update.analysis.free_space": "Available space",
  "update.analysis.impossible": "Operation impossible.",
  "update.analysis.install_blocked": "Installation blocked",
  "update.analysis.installed": "Installed version",
  "update.analysis.legacy": "legacy",
  "update.analysis.migrations": "Declared migrations",
  "update.analysis.more_files": "other file(s)",
  "update.analysis.permissions": "Detected permissions: {mode}",
  "update.analysis.range": "{minimum} to {maximum}",
  "update.analysis.ready_text": "Signature, source range, files and permissions are valid. Installation still requires your confirmation.",
  "update.analysis.required_space": "Estimated space",
  "update.analysis.schema": "Schema",
  "update.analysis.server_ready": "Server ready",
  "update.analysis.signature": "Signature",
  "update.analysis.sources": "Accepted source versions",
  "update.analysis.target": "Target version",
  "update.analysis.type": "Type",
  "update.analysis.unknown": "Undetermined",
  "update.analysis.verified_package": "Official package verified",
  "update.code_version": "Code version",
  "update.installed_version": "Installed version",
  "update.kicker": "System administration",
  "update.title": "MageStock 업데이트",
  "update.subtitle": "Find an official version, download its signed package, then confirm installation separately.",
  "update.loading": "Loading…",
  "update.working": "Processing…",
  "update.confirm.finalize_manual": "Finalize the manually deployed files?",
  "update.confirm.install": "Back up and install this update?",
  "update.confirm.rollback": "Restore the previous point?",
  "update.discovery.available_badge": "새 버전 사용 가능",
  "update.discovery.checked": "Last check",
  "update.discovery.checking": "Checking the official catalog, signature and compatible versions…",
  "update.discovery.compatible_sources": "Compatible sources",
  "update.discovery.current": "No newer version is published on the stable channel.",
  "update.discovery.current_badge": "현재 버전",
  "update.discovery.description": "MageStock only contacts the official HTTPS domain, verifies the Ed25519 manifest and sends no business data.",
  "update.discovery.disk_blocked": "Insufficient disk space to download and prepare this package.",
  "update.discovery.download": "다운로드 및 분석",
  "update.discovery.download_blocked": "Official package verified, but the server preflight blocks installation.",
  "update.discovery.download_ready": "Official package downloaded, verified and ready to install after confirmation.",
  "update.discovery.downloading": "Controlled download, SHA-256 verification and internal signature analysis…",
  "update.discovery.found": "A compatible official update is available.",
  "update.discovery.kicker": "Official catalog",
  "update.discovery.mandatory": "Important",
  "update.discovery.never_checked": "Not checked yet",
  "update.discovery.none": "MageStock already uses the latest published version.",
  "update.discovery.package": "Selected package",
  "update.discovery.privacy": "No user, product, stock, warehouse, LDAP setting, secret or installation identifier is sent.",
  "update.discovery.prompt": "Start a search to check the official stable channel.",
  "update.discovery.published": "Published",
  "update.discovery.release_notes": "View changes",
  "update.discovery.search": "업데이트 확인",
  "update.discovery.signature": "Trust",
  "update.discovery.size": "Size",
  "update.discovery.title": "MageKorp Hub에서 업데이트 확인",
  "update.discovery.unavailable": "The official catalog cannot be reached. Manual import remains available.",
  "update.discovery.unavailable_badge": "서비스 이용 불가",
  "update.discovery.verified": "Authenticated manifest, authorized origin and package compatible with this installation.",
  "update.discovery.version": "MageStock {version}",
  "update.history.empty": "No update recorded.",
  "update.history.title": "기록",
  "update.install.running": "Final preflight and update in progress.",
  "update.install.success": "Update successful. Reloading…",
  "update.integrity.failed": "Some checks failed.",
  "update.integrity.ok": "Integrity validated.",
  "update.manual.analyze": "Analyze package",
  "update.manual.blocked": "Valid package, but installation is blocked by the listed permissions.",
  "update.manual.checking": "Checking signature, version compatibility, integrity and permissions…",
  "update.manual.description": "Keep this method when the server has no outbound Internet access. The ZIP undergoes exactly the same checks.",
  "update.manual.limit": "128 MB maximum",
  "update.manual.ready": "Package validated and server ready.",
  "update.manual.select": "Select an official ZIP",
  "update.manual.title": "업데이트 수동 가져오기",
  "update.notice.blocked": "The package is authentic, but the server cannot replace every file yet.",
  "update.notice.idle": "The system is ready. Remote discovery never starts installation automatically.",
  "update.notice.interrupted": "An interrupted update requires administrator action.",
  "update.notice.manual": "New files were detected. Finalize the update before resuming activity.",
  "update.notice.orphan": "An old state without an archive or backup was detected. Click Restore.",
  "update.notice.ready": "Signed package, compatible source version and file system ready.",
  "update.package.confirmation": "Installation never starts automatically. Administrator confirmation is always required.",
  "update.package.install": "업데이트 설치",
  "update.package.kicker": "Package ready",
  "update.package.recheck": "Recheck permissions",
  "update.package.source_manual": "Manual import",
  "update.package.source_remote": "Downloaded from MageKorp Hub",
  "update.package.title": "Official package analysis",
  "update.preflight.blocked": "Blockers remain.",
  "update.preflight.ready": "The server is now ready.",
  "update.preflight.running": "Checking permissions again…",
  "update.rollup.bridge": "Bridge",
  "update.rollup.bridge_desc": "An intermediate baseline remains possible for a structure that is too old.",
  "update.rollup.cumulative": "Cumulative",
  "update.rollup.cumulative_desc": "A range of source versions reaches the same target.",
  "update.rollup.description": "MageKorp selects the direct or cumulative package compatible with the installed version. MageStock then rechecks its internal signature, files, migrations and permissions.",
  "update.rollup.direct": "Direct rollup",
  "update.rollup.direct_desc": "One specific historical source reaches the target in one package.",
  "update.rollup.kicker": "Cumulative engine active",
  "update.rollup.note": "Remote discovery, download and analysis are automated. Installation always remains manual and confirmed.",
  "update.rollup.title": "An older installation can reach the target without applying every intermediate version",
  "update.system.finalize_manual": "Finalize manual deployment",
  "update.system.integrity": "Check integrity",
  "update.system.last_operation": "Last operation",
  "update.system.method": "Method",
  "update.system.package_mode": "Package mode",
  "update.system.resume": "Resume",
  "update.system.rollback": "Restore",
  "update.system.status": "Status",
  "update.system.target": "Target",
  "update.system.title": "시스템 상태",
  "update.method.manual_deploy": "Manual deployment",
  "update.method.recovery": "Recovery",
  "update.method.remote": "MageKorp Hub",
  "update.method.upload": "Manual import",
  "update.mode.bridge": "Compatibility bridge",
  "update.mode.cumulative": "Cumulative",
  "update.mode.distribution": "Full distribution",
  "update.mode.exact": "Direct",
  "update.status.backup_created": "Backup created",
  "update.status.files_replaced": "Files replaced",
  "update.status.health_check": "Health check",
  "update.status.inconsistent": "Inconsistent installation",
  "update.status.migrations_running": "Migrations running",
  "update.status.pending_manual": "Update to finalize",
  "update.status.preflight_failed": "Server not ready",
  "update.status.rollback_required": "Restore required",
  "update.status.staged": "Files staged",
  "update.status.up_to_date": "Up to date",
  "update.status.uploaded": "Package uploaded",
  "update.status.verified": "Package verified",
  "auth.brand.strapline": "Stocks · inventories · fieldwork",
  "auth.brand.version": "MageStock {version}",
  "auth.brand.hosted": "조직에서 호스팅",
  "auth.password.toggle": "비밀번호 표시 또는 숨기기",
  "login.error.session_expired": "Your session expired. Reload the page and try again.",
  "login.brand.lead": "Manage your stock, warehouses and field operations from one workspace.",
  "login.brand.point.access": "View available stock by warehouse and location",
  "login.brand.point.scope": "Run inventories and movements with guided workflows",
  "login.brand.point.security": "Use the unified scanner and field tools in one experience",
  "login.form.kicker": "환영합니다",
  "login.form.title": "작업 공간에 접속",
  "login.form.intro": "Enter the credentials supplied by your organisation. MageStock will direct you to the services available to your account.",
  "login.forgot_password": "비밀번호를 잊으셨나요?",
  "login.security_note": "Several incorrect attempts may temporarily suspend sign-in. Contact your administrator if you need help.",
  "recovery.meta_description": "Controlled MageStock password reset.",
  "recovery.page_title": "비밀번호 재설정",
  "recovery.brand.strapline": "Account · access · security",
  "recovery.brand.lead": "Recover access to your MageStock workspace with a temporary token created by your administrator.",
  "recovery.brand.step.request.title": "Request a token",
  "recovery.brand.step.request.text": "Contact your administrator or internal support team.",
  "recovery.brand.step.expiry.title": "Use it before it expires",
  "recovery.brand.step.expiry.text": "The token is personal, time-limited and replaces any previous token.",
  "recovery.brand.step.sessions.title": "Session revocation",
  "recovery.brand.step.sessions.text": "After validation, all previous sign-ins are closed automatically.",
  "recovery.brand.notice": "MageStock never asks for your old password and does not store the new one in the browser.",
  "recovery.form.kicker": "계정 보안",
  "recovery.form.title": "비밀번호 재설정",
  "recovery.form.intro": "Enter the token supplied by your administrator, then choose a password that meets every requirement.",
  "recovery.error.session_expired": "Your session expired. Reload the page and try again.",
  "recovery.error.rate_limit": "Too many attempts. Wait before trying again.",
  "recovery.error.password_mismatch": "The two passwords do not match.",
  "recovery.error.invalid_token": "The token is unknown, expired or already used.",
  "recovery.error.unavailable": "The recovery service is temporarily unavailable.",
  "recovery.success": "비밀번호가 재설정되었고 이전 세션이 모두 종료되었습니다.",
  "recovery.return_login": "로그인으로 돌아가기",
  "recovery.token.label": "복구 토큰",
  "recovery.token.hint": "Paste the complete token without adding spaces. It can only be used once.",
  "recovery.password.label": "새 비밀번호",
  "recovery.password_confirm.label": "비밀번호 확인",
  "recovery.policy.kicker": "필수 조건",
  "recovery.policy.title": "비밀번호 요구 사항",
  "recovery.policy.length": "14~255자",
  "recovery.policy.lowercase": "소문자 1개 이상",
  "recovery.policy.uppercase": "대문자 1개 이상",
  "recovery.policy.number": "숫자 1개 이상",
  "recovery.policy.symbol": "기호 또는 문장부호 1개 이상",
  "recovery.policy.identity": "No sequence related to MageStock or the account",
  "recovery.policy.matches": "두 입력이 일치함",
  "recovery.policy.pending": "Enter a password to check the criteria.",
  "recovery.policy.valid": "All visible criteria are met.",
  "recovery.submit": "재설정하고 이전 세션 닫기",
  "recovery.no_token.title": "Do you not have a token?",
  "recovery.no_token.text": "Only an authorised MageStock administrator can create a token. Ask them to open your account in Users and access.",
  "login.stage.aria": "Demonstration preview of MageStock stock operations",
  "login.stage.eyebrow": "Operational preview",
  "login.stage.warehouse": "Main warehouse",
  "login.stage.status": "Demonstration",
  "login.stage.products": "Available items",
  "login.stage.inventory": "Inventory in progress",
  "login.stage.inventory_status": "82% checked",
  "login.stage.alerts": "Low stock",
  "login.stage.alerts_value": "12 alerts",
  "login.stage.movement": "Latest movement",
  "login.stage.movement_value": "Transfer confirmed",
  "login.stage.destination": "North depot",
  "recovery.stage.aria": "Demonstration preview of MageStock account protection",
  "recovery.stage.eyebrow": "Account protection",
  "recovery.stage.account": "MageStock access",
  "recovery.stage.status": "Control active",
  "recovery.stage.token": "Temporary token",
  "recovery.stage.token_value": "Single use",
  "recovery.stage.sessions": "Sessions",
  "recovery.stage.sessions_value": "Automatic revocation",
  "recovery.stage.storage": "Storage",
  "recovery.stage.storage_value": "No plaintext secret",
  "recovery.stage.policy": "Password policy",
  "recovery.stage.policy_value": "Server-side enforcement",
  "recovery.stage.local": "Local account",
  "products.mobile.resources": "Documents and location",
  "products.mobile.datasheet": "Technical datasheet",
  "products.mobile.safety_sheet": "Safety data sheet",
  "products.mobile.document_unavailable": "Document unavailable",
  "products.mobile.plan": "View product on a plan",
  "products.mobile.plan_short": "Plan",
  "products.mobile.document_opening": "opening document",
  "products.mobile.create.show_steps": "View all 5 steps",
  "products.mobile.create.step_identity": "Identity",
  "products.mobile.create.step_classification": "Classification",
  "products.mobile.create.step_purchase": "Purchasing",
  "products.mobile.create.step_traceability": "Traceability",
  "products.mobile.create.step_review": "Review",
  "products.mobile.create.identity_more": "Additional information",
  "products.mobile.create.identity_more_help": "Additional EAN codes and description.",
  "products.mobile.create.image": "Product image",
  "products.mobile.create.image_help": "Optional photo or visual.",
  "products.mobile.create.storage": "Precise location",
  "products.mobile.create.storage_help": "Registered location or manual entry.",
  "products.mobile.create.purchase_more": "Price and supplier offers",
  "products.mobile.create.purchase_more_help": "Optional purchasing information.",
  "products.mobile.create.trace": "Traceability and thresholds",
  "products.mobile.create.trace_help": "Lots, expiry and safety stock.",
  "products.mobile.create.variants": "Variants and sizes",
  "products.mobile.create.variants_help": "Only for relevant products.",
  "products.mobile.create.documents": "Documents",
  "products.mobile.create.documents_help": "Technical and safety sheets.",
  "products.mobile.create.initial_stock": "Initial stock",
  "products.mobile.create.initial_stock_help": "Leave empty if stock will be entered later.",
  "shell.footer.magekorp_app": "MageKorp 웹 애플리케이션",
  "shell.footer.contact": "MageKorp에 문의"
}
