*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    transition: all 0.15s;
}

.app{
    width: 100%;
    height:100%;
    padding: 10px;
    color: #313131;
    font-family:'Lucida Sans Unicode','Trebuchet MS',  'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
    font-size: 2em;
}
.header{
    height: 10vh;
    border: 2px solid white;
    text-align: center;
    margin-bottom: 2vh;
    background-color: #e2eef3;
    display: flex;
    align-items:center;
    justify-content: center;
    font-size: 2rem;
}
.header:hover{
    color:#7e7d7d ;
}

.translate-block{
    display: flex;
    flex-direction: column;
}
.translate-header{
    display: flex;
    justify-content: space-between;
    margin-top: 1vh;
}

.flag{
    display: flex;
    justify-content: center;
    background-color: #e2eef3;
    gap: 1.5vw;
    border: 2px dotted;
    border-radius: 1.5vw;
    padding: 2px;
    width: 45%;
    cursor: pointer;
   -webkit-user-select: none;  /* For older WebKit-based browsers */
    -moz-user-select: none;     /* For older Firefox browsers */
    -ms-user-select: none;      /* For older Microsoft browsers */
    user-select: none;          /* The standard property */
}

.main{
    display: flex;
    justify-content: space-between;
    margin-top: 1vh;
}
.toContainer,
.fromContainer{
    width: 45%;
    height: fit-content;
}

.toContainer{
    -webkit-user-select: none;  /* For older WebKit-based browsers */
    -moz-user-select: none;     /* For older Firefox browsers */
    -ms-user-select: none;      /* For older Microsoft browsers */
     user-select: none;          /* The standard property */
}

.from-language,
.to-language,
.from-ul,
.to-ul{
   display: flex;
   flex-direction: column;
   border: 1px solid;
   border-radius: 1.5vw;
   height: 75vh; 
   width: 100%;
   padding:1.5vw;
   font-family: inherit;
   font-size: 1em;
   background-color: whitesmoke;
   cursor: text;
   overflow-y: auto;
   list-style: none;
}
.from-ul,
.to-ul{
  display: none;
  text-align: center;
 
}
.from-ul>li,
.to-ul>li{
  cursor: pointer;
}

.from-ul>li:hover,
.to-ul>li:hover{
  background-color: #abaaaa;
}
.search{
    width: 80%;
    padding: 5px;
    font-family: inherit;
    font-size: 0.5em;
    text-align: center;
}
.from-input{
    border: none;
    width: 100%;
    flex: 1;
    font-family: inherit;
    font-size: 0.8em;
    resize: none;
    background-color: transparent;
    padding: 5px;
    text-decoration: none;
}
.from-input:focus{
    outline: none;
   
}
.buttonContainer{
    width: 100%;
    text-align: end;

}
button{
    font-family: inherit;
    font-size: 0.8em;
    border: none;
    border-radius: 1.5vw;
    margin-top: 1vh;
    background-color: #ff4500;
    padding: 5px;
    cursor: pointer;
}
button:active{
    background-color: #ff4400a0;
}

.to-language{
    overflow-y: auto;
}
.from-language:focus{
   background-color: white;
  
}
.from-language:hover{
   background-color: white;
    border-style: dashed;
    border-width: 2px;
}
.to-language:hover{
   background-color: white;
   border-style: dashed;
   border-width: 2px;
}
img{
    width: 48px;
    height: 36px;
    margin-top: 1vh;
}
.fa-solid.fa-arrow-right-arrow-left{
        cursor: pointer;
}
.fa-solid.fa-copy{
    cursor: pointer;
}
.fa-solid.fa-volume-high{
    cursor: pointer;
}
.icon{
   width: 100%;
   display: flex;
   justify-content: space-between;
}

.fa-solid.fa-volume-high:active,
.fa-solid.fa-copy:active{
  opacity: 0.7;
}
.translation{
    margin-top: 1vh;
}

@media screen and (max-width: 500px) {
    .app{
        padding: 20px;
        font-size: 1.5em;
    }
    .flag{
        overflow: hidden;
        flex-direction: column;
        align-items: center;
        font-size: 6vw;
    }
    
    .main{
        flex-direction: column;
        gap: 2vh;  
    }
    .fromContainer,
    .toContainer{
        width: 100%;
        height: fit-content;
        
    }
    .from-language{
        width: 100%;
        height:  38vh;   

    }
    .to-language{
        min-height:10vh;
        max-height: 38vh;
        width: 100%;
        
    }
    .from-ul,
    .to-ul{
        display: none;
        text-align: center;
        width: 100%;
        max-height: 38vh;
   }
    .fa-solid.fa-arrow-right-arrow-left{
        font-size: 5vw;
    }
    img{
    width: 32px;
    height: 24px;
    }
    .icon{
        font-size: 5vw;
    }
}