@use "../../../styles/abstracts/functions" as fun; @use "../../../styles/abstracts/mixins" as mix; .wrapper { display: flex; align-items: center; position: relative; @include mix.media("screen") { @include mix.dimensions("sm") { max-width: 35ch; } } } .btn { position: absolute; right: 0; &__icon { transform: scale(0.85); transition: all 0.3s ease-in-out 0s; } &:focus { outline: var(--color-primary-light) solid fun.convert-px(3); } &:active { outline: none; } &:hover &, &:focus & { &__icon { transform: scale(0.85) rotate(20deg) translateY(#{fun.convert-px(3)}); } } &:active & { &__icon { transform: scale(0.7); } } } .field { width: 100%; padding-right: var(--spacing-lg); &:hover ~ .btn { transform: translate(fun.convert-px(-3), fun.convert-px(-3)); } &:focus ~ .btn { transform: translate(fun.convert-px(3), fun.convert-px(3)); } }