.btn {
  padding: 10px 15px;
  border: none;
  cursor: pointer;
  border-radius: 4px;
  transition: background-color 0.2s;
  width: fit-content;
  min-width: 300px;
  max-width: max-content;
  text-align: center;

  /* Modificador que usa la variable de color */
  &.btn-primary {
    background-color: var(--primary);
    color: var(--secondary);
    font-weight: var(--font-weight-medium);
  }

  &.btn-secondary{
    background-color: transparent;
    color: var(--primary);
    border: 2px solid var(--primary);
    font-weight: var(--font-weight-medium);
  }

  &.complementary{
    background-color: var(--color-white);
    color: var(--color-grey-dark);
    font-weight: var(--font-weight-medium);
    min-width: 140px;
  }

  /* Anidamiento para el estado :hover */
  &.primary:hover {
    background-color: color-mix(in srgb, var(--color-primary), black 10%); /* Oscurece ligeramente */
  }

  &.btn-danger {
    background-color: var(--danger);
    color: var(--color-grey-dark);
  }

  &:disabled {
    background-color: var(--color-grey) !important;
    color: var(--color-grey-light);
    cursor: not-allowed;
    opacity: 0.6;
  }

  &.btn-link{
    font-size: 16px;
    color: #48cdb6;
    text-decoration: underline;
    font-weight: 800;
  }

  &.btn-link__secondary{
    background-color: transparent;
    color: var(--primary);
    font-weight: var(--font-weight-medium);
  }
}
