Content-Disposition rejects non-ASCII in Node; sanitize export names. Public landing keeps admin link only; donate links stay in admin UI. Co-authored-by: Cursor <cursoragent@cursor.com>
Content-Disposition rejects non-ASCII in Node; sanitize export names. Public landing keeps admin link only; donate links stay in admin UI. Co-authored-by: Cursor <cursoragent@cursor.com>