.btn {
  border-radius: var(--border-radius-xl);
  width: max-content;
  min-height: 2.5rem;
  padding: 0 0.625rem;

  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: bold;
  color: var(--text-color-secondary);
  padding: 0 2rem;
  font-family: var(--font-family-secondary), sans-serif;
}

.btn:hover:not(:disabled) {
  outline: solid 3px rgba(245, 245, 245, 0.85);
  outline-offset: 1px;
  transform: scale(1.015);
  transition: transform 150ms ease-in-out;
}

/* TODO: overwrite color for primary buttons */
.btn-primary {
  color: var(--text-color-primary);
  border: solid 3px var(--btn-color-primary);
  background: none;
}

.btn-primary:hover:not(:disabled) {
  background-color: var(--black-color-25);
  color: var(--text-color-primary);
  /* background: none; */
  border-color: var(--btn-color-primary);
  filter: opacity(95%);
  font-weight: bold;
}

.btn-primary:focus:not(:disabled),
.btn-secondary:focus:not(:disabled) {
  background-color: var(--black-color-50);
  color: var(--text-color-primary);
  border-color: var(--btn-color-primary);
  box-shadow: none;
  outline: solid 3px rgba(245, 245, 245, 0.85);
  outline-offset: 1px;
}

/* TODO: overwrite color for secondary buttons */
.btn-secondary {
  color: var(--text-color-primary);
  border: solid 3px var(--btn-color-secondary);
  background: none;
}

.btn-secondary:hover:not(:disabled) {
  color: var(--text-color-primary);
  border-color: var(--btn-color-secondary);
  background-color: var(--black-color-25);
  font-weight: bold;
  filter: opacity(95%);
}

/* TODO: overwrite color for danger buttons */
.btn-danger {
  border-color: rgb(142, 42, 42);
}

.btn-icon {
  border: none;
  background: none;
  padding: 0;
}

.btn-icon > img,
.btn-icon > a > img {
  width: 28px;
  height: auto;
  filter: invert(1);
}

.btn-icon > img:hover,
.btn-icon > a > img:hover {
  filter: invert(1) opacity(0.5);
  transform: scale(1.15);
  transition: transform 150ms ease-in-out;
}
