{
  "status": "completed",
  "completed_count": 58,
  "applicable_count": 58,
  "failed_count": 0,
  "data": {
    "shots": [
      {
        "camera_direction": "From ground level within close-up distance, aim slightly downward across the injured thigh as the bite wound sits near frame center and the man's hip and the soil provide scale at the edges. Hold the stage-entry composition nearly static before the beginning of the prescribed pullback, using shallow focus to isolate the pooled blood and tooth impressions.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "hip pressed to ground",
            "character": "금월산 피해 남성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Visible beneath and around the thigh as the immediate ground plane and scale reference.",
            "directionality_class": "non_directional",
            "element": "흙바닥",
            "orientation": "",
            "state": "The man's injured thigh is pressed against it."
          },
          {
            "camera_use": "Soft peripheral framing that preserves the forest location without competing with the wound.",
            "directionality_class": "non_directional",
            "element": "우거진 수풀",
            "orientation": "",
            "state": "Dense around the ground-level view."
          }
        ],
        "lighting_mood": "Diminishing sunset ambient light holds a dark, desaturated forest palette while the blood supplies the restrained crimson accent.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 1,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only the injured thigh and adjacent body area are framed, so a full outlook reference would not align reliably.",
            "subject_id": "C07"
          }
        ]
      },
      {
        "camera_direction": "The crane settles directly above the bodies into a static, straight-down high-angle hold, with the dark figure laid across the center of the man's torso and the man's limbs extending into the surrounding frame. Keep both bodies fully legible against the forest floor, emphasizing the completed vertical rise rather than adding lateral movement.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "crouched across victim's torso",
            "character": "정체불명 검은 존재",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C07",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "supine beneath crushing weight",
            "character": "금월산 피해 남성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "정체불명 검은 존재",
              "screen_zone": "middle_center",
              "target_id": "C11",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "금월산 피해 남성",
              "screen_zone": "middle_center",
              "target_id": "C07",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "The overhead ground plane separates the overlapping silhouettes of attacker and victim.",
            "directionality_class": "non_directional",
            "element": "숲 바닥",
            "orientation": "",
            "state": "Both figures lie against it."
          },
          {
            "camera_use": "Irregular perimeter framing around the bodies in the vertical composition.",
            "directionality_class": "non_directional",
            "element": "우거진 수풀",
            "orientation": "",
            "state": "Dense around the attack site."
          }
        ],
        "lighting_mood": "Fading sunset ambience creates low-key, desaturated separation, with the dark figure reading as a dense mass over the victim.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At neck height beside the pair, finish the dolly-in on an extremely tight opposing-profile composition: the man's lips and teeth enter from one side, the woman's neck from the other, and suspended blood droplets remain in the narrow gap between them. The frame freezes the instant before the planned downward tilt, excluding almost all alley context while preserving the physical bite.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "jaw buried into neck",
            "character": "한국인 신원미상 남성",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "neck arched under bite",
            "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": "A narrow blurred vertical trace behind the tightly framed profiles anchors them to the alley location.",
            "directionality_class": "directional_3d",
            "element": "전봇대",
            "orientation": "Only a shallow section of the side facing the pair remains visible behind them.",
            "state": "The two people are pressed near it."
          }
        ],
        "lighting_mood": "Faint streetlight illumination leaves the profiles in low-key desaturated contrast, with the airborne blood as the only restrained dark-crimson accent.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The crop isolates only part of the man's profile, mouth, and jaw at the bite point.",
            "subject_id": "C09"
          },
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The crop shows chiefly the woman's neck and a partial profile rather than a complete outlook.",
            "subject_id": "C08"
          }
        ]
      },
      {
        "camera_direction": "From a low position over the alley ground, complete the dolly-out into a broad, static-feeling view aimed back toward the utility pole. Place the motionless woman as a small figure near the pole while the empty alley occupies most of the frame, allowing the withdrawal itself to create the final silence.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "collapsed motionless on ground",
            "character": "효장동 피해 여성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary negative space extending from the low foreground toward the distant body.",
            "directionality_class": "non_directional",
            "element": "어두운 골목길",
            "orientation": "",
            "state": "Empty except for the motionless woman."
          },
          {
            "camera_use": "Distant spatial anchor locating where the woman fell.",
            "directionality_class": "directional_3d",
            "element": "전봇대",
            "orientation": "Its side faces the withdrawing camera, with the woman positioned near its base.",
            "state": "Fixed at the far end of the composition."
          }
        ],
        "lighting_mood": "The faint streetlights provide sparse low-key visibility across a dark, desaturated night alley.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Presented as regional-news footage, the camera finishes its chest-height frontal dolly-in at medium distance with 혜수 centered from the waist up, her radio held clearly within the lower portion of frame. Police remain compressed along both lateral edges and the police line crosses the rear field, turning the otherwise direct command portrait into a crowded operational image.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "command stance, radio gripped",
            "character": "혜수",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "clustered around field work",
            "character": "경찰 무리",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "A visible boundary behind 혜수 that separates command personnel from the recovery activity.",
            "directionality_class": "content_surface",
            "element": "폴리스 라인",
            "orientation": "The printed warning side faces the news camera and runs laterally behind 혜수.",
            "state": "Set around the investigation area."
          },
          {
            "camera_use": "Layered background activity establishing the active crime-scene investigation.",
            "directionality_class": "non_directional",
            "element": "시신 수거 현장",
            "orientation": "",
            "state": "Police are examining the scene and recovering bodies."
          }
        ],
        "lighting_mood": "Daytime ambient illumination is rendered with subdued, desaturated contrast and the slightly flattened tonal response of news footage.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 3,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From above and outside the rooftop edge, hold a wide, slightly elevated static view that reveals the old rooftop room as the central mass and keeps enough surrounding rooftop visible to establish its isolation. Angle the structure so the rusted iron door is legible on one face without allowing it to overwhelm the broader rooftop layout.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Central architectural subject within the wide rooftop reveal.",
            "directionality_class": "directional_3d",
            "element": "낡은 옥탑방 외부",
            "orientation": "The door-bearing exterior face and one adjoining side are visible from the elevated oblique viewpoint.",
            "state": "Old and worn."
          },
          {
            "camera_use": "Secondary focal point on the camera-facing wall of the rooftop room.",
            "directionality_class": "directional_3d",
            "element": "녹슨 철문",
            "orientation": "Its broad exterior face is turned toward the camera at a slight angle.",
            "state": "Rusted; its open or closed position is not specified."
          },
          {
            "camera_use": "Foreground boundary that frames the elevated approach and locates the room on the villa roof.",
            "directionality_class": "directional_3d",
            "element": "옥상 가장자리",
            "orientation": "Seen obliquely beneath the camera, leading toward the rooftop room.",
            "state": "Part of the old multi-unit villa rooftop."
          }
        ],
        "lighting_mood": "Natural daytime ambient light is treated in a restrained, desaturated register with low-key tonal weight.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Beside the table at seated chest height, lower slightly at the end of the dolly-in and look down onto 강민숙's inner wrist resting across the tabletop. The wrist occupies most of the central frame without exceeding a natural human scale, while the small geometric circle remains sharp and the surrounding hand and table edge provide context.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "forearm resting on table",
            "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": "Simple surrounding plane that isolates the wrist and supplies a clear scale reference.",
            "directionality_class": "non_directional",
            "element": "식탁 상판",
            "orientation": "",
            "state": "The bare wrist rests on it."
          }
        ],
        "lighting_mood": "The sunlight admitted through the small living-room window gives the wrist natural but restrained illumination within the otherwise desaturated interior.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 6,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 강민숙's bare wrist and hand are shown, so the base identity is preferable to a full outlook reference.",
            "subject_id": "C04"
          }
        ]
      },
      {
        "camera_direction": "At shoulder height beside 강민숙, finish the track in a close conversational frame facing 수리영 in three-quarter profile as she presses her nose into her mother's shoulder. Keep 수리영's softly smiling face in the center-right and 강민숙's shoulder and partial profile in the left foreground, preserving their contact rather than opening the composition.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "face nestled into shoulder",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "shoulder softened toward daughter",
            "character": "강민숙",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "강민숙",
              "screen_zone": "middle_left",
              "target_id": "C04",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft, minimally visible spatial context behind the close mother-daughter contact.",
            "directionality_class": "non_directional",
            "element": "현관 근처 실내 공간",
            "orientation": "",
            "state": "수리영 is prepared to leave from this area."
          }
        ],
        "lighting_mood": "Daylight entering through the small living-room window is kept soft and desaturated, briefly easing the oppressive interior mood without introducing another light source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Centered at upper-torso height ahead of the bicycle, travel backward at 수리영's pace while the dolly-in narrows to her frontal upper body. Keep her face in the upper center, eyes closed and chin raised, with the earphones visible and her hair streaming backward relative to her forward movement while the road remains a stable scale reference beneath her.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "pedaling with chin lifted",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "forward camera axis",
              "label": "수리영 riding toward camera",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "coastal road behind 수리영",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Moving background and lower-frame scale reference that communicates bicycle speed.",
            "directionality_class": "non_directional",
            "element": "해안가 도로",
            "orientation": "",
            "state": "수리영 is riding along it during daytime."
          }
        ],
        "lighting_mood": "Cool, desaturated daytime tonality preserves clear and lively visibility while retaining restrained contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 6,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At eye level directly in front of 수리영, complete the dolly-in and lock into a facial close-up with the cage front immediately beside the camera axis. Her unsmiling face occupies most of the frame and her eyeline passes just beyond the lens toward the excluded 로트와일러, while a narrow strip of cage structure prevents the shot from becoming a detached portrait.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "leaning toward cage front",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C13",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "로트와일러 beyond the lens axis",
              "label": "수리영 alone in close-up",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "A narrow edge adjacent to the lens axis that carries 수리영's eyeline toward the off-frame dog.",
            "directionality_class": "directional_3d",
            "element": "철장 전면",
            "orientation": "The cage front runs beside the camera axis, with only a slim portion visible around 수리영's face.",
            "state": "The 로트와일러 is confined behind it but excluded from this frame."
          }
        ],
        "lighting_mood": "Natural daytime ambient light at the shelter is rendered with cool, desaturated low-key restraint across 수리영's fixed expression.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From chest height in the shelter corner, the tracking move settles into a medium upper-body hold on 수리영 at a slight downward angle, inheriting the line of her lowered gaze. She occupies the right-center of frame with the phone pressed to her ear, while restrained headroom and a subtle downward tilt concentrate attention on her furrowed brow before the camera pans away toward the helper's call.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "phone pressed to ear",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Provides a compressed background boundary behind 수리영, isolating the private call from the shelter activity.",
            "directionality_class": "non_directional",
            "element": "shelter corner",
            "orientation": "",
            "state": "Present; no further state specified."
          },
          {
            "camera_use": "Held beside her face as the action-defining prop, with its narrow side visible to camera.",
            "directionality_class": "directional_3d",
            "element": "mobile phone",
            "orientation": "Its side and partial back face the camera while the speaker side is pressed to her ear.",
            "state": "Held to her ear during an unanswered call attempt."
          }
        ],
        "lighting_mood": "Muted daytime ambient light with low-key, desaturated contrast keeps the moment naturalistic and subdued.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera tracks backward from the center of the road at upper-torso height, holding 수리영 frontally as she rides directly toward it. Her bicycle and body remain centered while taxis, solicitation activity, stalls, and neon signage pass along both outer thirds, preserving her forward travel and the busy street depth.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "driving pedal downward",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "camera along the road",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Carries 수리영 through the center of the composition and establishes her direction of travel.",
            "directionality_class": "non_directional",
            "element": "entertainment-district road",
            "orientation": "",
            "state": "Active with taxis and street activity."
          },
          {
            "camera_use": "Creates receding illuminated accents along the lateral background without interrupting the centered track.",
            "directionality_class": "content_surface",
            "element": "red neon signs",
            "orientation": "Their illuminated sign faces are visible obliquely along the street edges; specific lettering is not established.",
            "state": "Illuminated."
          },
          {
            "camera_use": "Forms intermittent environmental layers along the roadside behind the moving bicycle.",
            "directionality_class": "directional_3d",
            "element": "street stalls",
            "orientation": "Their open customer-facing sides angle toward the road and camera path.",
            "state": "In operation with solicitation activity nearby."
          },
          {
            "camera_use": "Provides the moving support and a clear full-body scale reference beneath 수리영.",
            "directionality_class": "directional_3d",
            "element": "bicycle",
            "orientation": "Its front wheel points toward the camera while the frame recedes behind it.",
            "state": "Being ridden."
          }
        ],
        "lighting_mood": "Dusk illumination mixes restrained red neon accents with dark, desaturated street tones and naturalistic low-key contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the entrance at chest height, the camera holds at a medium-close distance in front of 수리영, offset just enough for a three-quarter view rather than a direct portrait. Her upper body occupies the left-center, the dark phone screen sits below her fixed expression, and part of the bicycle remains visible at the right edge as a grounded scale reference.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "braced beside bicycle",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Frames the exterior location behind 수리영 and marks that she has just exited the store.",
            "directionality_class": "directional_3d",
            "element": "supermarket entrance",
            "orientation": "The exterior-facing side of the entrance is seen behind and slightly beside her.",
            "state": "No open or closed state specified."
          },
          {
            "camera_use": "Remains partially visible beside her, anchoring her intended departure home.",
            "directionality_class": "directional_3d",
            "element": "bicycle",
            "orientation": "One side of the bicycle faces camera near the right edge.",
            "state": "Stationary beside 수리영."
          },
          {
            "camera_use": "Shares focus with her face in the lower central portion of the composition.",
            "directionality_class": "content_surface",
            "element": "mobile phone screen",
            "orientation": "The front screen is angled upward toward 수리영 and remains sufficiently visible to camera as a dark display.",
            "state": "Screen appears dark."
          }
        ],
        "lighting_mood": "Darkening dusk and available exterior illumination are rendered in restrained, desaturated low-key contrast without embellishing an additional source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At bicycle-axle height on 수리영's left, the camera tracks parallel in a perpendicular profile, holding her full bicycle silhouette across the middle of frame. Her torso pitches low over the handlebars, one knee drives downward, and the coastal road streams horizontally behind her while her clothing trails opposite the direction of travel.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "torso low over handlebars",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "screen right along the coastal road",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Supplies the horizontal movement axis beneath and behind the bicycle.",
            "directionality_class": "non_directional",
            "element": "coastal road",
            "orientation": "",
            "state": "No additional surface state specified."
          },
          {
            "camera_use": "Defines the complete profile silhouette and active pedaling rhythm.",
            "directionality_class": "directional_3d",
            "element": "bicycle",
            "orientation": "Its left side is presented squarely to camera in full profile.",
            "state": "Moving rapidly along the road."
          }
        ],
        "lighting_mood": "Moonlight shapes a stark side silhouette within a near-black, desaturated night palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 9,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Immediately outside the doorway at shoulder height, the camera peers through the narrow opening from an oblique side angle and holds the exact instant when only half of 한국인 신원미상 남성's shoulder line has crossed the threshold. The door edge divides the close frame vertically, concealing his face and leaving his shoulder and upper back compressed within the opening.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "slipping shoulder through doorway",
            "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": "interior of the rooftop room",
              "label": "한국인 신원미상 남성",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "partially opened iron door",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Creates a narrow through-object frame that hides the intruder's face and bisects his shoulder.",
            "directionality_class": "directional_3d",
            "element": "iron entrance door",
            "orientation": "Its edge and part of the exterior-facing plane angle across the foreground while the opening reveals the interior threshold.",
            "state": "Slightly open."
          },
          {
            "camera_use": "Defines the compressed passage through which the upper body is entering.",
            "directionality_class": "non_directional",
            "element": "doorway opening",
            "orientation": "",
            "state": "Narrow due to the slightly opened door."
          }
        ],
        "lighting_mood": "Low-key night contrast reduces the intruder to a dark shoulder contour while preserving the hard geometry of the threshold.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera cuts to a fixed position close and perpendicular to the small window, widening only within its plane so both figures remain enclosed by the window boundaries. 거대한 검은 그림자 rises across the upper-right and bends toward 강민숙's shoulder in the lower-left, their forms visible only as distorted silhouettes through the obscuring glass.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "folded over her shoulder",
            "character": "거대한 검은 그림자",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C04",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "collapsed on the floor",
            "character": "강민숙",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "looks_toward",
              "gesture_target_label": "강민숙's shoulder",
              "label": "거대한 검은 그림자",
              "screen_zone": "upper_right",
              "target_id": "C12",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "강민숙",
              "screen_zone": "lower_left",
              "target_id": "C04",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "small obscuring window",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Acts as the entire observational barrier and confines the attack to a flattened silhouette tableau.",
            "directionality_class": "transparent_surface",
            "element": "small obscuring glass window",
            "orientation": "The camera faces the pane squarely; the figures beyond are visible only as indistinct silhouettes with interior detail obscured.",
            "state": "Intact; transparency is limited."
          },
          {
            "camera_use": "Provides the enclosing border around both silhouettes.",
            "directionality_class": "directional_3d",
            "element": "window frame",
            "orientation": "Its front plane faces camera nearly squarely and bounds the figures on all sides.",
            "state": "No further state specified."
          }
        ],
        "lighting_mood": "Severe night contrast behind the obscuring pane creates a grim, desaturated silhouette image without identifying a specific interior source.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At upper-torso height on the rooftop, the static camera faces 수리영 along her fixed eyeline and holds her in a centered medium frame. Her planted stance is implied by locked shoulders and an arrested torso, while her slightly open mouth and gaze just past the lens carry the cut toward the entrance rather than inviting direct address.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "feet planted shoulders locked",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "rooftop-room entrance beyond the camera axis",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Provides sparse rooftop context while keeping all compositional pressure on 수리영's arrested reaction.",
            "directionality_class": "non_directional",
            "element": "rooftop area",
            "orientation": "",
            "state": "No additional state specified."
          }
        ],
        "lighting_mood": "Natural night ambience is kept dark and desaturated, with restrained contrast shaping her rigid expression.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From 수리영's eye height and approximate position, the static camera looks directly toward the rooftop-room entrance from several meters away; 수리영 is completely excluded as this is her optical viewpoint. The half-open iron door sits near center with its angled slab on one side and the dark interior occupying the revealed gap, leaving surrounding rooftop space only as a narrow margin.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "half-open iron door",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dark room interior",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal anchor of the subjective reveal, with its opening forming an asymmetrical dark void.",
            "directionality_class": "directional_3d",
            "element": "rusty iron entrance door",
            "orientation": "The exterior plane is seen obliquely, while the door edge points into the visible entrance gap.",
            "state": "Half open and rusty."
          },
          {
            "camera_use": "Appears through the door gap as the endpoint of 수리영's stare.",
            "directionality_class": "non_directional",
            "element": "room interior beyond the entrance",
            "orientation": "",
            "state": "Dark; no interior detail is visible."
          }
        ],
        "lighting_mood": "Night ambience leaves the entrance in low-key, desaturated contrast and the interior in deep darkness.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 11,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just above floor level inside 수리영's bedroom, the camera aims nearly perpendicular to the floor from the doorway and begins a controlled dolly toward the room's center. Scattered stains break across the outer frame while the large pool lies centrally, with enough surrounding floor retained to show scale and the route that will lead toward the curtain.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "large pool of blood",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "scattered bloodstains",
              "screen_zone": "lower_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Forms the near-overhead field across which the dolly will later follow the evidence.",
            "directionality_class": "non_directional",
            "element": "bedroom floor",
            "orientation": "",
            "state": "Marked by scattered bloodstains and pooled blood."
          },
          {
            "camera_use": "Serves as the central discovery point while remaining surrounded by visible floor for spatial context.",
            "directionality_class": "non_directional",
            "element": "large pool of blood",
            "orientation": "",
            "state": "Pooled on the floor."
          },
          {
            "camera_use": "Creates an irregular trail across the composition and foreshadows the footprints toward the curtain.",
            "directionality_class": "non_directional",
            "element": "scattered bloodstains",
            "orientation": "",
            "state": "Distributed across multiple areas of the floor."
          }
        ],
        "lighting_mood": "Low-key ambient spill appropriate to the bedroom keeps the blood's restrained crimson distinct against a dark, desaturated field.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At knee height near the curtain, the completed pan pauses several feet from 강민숙 and angles slightly downward to preserve her entire seated figure. She occupies the lower-center in a three-quarter view, head and torso folded forward without movement, while the displaced curtain remains at one edge as the boundary that had concealed her.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "seated torso folded forward",
            "character": "강민숙",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "강민숙",
              "screen_zone": "middle_center",
              "target_id": "C04",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Frames one side of the revealed body and records the barrier that was just pulled aside.",
            "directionality_class": "directional_3d",
            "element": "curtain",
            "orientation": "The curtain has been displaced to one side, opening the camera's view toward 강민숙.",
            "state": "Pulled aside."
          },
          {
            "camera_use": "Grounds her seated collapse and carries visible evidence from the preceding discovery.",
            "directionality_class": "non_directional",
            "element": "bedroom floor",
            "orientation": "",
            "state": "Bloodstained."
          }
        ],
        "lighting_mood": "Low-key room ambience renders the body in cold, desaturated tones with restrained crimson confined to the visible blood.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 13,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At hand height beside 강민숙, the completed dolly-in settles on her closed fingers and the photograph they enclose, excluding nearly all of her body. Her pale fingers occupy the frame edges while the severely crumpled photograph covers roughly the central third, preserving enough of the hand to establish its human scale.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "seated, hand clenched",
            "character": "강민숙",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Central focal clue enclosed by the dead woman's fingers.",
            "directionality_class": "content_surface",
            "element": "crumpled photograph",
            "orientation": "The camera-facing image side is crushed into overlapping folds, leaving its pictured content largely unreadable.",
            "state": "Severely crumpled and held inside the closed hand."
          }
        ],
        "lighting_mood": "Low-key, desaturated illumination isolates the pale hand and compressed photograph without introducing an unestablished light source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 19,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From hip height beside the police vehicle, the static camera holds perpendicular to 혜수's exit path as she plants one foot on the asphalt. Her profile occupies one side of the medium frame while the open door remains beside her, with the active roof lights spreading red and blue across both figure and vehicle.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "one foot planted outside",
            "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": "Retained beside 혜수 as a spatial frame and the grounded source of the colored pulses.",
            "directionality_class": "directional_3d",
            "element": "police vehicle",
            "orientation": "The vehicle's door side faces the camera, with the open door revealing 혜수's exit path.",
            "state": "Door open, siren and roof lights active."
          },
          {
            "camera_use": "Ground plane beneath 혜수's newly planted foot.",
            "directionality_class": "non_directional",
            "element": "asphalt",
            "orientation": "",
            "state": "Visible beneath the open vehicle door."
          }
        ],
        "lighting_mood": "Active police lights cast alternating red and blue pulses through an otherwise dark, desaturated nighttime exterior.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The dolly-in ends at 수리영's head height in a tight side-profile close-up, angled upward so her raised face holds the foreground while 혜수 remains above her eyeline at the opposite edge. 수리영's face takes most of the frame, with only enough of 혜수 retained to make the desperate upward exchange physically legible.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "chin lifted, shoulders locked",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning toward 수리영",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "혜수 above her eyeline",
              "label": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "수리영 below her eyeline",
              "label": "혜수",
              "screen_zone": "upper_right",
              "target_id": "C02",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft, intermittent background color separating the two profiles without displacing their eyeline exchange.",
            "directionality_class": "non_directional",
            "element": "police siren illumination",
            "orientation": "",
            "state": "Active in the exterior."
          }
        ],
        "lighting_mood": "Red and blue siren pulses intermittently cross the otherwise desaturated close-up, sharpening 수리영's pallor and 혜수's shock.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At 수리영's eye level, the forward move settles into a centered, straight-on close-up as she freezes in the cleared room. Her pale face occupies most of the frame, while the orderly room remains narrowly visible around her as negative evidence rather than competing detail.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "mid-step frozen",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Visible around 수리영 as cleared negative space where the blood evidence had been.",
            "directionality_class": "non_directional",
            "element": "bedroom floor",
            "orientation": "",
            "state": "Clean, with no bloodstains visible."
          },
          {
            "camera_use": "Narrowly retained behind 수리영 to show the missing supernatural mark.",
            "directionality_class": "directional_3d",
            "element": "bed",
            "orientation": "Its side and upper area are visible behind 수리영.",
            "state": "Orderly, with no red mark visible on the wall above it."
          },
          {
            "camera_use": "Background area confirming that the body is absent.",
            "directionality_class": "non_directional",
            "element": "area behind the curtain",
            "orientation": "",
            "state": "Empty; 강민숙's body is gone."
          }
        ],
        "lighting_mood": "Low-key, desaturated illumination renders 수리영's face pallid against the unnaturally clean room without specifying an unestablished source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From shoulder height just behind and to the side of 수리영, the completed dolly-in crops tightly across her bowed shoulder toward 혜수's resting hand. The sloping shoulder fills the lower half while 혜수's hand sits near center, with both faces largely excluded so the reassuring contact becomes the sole emotional action.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "head bowed, shoulders folded",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "hand resting on shoulder",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [],
        "lighting_mood": "Restrained, desaturated low-key illumination keeps the hand and bowed shoulder gently separated while preserving the scene's oppressive unease.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At seated eye level beside the bus-stop bench, the static medium composition looks across 수리영's profile toward the night sea. She sits off-center with her folded posture contained by the bench, while the sea occupies the open background in the direction of her unfocused gaze.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "slumped on bench",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "night sea",
              "label": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "night sea",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Supports 수리영's seated profile and establishes the bus-stop location.",
            "directionality_class": "directional_3d",
            "element": "bus-stop bench",
            "orientation": "The bench is seen from the side, aligned beneath 수리영's seated profile.",
            "state": "Occupied by 수리영."
          },
          {
            "camera_use": "Open background beyond 수리영 and the destination of her distant stare.",
            "directionality_class": "non_directional",
            "element": "sea",
            "orientation": "",
            "state": "Visible at night beyond the bench."
          }
        ],
        "lighting_mood": "Low-key nighttime ambience and a dark, desaturated palette hold 수리영 against the sea without assigning an unestablished artificial source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Several steps behind 수리영 at waist height, the tracking camera lowers just enough to retain her complete running stride as she moves away from the bench. Her back remains centered with one foot suspended above the ground, while the path opens ahead and the bench recedes without breaking the forward axis.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "mid-stride, rear foot airborne",
            "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": "path ahead",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "path ahead",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Defines the centered departure axis beneath 수리영's full stride.",
            "directionality_class": "non_directional",
            "element": "coastal path",
            "orientation": "",
            "state": "Extending away from the bus-stop area."
          },
          {
            "camera_use": "Receding spatial reference marking the point 수리영 has left.",
            "directionality_class": "directional_3d",
            "element": "bus-stop bench",
            "orientation": "Its long side falls behind the camera-following axis.",
            "state": "Left behind as 수리영 runs away."
          }
        ],
        "lighting_mood": "Dark, desaturated nighttime ambience keeps the moving figure legible against the coastal path without adding an unsupported light source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "A hard cut relocates the camera far from the bench and path at standing eye level, peering through narrow gaps between dark structures. 수리영 appears small in the distant right side during the next running bound, while 혜수 remains by the bench on the left within the same concealed wide frame.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaping through next stride",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_right",
            "body_pose": "calling with torso forward",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "moves_toward",
              "gesture_target_label": "path away from the bench",
              "label": "수리영",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "looks_toward",
              "gesture_target_label": "수리영 running away",
              "label": "혜수",
              "screen_zone": "middle_left",
              "target_id": "C02",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "bus-stop bench",
              "screen_zone": "lower_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Large foreground occluders whose gaps create the hidden observer's restricted view.",
            "directionality_class": "directional_3d",
            "element": "structures",
            "orientation": "Their near sides face the camera while narrow gaps reveal the distant path and bench.",
            "state": "Partially occluding the view."
          },
          {
            "camera_use": "Distant anchor fixing 혜수's position relative to the departing 수리영.",
            "directionality_class": "directional_3d",
            "element": "bus-stop bench",
            "orientation": "Its side is visible beside 혜수 in the distant left portion of the frame.",
            "state": "Unoccupied, with 혜수 positioned in front of it."
          }
        ],
        "lighting_mood": "The desaturated nighttime view remains low-key, with foreground structures held dark enough to make the concealed observation feel predatory.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At shoulder height just behind 혜수, the dolly-in follows her extended arm until the phone's front surface sits directly before 김형사's face. The screen occupies less than a third of the close frame, with 혜수's shoulder and forearm forming the near edge and 김형사's recoiling features providing scale behind it.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "arm thrusting phone forward",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "chin drawn slightly 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": "Near-plane focal point positioned between 혜수 and 김형사.",
            "directionality_class": "content_surface",
            "element": "mobile phone screen",
            "orientation": "The illuminated front face is turned toward 김형사 and the camera, displaying 강민숙's saved number.",
            "state": "On and displaying the selected contact number."
          }
        ],
        "lighting_mood": "Desaturated office ambience is held low-key while the active phone screen provides a restrained local emphasis justified by the visible display.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "On the reverse angle at 혜수's eye level, the static camera holds a tight three-quarter facial close-up rather than following her drifting gaze. Her furrowed brow and fixed eyes occupy most of the centered frame, with the office context reduced to indistinct edge shapes.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "jaw set, shoulders braced",
            "character": "혜수",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "혜수",
              "screen_zone": "middle_center",
              "target_id": "C02",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [],
        "lighting_mood": "Low-key, desaturated office ambience concentrates tonal contrast around 혜수's furrowed brow and rigid gaze without specifying an unestablished source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Hold a static wide composition from wall-top height several meters away, placing the black cat in profile on the left third and the lit rooftop-room window deeper in the right background along its eyeline. The wall creates a horizontal visual path between animal and window, with the cat held in tense stillness before the anticipated lateral move.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "haunches tucked on wall",
            "character": "검은 고양이",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "lit rooftop-room window",
              "label": "검은 고양이",
              "screen_zone": "middle_left",
              "target_id": "C15",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "lit rooftop-room window",
              "screen_zone": "upper_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Supports the cat and forms a horizontal compositional line toward the rooftop room.",
            "directionality_class": "directional_3d",
            "element": "담벼락",
            "orientation": "Its top edge runs laterally across the frame, with the cat perched on the visible upper side.",
            "state": "Present with the cat seated on top."
          },
          {
            "camera_use": "Distant visual target at the end of the cat's eyeline.",
            "directionality_class": "transparent_surface",
            "element": "옥탑방 창문",
            "orientation": "The camera sees the illuminated rooftop-room interior side through the window from a distance.",
            "state": "Lit."
          }
        ],
        "lighting_mood": "Bluish dawn ambient light is held in a dark, desaturated palette against the isolated illumination of the rooftop-room window.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At mattress height, complete the forward move into a locked close-up as 수리영 snaps awake, her rigid face occupying most of the frame in a near-frontal angle. Keep only a narrow strip of mattress and room behind her, emphasizing the change in her gaze as it searches beyond the lens rather than altering the established axis further.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "neck rigid above mattress",
            "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": "A narrow lower-frame reference establishing that she has awakened where she dozed.",
            "directionality_class": "non_directional",
            "element": "침대 매트리스 가장자리",
            "orientation": "",
            "state": "수리영 is seated with her head lifted from it."
          }
        ],
        "lighting_mood": "Low-key, desaturated illumination keeps her widened eyes and rigid facial tension readable without specifying an ungrounded source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Settle the dolly-in at eye level just beside the mirror axis, framing 수리영's left-right-reversed reflection on the left half and the sharply readable red circle on the reflected wall behind her to the right. The mirror frame remains visible at an edge so the image cannot be mistaken for a direct view, while shallow focus still holds both her reflected face and the circle legible.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning toward mirror",
            "character": "수리영",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영's mirror reflection",
              "screen_zone": "middle_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "red circle reflected on bathroom wall",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Primary reflective plane containing both 수리영 and the supernatural mark.",
            "directionality_class": "reflective_surface",
            "element": "욕실 거울",
            "orientation": "Its camera-facing surface reflects a left-right-reversed 수리영 and the bathroom wall behind her, with part of the mirror frame visible.",
            "state": "The red circle is visible only within the reflection at this instant."
          },
          {
            "camera_use": "Carries the sharply readable crimson mark behind her reflected figure.",
            "directionality_class": "content_surface",
            "element": "거울에 비친 욕실 벽면",
            "orientation": "The reflected camera-facing wall area bears a rough, vivid red circle.",
            "state": "A red circle has suddenly appeared in the reflected view."
          }
        ],
        "lighting_mood": "Low-key, desaturated bathroom illumination is punctured only by the sharply restrained crimson of the reflected circle.",
        "perception_mode": "mirror",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 12,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At photograph height, hold the midpoint of the direct push-in so the framed image and the partially collapsing smile occupy a tight isolated detail, with a slim portion of the frame and tabletop retained as physical context. The downward flow of 강민숙's facial features is frozen mid-action rather than shown as a completed transformation.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "smiling within framed portrait",
            "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 content surface showing the impossible facial distortion.",
            "directionality_class": "content_surface",
            "element": "식탁 위 액자 사진",
            "orientation": "The photograph's image-bearing front faces the camera directly, showing 강민숙 smiling as half of her face distorts and flows downward.",
            "state": "강민숙's photographed face is partially distorted at the captured instant."
          },
          {
            "camera_use": "Provides a narrow environmental boundary beneath the isolated photograph.",
            "directionality_class": "non_directional",
            "element": "식탁",
            "orientation": "",
            "state": "The framed photograph rests on it."
          }
        ],
        "lighting_mood": "A dark, desaturated treatment preserves the photograph's tactile detail while the warped facial features carry the uncanny emphasis without an invented light source.",
        "perception_mode": "hallucination",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 18,
        "shot_index": 16,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only the photograph-bound, actively distorted face is visible; a full outlook reference would not align reliably with this isolated hallucinated detail.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "From chest height beside the aisle, hold a static profile two-shot with 수리영 on the left and 마트 남자 직원 on the right, separated by a narrow conversational gap. Keep both upper bodies and part of the adjacent shelving visible, using the aisle lines to contain their exchange without shifting the established profile axis.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "leaning forward in inquiry",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C19",
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "shoulders drawn back",
            "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": "Frames the conversation laterally and establishes the market aisle.",
            "directionality_class": "directional_3d",
            "element": "마트 진열대",
            "orientation": "The shelf fronts angle away from the camera along the aisle beside the two figures.",
            "state": "Present in the quiet market interior."
          },
          {
            "camera_use": "Provides the grounded overhead illumination described for the shot.",
            "directionality_class": "directional_3d",
            "element": "형광등",
            "orientation": "The light fixtures are positioned above the aisle, with their underside facing the floor.",
            "state": "On but dim."
          }
        ],
        "lighting_mood": "Dim fluorescent illumination holds the aisle in a dark, desaturated register with subdued facial contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the store, tighten at upper-torso height in front of 수리영 and preserve the upward tilt along her raised eyeline, placing her chest and craned neck low in frame while leaving the exterior CCTV above her. The key change is her gaze lifting decisively toward the camera unit as the tilt reaches its endpoint.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "neck craned sharply upward",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "exterior CCTV camera",
              "label": "수리영",
              "screen_zone": "lower_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "exterior CCTV camera",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "The elevated object anchoring 수리영's upward sightline.",
            "directionality_class": "directional_3d",
            "element": "마트 외부 CCTV",
            "orientation": "Its lens-bearing front is angled toward the area outside the store and remains visible above 수리영.",
            "state": "Fixed beneath the exterior ceiling."
          },
          {
            "camera_use": "Provides the overhead boundary that holds the CCTV above her.",
            "directionality_class": "directional_3d",
            "element": "마트 외부 천장",
            "orientation": "Its underside faces the camera above 수리영.",
            "state": "The CCTV is mounted beneath it."
          }
        ],
        "lighting_mood": "Natural early-morning exterior ambient light is rendered with restrained contrast and a dark, desaturated palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Hold close at eye level directly in front of 수리영, her phone pressed to one ear and her upper body centered with minimal exterior context at the edges. The emphasized change from the upward-looking shot is her gaze settling straight ahead as her lips clamp shut, creating a deliberate confrontational portrait.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "phone pressed to ear",
            "character": "수리영",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft, limited context behind the fixed frontal portrait.",
            "directionality_class": "directional_3d",
            "element": "마트 외부 출입부",
            "orientation": "The store-facing side remains behind 수리영 and outside primary focus.",
            "state": "Present behind her."
          }
        ],
        "lighting_mood": "Natural early-morning ambient light keeps her fixed expression stark within a muted, desaturated exterior palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "End the push-in directly on the monitor axis at screen-center height, holding the paused CCTV image close enough that noise and the two distorted human forms occupy most of the composition while a thin display edge remains visible. Keep the forms separated within the screen but equally unreadable, making the display rather than the surrounding office the sole visual focus.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "frozen facing another figure",
            "character": "CCTV 속 식별 불가 인물 형상",
            "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": "paused CCTV monitor image",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary device surface presenting the obscured evidence.",
            "directionality_class": "content_surface",
            "element": "CCTV 모니터 화면",
            "orientation": "The display face is square to the camera and shows a paused, unusually dark recording with two distorted human forms and visible image noise.",
            "state": "On and paused at the difficult-to-identify section."
          },
          {
            "camera_use": "A narrow edge confirming that the image is being viewed on a physical monitor.",
            "directionality_class": "directional_3d",
            "element": "모니터 외곽",
            "orientation": "Only a slim front bezel around the display faces the camera.",
            "state": "Present around the active screen."
          }
        ],
        "lighting_mood": "The dark monitor image supplies a subdued electronic luminance, with heavy tonal compression and visible video noise rather than invented environmental lighting.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 2,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The figure is intentionally unidentifiable and degraded inside CCTV footage, so only the base identity reference should guide its generic recorded form.",
            "subject_id": "C22"
          }
        ]
      },
      {
        "camera_direction": "Complete the lateral track away from the monitor axis into a close three-quarter upper-body view of 수리영, placing her furrowed face in the upper portion and her clenched hands within the lower portion of the same frame. A soft edge of the monitor remains in the near foreground, but the focus transfer isolates her tightening anxiety rather than changing her established position behind the seated viewers.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hands clenched below chest",
            "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": "Soft foreground edge linking her reaction to the footage she is watching.",
            "directionality_class": "content_surface",
            "element": "CCTV 모니터",
            "orientation": "Only part of the display face is visible near the frame edge, turned away enough that its footage is no longer readable.",
            "state": "On and displaying the CCTV footage."
          },
          {
            "camera_use": "Provides the administrative-office context behind her without competing for focus.",
            "directionality_class": "directional_3d",
            "element": "마트 총무과 작업 공간",
            "orientation": "The room extends behind 수리영 from the monitor area.",
            "state": "Occupied during the CCTV review."
          }
        ],
        "lighting_mood": "Monitor light catches 수리영's brow and clenched hands against a dark, desaturated office treatment with restrained contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Across the near edge of 혜수's desk at seated eye level, finish the dolly-in as a locked extreme facial close-up of 수리영, with her enlarged eyes and drained expression occupying nearly the entire frame. Her gaze remains angled down toward the photographs below frame, while only a blurred lower edge of desk material anchors the source of her shock.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "hunched over photographs",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Blurred lower-frame anchor indicating the photographs she is examining without diluting the facial close-up.",
            "directionality_class": "directional_3d",
            "element": "혜수의 책상 가장자리",
            "orientation": "Its near edge crosses the bottom of frame between camera and 수리영.",
            "state": "The crime-scene photographs are spread across the desk beyond the visible edge."
          },
          {
            "camera_use": "Out-of-focus content below her eyeline that motivates the reaction.",
            "directionality_class": "content_surface",
            "element": "살인사건 확대 사진들",
            "orientation": "Their image-bearing faces lie upward on the desk toward 수리영, with only indistinct portions entering the lower edge of the close-up.",
            "state": "Spread untidily across the desk."
          }
        ],
        "lighting_mood": "Natural ambient illumination appropriate to the daytime police office is treated in a low-key, desaturated manner that emphasizes her pallor and widened eyes.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Hold directly perpendicular to the monitor at close range, with the maritime map centered and the GPS point, coordinates, timestamp, and offline status all legible inside the screen. Keep a narrow strip of bezel and workstation edge around the display so the result remains physically grounded while the map occupies most of the visible screen area.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal surface carrying the location-tracking result.",
            "directionality_class": "content_surface",
            "element": "Kim Detective's monitor",
            "orientation": "The active front face is square to camera, showing the maritime map, red GPS point, coordinates, timestamp, source information, and offline status.",
            "state": "On, displaying Kang Min-sook's last phone location."
          },
          {
            "camera_use": "Thin peripheral context beneath the monitor.",
            "directionality_class": "directional_3d",
            "element": "workstation edge",
            "orientation": "Its front edge runs beneath the screen, nearly parallel to the lower frame.",
            "state": "Visible only at the frame margin."
          }
        ],
        "lighting_mood": "The active display provides restrained crimson emphasis within a dark, desaturated office palette and low-key tonal contrast.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 10,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From waist-to-chest height beside the workstation, hold a static medium view as 수리영 pauses mid-stride in the center-right, one hand just leaving her pocket and her upper body half-turned toward the office door behind her. Keep the workstation along the near edge and the exit route open across the opposite side of frame, emphasizing only her changed position toward departure.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "mid-stride, hand leaving pocket",
            "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": "office door",
              "label": "수리영",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "office door",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Exit anchor behind 수리영 and destination of her arrested turn.",
            "directionality_class": "directional_3d",
            "element": "office door",
            "orientation": "The doorway is seen beyond and to the side of her half-turned body.",
            "state": "Visible on her exit path."
          },
          {
            "camera_use": "Foreground spatial anchor beside the camera.",
            "directionality_class": "directional_3d",
            "element": "workstation",
            "orientation": "Its side faces camera while the monitor is angled away from the lens.",
            "state": "The location-result monitor remains on."
          },
          {
            "camera_use": "Uneasy context around the workstation.",
            "directionality_class": "content_surface",
            "element": "enlarged murder photographs",
            "orientation": "Their image-bearing faces lie exposed across the desk, partially overlapping one another.",
            "state": "Scattered across Hye-su's desk."
          }
        ],
        "lighting_mood": "Daytime ambient office light is rendered in a dark, desaturated grade with restrained contrast and no added color source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 12,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Begin at seated shoulder height beside 수리영 at medium distance, perpendicular to the monitor, and dolly inward on her profile as she leans toward the workstation. Place her upper body in the left half and the glowing monitor near the right edge, allowing the screen axis to pull the camera forward toward the following reveal.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "seated, leaning toward monitor",
            "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": "Bright visual destination at the right edge and motivation for the dolly-in.",
            "directionality_class": "content_surface",
            "element": "PC monitor",
            "orientation": "The active screen face is seen obliquely from the side, with the map interface only partly readable.",
            "state": "On, displaying the entered location coordinates."
          },
          {
            "camera_use": "Supports 수리영 and establishes the PC workstation.",
            "directionality_class": "directional_3d",
            "element": "workstation",
            "orientation": "Its side plane recedes from 수리영 toward the monitor.",
            "state": "In use."
          }
        ],
        "lighting_mood": "Dark bluish PC-room illumination and the glowing monitor model 수리영 in a desaturated, low-key profile.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Complete the dolly-in directly in front of the monitor at screen-center height, ending square to the display with the coastal map and the coordinate marker held at the center. Retain a narrow border of bezel around the map so the image reads as displayed information rather than an omniscient map view.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal surface revealing the plotted destination.",
            "directionality_class": "content_surface",
            "element": "PC monitor",
            "orientation": "The front screen face is perpendicular to camera and displays a coastal map with a red coordinate marker positioned over the sea.",
            "state": "On, displaying the plotted coordinates."
          }
        ],
        "lighting_mood": "The monitor glow carries a muted crimson coordinate accent against the PC room's dark bluish, desaturated ambience.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Travel backward directly ahead of the bicycle at eye level while closing into the tightest frontal facial view at the end of the move. 수리영's rain-struck face occupies most of the frame, with her widened eyes held near the upper center and the bicycle path reduced to unstable peripheral traces behind her.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "pedaling, torso pitched forward",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "camera position along the bicycle path",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft, unstable background reference behind the moving face.",
            "directionality_class": "directional_3d",
            "element": "bicycle path",
            "orientation": "The route recedes directly behind 수리영 along the camera's backward travel axis.",
            "state": "Obscured by heavy rain."
          },
          {
            "camera_use": "Visible impact and motion texture across her face and frame edges.",
            "directionality_class": "non_directional",
            "element": "heavy rain",
            "orientation": "",
            "state": "Falling forcefully as droplets strike and scatter."
          },
          {
            "camera_use": "Background weather mass that suppresses distant detail.",
            "directionality_class": "non_directional",
            "element": "storm clouds",
            "orientation": "",
            "state": "Densely covering the coastal sky."
          }
        ],
        "lighting_mood": "Storm-darkened daylight is punctuated by the scene's lightning, with desaturated skin tones and hard rain highlights.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "End the doorway-to-wall dolly at eye level in a square, frontal close view, then hold briefly with the rough red circle centered around the photograph. Keep enough of the surrounding wall visible to preserve the ritual-like geometry while the photograph remains clearly smaller than the painted marking.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Geometric frame surrounding the photograph and primary occult visual anchor.",
            "directionality_class": "content_surface",
            "element": "red circle on the bedroom wall",
            "orientation": "The marked wall face is square to camera, bearing a roughly painted blood-red circle around the photograph.",
            "state": "Freshly discovered on the wall."
          },
          {
            "camera_use": "Central narrative clue fixed inside the red marking.",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "Its image-bearing front faces camera, showing the old rural restaurant scene and two young girls beneath visible blood marks.",
            "state": "Bloodied and fixed at the circle's center."
          }
        ],
        "lighting_mood": "Subdued natural ambient light appropriate to the room at dusk preserves a dark, desaturated field around the restrained red marking.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Track at shoulder height behind and slightly beside 수리영, then pause in a medium over-shoulder composition as she turns mid-step toward the open front door. Her backpack occupies the central midground, while her clenched hand and crumpled photograph sit clearly in the lower side of frame and the doorway remains ahead of her.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "turning mid-step, fist clenched",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "open front door",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "open front door",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Departure anchor directly ahead of 수리영.",
            "directionality_class": "directional_3d",
            "element": "front door",
            "orientation": "The open doorway is seen obliquely ahead of her turned body.",
            "state": "Open."
          },
          {
            "camera_use": "Disordered spatial obstacle along the route through the living area.",
            "directionality_class": "directional_3d",
            "element": "dining chairs",
            "orientation": "Their seat and back planes lie at broken angles to the camera.",
            "state": "Overturned."
          },
          {
            "camera_use": "Peripheral evidence of the intrusion and disturbed home.",
            "directionality_class": "directional_3d",
            "element": "rummaged household items",
            "orientation": "The displaced objects appear irregularly across the room behind and beside her path.",
            "state": "Pulled apart and left in disorder."
          }
        ],
        "lighting_mood": "Natural ambient light appropriate to dusk is kept low-key and desaturated, with the bloodied photograph providing the only restrained red emphasis.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Hold at seated shoulder height from the side of the rocks, framing 수리영 in profile with her knees drawn in while leaving a broad field of sea and fog before her gaze. Her compact figure rests to one side of the wide frame, making the empty harbor and obscured water carry most of the spatial weight.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "seated, knees drawn in",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "fog-covered sea",
              "label": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "fog-covered sea",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Uneven support beneath 수리영 and textured foreground boundary.",
            "directionality_class": "non_directional",
            "element": "rough coastal rocks",
            "orientation": "",
            "state": "Exposed along the harbor edge."
          },
          {
            "camera_use": "Primary negative space in the direction of her stare.",
            "directionality_class": "non_directional",
            "element": "sea",
            "orientation": "",
            "state": "Gray and partly obscured."
          },
          {
            "camera_use": "Suppresses visibility and conceals boats offshore.",
            "directionality_class": "non_directional",
            "element": "fog",
            "orientation": "",
            "state": "Dense across the empty harbor."
          },
          {
            "camera_use": "Environmental frame around the isolated figure.",
            "directionality_class": "non_directional",
            "element": "harbor",
            "orientation": "",
            "state": "Empty."
          }
        ],
        "lighting_mood": "Dusk ambient light is muted into gray, desaturated tones, with fog flattening the distant contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Look straight down from close above the rocks, centering the phone while leaving a narrow, irregular border of stone around it for scale. The screen is aligned for immediate readability, presenting 혜수's name and the stack of missed-call notifications without showing either person physically.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "phone showing missed calls",
              "screen_zone": "middle_center",
              "target_id": "P01",
              "target_kind": "prop"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Isolated information detail and primary focal object.",
            "directionality_class": "content_surface",
            "element": "수리영's phone",
            "orientation": "The active front screen faces directly upward toward camera, showing 혜수's name and multiple missed-call notifications.",
            "state": "Screen active as the vibration alert arrives."
          },
          {
            "camera_use": "Thin environmental border around the phone.",
            "directionality_class": "non_directional",
            "element": "coastal rocks",
            "orientation": "",
            "state": "Visible beneath and around the device."
          }
        ],
        "lighting_mood": "Muted dusk ambience and the active phone display create restrained contrast within the gray, desaturated harbor palette.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Settle at 수리영's upper-body height just ahead and slightly beside her, holding a medium two-plane composition with her in the near left and 인우 beyond her beside the rope. Her raised face becomes the focus while 인우 and the moored boat remain legible in the same axis, preserving the endpoint of the tracking approach.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning forward, chin raised",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "bracing rope with one hand",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "인우",
              "label": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "수리영",
              "label": "인우",
              "screen_zone": "middle_right",
              "target_id": "C03",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Diagonal spatial link between the two characters and the boat.",
            "directionality_class": "directional_3d",
            "element": "mooring rope",
            "orientation": "The rope runs obliquely through the lower midground toward 인우 and the boat.",
            "state": "Being secured by 인우."
          },
          {
            "camera_use": "Arrival context directly beyond 인우.",
            "directionality_class": "directional_3d",
            "element": "boat",
            "orientation": "Its side is visible behind him at the harbor edge.",
            "state": "Arrived and being moored."
          },
          {
            "camera_use": "Suppressed background behind the exchange.",
            "directionality_class": "non_directional",
            "element": "fog-covered harbor",
            "orientation": "",
            "state": "Empty except for the arriving boat, with dense fog limiting visibility."
          }
        ],
        "lighting_mood": "Gray dusk ambience filtered by dense fog keeps the exchange cold, desaturated, and low in contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At Hyesu's eye level and directly before her, hold a static close frame in which her shadowed face occupies most of the center and the phone remains visible against one side of her head. Keep the room reduced to indistinct edge space, isolating her lowered eyeline and listening stillness without introducing a reverse angle.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "phone pressed to ear",
            "character": "혜수",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [],
        "lighting_mood": "Fading dusk ambient leaves Hyesu in deep, low-key shadow with a dark desaturated palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From chest height inside the room, face the entrance squarely and hold a static medium view, placing the narrow opening on the central vertical axis while retaining enough adjacent doorway and wall for scale. The door occupies less than two-fifths of the frame, and no person intrudes into the final composition.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "slightly open entrance door",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Central static focal point and spatial endpoint of the scene.",
            "directionality_class": "directional_3d",
            "element": "현관문",
            "orientation": "The room-facing side is presented nearly front-on, with its edge defining the narrow opening.",
            "state": "Held slightly open after moving in the wind."
          }
        ],
        "lighting_mood": "The lightless room is rendered with minimal dusk ambient, restrained contrast, and a dark desaturated finish.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At seated eye level and a moderate distance in front of 수리영, hold a static wide composition with her centered on the deck and the unfolded map clearly readable as a shape across her knees. Her seated figure remains the anchor while the surrounding deck and sea establish her isolation aboard the small fishing boat.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "seated over unfolded map",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Supports 수리영 and establishes the open working space around her.",
            "directionality_class": "non_directional",
            "element": "소형어선 갑판",
            "orientation": "",
            "state": "수리영 is seated alone on it."
          },
          {
            "camera_use": "Surrounding background that emphasizes the boat's distance from land.",
            "directionality_class": "non_directional",
            "element": "바다",
            "orientation": "",
            "state": "The small fishing boat is afloat far from its departure point."
          },
          {
            "camera_use": "Visible across 수리영's knees as the immediate visual focus beneath her face.",
            "directionality_class": "content_surface",
            "element": "펼쳐진 지도",
            "orientation": "Its marked face is angled upward toward 수리영 and remains obliquely visible to the camera.",
            "state": "Unfolded across her knees."
          }
        ],
        "lighting_mood": "Golden dusk light reaches the deck and sea through a muted, desaturated grade with restrained contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Cut to 인우 at eye level from a slight frontal offset, tightening until his blanched face occupies most of the frame while the photograph remains only as a small lower-edge cue. Use shallow focus to hold his fixed downward eyeline and rigid expression, leaving the deck context subdued behind him.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "chin tucked toward photograph",
            "character": "인우",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "A small lower-frame eyeline cue beneath 인우's face.",
            "directionality_class": "content_surface",
            "element": "사진",
            "orientation": "The image-bearing front face tilts up toward 인우, with only part of it visible to the camera.",
            "state": "Held in front of 인우 for inspection."
          },
          {
            "camera_use": "Soft contextual background behind the close reaction.",
            "directionality_class": "non_directional",
            "element": "소형어선 갑판",
            "orientation": "",
            "state": "Visible only outside the shallow focal plane."
          }
        ],
        "lighting_mood": "Fading golden dusk is kept subdued and desaturated, allowing 인우's pale reaction to register without brightening the surrounding deck.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At hand height, look down at a shallow angle as the camera completes its inward move toward 수리영's index fingertip pressing the child's pictured face. Keep the fingertip and face together near center, with the photograph occupying less than two-fifths of the frame and its edges plus part of 수리영's hand preserving physical scale.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "index fingertip pressing photograph",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "pictured face held still",
            "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": "Primary evidence surface beneath 수리영's fingertip.",
            "directionality_class": "content_surface",
            "element": "사진",
            "orientation": "The image-bearing front face is aimed up toward the lens, clearly showing the child's face under the fingertip.",
            "state": "Held between 수리영 and 인우 while 수리영 identifies the child."
          }
        ],
        "lighting_mood": "Low dusk ambient in the wheelhouse is treated with desaturated low-key contrast, keeping the photographed face and fingertip legible.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At standing eye level immediately behind 인우's shoulder, settle the track into a firm over-the-shoulder wide composition aimed across the wheelhouse. His rigid head and shoulder form a narrow foreground block along one side, while the wall face bearing the numerous red circles remains fully legible across the midground and background.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "shoulders locked neck rigid",
            "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": "Principal reveal beyond 인우's foreground shoulder.",
            "directionality_class": "content_surface",
            "element": "조타실 벽면의 수많은 원",
            "orientation": "The interior wall face visible to camera is densely covered with numerous circles painted in blood-like red pigment.",
            "state": "Numerous red circles cover the visible wall face."
          },
          {
            "camera_use": "Foreground occlusion that creates the over-the-shoulder reveal.",
            "directionality_class": "directional_3d",
            "element": "인우의 어깨 윤곽",
            "orientation": "The back and shoulder face the camera while his front is directed away toward the wheelhouse interior.",
            "state": "Rigid and motionless at the endpoint of the track."
          }
        ],
        "lighting_mood": "Low dusk ambient leaves the wheelhouse desaturated and oppressive, with the painted red circles providing the only restrained crimson emphasis.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At shoulder height beside both figures, hold a static close composition with the point where 수리영's forehead meets 인우's shoulder centered in the frame. 수리영 folds in from the left with her closed face visible in three-quarter view, while 인우 braces on the right and remains partially turned toward her.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "collapsed onto his shoulder",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "unconscious"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "bracing beneath her weight",
            "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": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "인우",
              "screen_zone": "middle_right",
              "target_id": "C03",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Minimal edge context that keeps the contact grounded inside the wheelhouse.",
            "directionality_class": "non_directional",
            "element": "조타실 내부",
            "orientation": "",
            "state": "Visible only at the margins of the tightened frame."
          }
        ],
        "lighting_mood": "Muted dusk ambient holds both figures in desaturated low-key contrast, emphasizing the stillness of 수리영's unconscious face.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At waterline height a short distance ahead of the boat, hold a static wide view centered precisely on its forward axis as the bow penetrates the fog band. Keep the bow below two-fifths of the image, with its forward half still readable against the sea while the remaining form disappears into the dense boundary.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "boat bow halfway within fog",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dense fog band",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Centered scale anchor crossing the visual threshold.",
            "directionality_class": "directional_3d",
            "element": "소형어선 뱃머리",
            "orientation": "The forward face points toward the camera on the boat's central axis, with roughly half of the bow embedded in fog.",
            "state": "Continuing slowly into the fog band."
          },
          {
            "camera_use": "Opaque boundary that erases the boat's farther outline and the separation between sea and distance.",
            "directionality_class": "non_directional",
            "element": "짙은 안개 띠",
            "orientation": "",
            "state": "Dense and opaque."
          },
          {
            "camera_use": "Lower-frame spatial reference at camera height.",
            "directionality_class": "non_directional",
            "element": "바다",
            "orientation": "",
            "state": "The boat remains afloat as it enters the fog."
          }
        ],
        "lighting_mood": "The setting sun casts fading golden light across the sea, muted and desaturated as the dense fog obscures the boat.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 3,
        "subject_reference_policy": []
      }
    ],
    "total": 58,
    "failed_batches": 0
  },
  "step_id": "shot_staging",
  "run_id": "c85a7d3c-822d-4472-bdf3-9382fa79531d",
  "resolved_model": "gpt",
  "updated_at": "2026-07-22T02:17:06.574241+00:00",
  "schema_version": 6,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}