Mechanistic understanding of crystal violet dye sorption by woody biochar: implications for wastewater treatment