--- 指示/控え/vbuild_20261105_before_back.py
+++ 道具/vbuild.py
@@ -98,6 +98,10 @@
 - the round ring on each side face is a thin flat circular light strip printed flush on the flat white side panel, exactly as on the reference sheet's side view
 - the area INSIDE the ring is the same flat white side panel as outside it — NO hole, NO opening, NO speaker cone, NO lens, NO dot or circle at its centre, NO concentric rings, NO depth or shading inside
 
+HAKOBUKUN HEAD SHAPE — EVEN IN CLOSE-UPS (2026-11-05):
+- the screen is set FLUSH into the front of the narrower rounded upper tower of the body, framed by a thin even border, exactly as on the front view of the sheet. It is NOT a separate box, NOT a TV set, NOT a thick protruding bezel, and there is NO neck
+- the upper tower widens into the lower body with soft rounded shoulders; in a close-up, copy this outline from the sheet instead of inventing a new head
+
 HAKOBUKUN BODY — ONE BLOCK:
 - the screen head sits directly on top of the body and faces the SAME direction as the front of the body
 - the round ring panel appears ONLY on the side faces of the body, never on the front"""
@@ -107,6 +111,13 @@
 - do NOT stretch it taller; do NOT squash it wider; do NOT slim it beside a human
 - Hakobukun is a WIDE, STOUT, boxy machine — when in doubt, err WIDER, never taller
 - draw Hakobukun upright, in front, three-quarter, or rear view only — NO tilted, NO foreshortened, NO low-angle or high-angle views"""
+HAKOBU_BACK = """HAKOBUKUN REAR VIEW — COPY THE ATTACHED REAR REFERENCE EXACTLY (2026-11-05: the back was drawn differently every time):
+- from behind, the screen is NOT visible. The top is a smooth rounded white dome with ONE small notch at the centre of its lower edge — NO dark grille, NO mesh, NO vents on the dome
+- under the dome, centred on the upper back: ONE small dark horizontal control box holding three small controls side by side (a round button, a small square, a rocker switch). Draw them as plain shapes with NO text
+- below it: ONE large flat rectangular hatch door with a small tab at its top centre and a short vertical handle on its RIGHT edge
+- at the bottom of the back: a dark recessed panel with ONE long horizontal light bar (drawn as a white strip) above two blocks of short horizontal vent slots
+- the white bumper base wraps around the bottom, with a dark band and small wheels below
+- the round side ring is NOT on the back. Nothing else is added, and NO writing appears anywhere"""
 TSUKAMU = """TSUKAMUKUN — TABLETOP GRIPPER ROBOT:
 - copy Tsukamukun and its work table directly from the attached reference sheets — nothing is added, and NO writing appears anywhere
 - Tsukamukun is mounted on top of the stainless-steel two-tier work table. It is NEVER on the floor, and it has NO wheels. The table stands on adjuster feet with NO casters
@@ -270,6 +281,8 @@
         refs.append(("Hakobukun robot orthographic sheet (front, side, rear)", K + "ハコブくん.png"))
         if p.get("drawer"):
             refs.append(("Hakobukun with its drawer pulled open — the drawer shape only", K + "ハコブくん_トレー開き.png"))
+        if p.get("back"):
+            refs.append(("Hakobukun REAR VIEW — the exact design of its back; copy every rear detail from this", K + "hakobu_back.png"))
     if "ツカム" in chars:
         ul.append("Tsukamukun and its work table (their labelled sheets)")
         refs.append(("Tsukamukun tabletop gripper robot", K + "ツカムくん.png"))
@@ -340,6 +353,8 @@
                 "its width is its height divided by 1.7",
                 "both stand on the same invisible ground: the bottom of its wheels and the soles of the shoes are level",
                 "do NOT enlarge Hakobukun to balance the composition, and do NOT shrink it to waist height"]))
+    if "ハコブ" in chars and p.get("back"):
+        out.append(HAKOBU_BACK)
     if "ツカム" in chars:
         out.append(TSUKAMU)
     if "ピカリ" in chars:
@@ -589,6 +604,8 @@
                 X = round(x0 * 1080 + (bw - side) / 2); Y = round(y0 * 1350 + (bh - side) / 2)
                 img.paste(win, (X, Y))
                 dr = ImageDraw.Draw(img); dr.rectangle((X, Y, X + side - 1, Y + side - 1), outline=(0, 0, 0), width=6)
+        for (sx0, sy0, sx1, sy1), (dx, dy) in getattr(m, "CLONE", {}).get(i, []):   # 仕上げの座標で、近くの網点を写して余計な物を消す（2026-11-05 背中の名札）
+            img.paste(img.crop((sx0, sy0, sx1, sy1)), (dx, dy))
         for box in getattr(m, "PATCH", {}).get(i, []):   # 仕上げの座標（1080×1350）を白で塗る：余計な字・崩れた名札（2026-10-31）
             ImageDraw.Draw(img).rectangle(box, fill=(255, 255, 255))
         img.save(d + "/仕上げ/第%d話_P%d_1080x1350.png" % (ep, i))
