Write a function to validate user input across multiple fields in a checkout flow.
Implement validate_checkout(fields, current_month, current_year). The input is a dictionary containing name, email, phone, address, postal_code, card_number, expiration_month, and expiration_year; return a dictionary mapping each invalid field to an error message, or {} when all fields are valid. Require nonblank name and address, a basic email with one @ and a dot in its domain, 10 to 15 phone digits, a five-digit postal code, a 13 to 19 digit card number passing Luhn validation, and an expiration date that is not earlier than the supplied current month and year.
def validate_checkout(fields, current_month, current_year):