button {
  display: inline-block;
  padding: 0.5rem 2rem;
  border: 2px solid var(--border--default);
  border-radius: 4px;
  text-decoration: none;
  font-weight: 700;
  text-align: center;
  transition: background-color 0.3s ease;
  outline: none;
}

button:focus {
  outline: none;
  border-color: var(--border--focus);
}

button:disabled {
  cursor: not-allowed;
}

button:hover:not(:disabled) {
  cursor: pointer;
}

.button-primary {
  background-color: var(--button-primary-background--default);
  color: var(--button-text-primary--default);
}

.button-primary:disabled {
  background: var(--button-primary-background--disabled);
  opacity: 0.6;
}

.button-primary:hover:not(:disabled) {
  background-color: var(--button-primary-background--hover);
  color: var(--button-text-primary--hover);
}

.button-secondary {
  background-color: var(--button-secondary-background--default);
  color: var(--button-text-secondary--default);
}

.button-secondary:hover:not(:disabled) {
  background-color: var(--button-secondary-background--hover);
  color: var(--button-text-secondary--default);
}
