Backoffice forced-close payroll report fix

Purpose:
- Apply Pest Control payroll rule that forced/auto-closed sessions must be paid as normal day only.
- Forced/auto close must not create OT 1.5 or OT 2.0.
- Normal forced close allocation: configured normal shift, normally 07:30-16:30, less 60 minutes lunch = 8 normal hours.
- Completed/open working lunch rules from the prior patch are preserved.

Files replaced:
- backoffice/config.php
- backoffice/payroll-helpers.php
- backoffice/payroll-settings.php
- backoffice/payroll-lunch-rules.php

Detection added:
- closed_by_type AUTO/SYSTEM/CRON
- clock_out_source AUTO/AUTO_2359/FORCED where present
- close_reason/clock_out_status containing FORCED/AUTO/23:59/FORGOT
- same-day CLOSED rows with clock_out_time at or after 22:00, for historical forced-close rows that were saved without a proper marker

No database schema or data changes are included in this patch.
