The emailed/WhatsApp ticket PDF and the staff and at-the-door print views now match the user dashboard's printed tickets: rounded cards with a light border and soft shadow. Printing goes through a shared helper in lib/ticketPrint.ts, which also escapes names in the print HTML. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>