# Demo 3 — Batch DOCX Normalizer

Processes every DOCX file in a folder, applies a consistent margin profile
(1" all around) and standard header/footer template, and reports what changed.

Skips files that already conform. Reports errors per-file without aborting.
Prints a summary with timing.

**What it demonstrates:** Real-world batch processing, conditional modification,
error handling, and performance characteristics.

```
python demo3_batch.py C:\input_folder C:\output_folder
python demo3_batch.py C:\input_folder C:\output_folder SSDX-XXXX-XXXX-XXXX-XXXX
```

Example output:
```
SmartScribe.Docx SDK v1.1.0 -- Batch Normalizer
Input:  C:\Manuscripts  (12 files)
Output: C:\Normalized
Target: 1.00" margins, centered page-number footer

  [  1/12] chapter1.docx... modified [42ms]
             margins: 1.25"x1.00" -> 1.00"x1.00"
             footer: Page {PAGE} centered
  [  2/12] chapter2.docx... OK (already conforming) [38ms]
  ...
==============================================================
Results: 10 modified, 2 already conforming, 0 errors
Total time: 0.47s (39ms avg per file)
```
