/* OK ITHAKI V249462
 * Complete EL/EN interface continuity patch.
 * Keeps the V249461 professional home active while changing language.
 * Translates the + menu, Messages, Rooms/Communities and Profile without reloading
 * or replacing the current screen with the legacy home.
 * User posts, private messages, room titles, nicknames and comments are never translated here.
 */
(function(){
  'use strict';
  if(window.__ITHAKI_V249462_LANGUAGE_COMPLETE__)return;
  window.__ITHAKI_V249462_LANGUAGE_COMPLETE__={version:'V249462-language-complete-no-old-home',installedAt:Date.now()};

  var KEY='ith_ui_lang_v249141', OLD_KEY='ith_ui_lang', MANUAL='ith_ui_lang_manual_v249141';
  var timer=0, observer=null;

  var EL_TO_EN={
    'Αρχική':'Home','Ροή':'Feed','Μηνύματα':'Messages','Δωμάτια':'Rooms','Χώροι':'Spaces','Κοινότητες':'Communities','Προφίλ':'Profile','Δημοσίευση':'Post','Δημοσιεύσεις':'Posts','Ειδοποιήσεις':'Notifications','Λεξικό':'Dictionary','Διαχείριση':'Administration','Κλείσιμο':'Close','Άνοιγμα':'Open','Αποθήκευση':'Save','Ανάκτηση':'Recovery','Διαγραφή':'Delete','Ακύρωση':'Cancel','Επιβεβαίωση':'Confirm','Αποστολή':'Send','Επιστροφή':'Back','Ανανέωση':'Refresh','Αναζήτηση':'Search','Φίλοι':'Friends','Μέλη':'Members','Ενεργοί':'Active','Ανενεργοί':'Offline',
    'Φωτογραφία':'Photo','Βίντεο':'Video','Αρχείο':'File','Κείμενο':'Text','Ψηφοφορία':'Poll','Λήψη φωτογραφίας':'Take photo','Εγγραφή βίντεο':'Record video','Εγγραφή ήχου':'Record audio','Οικοδεσπότης ΙΘΑΚΗΣ':'ITHAKI Host','προς Μηνύματα':'to Messages','προς Κοινότητα / Δωμάτιο':'to Community / Room','προς Ροή':'to Feed',
    '＋ Κέντρο δημιουργίας & επικοινωνίας':'＋ Creation & communication center','Κέντρο δημιουργίας & επικοινωνίας':'Creation & communication center','ΙΘΑΚΗ στη Ροή':'ITHAKI in Feed','Χρυσό κείμενο':'Golden text','ΕΠΙΚΟΙΝΩΝΊΑ':'COMMUNICATION','Κέντρο μηνυμάτων':'Message center','Προφίλ φίλου':'Friend profile','Φωνητική κλήση':'Voice call','Χωρίς internet':'Without internet','Γειτονιά · Mesh':'Neighborhood · Mesh','ΧΏΡΟΙ ΙΘΑΚΗΣ':'ITHAKI SPACES','Ο Φάρος':'Lighthouse','Οικοδεσπότης':'Host','Ανώνυμος Τοίχος':'Anonymous Wall','Rooms / Communities':'Rooms / Communities','Έκτακτη offline':'Offline emergency','Ανώνυμος τοίχος':'Anonymous Wall','Ομάδα στα Μηνύματα':'Group in Messages','Ομάδες / Broadcast':'Groups / Broadcast','Προώθηση':'Forward','Μπουκάλι':'Bottle','Φάρος':'Lighthouse','Τοίχος':'Wall','Χρώματα οθόνης':'Screen colors',
    'Διάλεξε φίλο, ενεργό ή ανενεργό. Πατάς στο όνομα και μπαίνεις κατευθείαν στη συνομιλία.':'Choose a friend, online or offline. Tap the name to open the conversation directly.',
    'Αναζήτηση φίλου...':'Search friends...','Διάλεξε φίλο από τη λίστα για μήνυμα.':'Choose a friend from the list to send a message.','Διάλεξε επαφή':'Choose a contact','Γράψε ένα μήνυμα...':'Write a message...','Κλήση φωνής':'Voice call','Βιντεοκλήση':'Video call','Ιδιωτική κλειδαριά':'Private lock',
    'Ενεργοί φίλοι / νέα μηνύματα':'Active friends / new messages','Ανενεργοί φίλοι':'Offline friends','Δεν υπάρχει ενεργός φίλος αυτή τη στιγμή.':'No friend is online right now.','Δεν εμφανίζεται φίλος ακόμη.':'No friend is shown yet.','Μετά την αποδοχή φιλίας η λίστα ενημερώνεται αυτόματα. Αν δεν εμφανιστεί, πάτα Φόρτωση φίλων ξανά.':'After a friendship is accepted, the list updates automatically. If it does not appear, press Load friends again.','Φόρτωση φίλων ξανά':'Load friends again','Ειδοποιήσεις / αποδοχή φιλίας':'Notifications / accept friendship','Λίστα μελών για αίτημα':'Member list for a request','Διαγνωστικό φίλων':'Friend diagnostics','Δεν βρέθηκαν μέλη.':'No members found.','Διαχείριση ομάδας':'Group management','Κλασική ομαδική συνομιλία μέσα στα Μηνύματα. Αυτό είναι το μοναδικό ενεργό group interface.':'Classic group conversation inside Messages. This is the only active group interface.','Νέο όνομα ομάδας':'New group name','Μετονομασία':'Rename','Πρόσκληση φίλων':'Invite friends','Έξοδος από ομάδα':'Leave group','Ο admin μπορεί να αφαιρέσει μέλη. Κάθε μέλος μπορεί να φύγει μόνο του.':'The administrator can remove members. Every member can leave the group.','Αφαίρεση':'Remove','εσύ':'you','μέλη':'members',
    'Δωμάτια / κοινότητες':'Rooms / communities','Δωμάτια και Κοινότητες':'Rooms and Communities','Διάλεξε κατηγορία και μετά χώρο συνομιλίας.':'Choose a category and then a chat space.','Θέματα':'Topics','SOS Γειτονιά':'SOS Neighborhood','＋ Δημιουργία: δωμάτιο · κοινότητα · επαγγελματικός χώρος':'＋ Create: room · community · professional space','Οι χώροι δεν φόρτωσαν:':'Spaces did not load:','Δωμάτια / Κοινότητες':'Rooms / Communities','Δωμάτια και κοινότητες':'Rooms and communities','Δημιουργία':'Create','Επιλογή χώρου':'Choose a space','Διάλεξε έναν χώρο.':'Choose a space.','Μήνυμα σε αυτόν τον χώρο...':'Message this space...','Προτεινόμενα δωμάτια':'Suggested rooms','Προτεινόμενες κοινότητες':'Suggested communities','Γενική συζήτηση':'General discussion','Ιδιωτικό δωμάτιο':'Private room','Ομάδα έργου':'Project team','Οικογένεια':'Family','Συνάντηση':'Meeting','Νέο δωμάτιο':'New room','Νέα κοινότητα':'New community','Τίτλος':'Title','Περιγραφή / κανόνες':'Description / rules','Τι είναι αυτός ο χώρος;':'What is this space?','Πρόσβαση':'Access','Ανοιχτό':'Open','Με πρόσκληση/έγκριση':'By invitation/approval','Με κωδικό μέλους':'With member code','Κωδικός μέλους':'Member code','Κωδικός διαχειριστή':'Admin code','κωδικός δημιουργού':'creator code','Κωδικός/QR':'Code/QR','Δημιουργήθηκε':'Created','Δεν δημιουργήθηκε':'Not created','Οι χώροι δεν φορτώνουν.':'Spaces are not loading.','Πρόσκληση':'Invite','Κωδικός':'Code','Δεν υπάρχει κάτι ακόμη.':'Nothing here yet.','Απαιτείται σωστός κωδικός ή έγκριση':'Correct code or approval required','Ξεκίνα τον χώρο.':'Start the space.','Τα μηνύματα του χώρου δεν φορτώνουν.':'Space messages are not loading.','Διάλεξε χώρο':'Choose a space',
    'Επαγγελματικό Κέντρο':'Professional Center','Δημόσιο link · χωρίς επεξεργασία/επαφές':'Public link · no editing/contacts','ΕΛΕΓΧΟΣ':'CHECK','Έλεγχος επαγγελματικού κέντρου':'Professional center check','Γίνεται ασφαλής έλεγχος της υπάρχουσας ενεργοποίησης.':'The existing activation is checked securely.','Ανωνυμία και κρυπτογράφηση':'Anonymity and encryption','ITHAKI Private Relay · E2EE / AES · παλιά Γειτονιά':'ITHAKI Private Relay · E2EE / AES · legacy Neighborhood','Ρυθμίσεις':'Settings','Γλώσσα μενού / Μετάφραση περιεχομένου':'Menu language / Content translation','Όνομα':'Name','Κάμερα':'Camera','Avatar':'Avatar','Αποθήκευση και κλείδωμα ονόματος':'Save and lock name','Το όνομα κλειδώθηκε':'Name locked','Το όνομα είναι έτοιμο για κλείδωμα':'Name ready to lock','Ξεκλείδωμα ονόματος':'Unlock name','Είμαι άνω των 16 ετών.':'I am over 16 years old.','Συμφωνώ με την πολιτική και τους όρους χρήσης.':'I agree to the policy and terms of use.','Ανάγνωση πολιτικής':'Read policy','Το προφίλ διατηρείται σε αυτή τη συσκευή ακόμη και όταν ο server είναι offline.':'Profile is kept on this device even if the server is offline.','Γλώσσα μενού':'Menu language','Μετάφραση περιεχομένου':'Content translation','Αυτόματα Ελληνικά ↔ Αγγλικά':'Auto Greek ↔ English','Η γλώσσα μενού είναι ξεχωριστή από τη μετάφραση μηνυμάτων.':'Menu language is separate from message translation.','Ειδοποιήσεις και αδράνεια εφαρμογής':'Notifications and app sleep','Δικαιώματα':'Permissions','Προστασία':'Protection','Τι κρατά ο server':'What the server keeps','Παραμονή σε σύνδεση: ON':'Stay connected: ON','Παραμονή σε σύνδεση: OFF':'Stay connected: OFF','Εργαλεία προφίλ':'Profile tools','Αποθήκευση λογαριασμού':'Save account','Τα αποθηκευμένα μου':'My saved items','Διαγραφή λογαριασμού':'Delete account','Αποκλεισμένοι':'Blocked','Δεν υπάρχουν αποκλεισμένα μέλη.':'No blocked members.','Επαγγελματικό προφίλ: αποθηκεύεται πρώτα τοπικά και ελέγχεται με τον server μετά την αποθήκευση.':'Professional profile: saved locally first, checked with the server after saving.','Αυτό το όνομα είναι κλειδωμένο σε αυτή τη συσκευή. Ξεκλείδωσέ το μόνο αν θέλεις πραγματικά να το αλλάξεις.':'This name is locked on this device. Unlock it only if you really want to change it.','Γράψε το όνομά σου και πάτησε Αποθήκευση. Η εφαρμογή ελέγχει αμέσως αν υπάρχει ήδη και προτείνει άλλο.':'Write your name and press Save. The app immediately checks whether the name already exists and suggests another.',
    'Καλώς ήρθατε στην':'Welcome to','Ταξιδεύουμε μαζί ανθρώπινα, ελεύθερα και ανώνυμα.':'We travel together humanly, freely and anonymously.','Σοφός λόγος':'Wise words','Φόρτωση ενεργών μελών...':'Loading active members...','Δεν υπάρχει ενεργό μέλος αυτή τη στιγμή.':'No member is active right now.','Μόνο εσύ είσαι ενεργός αυτή τη στιγμή.':'Only you are active right now.','Ενεργά μέλη':'Active members','Εσύ':'You'
  };
  var EN_TO_EL={};
  Object.keys(EL_TO_EN).forEach(function(k){if(!Object.prototype.hasOwnProperty.call(EN_TO_EL,EL_TO_EN[k]))EN_TO_EL[EL_TO_EN[k]]=k});
  Object.assign(EN_TO_EL,{
    'Home':'Αρχική','Feed':'Ροή','Messages':'Μηνύματα','Rooms':'Δωμάτια','Spaces':'Χώροι','Communities':'Κοινότητες','Profile':'Προφίλ','Post':'Δημοσίευση','Posts':'Δημοσιεύσεις','Notifications':'Ειδοποιήσεις','Dictionary':'Λεξικό','Administration':'Διαχείριση',
    '＋ Creation & communication center':'＋ Κέντρο δημιουργίας & επικοινωνίας','Creation & communication center':'Κέντρο δημιουργίας & επικοινωνίας','ITHAKI in Feed':'ΙΘΑΚΗ στη Ροή','Golden text':'Χρυσό κείμενο','COMMUNICATION':'ΕΠΙΚΟΙΝΩΝΊΑ','Message center':'Κέντρο μηνυμάτων','Friend profile':'Προφίλ φίλου','Without internet':'Χωρίς internet','Neighborhood · Mesh':'Γειτονιά · Mesh','ITHAKI SPACES':'ΧΏΡΟΙ ΙΘΑΚΗΣ','Host':'Οικοδεσπότης','Take photo':'Λήψη φωτογραφίας','Record video':'Εγγραφή βίντεο','Record audio':'Εγγραφή ήχου','File':'Αρχείο','Photo':'Φωτογραφία','Video':'Βίντεο','Text':'Κείμενο','Poll':'Ψηφοφορία','Groups/Broadcast':'Ομάδες / Broadcast','Forward':'Προώθηση','API/Webhook':'API/Webhook','Offline emergency':'Έκτακτη offline','Anonymous Wall':'Ανώνυμος τοίχος','Group in Messages':'Ομάδα στα Μηνύματα',
    'Rooms / communities':'Δωμάτια / κοινότητες','Rooms and Communities':'Δωμάτια και Κοινότητες','Choose a category and then a chat space.':'Διάλεξε κατηγορία και μετά χώρο συνομιλίας.','Topics':'Θέματα','SOS Neighborhood':'SOS Γειτονιά','＋ Create: room · community · professional space':'＋ Δημιουργία: δωμάτιο · κοινότητα · επαγγελματικός χώρος','Spaces did not load:':'Οι χώροι δεν φόρτωσαν:','Create':'Δημιουργία','Choose a space':'Επιλογή χώρου','Choose a space.':'Διάλεξε έναν χώρο.','Message this space...':'Μήνυμα σε αυτόν τον χώρο...','Suggested rooms':'Προτεινόμενα δωμάτια','Suggested communities':'Προτεινόμενες κοινότητες','General discussion':'Γενική συζήτηση','Private room':'Ιδιωτικό δωμάτιο','Project team':'Ομάδα έργου','Friends':'Φίλοι','Family':'Οικογένεια','Meeting':'Συνάντηση','New room':'Νέο δωμάτιο','New community':'Νέα κοινότητα','Title':'Τίτλος','Description / rules':'Περιγραφή / κανόνες','What is this space?':'Τι είναι αυτός ο χώρος;','Access':'Πρόσβαση','Open':'Ανοιχτό','By invitation/approval':'Με πρόσκληση/έγκριση','With member code':'Με κωδικό μέλους','Member code':'Κωδικός μέλους','Admin code':'Κωδικός διαχειριστή','creator code':'κωδικός δημιουργού','Code/QR':'Κωδικός/QR','Invite':'Πρόσκληση','Code':'Κωδικός','Nothing here yet.':'Δεν υπάρχει κάτι ακόμη.','Start the space.':'Ξεκίνα τον χώρο.','Space messages are not loading.':'Τα μηνύματα του χώρου δεν φορτώνουν.',
    'Choose a contact':'Διάλεξε επαφή','Write a message...':'Γράψε ένα μήνυμα...','Voice call':'Κλήση φωνής','Video call':'Βιντεοκλήση','Private lock':'Ιδιωτική κλειδαριά','Search friends...':'Αναζήτηση φίλου...','Active friends / new messages':'Ενεργοί φίλοι / νέα μηνύματα','Offline friends':'Ανενεργοί φίλοι','Load friends again':'Φόρτωση φίλων ξανά','Notifications / accept friendship':'Ειδοποιήσεις / αποδοχή φιλίας','Member list for a request':'Λίστα μελών για αίτημα','Friend diagnostics':'Διαγνωστικό φίλων',
    'Professional Center':'Επαγγελματικό Κέντρο','Public link · no editing/contacts':'Δημόσιο link · χωρίς επεξεργασία/επαφές','CHECK':'ΕΛΕΓΧΟΣ','Professional center check':'Έλεγχος επαγγελματικού κέντρου','The existing activation is checked securely.':'Γίνεται ασφαλής έλεγχος της υπάρχουσας ενεργοποίησης.','Anonymity and encryption':'Ανωνυμία και κρυπτογράφηση','ITHAKI Private Relay · E2EE / AES · legacy Neighborhood':'ITHAKI Private Relay · E2EE / AES · παλιά Γειτονιά','Settings':'Ρυθμίσεις','Menu language / Content translation':'Γλώσσα μενού / Μετάφραση περιεχομένου','Name':'Όνομα','Camera':'Κάμερα','Save and lock name':'Αποθήκευση και κλείδωμα ονόματος','Name locked':'Το όνομα κλειδώθηκε','Name ready to lock':'Το όνομα είναι έτοιμο για κλείδωμα','Unlock name':'Ξεκλείδωμα ονόματος','I am over 16 years old.':'Είμαι άνω των 16 ετών.','I agree to the policy and terms of use.':'Συμφωνώ με την πολιτική και τους όρους χρήσης.','Read policy':'Ανάγνωση πολιτικής','Menu language':'Γλώσσα μενού','Content translation':'Μετάφραση περιεχομένου','Auto Greek ↔ English':'Αυτόματα Ελληνικά ↔ Αγγλικά','Notifications and app sleep':'Ειδοποιήσεις και αδράνεια εφαρμογής','Permissions':'Δικαιώματα','Protection':'Προστασία','What the server keeps':'Τι κρατά ο server','Profile tools':'Εργαλεία προφίλ','Save account':'Αποθήκευση λογαριασμού','My saved items':'Τα αποθηκευμένα μου','Delete account':'Διαγραφή λογαριασμού','Blocked':'Αποκλεισμένοι','No blocked members.':'Δεν υπάρχουν αποκλεισμένα μέλη.',
    'Welcome to':'Καλώς ήρθατε στην','We travel together humanly, freely and anonymously.':'Ταξιδεύουμε μαζί ανθρώπινα, ελεύθερα και ανώνυμα.','Wise words':'Σοφός λόγος','Loading active members...':'Φόρτωση ενεργών μελών...','Active members':'Ενεργά μέλη','You':'Εσύ'
  });

  function lang(){try{return (localStorage.getItem(KEY)||localStorage.getItem(OLD_KEY)||document.documentElement.lang||'el').toLowerCase().indexOf('en')===0?'en':'el'}catch(_e){return'el'}}
  function saveLang(next){
    next=next==='en'?'en':'el';
    try{localStorage.setItem(KEY,next);localStorage.setItem(OLD_KEY,next);localStorage.setItem(MANUAL,'1');localStorage.setItem('ith_ui_lang_manual','1');localStorage.removeItem('ith_target_lang')}catch(_e){}
    try{var u=new URL(location.href);u.searchParams.set('lang',next);u.searchParams.set('v',(window.ITHAKI_ACTIVE_VERSION||'249526r10f37f1f2'));u.searchParams.delete('_');history.replaceState(null,'',u.toString())}catch(_e){}
    document.documentElement.lang=next;if(document.body)document.body.setAttribute('data-ui-lang',next);
    return next;
  }
  function normalizedKey(value){try{return String(value||'').normalize('NFD').replace(/[\u0300-\u036f]/g,'').replace(/ς/g,'σ').toLowerCase().trim()}catch(_e){return String(value||'').toLowerCase().trim()}}
  function phraseTranslate(core,map,target){
    var out=core,changed=false,keys=Object.keys(map).sort(function(a,b){return b.length-a.length});
    keys.forEach(function(k){if(k.length<4)return;if(out.indexOf(k)!==-1){out=out.split(k).join(map[k]);changed=true}});
    return changed?out:'';
  }
  function exactTranslate(value,target){
    var s=String(value==null?'':value),lead=(s.match(/^\s*/)||[''])[0],tail=(s.match(/\s*$/)||[''])[0],core=s.trim();
    if(!core)return s;
    var map=target==='en'?EL_TO_EN:EN_TO_EL, out=map[core];
    if(!out&&target==='en'){var nk=normalizedKey(core);Object.keys(EL_TO_EN).some(function(k){if(normalizedKey(k)===nk){out=EL_TO_EN[k];return true}return false})}
    if(!out){var phr=phraseTranslate(core,map,target);if(phr&&phr!==core)out=phr}
    if(!out){
      var decorated=core.match(/^([^\p{L}\p{N}]*)((?:.|\n)*?)([^\p{L}\p{N}]*)$/u);
      if(decorated&&decorated[2]){var middle=decorated[2].trim(),mout=map[middle];if(mout)out=decorated[1]+mout+decorated[3]}
    }
    if(!out&&target==='en'){
      if(core.indexOf('Οι χώροι δεν φόρτωσαν:')===0)out='Spaces did not load:'+core.slice('Οι χώροι δεν φόρτωσαν:'.length);
      var m=core.match(/^(\d+)\s+φίλοι$/i);if(m)out=m[1]+' friends';
      m=core.match(/^(\d+)\s+ενεργοί\s*\/\s*με νέο μήνυμα$/i);if(m)out=m[1]+' active / with a new message';
      m=core.match(/^(\d+)\s+ανενεργοί$/i);if(m)out=m[1]+' offline';
      m=core.match(/^(\d+)\s+μέλη$/i);if(m)out=m[1]+' members';
    }
    if(!out&&target==='el'){
      if(core.indexOf('Spaces did not load:')===0)out='Οι χώροι δεν φόρτωσαν:'+core.slice('Spaces did not load:'.length);
      var n=core.match(/^(\d+)\s+friends$/i);if(n)out=n[1]+' φίλοι';
      n=core.match(/^(\d+)\s+active\s*\/\s*with a new message$/i);if(n)out=n[1]+' ενεργοί / με νέο μήνυμα';
      n=core.match(/^(\d+)\s+offline$/i);if(n)out=n[1]+' ανενεργοί';
      n=core.match(/^(\d+)\s+members$/i);if(n)out=n[1]+' μέλη';
    }
    return lead+(out||core)+tail;
  }
  function userContentNode(node){
    try{
      var e=node&&node.nodeType===3?node.parentElement:node;if(!e)return true;
      if(e.closest('script,style,textarea,input,[contenteditable="true"]'))return true;
      if(e.closest('#feedPage .textClamp,#feedPage .translatedText,#feedPage .commentText,#feedPage .postBody,#messages .bubble,#spaceMsgs .bubble,#memberMenu .bubble,#phoneNodeInboxBox .bubble,#meshInboxBox .bubble'))return true;
      if(e.closest('.storyItem small,.dmFriendRowV249235 b,.dmFriendRowV249235 small,.spaceTile>b,#chatName:not(:empty)')){
        var v=String(node.nodeValue||e.textContent||'').trim();
        if(!EL_TO_EN[v]&&!EN_TO_EL[v])return true;
      }
      return false;
    }catch(_e){return true}
  }
  function translateTree(root){
    if(!root)return;
    var target=lang();
    try{
      var attrs=['placeholder','title','aria-label'];
      root.querySelectorAll&&root.querySelectorAll('[placeholder],[title],[aria-label]').forEach(function(e){try{if(e.closest('#feedPage .postBody,#messages .bubble,#spaceMsgs .bubble,#phoneNodeInboxBox .bubble,#meshInboxBox .bubble'))return}catch(_e){}attrs.forEach(function(a){var v=e.getAttribute(a);if(v){var t=exactTranslate(v,target);if(t!==v)e.setAttribute(a,t)}})});
      var walker=document.createTreeWalker(root,NodeFilter.SHOW_TEXT,{acceptNode:function(n){return userContentNode(n)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}}),n;
      while((n=walker.nextNode())){var old=n.nodeValue,neu=exactTranslate(old,target);if(neu!==old)n.nodeValue=neu}
    }catch(e){console.warn('V249462 translate tree',e)}
  }
  function updateLanguageButtons(){
    var current=lang();
    try{document.querySelectorAll('#topLangSwitch [data-lang]').forEach(function(b){b.classList.toggle('active',b.getAttribute('data-lang')===current)});document.querySelectorAll('button[onclick*="setUiLang(\'en\')"],button[onclick*="ITH_FORCE_LANG(\'en\')"]').forEach(function(b){b.classList.toggle('green',current==='en')});document.querySelectorAll('button[onclick*="setUiLang(\'el\')"],button[onclick*="ITH_FORCE_LANG(\'el\')"]').forEach(function(b){b.classList.toggle('green',current==='el')})}catch(_e){}
  }
  function applyAll(){
    if(window.__ITHAKI_R10F7_GLOBAL_LANGUAGE_OWNER__)return;
    translateTree(document.body);updateLanguageButtons();
    document.documentElement.setAttribute('data-ithaki-v249462-language',lang()+'-complete');
  }
  function scheduleApply(){clearTimeout(timer);timer=setTimeout(applyAll,35)}
  function professionalHome(){
    if(!document.body||String(document.body.dataset.page||'')!=='home')return;
    var ith=window.ITH||{},fn=ith.applyProfessionalHomeV249461||ith.applyProfessionalHomeV249462;
    if(typeof fn==='function'){try{fn.call(ith,true)}catch(e){console.warn('V249462 professional home',e)}}
    scheduleApply();
  }
  function showToast(message){try{var t=document.getElementById('toast');if(t){t.textContent=message;t.classList.add('show');setTimeout(function(){t.classList.remove('show')},2600)}}catch(_e){}}
  function setLanguage(next){
    next=saveLang(next);
    updateLanguageButtons();
    var page=String(document.body&&document.body.dataset.page||window.ITH&&window.ITH.state&&window.ITH.state.page||'home');
    if(page==='home')professionalHome();
    [0,60,180,420].forEach(function(ms){setTimeout(function(){if(page==='home')professionalHome();applyAll()},ms)});
    showToast(next==='en'?'App language: English':'Γλώσσα εφαρμογής: Ελληνικά');
    return false;
  }
  setLanguage.__v249462Complete=true;
  function installOverrides(){
    if(window.__ITHAKI_R10F7_GLOBAL_LANGUAGE_OWNER__)return;
    window.ITH_FORCE_LANG=setLanguage;window.setUiLangV249462=setLanguage;
    if(window.ITH){window.ITH.setUiLang=setLanguage;window.ITH.setUiLangV249462=setLanguage;window.ITH.applyCompleteLanguageV249462=applyAll}
  }
  function install(){
    installOverrides();applyAll();professionalHome();
    if(!observer&&document.body){observer=new MutationObserver(function(records){var relevant=false;records.forEach(function(r){if(r.addedNodes&&r.addedNodes.length)relevant=true});if(relevant)scheduleApply()});observer.observe(document.body,{subtree:true,childList:true})}
    window.addEventListener('ithaki:page-changed',function(){setTimeout(function(){professionalHome();applyAll()},25)});
    document.addEventListener('visibilitychange',function(){if(!document.hidden){installOverrides();professionalHome();applyAll()}},{passive:true});
    setInterval(function(){installOverrides();applyAll()},2500);
    document.documentElement.setAttribute('data-ithaki-v249462','language-complete-no-old-home');
  }
  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',install,{once:true});else install();
})();
