Cart refactoring + PDF generation + icons