@import "colors"; @import "fonts";

.button(@background-color: @color--red, @color: @color--white) {
  .background--color(@background-color);
  .font--header(@font-size--body-sm);
  color: @color;

  transition: all 0.1s ease-in-out;
  user-select: none;
  outline: none;
  border: 1px solid darken(@background-color, 10%);

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 0.5rem 1rem;
  margin: 0 10px;
  border-radius: 5px;
  letter-spacing: 0.05em; // todo
  cursor: pointer;
  transform: scale(1);
  text-decoration: none;


  &:hover {
    background-color: darken(@background-color, 5%);
  }

  &:active {
    transform: scale(0.98);
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.25);
    background-color: darken(@background-color, 10%);
  }

  &:visited {
    color: @color;
  }

  &:disabled {
    cursor: not-allowed;
    opacity: 0.25;
    box-shadow: none;
    background-color: darken(@background-color, 25%);
    border-color: darken(@background-color, 25%);
  }
}

.button, .button--red { .button(@color--red); }
.button--green { .button(@color--green); }
.button--gray { .button(@color--gray-lighter); }
.button--white { .button(@color--white, @color--gray); }
.button--pink { .button(@color--pink); }
