.mshs-wrap{
    width:100%;
    max-width:100%;
    position:relative;
    box-sizing:border-box;
}
.mshs-sr-only{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}
.mshs-form{
    width:100%;
    margin:0;
    padding:0;
}
.mshs-input-group{
    width:100%;
    min-height:48px;
    display:flex;
    align-items:stretch;
    background:#fff;
    border:1px solid #ced4da;
    border-radius:6px;
    overflow:hidden;
    box-sizing:border-box;
    transition:border-color .2s ease,box-shadow .2s ease;
}
.mshs-input{
    flex:1 1 auto;
    width:100%;
    min-width:0;
    height:48px;
    padding:0 16px;
    border:0 !important;
    outline:0;
    background:#fff !important;
    color:#222 !important;
    font-size:15px;
    line-height:48px;
    box-shadow:none !important;
}
.mshs-input::placeholder{
    color:#666;
    opacity:1;
}
.mshs-button{
    flex:0 0 58px;
    width:58px;
    height:48px;
    padding:0;
    margin:0;
    border:0 !important;
    background:#fff !important;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    box-shadow:none !important;
}
.mshs-input-group:focus-within{
    border-color:#246bce;
    box-shadow:0 0 0 3px rgba(36,107,206,.22);
}
.mshs-button:focus-visible{
    outline:3px solid #246bce !important;
    outline-offset:-4px;
}
.mshs-button img{
    display:block;
    width:25px;
    height:25px;
    object-fit:contain;
}
.mshs-button:hover{
    background:#f7f7f7 !important;
}
@media (max-width:767px){
    .mshs-input-group,
    .mshs-input,
    .mshs-button{
        min-height:46px;
        height:46px;
    }
    .mshs-input{
        line-height:46px;
        font-size:14px;
    }
    .mshs-button{
        flex-basis:52px;
        width:52px;
    }
}
@media (prefers-reduced-motion:reduce){
    .mshs-input-group{transition:none;}
}
