Parametric Snap-Lock Box with Custom Compartments (FreeCAD 1.1)
================================================================
Remix of "SnapLock V3" by Hugo (MakerWorld), published with the author's permission.

INSTALL (once)
1. Create the folder  <FreeCAD user data>/Mod/BoxCompartments/
   (FreeCAD: Help > About > Copy to clipboard shows "User data path";
    e.g. Linux ~/.local/share/FreeCAD/Mod/, Windows %APPDATA%\FreeCAD\Mod\)
2. Copy BoxCompartments.py into it and restart FreeCAD.
   Without this file the walls are not recomputed.

USE
- Box size: sheet "Parameters" -> Inner_width, Inner_length, Bottom_height, Top_height (green cells).
- Compartments: sheet "Compartments_Layout"
    B1 Comp_wall       wall thickness (mm)
    B2 Comp_clearance  gap between walls and lid (mm)
    B3 Comp_enabled    1 = walls, 0 = empty box
    Row 5 (B, C, D...)  column widths  (proportions)
    Column A (row 6..)  row lengths    (proportions)
    Cells B6...         one letter per cell; the same letter in neighbouring cells = one compartment
    Row 6 = hinge side (back), column B = left, seen from above.
- Ctrl+R to recompute, then export BOTTOM_Comp (bottom + walls), TOP and Latch_R / Latch_L.

Walls run from the floor up to the lid ceiling (minus the clearance), so parts cannot
jump between compartments when the box is closed. Wall tops near the front are
automatically trimmed along the hinge arc so the lid opens freely.

PRINT
- Bottom: as exported (floor on the bed), no supports.
- Lid: ceiling on the bed, no supports.
- Latch: print 2 (1 for small boxes), flat face on the bed.
- PLA/PETG, 0.2 mm layers, 3 walls recommended.
