document.addEventListener("DOMContentLoaded", function () {
     const inputValue = document.getElementById("érték");
     const inputBase = document.getElementById("bevitel");
     const outputBase = document.getElementById("kimenet");
     const outputValue = document.getElementById("kiszámoltérték");
     const convertButton = document.getElementById("számolás");
     const swapButton = document.getElementById("felcserélés");
 
     function convertNumber(value, fromBase, toBase) {
         let decimalValue;
         
         // Convert input to decimal first
         switch (fromBase) {
             case "bináris":
                 decimalValue = parseInt(value, 2);
                 break;
             case "oktális":
                 decimalValue = parseInt(value, 8);
                 break;
             case "decimális":
                 decimalValue = parseInt(value, 10);
                 break;
             case "hexadecimális":
                 decimalValue = parseInt(value, 16);
                 break;
             default:
                 return "Hibás bemenet";
         }
         
         if (isNaN(decimalValue)) {
             return "Érvénytelen szám";
         }
         
         // Convert decimal to target base
         switch (toBase) {
             case "bináris":
                 return decimalValue.toString(2);
             case "oktális":
                 return decimalValue.toString(8);
             case "decimális":
                 return decimalValue.toString(10);
             case "hexadecimális":
                 return decimalValue.toString(16).toUpperCase();
             default:
                 return "Hibás átváltás";
         }
     }
 
     convertButton.addEventListener("click", function () {
         const value = inputValue.value.trim();
         const fromBase = inputBase.value;
         const toBase = outputBase.value;
         
         outputValue.value = convertNumber(value, fromBase, toBase);
     });
 
     swapButton.addEventListener("click", function () {
         const tempBase = inputBase.value;
         inputBase.value = outputBase.value;
         outputBase.value = tempBase;
 
         const tempValue = inputValue.value;
         inputValue.value = outputValue.value;
         outputValue.value = tempValue;
     });
 });