.button { position: relative; display: flex; align-items: center; background: var(--color-white); border-radius: var(--border-radius); font-size: 1.25rem; color: var(--color-black); padding: 0.25rem 0.75rem; border: 0.0625rem solid var(--color-gray); font-family: var(--font-primary); text-decoration: none; box-shadow: 0.0625rem 0.0625rem 0.5rem rgba(0, 0, 0, 0.2), 0.0625rem 0.125rem 0.25rem rgba(0, 0, 0, 0.4); z-index: 0; cursor: pointer; user-select: none; -ms-user-select: none; -moz-user-select: none; -khtml-user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; } .button::before { content: ''; position: absolute; top: 0; left: 0; z-index: -1; width: 100%; height: 100%; background-size: 220% auto; background-image: linear-gradient(to right, #ffffff 0%, #eeeded 60%, #ffffff 100%); border-radius: var(--border-radius); -o-border-radius: var(--border-radius); -ms-border-radius: var(--border-radius); -moz-border-radius: var(--border-radius); -webkit-border-radius: var(--border-radius); transition: all 0.3s ease; -o-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -webkit-transition: all 0.3s ease; } .button:hover { border: 0.0625rem solid var(--color-gray); box-shadow: 0 0.0625rem 0.5rem rgba(0, 0, 0, 0.2), 0 0.0625rem 0.25rem rgba(0, 0, 0, 0.4); } .button:hover::before { background-position: right center; } .button:active { box-shadow: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.2), 0 0.0625rem 0.0625rem rgba(0, 0, 0, 0.4); } .button--icon, .button--back, .button--gallery { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; } .button--back { padding: 0.375rem 0.875rem; gap: 0.25rem; } .button--gallery { margin: 0 0 0 auto; padding: 0.25rem 0.875rem; gap: 0.375rem; } .button--gallery svg { margin-left: -0.25rem; }