JSFiddle - React, Tailwind, and code Playground

HTML

<div class="search">
    <form class="search__form" method="" action="">
        <input class="search__text" id="search" type="text" placeholder="Type here">
        <input id="submit" type="submit" value="Search">
    </form>
</div>

CSS

.search{
    width: 100%;
    background: #a5a5a5;
    padding: 5px;
}

.search:after{
    content: "";
    display: block;
    clear: both;
    font-size: 0;
    height: 0;
    visibility: hidden;
}

.search__form{
    float: right;
}


.search__text{  
    
    width: 120px;
     -webkit-transition: width .3s ease-in-out;
    -moz-transition: width .3s ease-in-out;
    -o-transition: width .3s ease-in-out;
    transition: width .3s ease-in-out;
}
.search__text:hover, .search__text:focus{
    width: 180px;
         -webkit-transition: width .3s ease-in-out;
    -moz-transition: width .3s ease-in-out;
    -o-transition: width .3s ease-in-out;
    transition: width .3s ease-in-out;
}