{
  "status": "completed",
  "completed_count": 63,
  "applicable_count": 63,
  "failed_count": 0,
  "data": {
    "shots": [
      {
        "camera_direction": "At leaf-pile height, the camera holds two feet from the crouched Korean man, eye line compressed by wet leaves that veil nearly half the foreground without becoming oversized. The dolly-in ends almost frozen on his distorted face in the center-left of frame, handheld tremor kept subtle as if an unseen observer is breathing from the forest floor.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hunched inside leaves",
            "character": "한국인 남성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "한국인 남성 trapped in leaf pile",
              "screen_zone": "middle_center",
              "target_id": "C04",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Heavy foreground veil that traps the face and makes the frame claustrophobic.",
            "directionality_class": "non_directional",
            "element": "wet leaf pile",
            "orientation": "",
            "state": "damp, dark, matted together"
          },
          {
            "camera_use": "Soft background texture behind the face, barely legible through shallow focus.",
            "directionality_class": "non_directional",
            "element": "misty undergrowth",
            "orientation": "",
            "state": "dim, tangled, partially obscured"
          },
          {
            "camera_use": "Low horizon reference beneath the leaves, grounding the camera near the forest floor.",
            "directionality_class": "non_directional",
            "element": "muddy forest ground",
            "orientation": "",
            "state": "wet, uneven, blue-gray"
          }
        ],
        "lighting_mood": "Cold dusk light leaks through heavy mist, with low-key blue-gray shadows and only a faint crimson hint from the unseen wound.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Continuing from the leaf-level move, the camera has surged behind and slightly above the Korean man's back at chest height, four feet away, then widens just enough to catch both bodies in the collision. The dark figure cuts diagonally from upper left into the midground while the man buckles toward the lower right, the handheld frame lurching but keeping the impact readable.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "buckling under impact",
            "character": "한국인 남성",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "lunging onto back",
            "character": "검은 형체",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "Korean man's back",
              "label": "검은 형체",
              "screen_zone": "upper_left",
              "target_id": "C12",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "한국인 남성",
              "screen_zone": "lower_right",
              "target_id": "C04",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Diagonal opening that gives the dark figure an entry path across the frame.",
            "directionality_class": "non_directional",
            "element": "small forest clearing",
            "orientation": "",
            "state": "mist-filled, uneven, dim"
          },
          {
            "camera_use": "Blurred edge texture that preserves continuity from the previous leaf-pile close-up.",
            "directionality_class": "non_directional",
            "element": "scattered leaves",
            "orientation": "",
            "state": "wet, kicked up by movement"
          },
          {
            "camera_use": "Vertical streaks in the background that heighten the impact's diagonal motion.",
            "directionality_class": "directional_3d",
            "element": "thin tree trunks",
            "orientation": "Their narrow sides face the camera at varied angles, forming broken vertical lines behind the bodies.",
            "state": "dark, slick with dusk moisture"
          }
        ],
        "lighting_mood": "Low dusk illumination stays cold blue-gray, with the black figure almost absorbing light and a restrained crimson accent kept peripheral.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The threat is an amorphous black presence rather than an identity-readable character; enforcing detailed outlook reference would reduce its occult ambiguity.",
            "subject_id": "C12"
          }
        ]
      },
      {
        "camera_direction": "The camera is pressed to within thirty centimeters of the Korean man's face at eye level, framed frontally so tightly that cheeks and surroundings collapse into black. Only the red-lit pupils sit in the middle band of the image, seen by a neutral observer as the dolly-in reaches its end before sliding around his cheek.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "face held rigid",
            "character": "한국인 남성",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Consumes the face edges and erases spatial context around the eyes.",
            "directionality_class": "non_directional",
            "element": "alley darkness",
            "orientation": "",
            "state": "dense, nearly black"
          },
          {
            "camera_use": "Barely suggested vertical form behind the head, giving a faint urban anchor.",
            "directionality_class": "directional_3d",
            "element": "utility pole silhouette",
            "orientation": "Its front-facing curve is lost in shadow, readable only as a vertical mass behind the figure.",
            "state": "dark, wet, indistinct"
          },
          {
            "camera_use": "Creates a weak rim around the brow while letting the red eyes carry the shot.",
            "directionality_class": "non_directional",
            "element": "distant streetlamp spill",
            "orientation": "",
            "state": "dim, sickly, diffused by damp air"
          }
        ],
        "lighting_mood": "Almost total low-key blackness is cut by eerie crimson eye glow against a cold blue-gray alley haze.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera has slid around from the eye close-up to a tight side position at neck height, less than forty centimeters from the Korean woman, parallel to both bodies by the utility pole. The frame holds nearly still inside the tracking move, keeping the man's jaw and the woman's pale neck area in a shallow side profile without lingering on graphic detail.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "neck bent forward",
            "character": "한국인 남성",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "head pulled sideways",
            "character": "한국인 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Hard vertical anchor beside the bodies, emphasizing their compression in the alley.",
            "directionality_class": "directional_3d",
            "element": "utility pole",
            "orientation": "Its rounded side runs vertically along the background edge, partly blocking the alley depth.",
            "state": "wet, dark, close to the figures"
          },
          {
            "camera_use": "Shallow-focus wall texture behind the side profile, adding gritty realism.",
            "directionality_class": "non_directional",
            "element": "stained alley wall",
            "orientation": "",
            "state": "damp, blue-gray, grimy"
          },
          {
            "camera_use": "Faint back scatter that separates the figures from the black alley.",
            "directionality_class": "non_directional",
            "element": "streetlamp haze",
            "orientation": "",
            "state": "weak, diffused, flickering through mist"
          }
        ],
        "lighting_mood": "Cold streetlamp spill and deep shadow carve the side silhouettes, with a minimal crimson glint restricted to the man's mouth area.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Framed as grim broadcast footage, the eye-level camera finishes its dolly-in directly in front of Hyesu about 1.5 meters away, looking through a narrow gap made by surrounding detectives. Hyesu occupies the center with one arm raised into the upper frame, while detective shoulders partially occlude the left and right edges like a living police-line aperture.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "one arm raised",
            "character": "혜수",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "shoulder blocking frame",
            "character": "김형사",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Creates a restricted corridor around Hyesu, making her command position feel pressured.",
            "directionality_class": "non_directional",
            "element": "cluster of detectives",
            "orientation": "",
            "state": "crowded, shifting slightly, rain-dulled coats"
          },
          {
            "camera_use": "Blurred crime-scene boundary behind the group, contextualizing the investigation.",
            "directionality_class": "content_surface",
            "element": "police line tape",
            "orientation": "The printed warning side faces the camera in soft focus, its lettering partially readable behind Hyesu.",
            "state": "stretched tight, wet, yellow muted by cold light"
          },
          {
            "camera_use": "Background activity softened by the broadcast lens, suggesting body recovery without explicit detail.",
            "directionality_class": "directional_3d",
            "element": "forensic collection area",
            "orientation": "The covered equipment and personnel face obliquely away from camera, reduced to layered shapes.",
            "state": "active, misty, partially blocked"
          }
        ],
        "lighting_mood": "Flat daylight is desaturated into cold blue-gray news realism, with damp coats and low contrast giving the scene a drained, official dread.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 3,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a locked-off bird's-eye position directly above the faded villa rooftop, the small rooftop room sits centered inside the roof rectangle with empty concrete space around it. The static overhead composition feels observational and clinical, as if the building has been pinned under a cold aerial gaze.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary subject of the overhead frame, isolated in the middle of the roof.",
            "directionality_class": "directional_3d",
            "element": "small rooftop room",
            "orientation": "Its flat roof faces the camera directly from above, with the door side not visible from this bird's-eye angle.",
            "state": "old, faded, still"
          },
          {
            "camera_use": "Large negative space surrounding the rooftop room, emphasizing desertion.",
            "directionality_class": "non_directional",
            "element": "sun-faded concrete roof",
            "orientation": "",
            "state": "bleached, stained, dry-looking despite cold color grade"
          },
          {
            "camera_use": "Frames the roof perimeter and prevents the overhead shot from feeling abstract.",
            "directionality_class": "directional_3d",
            "element": "low rooftop parapet",
            "orientation": "Only the top edges face the camera from above, forming a worn rectangular border.",
            "state": "chipped, weathered, pale gray"
          }
        ],
        "lighting_mood": "Daylight is cooled into a flat blue-gray cast, with no warm interior glow and only faint urban haze softening the hard rooftop geometry.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At table height from the dining table's side, the camera looks diagonally from Minsuk's hand in the foreground toward Suriyoung's implied seat, holding a tight static frame. The dark herbal drink and pushing hand occupy the lower center and left foreground, while the far side of the table falls out of focus so Suriyoung is present only through the direction of the offering.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "hand pushing cup",
            "character": "민숙",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Main foreground object receiving the push, kept large but below half the frame.",
            "directionality_class": "directional_3d",
            "element": "cup of dark herbal drink",
            "orientation": "The open rim and dark surface angle slightly toward camera, revealing the opaque liquid inside.",
            "state": "full, freshly placed, faintly steaming"
          },
          {
            "camera_use": "Low plane that guides the diagonal push toward Suriyoung's side.",
            "directionality_class": "directional_3d",
            "element": "dining tabletop",
            "orientation": "Its near edge runs across the lower frame, with the far edge receding toward the implied seat.",
            "state": "worn, clean but scratched"
          },
          {
            "camera_use": "Soft domestic backlight in the distance, contrasting with the tense handoff.",
            "directionality_class": "transparent_surface",
            "element": "small living-room window",
            "orientation": "Thin daylight filters through the glass; the outside is washed out and indistinct.",
            "state": "closed, slightly dusty"
          }
        ],
        "lighting_mood": "Thin daylight and kitchen steam are cooled into a muted blue-gray domestic palette, with the herbal drink reading almost black-green in low practical light.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 7,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only Minsuk's hand and forearm are clearly framed; a full outlook reference would over-specify facial and wardrobe details that are not visible.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "Just inside the entryway at shoulder height, the static medium frame faces Suriyoung near the door with Minsuk beside her in partial profile. Suriyoung leans into the right side of Minsuk's shoulder area with eyes closed, her face held slightly left of center while the cramped doorway and shoe area press them into an intimate vertical strip.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning to smell",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_right",
            "body_pose": "soft shoulder turn",
            "character": "민숙",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Tight domestic boundary behind Suriyoung, making the goodbye feel compressed.",
            "directionality_class": "directional_3d",
            "element": "entryway door",
            "orientation": "The interior face of the door angles behind Suriyoung, with its edge forming a vertical line near the frame side.",
            "state": "closed or nearly closed, worn"
          },
          {
            "camera_use": "Grounds Suriyoung's leaving action without shifting focus from the embrace.",
            "directionality_class": "directional_3d",
            "element": "shoe area at threshold",
            "orientation": "The top surfaces of shoes and threshold edge are visible low in frame, receding toward the door.",
            "state": "cluttered, everyday, dim"
          },
          {
            "camera_use": "Soft background reminder of the one-room home beyond the entry.",
            "directionality_class": "transparent_surface",
            "element": "small window in living room",
            "orientation": "Its dusty glass glows faintly in the far background, with no clear exterior detail visible.",
            "state": "closed, hazy with daylight"
          }
        ],
        "lighting_mood": "A restrained, cool household daylight mixes with low interior shadow, softening the affectionate pause while keeping the room blue-gray and slightly damp-feeling.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera drops into an extremely close macro position just below chest height, only inches from Minsuk's inner wrist, as if following Suriyoung's quick glance downward. The small circular scar sits sharp in the middle of the frame while the entryway and any faces dissolve into blue-gray blur, isolating the mark without enlarging surrounding objects unrealistically.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "wrist turned outward",
            "character": "민숙",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "민숙 inner wrist scar",
              "screen_zone": "middle_center",
              "target_id": "C05",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary insert detail, revealed by shallow macro focus.",
            "directionality_class": "non_directional",
            "element": "small circular scar",
            "orientation": "",
            "state": "faint but unusually clear on inner wrist skin"
          },
          {
            "camera_use": "Blurred depth behind the wrist, maintaining continuity from the doorway scene.",
            "directionality_class": "directional_3d",
            "element": "entryway door edge",
            "orientation": "Its vertical edge faces camera only as a soft background stripe behind the wrist.",
            "state": "out of focus, dim"
          },
          {
            "camera_use": "Cool soft spill that shapes the wrist without becoming a visible subject.",
            "directionality_class": "non_directional",
            "element": "ambient window light",
            "orientation": "",
            "state": "diffused, pale, low contrast"
          }
        ],
        "lighting_mood": "Cool, shallow-focus daylight grazes the skin so the circular mark appears unnaturally distinct against a muted blue-gray entryway blur.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 5,
        "shot_index": 10,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot isolates Minsuk's wrist and scar only; full outlook-based identity prompting would be visually irrelevant and could introduce unwanted face/body details.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "The camera tracks parallel to Suriyoung's bicycle at shoulder height, about two meters off her side, holding her profile against a clean band of blue sea. Her lifted chin and faint smile sit in the upper-right half of the frame, with the road sliding laterally below and the horizon kept steady to preserve the open, breezy motion before the sound cue shifts the rhythm.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "pedaling with chin lifted",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Clean moving backdrop that opens the frame emotionally after the cramped interior.",
            "directionality_class": "non_directional",
            "element": "blue sea",
            "orientation": "",
            "state": "bright, calm, cold-toned"
          },
          {
            "camera_use": "Horizontal anchor that stabilizes the side-tracking composition.",
            "directionality_class": "non_directional",
            "element": "sea horizon",
            "orientation": "",
            "state": "level, slightly hazy"
          },
          {
            "camera_use": "Motion reference beneath the bicycle, sliding past in the lower frame.",
            "directionality_class": "directional_3d",
            "element": "coastal road",
            "orientation": "The road surface runs horizontally through the lower frame, receding along Suriyoung's direction of travel.",
            "state": "dry, sunlit, muted gray"
          }
        ],
        "lighting_mood": "Daylight is brighter but still graded cool, with sea-blue fill on her profile and soft gray road reflections keeping the mood restrained.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 6,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low observer camera just outside the kennel gate at knee height, held about three feet from the metal bars and looking straight into the dog run. The 맹견 occupies the center-midground in a tense medium frame, its raised paws and bared teeth caught between vertical bars that slice the foreground without any single bar taking over the frame.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "front paws on bars",
            "character": "맹견",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "foreground barrier and aggressive compositional grid",
            "directionality_class": "directional_3d",
            "element": "metal kennel bars",
            "orientation": "vertical bars face the camera edge-on, forming hard dark stripes between lens and dog",
            "state": "closed, wet, scratched"
          },
          {
            "camera_use": "floor texture beneath the dog, grounding the kennel depth",
            "directionality_class": "non_directional",
            "element": "concrete kennel floor",
            "orientation": "",
            "state": "damp, stained, cold gray"
          },
          {
            "camera_use": "dim background enclosure behind the dog",
            "directionality_class": "directional_3d",
            "element": "kennel back wall",
            "orientation": "flat rear wall faces camera behind the dog",
            "state": "dirty, shadowed"
          }
        ],
        "lighting_mood": "Cold blue-gray daylight leaks through the shelter with low-key practical spill, damp metal highlights, and a faint crimson rawness in the dog’s mouth kept restrained.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Still low at the kennel gate, the lens drops a few inches below the prior height and tilts downward through the bars toward the concrete floor. The 맹견 is now framed close but not abstracted, flattened across the lower center of the image with its eyes lowered, while the bars remain a rigid foreground cage.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "belly flat on floor",
            "character": "맹견",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "foreground obstruction emphasizing submission behind confinement",
            "directionality_class": "directional_3d",
            "element": "metal kennel bars",
            "orientation": "lock-side vertical bars angle slightly across the lens, separating camera from the dog",
            "state": "closed, wet, grimy"
          },
          {
            "camera_use": "primary surface showing the dog’s body pressed low",
            "directionality_class": "non_directional",
            "element": "concrete kennel floor",
            "orientation": "",
            "state": "damp, scuffed, darkened by moisture"
          },
          {
            "camera_use": "soft rear boundary of the run",
            "directionality_class": "directional_3d",
            "element": "kennel interior wall",
            "orientation": "rear wall recedes behind the dog, barely visible in shadow",
            "state": "stained, unlit"
          }
        ],
        "lighting_mood": "The same cold shelter light falls flatter now, with misty gray dampness and low contrast making the dog’s surrender feel unnervingly quiet.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Medium-close observer camera at 수리영’s shoulder height in the shelter aisle, four feet away and slightly to her front-left, tightened so her phone and vacant eye line carry the frame. She sits in the right-center of the image in three-quarter profile, while the kennel row falls into soft blue-gray blur behind her.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "phone pressed to ear",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft repeating background pattern behind her anxiety",
            "directionality_class": "directional_3d",
            "element": "kennel row",
            "orientation": "cage fronts recede diagonally behind 수리영 into the aisle",
            "state": "closed, damp, out of focus"
          },
          {
            "camera_use": "practical depth light and shelter realism",
            "directionality_class": "content_surface",
            "element": "fluorescent ceiling strip",
            "orientation": "lit underside faces the aisle and camera as a narrow pale band",
            "state": "on, flickering slightly"
          },
          {
            "camera_use": "subtle haze layer in the aisle",
            "directionality_class": "non_directional",
            "element": "shelter mist and animal-hair haze",
            "orientation": "",
            "state": "hanging in cold air"
          }
        ],
        "lighting_mood": "Low-key fluorescent practicals wash her in cold blue-gray, with wet kennel reflections behind and a restrained crimson notification glint barely catching on the phone edge.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera inherits the aisle-end conversational position but tightens into a close face shot from 수리영’s front-left side at eye level, as if the dolly-in stops just inside her personal space. The 한국인 중년 여성 직원 is kept just off-camera, so 수리영’s round-eyed stare cuts toward frame right while supermarket shelves remain only as compressed color blocks behind her.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning toward employee",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C14",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Suri-young isolated close reaction",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "blurred aisle context behind her puzzled reaction",
            "directionality_class": "directional_3d",
            "element": "supermarket shelf ends",
            "orientation": "shelf side edges angle away behind 수리영, not front-facing product detail",
            "state": "stocked, fluorescent-lit, soft focus"
          },
          {
            "camera_use": "cool practical overhead source",
            "directionality_class": "content_surface",
            "element": "ceiling light panel",
            "orientation": "glowing underside faces down toward the aisle and partially toward camera",
            "state": "on, harsh but diffused"
          },
          {
            "camera_use": "narrow corridor depth line",
            "directionality_class": "non_directional",
            "element": "polished supermarket floor",
            "orientation": "",
            "state": "clean, faintly reflective"
          }
        ],
        "lighting_mood": "Cold fluorescent store light mixes with dusk-blue spill from the entrance, keeping her face pale and tense against muted shelf colors.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just outside the supermarket glass doors, the tracking move settles into a near-static close-up at chest height less than a meter from 수리영, angled slightly downward toward her lowered face and smartphone. Her face occupies the upper half and the phone sits in the lower third, large enough to guide her gaze but not oversized, with the glass entrance and street glow behind her.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hunched over phone",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "background plane separating her from the supermarket interior",
            "directionality_class": "transparent_surface",
            "element": "supermarket glass doors",
            "orientation": "smudged glass sits behind her, showing blurred aisle light and faint street reflections through and on the surface",
            "state": "closed behind her, streaked"
          },
          {
            "camera_use": "ambient urban color behind the anxiety",
            "directionality_class": "content_surface",
            "element": "neon storefront signs",
            "orientation": "glowing sign faces are visible as soft reversed color patches through the glass and street haze",
            "state": "on, blurred"
          },
          {
            "camera_use": "wet exterior threshold texture",
            "directionality_class": "non_directional",
            "element": "entrance pavement",
            "orientation": "",
            "state": "damp, dark, catching blue-gray reflections"
          }
        ],
        "lighting_mood": "Blue-gray dusk and supermarket fluorescents flatten her skin tone while muted neon adds small restrained crimson accents on the phone glass.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Parallel front-left tracking camera rides beside the bicycle at upper-torso height, about one meter from 수리영 and slightly ahead of the handlebars, tightening around her chest, hands, and clenched mouth. Her forward-leaning body cuts diagonally from lower right toward upper left, the handlebar crossing the lower frame while the dark coastal road streaks behind her in handheld vibration.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning over handlebars",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "dark road ahead",
              "label": "Suri-young on bicycle",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dark coastal road ahead",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "speed reference behind her moving body",
            "directionality_class": "non_directional",
            "element": "dark coastal road",
            "orientation": "",
            "state": "wet, nearly black, motion-blurred"
          },
          {
            "camera_use": "thin background horizon and threat of open water",
            "directionality_class": "non_directional",
            "element": "misty shoreline darkness",
            "orientation": "",
            "state": "heavy mist, barely readable"
          },
          {
            "camera_use": "small streaks of practical background light",
            "directionality_class": "content_surface",
            "element": "distant roadside reflectors",
            "orientation": "reflective faces catch the camera as brief red-white smears along the road edge",
            "state": "dim, blurred by speed"
          }
        ],
        "lighting_mood": "Cold moonless blue-gray dominates, with sparse practical road glints and damp wind texture carving her tense face out of the darkness.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 9,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Tight exterior observer camera sits directly beside the iron door seam at hand height, less than a foot from the lock side, continuing the dolly-in until the frame becomes an insert of intrusion. 한국인 남성’s face is fully excluded; only rough fingers, the stiff paper angled into the narrow black gap, and a strip of metal door occupy the close composition, with the paper kept under forty percent of the frame.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "hand probing seam",
            "character": "한국인 남성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary vertical slit and lock-side tension point",
            "directionality_class": "directional_3d",
            "element": "iron door seam",
            "orientation": "lock-side edge faces camera in extreme side view, revealing a narrow dark interior gap",
            "state": "closed but yielding, chipped paint"
          },
          {
            "camera_use": "thin tool forcing entry",
            "directionality_class": "content_surface",
            "element": "stiff paper flyer",
            "orientation": "blank, dampened paper face is partly visible as it bends into the seam; printed side is mostly hidden",
            "state": "creased, rigid, dirty"
          },
          {
            "camera_use": "rough exterior wall texture framing the hand",
            "directionality_class": "non_directional",
            "element": "rooftop exterior wall",
            "orientation": "",
            "state": "cold, stained, wet from night air"
          }
        ],
        "lighting_mood": "A hard, cold-blue rooftop practical grazes the metal and fingers, leaving the gap nearly black with a faint dirty crimson rust line near the latch.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 한국인 남성’s hand is visible and his face is deliberately excluded, so an outlook-specific identity reference would be visually misleading.",
            "subject_id": "C04"
          }
        ]
      },
      {
        "camera_direction": "Outside the dark window, the lateral track resolves into a near-static hold slightly below eye level, close to the glass and angled inward so the surface reflection and interior silhouette overlap. 민숙 appears in the dim midground with her bent back low in the frame, while a much larger animal-like shadow spreads over the glass above her, making the window itself the unsettling viewing plane.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "bent under shadow",
            "character": "민숙",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Minsuk bent inside room",
              "screen_zone": "lower_center",
              "target_id": "C05",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "looming animal-like window shadow",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "layered viewing surface carrying reflection and silhouette",
            "directionality_class": "reflective_surface",
            "element": "dark window glass",
            "orientation": "the glass reflects rooftop darkness while also holding the looming animal-like shadow over 민숙’s interior silhouette",
            "state": "closed, dirty, unlit"
          },
          {
            "camera_use": "interior negative space around 민숙",
            "directionality_class": "directional_3d",
            "element": "dark room interior",
            "orientation": "rear room depth faces the camera through the glass as a nearly black cavity",
            "state": "lights off, indistinct"
          },
          {
            "camera_use": "faint exterior rooftop edge in reflection",
            "directionality_class": "non_directional",
            "element": "rooftop night haze",
            "orientation": "",
            "state": "cold, misted, barely visible"
          }
        ],
        "lighting_mood": "Almost all light is low-key blue-gray reflection on dirty glass, letting the oversized shadow read as a black mass with no graphic detail.",
        "perception_mode": "reflection",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Eye-level observer camera is tight on 수리영 from a three-quarter frontal position about two feet away on the rooftop landing, pushed closer than the flow default to isolate only her uneasy face against black air. Her face fills most of the frame, brow knotted and lips tense, while the stair exit and rooftop edges disappear into soft darkness.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "neck craned forward",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Suri-young isolated anxious face",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "negative space swallowing the background",
            "directionality_class": "non_directional",
            "element": "rooftop darkness",
            "orientation": "",
            "state": "dense, misty, nearly featureless"
          },
          {
            "camera_use": "barely implied exit behind her",
            "directionality_class": "directional_3d",
            "element": "stair landing edge",
            "orientation": "landing edge falls away behind her shoulder at a shallow angle",
            "state": "wet, shadowed"
          },
          {
            "camera_use": "thin practical spill defining her cheek and brow",
            "directionality_class": "content_surface",
            "element": "distant stairwell light spill",
            "orientation": "a weak light patch grazes from the stairwell side, not directly visible as a fixture",
            "state": "dim, cold"
          }
        ],
        "lighting_mood": "Cold blue-gray night spill skims her furrowed brow and leaves the rest in low-key shadow, with damp mist softening the background.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Subjective POV from 수리영’s eye level on the rooftop landing, held at the end of the pan roughly twelve feet from the entrance door and slightly off-center so the narrow black opening is visible. The empty rooftop stretches across the lower frame, and the iron door sits at the far middle-right as the dominant point of attention, its one-hand-wide gap cutting into darkness.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "slightly open iron entrance door",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary ominous reveal at the end of her eyeline",
            "directionality_class": "directional_3d",
            "element": "iron entrance door",
            "orientation": "front face is angled slightly away from camera, exposing a narrow dark gap along the latch side",
            "state": "partly open, should be closed, paint worn"
          },
          {
            "camera_use": "empty approach space amplifying silence",
            "directionality_class": "non_directional",
            "element": "rooftop concrete floor",
            "orientation": "",
            "state": "damp, cold, faintly reflective"
          },
          {
            "camera_use": "background rooftop fixtures holding the frame’s emptiness",
            "directionality_class": "directional_3d",
            "element": "low rooftop parapet",
            "orientation": "inner parapet face runs horizontally across the back edge of the roof",
            "state": "wet, shadowed"
          }
        ],
        "lighting_mood": "The rooftop is washed in dim cold blue-gray night, with the doorway gap remaining almost pure black and the mist making the empty space feel claustrophobic.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 11,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow position beside 민숙's body near the curtain, the handheld camera tightens into an extreme close facial frame of 수리영 at eye level, slightly off-center and angled back toward her right cheek. Her face occupies most of the frame, with only a blurred strip of curtain and a dark, low off-axis shape suggesting the body in the cramped bedroom; the tremor should feel like her trapped breathing rather than a new setup.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "staggering backward frozen",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C05",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영 isolated shock close-up",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft, claustrophobic edge texture behind her face",
            "directionality_class": "directional_3d",
            "element": "bedroom curtain",
            "orientation": "creased curtain folds angle toward camera from frame edge",
            "state": "partly pulled aside, damp-looking and shadowed"
          },
          {
            "camera_use": "blurred lower off-axis presence that motivates her gaze without graphic emphasis",
            "directionality_class": "non_directional",
            "element": "dark floor area beside the body",
            "orientation": "",
            "state": "dim, wet-looking, mostly out of focus"
          },
          {
            "camera_use": "tight wall boundary compressing the face against the room",
            "directionality_class": "content_surface",
            "element": "bedroom wall",
            "orientation": "plain cold wall face visible behind her, with no readable markings in this shot",
            "state": "stained by age and low light"
          }
        ],
        "lighting_mood": "Cold blue-gray practical spill from the room mixes with weak TV ambience, with a restrained crimson undertone catching her eyes and lips.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera drops from the previous shock beat to knee height beside 민숙 and settles into a tight insert aimed downward at her pale hand, keeping the low beside-the-body flow position. The crumpled photograph sits in the center-lower frame in her fingers, while the wrist and a sliver of sleeve remain close enough to register the ominous red change without showing the body broadly.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "slumped seated body",
            "character": "민숙",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary clue held in the hand",
            "directionality_class": "content_surface",
            "element": "crumpled old photograph",
            "orientation": "creased image side faces camera at a shallow angle, its contents partly obscured by folds and fingers",
            "state": "old, wrinkled, damp at the edges"
          },
          {
            "camera_use": "occult detail near the clue",
            "directionality_class": "content_surface",
            "element": "민숙's wrist tattoo area",
            "orientation": "skin surface faces upward toward camera, the mark visible along the wrist line",
            "state": "pale, rigid, beginning to redden"
          },
          {
            "camera_use": "scale reference and cold floor texture around the hand",
            "directionality_class": "non_directional",
            "element": "bedroom floor",
            "orientation": "",
            "state": "dark, damp-looking, low-key lit"
          }
        ],
        "lighting_mood": "A cold blue-gray floor-level gloom is broken by a faint, sickly crimson accent around the wrist and photograph creases.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 12,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot is an insert on 민숙's hand and wrist rather than her face or full body, so a base identity reference is safer than an outlook-specific facial reference.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "At the end of the supernatural reveal flow, the camera is fully locked off at standing eye level near the foot of the bed, facing the white wall above the bed in a rigid flat frontal frame. The bed runs along the lower third as a scale anchor, while the large red circular stain sits centered on the wall, unnaturally clean-edged against the otherwise calm room.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "red circular stain on wall",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "bed below the mark",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary supernatural image held in a centered static composition",
            "directionality_class": "content_surface",
            "element": "white wall with red circle",
            "orientation": "the flat wall face directly faces camera, carrying a large fresh red circular mark on its visible surface",
            "state": "plain white except for the vivid wet-looking circle"
          },
          {
            "camera_use": "lower-frame anchor beneath the wall mark",
            "directionality_class": "directional_3d",
            "element": "bed",
            "orientation": "foot and top plane of the bed face the camera from below the wall",
            "state": "still, dim, sheets subdued in blue-gray shadow"
          },
          {
            "camera_use": "air texture separating bed and wall",
            "directionality_class": "non_directional",
            "element": "bedroom mist and dust",
            "orientation": "",
            "state": "faintly suspended in the practical light"
          }
        ],
        "lighting_mood": "Low-key cold blue-gray room light makes the wall feel drained, while the red circle becomes the only saturated crimson accent.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 15,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the foot of the rooftop stairs in the alley, the camera holds static at eye level in a very tight close-up, slightly off-center from the front of 수리영. Her blank face fills the middle of the frame while the stair direction and police car remain abstract bokeh behind her, with the red warning light pulses becoming the only moving force in the image.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "stalled at stair foot",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "pulsing light source washing across her face",
            "directionality_class": "directional_3d",
            "element": "police car light bar",
            "orientation": "light bar is behind and slightly off-axis, seen only as blurred red flashes from its front-side direction",
            "state": "on, pulsing red"
          },
          {
            "camera_use": "soft background path indicating where she fled from",
            "directionality_class": "directional_3d",
            "element": "rooftop stairwell",
            "orientation": "stair run recedes upward behind her in soft focus",
            "state": "dark, damp, partially misted"
          },
          {
            "camera_use": "wet urban texture catching the emergency light",
            "directionality_class": "non_directional",
            "element": "alley pavement",
            "orientation": "",
            "state": "wet, reflective in patches, blue-gray"
          }
        ],
        "lighting_mood": "Cold alley darkness is rhythmically cut by red police pulses across her unfocused eyes and cheekbones.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Directly in front of 혜수 and 수리영 at chest height, the static frame compresses them into a square confrontation, close enough that 혜수's gripping hands sit in the lower foreground between both faces. The surrounding alley is cropped away, leaving only a narrow dark background and the shoulder contact as the visual pressure point.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning into grip",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "shoulders pinned backward",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "minimal dark negative space behind the confrontation",
            "directionality_class": "non_directional",
            "element": "dark alley background",
            "orientation": "",
            "state": "misty, underlit, mostly cropped"
          },
          {
            "camera_use": "faint emergency color spill along frame edges",
            "directionality_class": "directional_3d",
            "element": "police car outside frame edge",
            "orientation": "vehicle remains off-frame, but its light direction rakes across the characters from the side",
            "state": "siren light active"
          },
          {
            "camera_use": "vertical compression behind them",
            "directionality_class": "directional_3d",
            "element": "stair wall",
            "orientation": "side wall plane recedes behind the pair at a shallow angle",
            "state": "damp, cold, shadowed"
          }
        ],
        "lighting_mood": "Blue-gray alley shadow is interrupted by intermittent red police light that flashes across their faces and 혜수's tense hands.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just in front of 혜수 at eye level, the dolly-in tightens beyond a normal close-up until her widened eyes and locked jaw dominate the frame. The alley and stair direction fall into a smeared blue-gray blur behind her, while her gaze sits just past the lens toward 수리영 rather than directly confronting the camera.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "hands still extended",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "혜수 shocked close-up",
              "screen_zone": "middle_center",
              "target_id": "C02",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "defocused escape route behind her shock",
            "directionality_class": "directional_3d",
            "element": "rooftop stair direction",
            "orientation": "stair line falls away behind her shoulder in soft focus",
            "state": "dark and wet"
          },
          {
            "camera_use": "pulsing color edge behind the close-up",
            "directionality_class": "directional_3d",
            "element": "police car light source",
            "orientation": "off-camera light direction strikes from behind and side, not fully visible",
            "state": "on, flashing red"
          },
          {
            "camera_use": "ambient haze around her silhouette",
            "directionality_class": "non_directional",
            "element": "alley mist",
            "orientation": "",
            "state": "heavy, cold, drifting"
          }
        ],
        "lighting_mood": "A low-key blue-gray base is cut by sudden crimson police pulses, making her shock feel frozen between flashes.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From just inside 수리영's bedroom doorway at waist-to-chest height, the camera holds a slightly wider dolly-in view down the room axis, about ten feet from the bed. The spotless bed sits in the upper-middle depth and the clean floor spreads across the lower frame, making their combined emptiness read as one unnaturally peaceful contradiction.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "spotless bed",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "clean floor with no blood",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary evidence of absence",
            "directionality_class": "directional_3d",
            "element": "spotless bed",
            "orientation": "bed foot and top surface face the doorway camera along the room axis",
            "state": "neatly made, no red mark above it"
          },
          {
            "camera_use": "foreground proof that the blood is gone",
            "directionality_class": "non_directional",
            "element": "clean bedroom floor",
            "orientation": "",
            "state": "dry, bare, no footprints or stains"
          },
          {
            "camera_use": "former hiding place now neutralized",
            "directionality_class": "directional_3d",
            "element": "curtain area",
            "orientation": "curtain folds face the camera from the side of the room",
            "state": "closed-looking, still, no body visible"
          },
          {
            "camera_use": "flat wall confirming the vanished symbol",
            "directionality_class": "content_surface",
            "element": "wall above bed",
            "orientation": "plain wall face is visible to camera, carrying no red circle or markings",
            "state": "clean and pale"
          }
        ],
        "lighting_mood": "The room is lit in cold blue-gray practical calm, too even and clean after the earlier horror, with all crimson drained away.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At eye level near the window side of the bedroom, the dolly-in ends in a tight three-quarter facial close-up of 수리영, roughly two to three feet from her face. The clean room behind her falls soft, but the pale bed-and-curtain shapes remain barely readable over her shoulder, tying her confusion to the erased evidence.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "half-turned from bed",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft contradiction behind her reaction",
            "directionality_class": "directional_3d",
            "element": "clean bed in background",
            "orientation": "bed side is visible behind her shoulder, angled away from camera",
            "state": "neat, bloodless, out of focus"
          },
          {
            "camera_use": "former corpse location reduced to blur",
            "directionality_class": "directional_3d",
            "element": "curtain side of room",
            "orientation": "curtain folds run vertically behind her at frame edge",
            "state": "still, closed-looking, no body visible"
          },
          {
            "camera_use": "cool side texture near her face",
            "directionality_class": "transparent_surface",
            "element": "window glass",
            "orientation": "dim glass surface beside her carries faint condensation, with darkness beyond rather than clear exterior detail",
            "state": "closed, damp, reflecting little"
          }
        ],
        "lighting_mood": "Cold practical window-side spill drains her face of color while the background stays soft, flat, and unnervingly clean.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "In the dining area at chest height, the static camera stays about five feet from 김형사 and looks over 수리영's side line so his raised index finger cuts through the foreground without becoming oversized. 김형사 holds the left foreground in an accusatory three-quarter angle, while 수리영 recoils in the right midground beside the clean table.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "index finger thrust",
            "character": "김형사",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "recoiling beside table",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "points_to",
              "gesture_target_label": "Suriyeong",
              "label": "김형사 accusing gesture",
              "screen_zone": "middle_left",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영 being accused",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "points_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "clean counter-evidence under the accusation",
            "directionality_class": "directional_3d",
            "element": "dining table",
            "orientation": "table edge faces camera diagonally between the characters",
            "state": "clean, no teacups left"
          },
          {
            "camera_use": "domestic boundary behind the confrontation",
            "directionality_class": "directional_3d",
            "element": "kitchen-dining wall",
            "orientation": "side wall plane angles behind 김형사",
            "state": "dim, plain, cold-toned"
          },
          {
            "camera_use": "exit path for the next interruption",
            "directionality_class": "directional_3d",
            "element": "hallway toward bedroom",
            "orientation": "doorway opening recedes behind 수리영's side",
            "state": "open, shadowed"
          }
        ],
        "lighting_mood": "Low practical blue-gray light flattens the dining area, with only a faint residual crimson from outside giving the accusation a harsh edge.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low and close in front of the bus-stop bench at knee height, the static camera angles down toward 수리영's lap and the dark pavement. The can rests on her knees in the lower center without exceeding the frame, her lowered face sits in the upper third, and most of the bench is cropped away to trap her between the object, her hands, and the wet ground.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hunched over knees",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "small object anchoring her numbness",
            "directionality_class": "directional_3d",
            "element": "canned drink",
            "orientation": "can side curves toward camera while its top is slightly visible on her knees",
            "state": "unopened or barely handled, cold with condensation"
          },
          {
            "camera_use": "cropped support line behind her body",
            "directionality_class": "directional_3d",
            "element": "bus-stop bench",
            "orientation": "bench front edge runs horizontally behind her knees, mostly cropped",
            "state": "wet, dark, metal or plastic dulled by night"
          },
          {
            "camera_use": "downward gaze destination and emotional void",
            "directionality_class": "non_directional",
            "element": "dark pavement",
            "orientation": "",
            "state": "wet, gritty, reflecting faint blue-gray light"
          },
          {
            "camera_use": "soft distant atmosphere beyond the stop",
            "directionality_class": "non_directional",
            "element": "coastal night air",
            "orientation": "",
            "state": "misty, cold, wind-damp"
          }
        ],
        "lighting_mood": "A cold blue-gray coastal night palette wraps her in damp shadow, with only weak practical spill glinting off the can and pavement.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From deep inside a dark roadside shadow, a long telephoto lens compresses the coastal road so the black foreground takes up most of the lower and side frame while 수리영 appears small in the middle distance under a single streetlamp. The camera is chest-height and static, slightly offset behind her path, catching her back in a frozen mid-run stride with one knee lifted and the other foot pushing off the wet pavement.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "mid-run suspended stride",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Dominant dark foreground mask, making the shot feel watched from concealment.",
            "directionality_class": "non_directional",
            "element": "roadside shadow",
            "orientation": "",
            "state": "deep, nearly black, damp-edged"
          },
          {
            "camera_use": "Isolates 수리영 as the only warm-lit figure in the distance.",
            "directionality_class": "directional_3d",
            "element": "streetlamp",
            "orientation": "lamp pole seen from behind-left, its light pooling ahead of the camera position",
            "state": "on, haloed by mist"
          },
          {
            "camera_use": "Provides compressed depth and a slick texture beneath the running figure.",
            "directionality_class": "non_directional",
            "element": "wet coastal road",
            "orientation": "",
            "state": "dark, reflective, mist-damp"
          }
        ],
        "lighting_mood": "Cold blue-gray night mist swallows the frame, with one weak yellow streetlamp and no other practical warmth.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 6,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "수리영 is very small, distant, and seen only from the back; a base identity reference is safer than an outlook-specific facial reference.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "At Kim's eye line from the tight desk-side gap, the phone and 혜수's pointing finger sit closest to lens in the lower foreground, never oversized, while 김형사's eyes hover just beyond them in shallow focus. The framing is cramped and static, using the desk edge and office clutter as narrow side borders so the demand to trace the number feels like it is being pushed into his face.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "arm thrust forward",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning toward phone",
            "character": "김형사",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Nearest foreground focus, presenting the saved number as urgent evidence.",
            "directionality_class": "content_surface",
            "element": "smartphone screen",
            "orientation": "front glass face angled toward 김형사, showing the saved contact number glow",
            "state": "on, smudged with fingerprints"
          },
          {
            "camera_use": "Horizontal compression line between the two characters.",
            "directionality_class": "directional_3d",
            "element": "police office desk edge",
            "orientation": "front edge runs diagonally across the lower frame toward 김형사",
            "state": "cluttered, worn, dimly lit"
          },
          {
            "camera_use": "Muted practical background that keeps the office minimal.",
            "directionality_class": "content_surface",
            "element": "paper-stacked duty board",
            "orientation": "front face partially visible behind 김형사 with indistinct forms and pinned notes",
            "state": "dim, out of focus"
          }
        ],
        "lighting_mood": "Low-key fluorescent office light is cooled to blue-gray, with the phone screen adding a small cold glow against tired practical shadows.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Across the desk at eye level, the camera continues a restrained dolly-in until 혜수's face fills most of the frame in a front three-quarter close-up, the office falling into a dark blur behind her. She does not meet the lens; her eyes drift past 김형사 into empty space, with the desk line barely visible at the bottom as a pressure barrier.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning over desk",
            "character": "혜수",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft lower-frame boundary separating 혜수 from the unseen detective.",
            "directionality_class": "directional_3d",
            "element": "desk surface",
            "orientation": "top plane barely visible from across the desk, receding away from camera",
            "state": "dark, cluttered, out of focus"
          },
          {
            "camera_use": "Background texture that suggests late-night duty without distracting from the face.",
            "directionality_class": "content_surface",
            "element": "office wall notices",
            "orientation": "front faces turned toward camera but unreadable in blur",
            "state": "dim, yellowed, unfocused"
          },
          {
            "camera_use": "Practical light source shaping the side of her face.",
            "directionality_class": "directional_3d",
            "element": "desk lamp",
            "orientation": "lamp shade side faces camera from background edge",
            "state": "on, weak and cold"
          }
        ],
        "lighting_mood": "Blue-gray office gloom wraps her face, with a faint practical edge light carving the frown and leaving the eyes uneasy.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a neighboring rooftop or elevated exterior landing, the locked-off long shot looks across the alley at the rooftop room suspended in heavy bluish dawn fog. The yellow-lit window sits slightly above center, small but unmistakable, while roof edges and damp concrete remain quiet, distant silhouettes.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal point and warm contrast against the fog.",
            "directionality_class": "transparent_surface",
            "element": "rooftop room window",
            "orientation": "slightly opaque glass surface faces camera; warm yellow interior light is visible through condensation",
            "state": "closed, lit from inside, fog-softened"
          },
          {
            "camera_use": "Creates the distant exterior vantage and horizontal frame base.",
            "directionality_class": "directional_3d",
            "element": "rooftop parapet edge",
            "orientation": "top and outer face seen as a dark line across the lower frame",
            "state": "damp, weather-stained"
          },
          {
            "camera_use": "Atmospheric veil flattening depth and muting detail.",
            "directionality_class": "non_directional",
            "element": "blue dawn fog",
            "orientation": "",
            "state": "dense, cold, still"
          }
        ],
        "lighting_mood": "Cold blue-gray dawn mist dominates, punctured only by a low, dirty yellow practical glow from the window.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At mattress height about two feet from the bed edge, the camera holds a tight low profile on 수리영, slightly below her eye line, so her forehead pressed to the mattress edge becomes the emotional anchor. The bed edge cuts horizontally through the foreground, and her curled body is compressed into the lower side of the frame, making the bedroom feel airless and still.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "curled at mattress edge",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Physical contact point emphasizing exhaustion.",
            "directionality_class": "directional_3d",
            "element": "bed mattress edge",
            "orientation": "side seam faces camera in close profile, its top plane just above 수리영's forehead",
            "state": "rumpled, slightly sunken"
          },
          {
            "camera_use": "Muted bedroom boundary behind her stillness.",
            "directionality_class": "directional_3d",
            "element": "bedroom wall",
            "orientation": "flat wall recedes softly behind her profile",
            "state": "dim, pale, undecorated"
          },
          {
            "camera_use": "Cold daylight leak that barely separates the room from darkness.",
            "directionality_class": "transparent_surface",
            "element": "covered bedroom window",
            "orientation": "window area is mostly blocked by fabric; only blue daylight leaks around the edges",
            "state": "closed, curtained, weakly glowing"
          }
        ],
        "lighting_mood": "Daylight is drained into cold blue-gray, with soft practical shadow and damp-looking fabric textures keeping the room heavy and sleepless.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From sink-side shoulder height behind 수리영, the camera holds static about three feet back, leaving only the back of her head, neck, and one shoulder as a dark foreground shape on the left. The mirror edge slices one side of the frame, but focus lands on the white tiled wall behind her where a restrained crimson circular mark has appeared, centered coldly in the midground.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "bracing over sink",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Primary horror focus, isolated beyond 수리영's shoulder.",
            "directionality_class": "content_surface",
            "element": "white tiled bathroom wall",
            "orientation": "camera-facing tile plane bears a clear crimson circular mark at shoulder height",
            "state": "clean, cold, suddenly marked"
          },
          {
            "camera_use": "Edge frame and reminder that the apparition was first perceived through bathroom sightlines.",
            "directionality_class": "reflective_surface",
            "element": "bathroom mirror edge",
            "orientation": "narrow mirror strip reflects a blurred sliver of sink light and 수리영's partial side, not the whole room",
            "state": "slightly fogged, water-specked"
          },
          {
            "camera_use": "Foreground practical anchor for her body position.",
            "directionality_class": "directional_3d",
            "element": "sink counter",
            "orientation": "rear edge and basin lip angle away from camera beneath her hands",
            "state": "wet, pale, dim"
          }
        ],
        "lighting_mood": "Cold bathroom daylight and weak practical spill flatten the white tile, while the crimson circle feels unnaturally saturated against the blue-gray dampness.",
        "perception_mode": "hallucination",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 11,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "수리영 is only a partial back-and-shoulder foreground silhouette, so an outlook-specific face reference is not useful for this composition.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "At dining-table height, the dolly-in ends within a foot of the tabletop frame, excluding 수리영 completely and isolating the photograph as if the room itself is staring at it. The framed image sits slightly off-center, with 민숙's smiling face area grotesquely sagging and blurring downward while the rest of the family-photo surface remains unnervingly ordinary.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "smiling in photograph",
            "character": "민숙",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary hallucinated object, held as an isolated tabletop detail.",
            "directionality_class": "content_surface",
            "element": "framed family photograph",
            "orientation": "front photo face is visible to camera; 민숙's smiling face beside 수리영 is distorted as if melting downward",
            "state": "upright, glassy, hallucinated distortion present"
          },
          {
            "camera_use": "Grounds the insert in the living room without stealing focus.",
            "directionality_class": "directional_3d",
            "element": "dining table surface",
            "orientation": "top plane runs flat beneath the frame, seen from low tabletop height",
            "state": "clean, cool-toned, faintly reflective"
          },
          {
            "camera_use": "Subtle reflection that makes the photo feel contaminated by the room.",
            "directionality_class": "reflective_surface",
            "element": "photo frame glass",
            "orientation": "glass reflects a dim streak of window light over the distorted face",
            "state": "intact, slightly smudged"
          }
        ],
        "lighting_mood": "Cold living-room daylight is low and desaturated, with the facial distortion carrying the only sickly warm-crimson undertone.",
        "perception_mode": "hallucination",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 13,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "민숙 appears as a distorted printed photograph rather than a physically present person; base identity is needed, but outlook-specific reference could conflict with the hallucinated face collapse.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "From just off the 남자 직원's shoulder line at eye level, the camera pushes into a tighter close-up on 수리영, keeping his blurred shoulder as a narrow foreground edge while her furrowed brow and unbroken stare hold the frame. Her face is nearly frontal but slightly three-quarter, looking past the lens directly into his eyes rather than at the audience.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning into question",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C07",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "shoulder blocking frame",
            "character": "남자 직원",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Foreground occluder from the employee's side, tightening the confrontation.",
            "directionality_class": "directional_3d",
            "element": "employee shoulder line",
            "orientation": "back and side plane face camera as a blurred dark vertical edge",
            "state": "close, out of focus"
          },
          {
            "camera_use": "Soft supermarket context behind 수리영.",
            "directionality_class": "directional_3d",
            "element": "store shelf row",
            "orientation": "shelf fronts angle diagonally into the background behind her",
            "state": "partly stocked, quiet, morning-dim"
          },
          {
            "camera_use": "Cold practical ceiling texture reflected in her eyes.",
            "directionality_class": "directional_3d",
            "element": "fluorescent ceiling strips",
            "orientation": "long light bars recede overhead away from camera",
            "state": "on, harsh, bluish"
          }
        ],
        "lighting_mood": "Flat supermarket fluorescents are graded cold blue-gray, with low contrast on the shelves but sharper shadow tension around 수리영's eyes.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the supermarket at eye level, the camera holds a medium-close side angle with 수리영 pressed against the exterior wall on one side of the frame and empty morning space opening in front of her gaze. Her smartphone stays tight to her ear, her body still and braced, while the wall runs behind her as a hard, damp plane.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "leaning against wall",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Back support and claustrophobic side plane.",
            "directionality_class": "directional_3d",
            "element": "supermarket exterior wall",
            "orientation": "wall face runs parallel behind 수리영, receding from left to right",
            "state": "damp, stained, cold-toned"
          },
          {
            "camera_use": "Creates uneasy negative space where her gaze lands.",
            "directionality_class": "non_directional",
            "element": "empty sidewalk space",
            "orientation": "",
            "state": "quiet, early morning, slightly wet"
          },
          {
            "camera_use": "Background context and faint reflection without distracting from the phone call.",
            "directionality_class": "transparent_surface",
            "element": "supermarket glass frontage",
            "orientation": "glass faces obliquely to camera, showing dim interior shapes through mild reflections",
            "state": "closed, smudged, pale with daylight"
          }
        ],
        "lighting_mood": "Overcast morning light stays cold and gray, with the storefront reflecting faint blue tones and no comforting warmth.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At standing eye level just behind and slightly beside 혜수, her back and shoulder occupy the near foreground edge, creating a narrow frame through which 수리영's anxious face is seen in the midground. The camera tracks subtly with this shoulder line while the dark monitor glow catches 수리영's eyes and lower lip, keeping the screen itself just beyond her gaze rather than fully revealing it.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "leaning toward monitor",
            "character": "혜수",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "biting lower lip",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "dark CCTV monitor",
              "label": "혜수",
              "screen_zone": "middle_left",
              "target_id": "C02",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "dark CCTV monitor",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dark CCTV monitor",
              "screen_zone": "upper_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Unseen focal pull for both characters' attention, casting light onto 수리영.",
            "directionality_class": "content_surface",
            "element": "dark CCTV monitor",
            "orientation": "front screen face is angled toward the characters, showing an unusually dark CCTV image with unreadable figures",
            "state": "on, dim, murky"
          },
          {
            "camera_use": "Foreground human frame that partially blocks and compresses 수리영.",
            "directionality_class": "directional_3d",
            "element": "혜수's shoulder line",
            "orientation": "back and shoulder plane face camera as a soft dark edge",
            "state": "close, out of focus"
          },
          {
            "camera_use": "Cramped administrative-room texture behind the monitor station.",
            "directionality_class": "directional_3d",
            "element": "office workstation desk",
            "orientation": "top plane and monitor base face camera at a shallow angle",
            "state": "cluttered, functional, fluorescent-lit"
          }
        ],
        "lighting_mood": "Cold monitor glow and dull overhead fluorescents flatten the room into blue-gray, leaving 수리영's face tense and underlit.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera has completed the flow’s dolly-in and locks square to the CCTV monitor surface at desk height, flattening the image so the noisy screen plane occupies almost the whole frame with only a hairline bezel visible at the edges. Two blurred human silhouettes sit in the middle distance of the CCTV image, softened by digital noise, crushed blacks, and faint horizontal scan distortion; no surrounding faces or office context are shown.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "primary viewing surface and full-frame focal plane",
            "directionality_class": "content_surface",
            "element": "CCTV monitor screen",
            "orientation": "front display face is square to camera, showing a dark surveillance feed with two indistinct human shapes and heavy video noise",
            "state": "on, dim, noisy, low contrast"
          },
          {
            "camera_use": "thin edge reference preventing the screen from feeling abstract",
            "directionality_class": "directional_3d",
            "element": "monitor bezel edge",
            "orientation": "front rim barely visible around the screen plane",
            "state": "black, static, mostly swallowed by darkness"
          },
          {
            "camera_use": "texture layer over the surveillance image",
            "directionality_class": "non_directional",
            "element": "digital noise and scanline artifacts",
            "orientation": "",
            "state": "active, flickering, grainy"
          }
        ],
        "lighting_mood": "Cold blue-gray monitor light is buried under low-key blacks, with electronic flicker and dirty CCTV grain making the image feel damp and untrustworthy.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Derived from the desk-level dolly-in, the camera ends within arm’s length across the desktop, tightening into a facial close-up of 수리영 from a slight three-quarter offset rather than a dead frontal stare. The disturbing photographs are only suggested as blurred white rectangles along the lower edge, while her widened eyes and rigid mouth hold the upper two-thirds of the frame in shallow focus.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "clutching case photo",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "implied shock source at the lower frame edge",
            "directionality_class": "content_surface",
            "element": "scattered case photographs",
            "orientation": "front printed faces lie upward toward camera, but only cropped pale edges and indistinct dark image areas are visible",
            "state": "spread unevenly, partially out of focus"
          },
          {
            "camera_use": "horizontal barrier between camera and subject",
            "directionality_class": "directional_3d",
            "element": "혜수's desk surface",
            "orientation": "front edge faces camera with clutter receding toward 수리영",
            "state": "messy, paper-covered, fluorescent-lit"
          },
          {
            "camera_use": "soft background context behind the close-up",
            "directionality_class": "directional_3d",
            "element": "police office desks and partitions",
            "orientation": "desk sides and partition edges angle away behind her",
            "state": "empty, muted, slightly blurred"
          }
        ],
        "lighting_mood": "Harsh cold fluorescent office light is underexposed into blue-gray shadows, with a faint sickly reflection from the photo paper lifting her cheekbones.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera follows the flow’s pan-slide endpoint and holds flatter and closer than before, positioned just above the neighboring desk and directly in front of the lit monitor so the screen text reads clearly. The words “LAST LOCATION,” the map coordinates, timestamp, and offline status sit centered in the frame, with only a narrow strip of keyboard and desk lip giving scale at the bottom.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "lit monitor screen with LAST LOCATION coordinates",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary readable information source",
            "directionality_class": "content_surface",
            "element": "neighboring desk monitor",
            "orientation": "front display face is held nearly perpendicular to camera, showing LAST LOCATION, coordinates, timestamp, GPS/network source, and offline status",
            "state": "on, bright, alert window open"
          },
          {
            "camera_use": "small scale reference beneath the monitor",
            "directionality_class": "directional_3d",
            "element": "keyboard edge",
            "orientation": "top keys face upward while the front edge points toward camera",
            "state": "idle, partially cropped"
          },
          {
            "camera_use": "empty context emphasizing no one is at the station desk",
            "directionality_class": "directional_3d",
            "element": "vacant neighboring desk surface",
            "orientation": "front edge faces camera, receding under the monitor",
            "state": "clutter-light, unattended"
          }
        ],
        "lighting_mood": "The monitor casts a cold cyan-white glow against the otherwise flat blue-gray police-office fluorescents, making the text feel clinically incriminating.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Following the flow from behind at shoulder height, the camera tracks close behind 수리영 and catches her frozen mid-threshold as she pushes the glass office door with one hand. Her backpacked back fills the center of the frame at close-medium distance, one foot already stepping out into the corridor while the abandoned desk aisle falls behind her.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "pushing glass door",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "glass office door",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "glass office door",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "threshold and movement target",
            "directionality_class": "transparent_surface",
            "element": "glass office door",
            "orientation": "partly open transparent pane shows a dim corridor beyond, with reflections of office lights streaking across it",
            "state": "opening, smudged, cold-lit"
          },
          {
            "camera_use": "rear spatial trail from the desk to the exit",
            "directionality_class": "directional_3d",
            "element": "desk aisle",
            "orientation": "parallel desk edges recede from foreground toward the background office",
            "state": "empty, cluttered, hastily abandoned"
          },
          {
            "camera_use": "practical overhead source reflected in the door",
            "directionality_class": "directional_3d",
            "element": "fluorescent ceiling fixtures",
            "orientation": "long rectangular undersides face downward and reflect in the glass",
            "state": "on, sterile, flickering faintly"
          }
        ],
        "lighting_mood": "Blue-gray fluorescent light flattens the police office while the glass door catches pale reflections, making her exit feel furtive and exposed.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 13,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera inherits the side-tracking flow, riding parallel to the bicycle at chest-to-face height about a meter and a half from 수리영, but frames tighter around her hunched upper torso, locked hands, and tense side profile. Her cheek and jaw cut across the right half of the frame while the handlebars and knuckles slice through the lower third, the background streaking laterally with matched handheld urgency.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "hunched over handlebars",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "motion anchor and lower-frame tension line",
            "directionality_class": "directional_3d",
            "element": "bicycle handlebars",
            "orientation": "side and top bars angle diagonally across the lower frame toward the direction of travel",
            "state": "gripped tightly, vibrating"
          },
          {
            "camera_use": "moving background texture indicating speed",
            "directionality_class": "non_directional",
            "element": "street-side pavement blur",
            "orientation": "",
            "state": "dry-to-damp, streaked by motion"
          },
          {
            "camera_use": "distant exterior context behind the moving profile",
            "directionality_class": "directional_3d",
            "element": "police station exterior edge",
            "orientation": "building face slides backward across the far background",
            "state": "cold daylight, partially blurred"
          }
        ],
        "lighting_mood": "Overcast daylight is cooled into blue-gray tones, with hard practical daylight softened by street haze and the bicycle motion adding gritty realism.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s monitor-height start, the camera holds just beyond the glowing screen like an object POV, slightly low and close to 수리영’s face. The electronic map itself remains off-camera as cold light; her eyes, monitor-lit cheekbones, and forward lean occupy most of the frame, with the monitor edge only a dark blurred sliver in the lower foreground.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "leaning toward monitor",
            "character": "수리영",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "implied viewpoint and light source",
            "directionality_class": "content_surface",
            "element": "PC monitor display",
            "orientation": "front display face is turned toward 수리영 and away from the audience, its electronic map visible only as cyan glow spill",
            "state": "on, bright, map loaded"
          },
          {
            "camera_use": "foreground mask at the lower edge",
            "directionality_class": "directional_3d",
            "element": "monitor bezel corner",
            "orientation": "rear/side edge appears as a dark out-of-focus sliver close to camera",
            "state": "static, black"
          },
          {
            "camera_use": "claustrophobic PC room framing",
            "directionality_class": "directional_3d",
            "element": "PC booth partitions",
            "orientation": "side panels recede behind her face in narrow vertical planes",
            "state": "dark, worn, close-set"
          }
        ],
        "lighting_mood": "The dark PC room is lit almost entirely by cold cyan monitor glow, carving her face out of black-blue shadow with a faint damp sheen.",
        "perception_mode": "direct",
        "perspective": "object_pov",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Continuing the coastal tracking flow, the camera pushes into a tight frontal three-quarter close-up just ahead and slightly to the side of the moving bicycle at 수리영’s face height. Her narrowed eyes sit near the upper center, wet hair strands cling across her cheek in the foreground, and the road and sea smear behind her without breaking the forward drive.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hunched into rain",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "active foreground veil over the face",
            "directionality_class": "transparent_surface",
            "element": "rain streaks in front of lens",
            "orientation": "semi-transparent vertical streaks pass between camera and 수리영, intermittently revealing the wet road beyond",
            "state": "heavy, wind-driven, continuous"
          },
          {
            "camera_use": "moving background line emphasizing coastal travel",
            "directionality_class": "directional_3d",
            "element": "coastal guardrail",
            "orientation": "side rails run diagonally backward along the frame edge",
            "state": "wet, dark, blurred by speed"
          },
          {
            "camera_use": "environmental pressure behind her",
            "directionality_class": "non_directional",
            "element": "storm-dark sea and low clouds",
            "orientation": "",
            "state": "misty, blue-gray, rain-obscured"
          },
          {
            "camera_use": "lower-frame motion anchor",
            "directionality_class": "directional_3d",
            "element": "bicycle handlebar edge",
            "orientation": "top bar briefly cuts across the lower foreground from the rider toward camera side",
            "state": "wet, vibrating"
          }
        ],
        "lighting_mood": "Storm daylight is crushed into cold blue-gray, with rain-silver highlights on hair and skin and no warm relief except the faint rawness of her flushed eyes.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera begins exactly at the flow’s highest overhead point near the living-room ceiling, slightly off-center above the dining area, holding the ransacked room as a static cold tableau before any descent. Overturned chairs, spilled drawer contents, an open window, and dark footprints form a diagonal trail through the wide frame toward the deeper rooms.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "environmental layout and invasion evidence",
            "directionality_class": "directional_3d",
            "element": "overturned dining chairs",
            "orientation": "chair backs and legs face upward at different angles, exposing undersides to the overhead camera",
            "state": "fallen, scattered"
          },
          {
            "camera_use": "cold exterior light source and possible entry point",
            "directionality_class": "transparent_surface",
            "element": "living-room window",
            "orientation": "open transparent panes reveal dim dusk beyond while the wet frame catches pale light",
            "state": "open, damp, letting in cold air"
          },
          {
            "camera_use": "evidence trail leading camera movement deeper inside",
            "directionality_class": "content_surface",
            "element": "muddy footprints on floor",
            "orientation": "dark sole marks are visible on the upward-facing floor surface, angled toward the hallway and bedroom",
            "state": "fresh-looking, irregular"
          },
          {
            "camera_use": "ransacking texture across the lower half of the overhead frame",
            "directionality_class": "directional_3d",
            "element": "pulled-out drawer and spilled household items",
            "orientation": "drawer front faces sideways while contents spill outward across the floor",
            "state": "open, disordered"
          }
        ],
        "lighting_mood": "Cold dusk light leaks through the open window into low-key blue-gray shadow, with damp textures and a restrained crimson absence that makes the room feel violated rather than theatrical.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The dolly-in reaches its tightest endpoint at eye height, the lens nearly perpendicular to the bedroom wall so the old photograph pinned in the red circle becomes a crisp, flat close observation. The photograph sits centered inside the crimson ring, taking up a strong but natural portion of the frame, with the wall texture and small pin giving scale around it.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "blood-marked old photograph",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "red circle on bedroom wall",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary occult clue and readable image surface",
            "directionality_class": "content_surface",
            "element": "old pinned photograph",
            "orientation": "front printed face is square to camera, showing an aged rural restaurant image with two seated girls partially obscured by a dark blood mark",
            "state": "old, stained, pinned flat"
          },
          {
            "camera_use": "crimson framing symbol around the clue",
            "directionality_class": "content_surface",
            "element": "red circle on bedroom wall",
            "orientation": "painted front face of the wall is visible, the red ring encircling the photograph",
            "state": "fresh-looking, uneven, stark crimson"
          },
          {
            "camera_use": "scale and physical attachment point",
            "directionality_class": "directional_3d",
            "element": "small wall pin",
            "orientation": "pin head faces camera from the center-top of the photograph",
            "state": "fixed, taut"
          },
          {
            "camera_use": "tactile background plane",
            "directionality_class": "content_surface",
            "element": "bedroom wall surface",
            "orientation": "front wall plane faces camera, showing faint stains and the red marking on its surface",
            "state": "dirty, cold-toned, still"
          }
        ],
        "lighting_mood": "Dim blue-gray dusk and weak room spill flatten the wall, while the restrained crimson circle and dark stain puncture the cold palette like an occult warning.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Cutting from the wall clue into the flow’s reaction position, the handheld camera stays almost still within arm’s length of 수리영 beside the bed, facing her frontally but letting her gaze drift past the lens. Her widened eyes and parted lips hold the center of the close frame, while the photograph is clutched near the lower edge and the ransacked room falls into soft, uneasy blur behind her.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "clutching old photograph",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "blurred emotional source held near frame bottom",
            "directionality_class": "content_surface",
            "element": "old photograph in her hand",
            "orientation": "printed face tilts partly toward camera but remains cropped and secondary beneath her face",
            "state": "creased, stained, tightly held"
          },
          {
            "camera_use": "soft background reminder of the marked wall",
            "directionality_class": "content_surface",
            "element": "red circle on bedroom wall",
            "orientation": "front wall marking is visible out of focus behind her shoulder",
            "state": "crimson, blurred, ominous"
          },
          {
            "camera_use": "physical collapse point beside her",
            "directionality_class": "directional_3d",
            "element": "bed edge",
            "orientation": "side edge runs behind her lower body, angled away into the room",
            "state": "rumpled, dimly lit"
          },
          {
            "camera_use": "claustrophobic disorder behind the reaction",
            "directionality_class": "directional_3d",
            "element": "ransacked bedroom clutter",
            "orientation": "scattered object faces and drawer edges point in mixed directions behind her",
            "state": "messy, shadowed, unsettled"
          }
        ],
        "lighting_mood": "Cold dusk-blue room light underexposes the background while a faint gray wash catches her wet-looking eyes, with the crimson wall mark barely bleeding through the blur.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s side-on knee-to-chest position, the camera holds a tighter observer view about 2 meters from 수리영, parallel to the shoreline, framing her left-side profile in the right half while the slick concrete rock spreads across the lower third. The handheld track is nearly imperceptible, with shallow depth of field isolating her crouched stillness against a fog-softened empty harbor.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "crouched on wet rock",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Prominent lower-frame texture supporting her crouched posture",
            "directionality_class": "non_directional",
            "element": "wet concrete rock",
            "orientation": "",
            "state": "rain-slick, darkened, puddled"
          },
          {
            "camera_use": "Soft background void that absorbs her stare",
            "directionality_class": "non_directional",
            "element": "fog over the sea",
            "orientation": "",
            "state": "dense, blue-gray, obscuring the horizon"
          },
          {
            "camera_use": "Thin horizontal spatial cue behind her profile",
            "directionality_class": "directional_3d",
            "element": "shoreline edge",
            "orientation": "Its long side runs parallel to the camera axis, separating rock from misty water.",
            "state": "wet and partially lost in haze"
          }
        ],
        "lighting_mood": "Cold blue-gray dusk light lies flat through heavy mist, with damp concrete catching faint silver highlights and no warm relief.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Continuing from the dockside confrontation flow, the camera widens to a full-body observer frame about 5 meters from 수리영, lens slightly below her face line and angled up toward the mooring area. She is held near center-left, both hands locked on her backpack straps, while the boat’s hull and rope line remain soft at the upper right rather than taking over the frame.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "gripping backpack straps",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Secondary background mass suggesting the source of her plea",
            "directionality_class": "directional_3d",
            "element": "small fishing boat hull",
            "orientation": "The side of the hull faces the camera at a slight upward angle, cropped and softened near the upper right.",
            "state": "wet, idling, partially veiled by fog"
          },
          {
            "camera_use": "Diagonal line leading from her feet toward the boat",
            "directionality_class": "directional_3d",
            "element": "mooring rope",
            "orientation": "The rope runs from the lower dock area toward the boat, showing its length and tension.",
            "state": "damp and taut"
          },
          {
            "camera_use": "Ground plane emphasizing her full-body stillness",
            "directionality_class": "non_directional",
            "element": "wet pier surface",
            "orientation": "",
            "state": "dark, slick, scattered with rain sheen"
          }
        ],
        "lighting_mood": "Low-key overcast dusk keeps her face cool and tense, with the fog muting the boat into a blue-gray silhouette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the boarding point, the camera follows the flow into a static frontal observer frame about 2.5 meters from 수리영, placing her upper body in the center with the foggy sea directly behind her. The smartphone sits near her mouth in the lower-right area of her face line, small enough not to dominate, while her restrained smile freezes the dock’s motion into a farewell pause.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "phone lifted to mouth",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Backplane behind her silhouette, making the message feel like a departure",
            "directionality_class": "non_directional",
            "element": "foggy sea",
            "orientation": "",
            "state": "opaque, blue-gray, horizon erased"
          },
          {
            "camera_use": "Small foreground-adjacent prop marking the voice message action",
            "directionality_class": "content_surface",
            "element": "smartphone",
            "orientation": "The dark screen face is angled obliquely toward camera and her mouth, with no readable content visible.",
            "state": "on but visually dim"
          },
          {
            "camera_use": "Side structure indicating she is about to board",
            "directionality_class": "directional_3d",
            "element": "boat rail near boarding point",
            "orientation": "A side edge of the rail cuts diagonally behind her shoulder, pointing toward the boat entrance.",
            "state": "wet and softly out of focus"
          }
        ],
        "lighting_mood": "Mist-cooled dusk backlight wraps her hair and shoulders, leaving the face in soft blue-gray shadow with only a faint wet highlight on the phone.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 10,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the cluttered rooftop room, the camera inherits the eye-level dolly-in and stays tighter than the room layout, about 2 meters in front of 혜수 as her furrowed brow and rigid mouth occupy the center. The phone at her ear cuts along the frame’s right side, while the ruined living room remains compressed into broken shapes behind her shoulders.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "phone pressed to ear",
            "character": "혜수",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Chaotic background texture around her tense face",
            "directionality_class": "non_directional",
            "element": "cluttered living room floor",
            "orientation": "",
            "state": "messy, scattered, disturbed"
          },
          {
            "camera_use": "Action prop held tight against her ear",
            "directionality_class": "content_surface",
            "element": "smartphone",
            "orientation": "The screen side is mostly hidden against her ear, so its content is not visible to camera.",
            "state": "active, being listened to"
          },
          {
            "camera_use": "Dim room depth behind her, suggesting the later door movement",
            "directionality_class": "directional_3d",
            "element": "entryway opening",
            "orientation": "The inner side of the opening recedes behind her shoulder, partially blocked by room clutter.",
            "state": "shadowed and unsettled"
          }
        ],
        "lighting_mood": "A cold blue-gray practical wash and weak dusk spill keep her face low-key, with damp-looking shadows pooling in the wrecked room.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The crane move resolves into a high overhead omniscient view from near the ceiling, looking straight down on the half-open metal front door and the empty threshold. The door sits off-center in the upper half, stopped at an uneasy angle, while its long shadow stretches diagonally across the lower floor like a dark stain.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary overhead subject, frozen in an abandoned open position",
            "directionality_class": "directional_3d",
            "element": "half-open metal front door",
            "orientation": "The inner face and thickness of the metal door are visible from above, opened halfway into the room.",
            "state": "half-open, rattled by wind, now momentarily still"
          },
          {
            "camera_use": "Graphic pattern creating bleak negative space",
            "directionality_class": "non_directional",
            "element": "long door shadows",
            "orientation": "",
            "state": "stretched, dark, uneven"
          },
          {
            "camera_use": "Empty boundary between inside and outside",
            "directionality_class": "directional_3d",
            "element": "entry threshold",
            "orientation": "The rectangular threshold is seen from above, separating the interior floor from the darker exterior edge.",
            "state": "bare, cold, deserted"
          }
        ],
        "lighting_mood": "Sparse blue-gray dusk from outside slices through the entry, turning the floor into low-key shadow geometry with a desolate chill.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height between them, the camera begins the reveal push about 1 meter from 수리영’s raised hand, letting the old photograph and her fingers occupy the central foreground while 인우 sits blurred beyond it. The frame stays tight enough that the photo leads the eye first, with the deck and horizon reduced to damp blue-gray slivers around the evidence.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "arm lifting photograph",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "shoulders drawing back",
            "character": "인우",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Foreground focal evidence between the two characters",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "The printed front face is visible to camera, including the small writing and the aged image surface.",
            "state": "worn, slightly curled, damp-edged"
          },
          {
            "camera_use": "Narrow contextual strip beneath the hand",
            "directionality_class": "non_directional",
            "element": "wet boat deck",
            "orientation": "",
            "state": "dark, slippery, rain-specked"
          },
          {
            "camera_use": "Soft boundary behind 인우, keeping the boat location legible",
            "directionality_class": "directional_3d",
            "element": "boat railing",
            "orientation": "The rail’s side line recedes behind 인우 at a shallow diagonal.",
            "state": "wet and out of focus"
          }
        ],
        "lighting_mood": "Cold maritime dusk flattens the deck into blue-gray mist, with the pale photograph catching the only sharp highlight.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "수리영 is represented mainly by her hand and partial arm holding the photograph; a full outlook reference would over-specify details not visible in this tight evidence frame.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "The push-in ends at eye level roughly 40 centimeters from 인우’s face, compressing the deck until his widened eyes fill most of the frame. 수리영’s presence is kept as a blurred sliver and hard eye-line pressure from the opposite side, so the main change is the camera distance tightening into his fear rather than a new axis.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "head recoiling slightly",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "leaning into stare",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Compressed background texture behind his face",
            "directionality_class": "non_directional",
            "element": "fog-softened deck background",
            "orientation": "",
            "state": "blurred, damp, unstable"
          },
          {
            "camera_use": "Faint hard edge giving spatial pressure near his cheek",
            "directionality_class": "directional_3d",
            "element": "wheelhouse exterior edge",
            "orientation": "A side edge of the structure sits out of focus behind 인우, cutting a vertical line through the haze.",
            "state": "wet, dark, indistinct"
          },
          {
            "camera_use": "Residual evidence color near the lower edge",
            "directionality_class": "content_surface",
            "element": "old photograph edge",
            "orientation": "Only a blurred strip of the printed front face remains near the lower frame, with no readable detail.",
            "state": "out of focus, still in hand"
          }
        ],
        "lighting_mood": "The light is cold and low, catching wet reflections in 인우’s pupils while the rest of the frame sinks into blue-gray deck shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 7,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "수리영 appears only as a partial blurred edge and gaze presence; base identity is enough without requiring a detailed outlook match.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "The handheld pursuit stops at shoulder height in the wheelhouse doorway, tight behind 인우’s shoulder so his hand clamped on the doorframe anchors the foreground left. 수리영 crowds into the same narrow depth just behind him on the right, their upper bodies overlapping in the doorway while the wheelhouse interior is squeezed into a dark strip ahead.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "gripping wheelhouse frame",
            "character": "인우",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "crowding behind shoulder",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "인우",
              "screen_zone": "middle_left",
              "target_id": "C03",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "wheelhouse doorway",
              "label": "수리영",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "wheelhouse doorway",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Primary spatial choke point framing both bodies",
            "directionality_class": "directional_3d",
            "element": "wheelhouse doorframe",
            "orientation": "The side edge and inner face of the frame are visible, with 인우’s hand wrapped around the near edge.",
            "state": "wet, worn, tightly gripped"
          },
          {
            "camera_use": "Dark destination he is trying to reach",
            "directionality_class": "transparent_surface",
            "element": "wheelhouse front window",
            "orientation": "Damp glass shows a murky interior reflection and faint controls beyond it.",
            "state": "fogged, streaked, dim"
          },
          {
            "camera_use": "Unstable floor plane under the stopped pursuit",
            "directionality_class": "non_directional",
            "element": "narrow deck passage",
            "orientation": "",
            "state": "slick and vibrating with boat motion"
          }
        ],
        "lighting_mood": "Blue-gray exterior mist leaks into the doorway while the wheelhouse interior falls into low-key shadow, trapping both figures in a cold compressed band.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 10,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "This is 인우’s direct subjective point of view: the lens sits at his eye level directly in front of 수리영, centered almost perfectly on her tear-bright furious face as the wheelhouse background collapses behind her. A slight handheld tremor keeps her confrontation alive, but her face remains the frame’s fixed emotional target, with only the blurred steering-room edges visible around her.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "leaning forward pleading",
            "character": "수리영",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Compressed background behind her face",
            "directionality_class": "directional_3d",
            "element": "wheelhouse wall",
            "orientation": "The wall’s front plane faces camera behind 수리영, flattened by the tight lens.",
            "state": "dim, damp-stained, out of focus"
          },
          {
            "camera_use": "Peripheral hint of the boat controls without stealing focus",
            "directionality_class": "directional_3d",
            "element": "steering wheel edge",
            "orientation": "Only a curved side edge intrudes softly at the lower background, angled away from camera.",
            "state": "dark, partially obscured"
          },
          {
            "camera_use": "Cold exterior haze filtered into the cabin",
            "directionality_class": "transparent_surface",
            "element": "wheelhouse window",
            "orientation": "Fogged glass behind her shows only milky sea light with no clear view beyond.",
            "state": "mist-streaked and dull"
          }
        ],
        "lighting_mood": "Low-key blue-gray cabin light carves wet highlights under her eyes, with a barely perceptible crimson fleck from a navigation indicator deep in the blur.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "인우",
        "scene_index": 29,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera drops into the evidence close-observation flow, hovering about 30 centimeters above the photograph at a downward angle over 수리영’s hand. Her fingertip and the selected child’s printed figure occupy the center, while the second child and the worn photo border remain partially visible so the gesture reads as identification rather than an abstract detail.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "finger pressing photograph",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary content surface carrying the revelation",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "The printed front face is fully visible at a slight diagonal, showing two Korean young girls, with 수리영’s fingertip touching one child’s figure.",
            "state": "aged, creased, slightly damp"
          },
          {
            "camera_use": "Dark support surface under the photograph",
            "directionality_class": "non_directional",
            "element": "wheelhouse console surface",
            "orientation": "",
            "state": "scuffed, wet-specked, low-lit"
          },
          {
            "camera_use": "Soft shadow boundary around the insert",
            "directionality_class": "non_directional",
            "element": "cabin shadow falloff",
            "orientation": "",
            "state": "deep blue-gray, uneven"
          }
        ],
        "lighting_mood": "A narrow cold highlight skims the fingertip and glossy photo emulsion, while the surrounding console sinks into damp low-key blue-gray shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 6,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 수리영’s hand and fingertip are visible in this insert, so a full outlook reference is unnecessary and could conflict with the macro composition.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "A completely locked-off tight two-shot at shoulder height, placed just beside 인우 about 60 centimeters away, holding 수리영’s unconscious head where it presses into his shoulder. The frame is still and claustrophobic: 수리영’s face occupies the left-center foreground with her cheek weighted against fabric, while 인우 is caught in right-center three-quarter profile, frozen rather than reacting; the blurred 조타실 wall and controls remain compressed behind them.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "head slumped on shoulder",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "unconscious"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "shoulder locked under weight",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft, compressed background texture behind the two heads, keeping the earlier occult clue present but no longer active.",
            "directionality_class": "content_surface",
            "element": "조타실 벽의 희미한 원형 자국들",
            "orientation": "The marked wall face is visible behind 인우, with several faded circular stains and one muted crimson ring partially obscured by his shoulder.",
            "state": "damp, stained, out of focus"
          },
          {
            "camera_use": "Dark lower-edge foreground shape that grounds the location without stealing focus.",
            "directionality_class": "directional_3d",
            "element": "조타륜 일부",
            "orientation": "Only the side edge of the wheel faces the camera near the lower frame, reduced to a blurred dark arc.",
            "state": "still, wet-sheened"
          },
          {
            "camera_use": "Cold exterior glow leaking in from behind the figures, outlining their shoulders.",
            "directionality_class": "transparent_surface",
            "element": "조타실 유리창",
            "orientation": "Condensed glass sits behind them, showing only smeared blue-gray dusk and indistinct mist beyond.",
            "state": "fogged, damp, closed"
          }
        ],
        "lighting_mood": "Low-key practical light mixes with cold blue-gray dusk through wet glass, leaving only a faint restrained crimson accent from the blurred wall ring.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 13,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "A low observer camera glides forward about one meter above the sea surface, facing the horizon straight-on as if the boat’s path has become the camera’s path, but the boat itself stays out of frame. The dark gray fog wall stretches across the upper half of the frame like a vertical boundary, while the calm water occupies the lower half with fading sunset reflections broken into cold, metallic ripples.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary landscape boundary and visual destination of the dolly-in.",
            "directionality_class": "non_directional",
            "element": "거대한 회색 안개벽",
            "orientation": "",
            "state": "dense, towering, slowly swallowing the horizon"
          },
          {
            "camera_use": "Reflective plane carrying the last sunset light toward the camera.",
            "directionality_class": "reflective_surface",
            "element": "해질녘 바다 수면",
            "orientation": "The water reflects a dim gold band of sunset beneath the fog, broken by faint blue-gray ripples.",
            "state": "calm, damp, slightly rippled"
          },
          {
            "camera_use": "Thin atmospheric seam behind the fog, giving scale to the boundary.",
            "directionality_class": "non_directional",
            "element": "흐려지는 수평선",
            "orientation": "",
            "state": "nearly erased by mist"
          },
          {
            "camera_use": "Subtle color contrast behind the otherwise cold palette.",
            "directionality_class": "non_directional",
            "element": "저무는 노을빛",
            "orientation": "",
            "state": "fading, desaturated gold"
          }
        ],
        "lighting_mood": "Cold blue-gray mist dominates, with the sunset reduced to a weak tarnished gold reflection under heavy atmospheric haze.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 30,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera tracks very low beside the bow, about half a meter above the water and slightly off center, tightening so the pointed prow cuts through the lower center of the frame without exceeding a natural scale. The fog wall presses down from the upper frame, while water splits visibly along both sides of the prow in mirrored ripples, creating a restrained, forward-driving impact rather than a heroic maritime image.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "dark fog wall",
              "label": "pointed fishing-boat bow",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dark fog wall",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "split water ripples on both sides",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary moving form that pierces the fog, anchored in the lower center as a sharp directional wedge.",
            "directionality_class": "directional_3d",
            "element": "어선의 뾰족한 뱃머리",
            "orientation": "The prow points away from camera toward the fog, its wet upper ridge visible and its sides cutting diagonally toward both lower corners.",
            "state": "wet, advancing, darkened by mist"
          },
          {
            "camera_use": "Impact surface directly ahead of the bow.",
            "directionality_class": "non_directional",
            "element": "짙은 안개벽 표면",
            "orientation": "",
            "state": "dense, dark gray, beginning to engulf the prow"
          },
          {
            "camera_use": "Motion evidence on both sides of the bow, clarifying forward travel.",
            "directionality_class": "reflective_surface",
            "element": "갈라지는 바닷물",
            "orientation": "The water reflects cold gray fog and broken sunset traces while splitting symmetrically along the prow’s left and right sides.",
            "state": "rippling, parted, slick"
          },
          {
            "camera_use": "Atmospheric veil softening the upper edges of the frame.",
            "directionality_class": "non_directional",
            "element": "수면 위 낮은 해무",
            "orientation": "",
            "state": "heavy, drifting, cold"
          }
        ],
        "lighting_mood": "The palette stays blue-gray and damp, with only a faint dying gold glint on the parted water before the fog absorbs it.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 30,
        "shot_index": 3,
        "subject_reference_policy": []
      }
    ],
    "total": 63,
    "failed_batches": 0
  },
  "step_id": "shot_staging",
  "run_id": "a6c7b44e-10c8-42a6-8432-39daf4f67709",
  "resolved_model": "gpt",
  "updated_at": "2026-06-30T02:51:29.991209+00:00",
  "schema_version": 6,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}