Expected columns (first row = headers, any order):
employee_id, date, in_time, out_time, type (optional), location (optional), remarks (optional)
employee_id is the employee's code (e.g. M001) - not their name. date as YYYY-MM-DD.
in_time/out_time as HH:MM (24-hour). type is one of
site_work / manual_correction / official_duty (defaults to site_work if left blank).
Re-uploading the same employee+date updates that entry rather than duplicating it.