{
  "status": "completed",
  "completed_count": 55,
  "applicable_count": 55,
  "failed_count": 0,
  "data": {
    "shots": [
      {
        "camera_direction": "Track backward at the victim's eye level, holding his frightened face frontally in the center while nearby branches intermittently cross the foreground. Keep the framing tight on his head and shoulders as his body drives forward through the brush, preserving the frontal-pursuit axis without revealing what follows him.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "mid-stride through dense brush",
            "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": "Nearby growth forms an irregular foreground aperture around the victim's face.",
            "directionality_class": "non_directional",
            "element": "우거진 수풀",
            "orientation": "",
            "state": "dense"
          },
          {
            "camera_use": "Branches pass between the lens and the victim, reinforcing the backward tracking movement.",
            "directionality_class": "directional_3d",
            "element": "나뭇가지",
            "orientation": "Their lengths angle across the camera axis, leaving partial openings onto the victim's face.",
            "state": "projecting into his path"
          }
        ],
        "lighting_mood": "Existing dusk light is rendered in restrained, desaturated low-key contrast, with no added source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Hold a static, ground-level lateral view aimed across the fallen victim as the 검은 인영 crosses the upper portion of the frame with both arms extended. Place the victim along the lower-right plane and let the airborne silhouette travel from upper left toward him, making subject position the single decisive change within the established low attack axis.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "airborne with arms extended",
            "character": "검은 인영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "sprawled after falling",
            "character": "금월산 남성 피해자",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "fallen victim",
              "label": "검은 인영",
              "screen_zone": "upper_left",
              "target_id": "C02",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "금월산 남성 피해자",
              "screen_zone": "lower_right",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Low vegetation establishes the ground plane beneath the victim and the attacker’s airborne path.",
            "directionality_class": "non_directional",
            "element": "숲속 수풀",
            "orientation": "",
            "state": "overgrown"
          },
          {
            "camera_use": "The forest floor supports the victim's collapsed body and anchors the very low camera angle.",
            "directionality_class": "non_directional",
            "element": "숲 바닥",
            "orientation": "",
            "state": "ground beneath the fallen victim"
          }
        ],
        "lighting_mood": "Dusk illumination is held in stark, desaturated low-key contrast so the incoming figure reads as a dark silhouette and the victim's blood remains a restrained deep-crimson accent.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The attacker is presented only as an unreadable airborne silhouette, so a base identity reference is sufficient and an outlook reference would add unsupported facial detail.",
            "subject_id": "C02"
          }
        ]
      },
      {
        "camera_direction": "From knee height, hold a static view across the motionless 효장동 여성 피해자 in the foreground and tilt slightly upward to retain 효장동 한국인 남성 (포식자 활성 상태) behind her. Her body stretches across the lower frame while his lifted head occupies the upper-right midground, preserving their aftermath relationship in one bleak tableau.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "collapsed loose on ground",
            "character": "효장동 여성 피해자",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "torso lifted after feeding",
            "character": "효장동 한국인 남성 (포식자 활성 상태)",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "효장동 여성 피해자",
              "screen_zone": "lower_center",
              "target_id": "C03",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "효장동 한국인 남성 (포식자 활성 상태)",
              "screen_zone": "middle_right",
              "target_id": "C05",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "The pole rises behind the pair and fixes the location of their earlier entanglement.",
            "directionality_class": "directional_3d",
            "element": "전봇대",
            "orientation": "One side faces the camera behind the fallen woman and the man.",
            "state": "beside the two victims"
          },
          {
            "camera_use": "The alley ground carries the woman's motionless body through the lower frame.",
            "directionality_class": "non_directional",
            "element": "골목 바닥",
            "orientation": "",
            "state": "supporting the fallen body"
          },
          {
            "camera_use": "The distant fixture provides the explicitly described faint alley illumination.",
            "directionality_class": "directional_3d",
            "element": "가로등",
            "orientation": "Its lit side is oriented toward the alley where the pair are framed.",
            "state": "on"
          }
        ],
        "lighting_mood": "The faint streetlight provides low-key illumination, with the man's red eyes and blood at his mouth forming controlled deep-crimson accents against a desaturated night palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Continue the dolly inward from outside the police line at 혜수's chest-to-eye level, ending on her upper body in a steady three-quarter composition with the radio held near the lower center. The sole emphasis change is camera distance, compressing the wider activity behind her into subdued broadcast-footage context while her fixed expression remains sharp.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "radio gripped near 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": "The line runs softly across the background as the boundary between 혜수 and the active scene.",
            "directionality_class": "non_directional",
            "element": "폴리스 라인",
            "orientation": "",
            "state": "set around the scene"
          },
          {
            "camera_use": "Their reduced background movement contrasts with 혜수's stillness.",
            "directionality_class": "non_directional",
            "element": "현장 감식 경찰",
            "orientation": "",
            "state": "examining the scene"
          },
          {
            "camera_use": "The ongoing recovery operation remains visible only as subdued background context.",
            "directionality_class": "non_directional",
            "element": "시신 수거 현장",
            "orientation": "",
            "state": "body recovery in progress"
          }
        ],
        "lighting_mood": "Daylight appropriate to the exterior scene is shaped into restrained, desaturated broadcast contrast without introducing an additional light source.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 3,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Complete the descending approach at an elevated oblique angle, centering the old rooftop room while retaining the surrounding roof and part of the residential building below. Keep the room large enough to become the destination of the move but leave ample peripheral architecture to preserve its isolated position above the outskirts.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "옥탑방 외부",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "다세대 빌라 일부",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "The exterior is the centered destination of the descending camera move.",
            "directionality_class": "directional_3d",
            "element": "낡은 옥탑방",
            "orientation": "Its exterior front and one adjoining side face the elevated oblique camera.",
            "state": "old"
          },
          {
            "camera_use": "The roof surrounds the centered room and defines its exposed placement above the building.",
            "directionality_class": "non_directional",
            "element": "빌라 옥상",
            "orientation": "",
            "state": "supporting the rooftop room"
          },
          {
            "camera_use": "The building remains visible beneath the roof as a scale and location reference.",
            "directionality_class": "directional_3d",
            "element": "오래된 다세대 빌라",
            "orientation": "The upper exterior and roof-facing side are visible below the rooftop room.",
            "state": "old"
          },
          {
            "camera_use": "Peripheral buildings establish the Incheon outskirts without competing with the centered rooftop room.",
            "directionality_class": "directional_3d",
            "element": "인천 변두리 건물군",
            "orientation": "Their rooftops and upper exterior faces recede around the central villa.",
            "state": "visible in clear daytime"
          }
        ],
        "lighting_mood": "Clear daytime illumination is kept natural and desaturated, with restrained contrast preserving the bleak isolation of the rooftop room.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the living-room side of the kitchen, hold a static chest-height medium composition with 강민숙's rigid upper body offset to one side and the steaming pot sharing the lower opposite side. Keep the television on her eyeline within the composition, using the pot and rising steam as a modest foreground layer rather than obscuring her fixed expression.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "torso rigid, hands paused",
            "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": "The pot anchors the lower foreground while its movement contrasts with 강민숙's stillness.",
            "directionality_class": "directional_3d",
            "element": "냄비",
            "orientation": "Its side and upper opening are visible from the living-room-side camera.",
            "state": "water boiling and steam rising"
          },
          {
            "camera_use": "The screen holds 강민숙's eyeline and supplies the news she is watching.",
            "directionality_class": "content_surface",
            "element": "TV",
            "orientation": "The front display faces partly toward the camera and shows the ongoing news broadcast.",
            "state": "on"
          },
          {
            "camera_use": "The small opening admits the explicitly described sunlight into the room.",
            "directionality_class": "transparent_surface",
            "element": "거실의 작은 창",
            "orientation": "Sunlight passes through the window into the interior.",
            "state": "sunlight entering"
          },
          {
            "camera_use": "The running water and unfinished preparation remain visible as interrupted domestic activity.",
            "directionality_class": "directional_3d",
            "element": "싱크대 수도꼭지",
            "orientation": "Its outlet turns toward the sink basin within the kitchen background.",
            "state": "water running"
          },
          {
            "camera_use": "The herbs provide a small interrupted-work detail beside the sink.",
            "directionality_class": "non_directional",
            "element": "석창포",
            "orientation": "",
            "state": "partially washed"
          }
        ],
        "lighting_mood": "Sunlight through the small living-room window and the active television are balanced in subdued, desaturated contrast, leaving 강민숙's expression markedly dark.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height beside the two women and perpendicular to their shoulder line, hold a close profile-weighted two-shot with 수리영's closed face nestled against 강민숙's shoulder. Tighten only the camera distance so 수리영's cheek and closed eyes receive priority while 강민숙 remains present as the supporting shoulder and partial profile.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "face nestled into shoulder",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "shoulder softened under embrace",
            "character": "강민숙",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "The entrance area remains soft and minimal behind the intimate contact.",
            "directionality_class": "non_directional",
            "element": "현관 공간",
            "orientation": "",
            "state": "occupied by the departing 수리영"
          },
          {
            "camera_use": "The footwear grounds the moment in 수리영's imminent departure without drawing focus from the embrace.",
            "directionality_class": "directional_3d",
            "element": "수리영의 신발",
            "orientation": "The openings face 수리영 at the edge of the entrance area.",
            "state": "being put on"
          }
        ],
        "lighting_mood": "Existing daylight from the small living-room window carries softly into the entry area, graded with restrained color and gentle low-to-mid-key contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Cut to 수리영's subjective downward eyeline, excluding her from the image and isolating the inside of 강민숙's wrist at close range. Center the distinct small circular mark while retaining a narrow band of surrounding wrist and sleeve for scale; the decisive change is the gaze axis from intimate contact to downward inspection.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "wrist turned inward",
            "character": "강민숙",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "강민숙의 손목 안쪽과 원형 표식",
              "screen_zone": "middle_center",
              "target_id": "C07",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "insert",
        "key_bg_elements": [],
        "lighting_mood": "Soft existing interior daylight reveals the circular mark clearly within a restrained, desaturated tonal range without assigning it an unsupported color.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 5,
        "shot_index": 7,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 강민숙's inner wrist and a small portion of her sleeve are visible, so an outlook reference cannot reliably govern the isolated body detail.",
            "subject_id": "C07"
          }
        ]
      },
      {
        "camera_direction": "Track parallel at hip height in a wide side profile, matching 수리영's speed so her full body and bicycle remain stable across the middle of the frame while the road moves behind her. Let her travel left to right, capturing one pedal driven fully downward and her hair trailing opposite the motion without cropping either wheel.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "seated, 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": "screen right along the coastal road",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "The road provides the horizontal motion axis beneath the bicycle.",
            "directionality_class": "non_directional",
            "element": "해안가 도로",
            "orientation": "",
            "state": "clear daytime roadway"
          },
          {
            "camera_use": "The coastal setting remains visible beyond the road as environmental context for her ride.",
            "directionality_class": "non_directional",
            "element": "바다",
            "orientation": "",
            "state": "visible beside the road"
          }
        ],
        "lighting_mood": "Clear natural daylight is rendered with restrained saturation and open mid-key contrast, supporting 수리영's brief brightness without abandoning the bleak overall palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 6,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the enclosure boundary at 수리영's chest height, frame her upper body frontally through the barrier while the back of 로트와일러's head and shoulders occupies a restrained lower foreground edge. Hold her face near center with the dog's eye line aligned toward hers, preparing the lateral move past her without breaking the confrontation axis.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "chin lowered, shoulders still",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C10",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "forelegs braced, body tensed",
            "character": "로트와일러",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "수리영's eyes beyond the enclosure barrier",
              "label": "로트와일러",
              "screen_zone": "lower_center",
              "target_id": "C10",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "로트와일러's eyes inside the enclosure",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "철창 경계",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "The barrier divides the foreground dog from 수리영 while allowing their locked eyelines to remain legible.",
            "directionality_class": "directional_3d",
            "element": "철창",
            "orientation": "Its camera-facing side runs between 로트와일러 inside the enclosure and 수리영 outside.",
            "state": "로트와일러 confined behind it"
          },
          {
            "camera_use": "The enclosure interior remains limited behind the dog, reinforcing its contained aggression.",
            "directionality_class": "non_directional",
            "element": "보호견 우리 내부",
            "orientation": "",
            "state": "occupied by the agitated 로트와일러"
          }
        ],
        "lighting_mood": "Natural daytime light appropriate to the shelter is controlled into desaturated mid-key contrast, keeping 수리영's unwavering eyes clear without adding a new source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height and medium-close distance, hold the frontal flow axis as the dolly-out settles into a tightened upper-body frame. 수리영 occupies the right-center with the phone at her ear, while the enclosure line and confined dogs remain visible over her left side; her parted lips and arrested posture carry the focus without turning her into a direct-address portrait.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "phone held to ear",
            "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": "confined dogs",
              "label": "수리영",
              "screen_zone": "middle_right",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "confined dogs and enclosures",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Provides the off-axis object of 수리영's fixed attention and preserves the shelter context behind her.",
            "directionality_class": "directional_3d",
            "element": "dog enclosures",
            "orientation": "The enclosure fronts angle into the background beside 수리영, with the confined dogs visible beyond them.",
            "state": "Dogs confined inside"
          },
          {
            "camera_use": "Forms the repeated background divisions that visually isolate 수리영 despite the shared space.",
            "directionality_class": "directional_3d",
            "element": "enclosure bars",
            "orientation": "Their front faces remain readable behind and beside 수리영.",
            "state": "Closed around the dogs"
          }
        ],
        "lighting_mood": "Natural ambient light appropriate to the daytime shelter is restrained and desaturated, with low-to-mid-key contrast emphasizing her worried pause.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Track parallel at street level from a front-side angle, holding a wide lateral composition as 수리영 rides from left toward right through the street. Her full pedaling posture remains in the middle third, both hands readable on the handlebars, while stalls, taxis, signs, and nearby activity retain meaningful space around her without obstructing the bicycle.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "driving one pedal down",
            "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": "right side of the street route",
              "label": "수리영 riding the bicycle",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Creates layered passages around the bicycle route without hiding 수리영's legs or handlebars.",
            "directionality_class": "directional_3d",
            "element": "street stalls",
            "orientation": "Their open customer-facing sides border the route on both sides of the frame.",
            "state": "Operating amid street activity"
          },
          {
            "camera_use": "Supplies moving depth behind the parallel tracking subject.",
            "directionality_class": "directional_3d",
            "element": "taxis",
            "orientation": "Side and three-quarter vehicle faces pass through the wider background.",
            "state": "Present on the street"
          },
          {
            "camera_use": "Provides illuminated graphic accents above and behind the street activity.",
            "directionality_class": "content_surface",
            "element": "neon signs",
            "orientation": "Their lit sign faces are turned toward the street and remain legible as luminous shapes behind 수리영.",
            "state": "On"
          }
        ],
        "lighting_mood": "Dusk street ambience and the explicitly illuminated neon signs are rendered in a restrained, desaturated palette with selective deep-color accents and moody contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the store at eye level, hold a static medium frame from directly ahead as 수리영 stops near the roadside. She occupies the center-right with the raised phone contained in the lower central area, allowing her serious expression and the screen-facing downward glance to register together while a narrow strip of the street preserves location.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "paused with phone raised",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Keeps the store she has just exited spatially connected to her unanswered call.",
            "directionality_class": "directional_3d",
            "element": "store entrance",
            "orientation": "The entrance faces the roadside behind and slightly beside 수리영.",
            "state": "Visible behind her"
          },
          {
            "camera_use": "Provides limited exterior context without diluting the phone-and-expression pairing.",
            "directionality_class": "non_directional",
            "element": "roadside",
            "orientation": "",
            "state": "Active street setting at dusk"
          }
        ],
        "lighting_mood": "Dusk ambient light and nearby illuminated signage maintain a subdued low-to-mid-key image, leaving the phone and her tense face clearly readable without introducing a new light source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Travel beside 수리영 at torso height in a medium side profile, matching the bicycle's speed so her body remains steady while the coastal road slips behind her. Catch the exact stroke with one knee folded and the opposite leg forcing its pedal downward; her profile sits forward in the frame with trailing hair and clothing edges retained behind her.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "forcing 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": "forward along the coastal road",
              "label": "수리영 riding urgently",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Runs laterally behind the cyclist to convey speed through parallax.",
            "directionality_class": "non_directional",
            "element": "coastal road",
            "orientation": "",
            "state": "Visible along her route"
          },
          {
            "camera_use": "Forms the dark, open background against her moving profile.",
            "directionality_class": "non_directional",
            "element": "night sea",
            "orientation": "",
            "state": "Dark"
          }
        ],
        "lighting_mood": "Low-key night ambience keeps the sea dark and the palette desaturated, with enough separation to preserve her rigid profile and forceful movement.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 9,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Place the static camera at hand height immediately beside the closed iron door, looking obliquely along its narrow gap in a tight close-up. Only 옥탑방 전단지 남성's hand enters from the frame edge; the fingertip, compressed flyer, and door seam occupy the central area while his face and upper body remain excluded.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "finger pressing flyer",
            "character": "옥탑방 전단지 남성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "옥탑방 전단지 남성's hand only",
              "screen_zone": "middle_center",
              "target_id": "C15",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Creates the narrow linear channel into which the flyer is being forced.",
            "directionality_class": "directional_3d",
            "element": "rooftop room iron door",
            "orientation": "The edge and narrow gap are seen obliquely, with the exterior face receding away from the camera.",
            "state": "Closed until the lock releases"
          },
          {
            "camera_use": "Acts as the pressure tool between the fingertip and door gap.",
            "directionality_class": "content_surface",
            "element": "advertising flyer",
            "orientation": "A folded portion of its printed face is visible as it is pressed into the gap; the specific print is not readable.",
            "state": "Removed and pressed into the gap"
          }
        ],
        "lighting_mood": "Low-key ambient light appropriate to the rooftop at night isolates the hand and door seam in restrained, desaturated contrast without specifying an unestablished source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From outside the rooftop room at eye level, face the lit window directly in a static medium-wide composition, keeping its boundaries visible rather than cropping into the attack. Within the reflected image, 거대한 그림자 surges from one side toward 강민숙 at the exact instant its head reaches her shoulder, their overlapping silhouettes centered against the window surface.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "lunging toward shoulder",
            "character": "거대한 그림자",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C07",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "recoiling under attack",
            "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": "강민숙's shoulder",
              "label": "거대한 그림자 reflected in window",
              "screen_zone": "middle_right",
              "target_id": "C16",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "강민숙 reflected in window",
              "screen_zone": "middle_center",
              "target_id": "C07",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Contains the entire reflected assault and gives the reveal a fixed pictorial boundary.",
            "directionality_class": "reflective_surface",
            "element": "rooftop room window",
            "orientation": "The camera-facing surface reflects 강민숙 and the larger figure overlapping as it reaches her shoulder.",
            "state": "Room light visible at the window"
          },
          {
            "camera_use": "Provides a dark exterior border around the lit reflected action.",
            "directionality_class": "directional_3d",
            "element": "rooftop room exterior",
            "orientation": "Its window-facing wall is seen frontally around the window opening.",
            "state": "Exterior in darkness"
          }
        ],
        "lighting_mood": "The explicitly lit window turns the figures into stark silhouettes within a bleak, desaturated night exterior and concentrated low-key contrast.",
        "perception_mode": "reflection",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At 수리영's shoulder height, remain just behind and slightly offset from her, using her shoulder and the back of her head as a soft foreground frame. The half-open iron door is held in the center background with the dark opening clearly visible beyond it, while the static camera lets her halted approach carry the tension.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "leaning toward doorway",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "half-open rooftop room iron door",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Serves as the revealed focal point beyond 수리영's foreground shoulder.",
            "directionality_class": "directional_3d",
            "element": "rooftop room entrance iron door",
            "orientation": "Its exterior face angles away from the camera, exposing a narrow view into the opening.",
            "state": "Half-open"
          },
          {
            "camera_use": "Creates an unreadable negative space within the doorway.",
            "directionality_class": "non_directional",
            "element": "dark entrance beyond the door",
            "orientation": "",
            "state": "Dark"
          }
        ],
        "lighting_mood": "Low-key night ambience holds 수리영 as a restrained foreground shape while the half-open entrance recedes into darkness.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Begin just beyond the opened curtain at waist height and complete the dolly-in at a tightened medium distance from 강민숙. Her lowered head occupies the upper center, her seated body folds toward the lower frame, and the torn shoulder and collarbone remain prominent on one side without losing the surrounding bed and floor as scale references.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "slumped seated on floor",
            "character": "강민숙",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "강민숙 alone beyond the curtain",
              "screen_zone": "middle_center",
              "target_id": "C07",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Forms the reveal edge and remains at the side of the composition after being pulled aside.",
            "directionality_class": "directional_3d",
            "element": "curtain",
            "orientation": "The opened curtain is gathered to the frame edge, exposing 강민숙 behind it.",
            "state": "Opened"
          },
          {
            "camera_use": "Retains room geography and a scale reference beside the seated body.",
            "directionality_class": "directional_3d",
            "element": "bed",
            "orientation": "The side of the bed recedes behind 강민숙.",
            "state": "Present beside her"
          },
          {
            "camera_use": "Carries the visible trail and pool leading into the reveal area.",
            "directionality_class": "non_directional",
            "element": "blood on floor",
            "orientation": "",
            "state": "Pooled with bloody footprints leading to the curtain"
          }
        ],
        "lighting_mood": "Low-key ambient light appropriate to the nighttime room preserves tactile detail in the torn wounds and flowing blood, with crimson held as the principal accent against a desaturated frame.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At hand height beside 강민숙, continue the inward move into a downward-angled insert of her closed hand. The clenched fingers and crumpled photograph sit in the center, with a narrow portion of her wrist and the adjacent floor retained at the edges so the detail remains physically connected to her body.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "hand clenched around photo",
            "character": "강민숙",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Provides minimal spatial grounding beneath the hand without competing with the photograph.",
            "directionality_class": "non_directional",
            "element": "floor beside 강민숙",
            "orientation": "",
            "state": "Visible around the hand"
          },
          {
            "camera_use": "Keeps the next upward route toward the wrist and bed-side wall spatially available.",
            "directionality_class": "directional_3d",
            "element": "bed edge",
            "orientation": "A small portion of its side runs beyond the hand in the background.",
            "state": "Present beside her"
          }
        ],
        "lighting_mood": "Restrained low-key room ambience concentrates attention on the hand and crumpled photograph, with the surrounding palette kept desaturated.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From beside the bed at chest height, finish the upward tilt with the wall above the bed centered and the bed edge retained along the lower frame as a spatial reference. The enormous red circular mark occupies the central wall area without cropping its circumference, while no character enters the composition.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "wall above the bed with red circular mark",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "bed beneath the mark",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Becomes the supernatural focal plane at the end of the upward tilt.",
            "directionality_class": "content_surface",
            "element": "wall above the bed",
            "orientation": "The camera-facing wall surface is seen nearly frontally, carrying the newly appeared large red circular mark.",
            "state": "Marked by a red circle"
          },
          {
            "camera_use": "Anchors the mark to the established room layout and remains visible below it.",
            "directionality_class": "directional_3d",
            "element": "bed",
            "orientation": "Its upper edge crosses the lower frame beneath the wall mark.",
            "state": "Positioned below the mark"
          }
        ],
        "lighting_mood": "Low-key nighttime room ambience leaves the wall subdued while the explicitly red circular mark becomes the frame's deep crimson focal accent.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 12,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From waist height beside the exterior stairs, track downward on a parallel path several meters ahead of 수리영, holding her full body near center as she descends toward the lens. Freeze the mid-track composition with one foot suspended above the next step, her body pitched forward while the stair run remains visible beneath and behind her.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "one foot suspended descending",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "base of the exterior stairs",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "descending exterior stairs",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "The diagonal stair run establishes the downward movement and supplies scale around the full-body figure.",
            "directionality_class": "directional_3d",
            "element": "옥탑방 외부 계단",
            "orientation": "Its descending side and successive steps face the camera along 수리영's running axis.",
            "state": "수리영이 급히 내려가는 중"
          }
        ],
        "lighting_mood": "Restrained, desaturated nighttime contrast keeps the exterior bleak while preserving 수리영's frightened expression.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height in a three-quarter side position, finish the dolly-in as a tight upper-body two-shot, placing 혜수 on the left and 수리영 on the right with their joined shoulders at the center. 혜수's gripping hands form the lower visual anchor while 수리영's lifted gaze carries the emotional focus, leaving only a narrow strip of the exterior setting behind them.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "gripping both shoulders",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning back under grip",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "A restrained background reference at the edge of the frame links the confrontation to the stair descent.",
            "directionality_class": "directional_3d",
            "element": "옥탑방 외부 계단",
            "orientation": "Only the lower side of the stair structure remains visible behind the pair.",
            "state": "비어 있음"
          },
          {
            "camera_use": "A small background shape marks where 혜수 arrived without competing with the faces.",
            "directionality_class": "directional_3d",
            "element": "차량",
            "orientation": "A side portion faces the camera behind 혜수.",
            "state": "혜수가 내린 뒤 정지해 있음"
          }
        ],
        "lighting_mood": "Desaturated nighttime ambience and close low-to-mid-key contrast isolate the alarm passing between the two faces.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At standing eye level just inside the room, end the forward move at a centered medium-full distance rather than closing further, leaving the excessively ordered room clearly visible around 수리영. She occupies the middle third with her arrested posture held against the surrounding absence; the next lateral path toward the curtain is kept open along one side of the frame.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "halted with knees locked",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "The uncluttered room surrounds 수리영 as negative space and contradicts her account.",
            "directionality_class": "non_directional",
            "element": "지나치게 정돈된 방안",
            "orientation": "",
            "state": "깨끗하게 정돈되어 있고 핏자국이 보이지 않음"
          },
          {
            "camera_use": "The bed remains legible behind or beside 수리영 as evidence of what is no longer present.",
            "directionality_class": "directional_3d",
            "element": "침대",
            "orientation": "Its upper surface and one side are visible from the doorway-side camera position.",
            "state": "붉은 표식 없이 정돈되어 있음"
          },
          {
            "camera_use": "The curtain marks the camera's impending lateral reveal and leaves the relevant floor area partially readable.",
            "directionality_class": "non_directional",
            "element": "커튼",
            "orientation": "",
            "state": "뒤편에 시신이 보이지 않음"
          }
        ],
        "lighting_mood": "Neutral nighttime interior ambience is rendered in restrained desaturation, with subdued contrast emphasizing 수리영's pale, stunned face.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Complete the lateral track at the side of the room and lower slightly, isolating the clean floor behind the curtain in a close, mildly high-angled composition. The empty floor rests across the lower center while the curtain edges frame it without obscuring the absence, preserving enough surrounding room to establish scale.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "empty floor where the body had been",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "curtain edges",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "The clean empty area is the focal absence at the end of the lateral reveal.",
            "directionality_class": "non_directional",
            "element": "커튼 뒤 바닥",
            "orientation": "",
            "state": "깨끗하며 시신과 핏자국이 없음"
          },
          {
            "camera_use": "Its edge provides a partial foreground frame around the revealed floor.",
            "directionality_class": "non_directional",
            "element": "커튼",
            "orientation": "",
            "state": "뒤편 바닥이 카메라에 보이는 상태"
          }
        ],
        "lighting_mood": "Restrained nighttime interior ambience and low-to-mid-key contrast make the spotless absence feel clinically unsettling.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height beside the pair, stop the dolly-in at the exact instant both of 혜수's hands settle firmly around 수리영's shoulders. Frame their joined upper bodies closely, with 혜수 entering from the left in three-quarter view and 수리영 compressed toward the right, allowing the enclosing gesture to shape the composition.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hands enclosing both shoulders",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "shoulders drawn inward",
            "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_left",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "middle_right",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "A narrow, ordered background band preserves the unsettling contradiction behind the consoling embrace.",
            "directionality_class": "non_directional",
            "element": "정돈된 옥탑방 내부",
            "orientation": "",
            "state": "깨끗하게 정돈되어 있음"
          }
        ],
        "lighting_mood": "Softly restrained nighttime ambience and desaturated close contrast balance 혜수's reassurance against the room's lingering dread.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From standing eye level several meters inland, hold a static wide view facing 수리영 on the bench with the dark sea extending behind her. Keep her seated figure near the center but small within the environment, her head turned toward the water so the opening composition feels watched rather than intimate.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "slumped on bench edge",
            "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": "sea",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "sea",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "The bench fixes 수리영 in a static horizontal line against the open background.",
            "directionality_class": "directional_3d",
            "element": "버스정류장 벤치",
            "orientation": "Its long side is visible to the camera with 수리영 seated near its center.",
            "state": "수리영이 앉아 있음"
          },
          {
            "camera_use": "The sea creates broad negative space behind 수리영 and receives her distant gaze.",
            "directionality_class": "non_directional",
            "element": "밤바다",
            "orientation": "",
            "state": "어두운 상태"
          }
        ],
        "lighting_mood": "A restrained, desaturated nighttime treatment keeps 수리영 subdued against the dark sea with lonely low-to-mid-key contrast.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At waist height several meters behind 수리영, track directly along her running axis on the coastal road and hold the rear full-body frame as one foot lifts in mid-stride. Her figure stays near center while the road converges ahead, maintaining the pursuit momentum without overtaking her.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "one foot airborne running",
            "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": "road ahead",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "coastal road ahead",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Its receding axis carries 수리영 away from the bench area and guides the trailing camera.",
            "directionality_class": "non_directional",
            "element": "해안가 도로",
            "orientation": "The road recedes from the lower center toward the background along 수리영's running direction.",
            "state": "수리영이 달려가는 중"
          },
          {
            "camera_use": "The coastline remains peripheral context rather than the principal subject during the pursuit.",
            "directionality_class": "non_directional",
            "element": "해안가",
            "orientation": "",
            "state": "밤"
          }
        ],
        "lighting_mood": "Desaturated nighttime contrast keeps the fleeing silhouette readable while retaining a bleak, exposed coastal mood.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Close to the space between 혜수 and 김형사, descend to just above hand level and finish the dolly-in aligned squarely with the phone's front screen. 혜수's presenting hand and the lit display occupy the central portion of the frame, while her partial torso remains at one edge and 김형사 leans into the soft background for scale.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "arm extended with phone",
            "character": "혜수",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "leaning toward phone",
            "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": "The screen is the isolated focal surface carrying the number 혜수 wants traced.",
            "directionality_class": "content_surface",
            "element": "휴대전화 액정 화면",
            "orientation": "Its active front face is turned toward both the camera and 김형사, showing 강민숙의 저장된 번호.",
            "state": "켜져 있고 저장된 번호가 표시됨"
          },
          {
            "camera_use": "A restrained background reference places the exchange within the nighttime duty setting.",
            "directionality_class": "directional_3d",
            "element": "당직석",
            "orientation": "Its working side faces 김형사 behind the phone.",
            "state": "김형사가 혼자 당직 근무 중"
          }
        ],
        "lighting_mood": "Neutral police-office ambience at night is held in restrained desaturation, with the active phone display providing only a localized emphasis justified by the shot.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 혜수's presenting hand, forearm, and a partial torso are framed clearly, so an outlook-level identity reference would not align reliably.",
            "subject_id": "C06"
          }
        ]
      },
      {
        "camera_direction": "At the 검은 고양이's eye level and a medium distance from the wall, hold a static profile composition with the animal on the left and the lit rooftop window positioned along its eyeline to the right. The top of the wall forms a level base beneath its braced paws, preserving lateral space in the direction it will soon leave.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "paws braced 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 window",
              "label": "검은 고양이",
              "screen_zone": "middle_left",
              "target_id": "C18",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "lit rooftop window",
              "screen_zone": "upper_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "The wall supports the cat and creates the horizontal route it will cross in the next movement.",
            "directionality_class": "directional_3d",
            "element": "담벼락",
            "orientation": "Its top edge and the camera-facing side are both visible beneath the cat.",
            "state": "검은 고양이가 위에 머물러 있음"
          },
          {
            "camera_use": "The window forms the endpoint of the cat's profile gaze and the sole explicitly illuminated background feature.",
            "directionality_class": "transparent_surface",
            "element": "옥탑방 창문",
            "orientation": "The window faces the camera obliquely, with the illuminated rooftop room perceptible beyond it.",
            "state": "옥탑방 불이 켜져 있음"
          }
        ],
        "lighting_mood": "Dawn remains subdued and desaturated while the explicitly lit rooftop window provides a contained contrast behind the black cat.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Adopt 수리영's exact eye-line at close range so she is absent from the image, looking directly into the bathroom mirror at the reflected wall. The reflected red circle sits sharply near the center, with a limited portion of the mirror edge retained to establish the reversed reflective view rather than the actual wall.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "mirror reflection of bathroom wall",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "red circle in reflection",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "The mirror mediates the entire reveal and establishes that the mark is first perceived indirectly.",
            "directionality_class": "reflective_surface",
            "element": "욕실 거울",
            "orientation": "Its camera-facing surface reflects the bathroom wall and the newly appeared red circle, with part of the mirror boundary visible.",
            "state": "벽과 붉은 원을 반사하고 있음"
          },
          {
            "camera_use": "The reflected face of the wall carries the supernatural visual mark at the center of the composition.",
            "directionality_class": "content_surface",
            "element": "거울에 비친 욕실 벽면",
            "orientation": "The wall face visible only through the mirror bears a clear red circle.",
            "state": "선명한 붉은 원이 나타나 있음"
          }
        ],
        "lighting_mood": "Restrained daytime interior ambience stays desaturated while the reflected circle supplies the single deep-crimson accent and an unnaturally abrupt visual threat.",
        "perception_mode": "mirror",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 18,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Complete the tabletop-height dolly-in as a subjective view from 수리영, ending square to the photograph’s image-bearing face. The distorted smiling face of 강민숙 (사진 속 왜곡 상태) occupies the central close frame, while only a narrow edge of the photograph preserves its physical context.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "smile collapsing within portrait",
            "character": "강민숙 (사진 속 왜곡 상태)",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal surface approached by the dolly-in.",
            "directionality_class": "content_surface",
            "element": "강민숙과 수리영의 사진",
            "orientation": "The image-bearing front faces the camera, with the mother's smiling face appearing grotesquely smeared and flowing within it.",
            "state": "Resting on the table and perceived as distorted during the hallucination."
          }
        ],
        "lighting_mood": "Restrained, desaturated daytime ambience falls into low-key contrast as the facial distortion becomes the darkest visual emphasis.",
        "perception_mode": "hallucination",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 18,
        "shot_index": 11,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Hold static at face height within arm’s length, framing 수리영 in a tight left profile at the exact instant her palm compresses her cheek. Her hand and displaced cheek occupy most of the frame, with the crop retaining only enough jawline and brow to register the violence of the self-correction.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "cheek compressed under palm",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [],
        "lighting_mood": "Desaturated daytime ambience with firm low-key contrast isolates the impact without introducing a new visible light source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 12,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The tight impact frame shows only part of 수리영's face and hand, making a full outlook reference unnecessary.",
            "subject_id": "C09"
          }
        ]
      },
      {
        "camera_direction": "From 수리영’s upper-torso height, dolly in slightly from the side of the conversational axis and settle into a medium-close two-shot. 수리영 holds the lower-left foreground as she blocks the path and looks upward, while 마트 남자 직원 is checked mid-step in the upper-right midground, preserving their height and pressure relationship.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "path-blocking planted stance",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C14",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "mid-stride abruptly checked",
            "character": "마트 남자 직원",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "lower_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "마트 남자 직원",
              "screen_zone": "upper_right",
              "target_id": "C14",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Provides the restrained spatial context behind the confrontation.",
            "directionality_class": "non_directional",
            "element": "마트 내부 통로",
            "orientation": "",
            "state": "Quiet and sparsely occupied in the early morning."
          }
        ],
        "lighting_mood": "Natural early-morning ambient light appropriate to the market is rendered in a restrained, desaturated low-to-mid-key palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the store at chest height, pause the upward tilt on a wide, slightly low-angle composition linking 수리영’s raised finger to the CCTV camera beneath the eave. She occupies the lower-left midground while the camera sits in the upper-center background, leaving an uninterrupted diagonal gesture line between them.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "arm raised finger pointing",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "points_to",
              "gesture_target_label": "CCTV camera beneath the eave",
              "label": "수리영",
              "screen_zone": "lower_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "CCTV camera beneath the eave",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "points_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Upper-frame focal anchor receiving 수리영's pointing gesture.",
            "directionality_class": "directional_3d",
            "element": "CCTV 카메라",
            "orientation": "Its lens-facing side points toward the area being checked while its body is visible beneath the eave.",
            "state": "Installed beneath the store eave."
          },
          {
            "camera_use": "Creates the upper boundary that spatially connects the surveillance camera to the store exterior.",
            "directionality_class": "directional_3d",
            "element": "마트 처마",
            "orientation": "The underside faces the camera above 수리영.",
            "state": "Extending over the store exterior."
          }
        ],
        "lighting_mood": "Natural early-morning exterior ambience is held in a restrained, desaturated contrast range.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Track into a face close-up at 수리영’s eye level, staying slightly off her frontal axis so her fixed monitor eyeline cuts across the frame. Her furrowed brow and tense mouth occupy the central-right area; the seated 보안직원 and 혜수 remain outside the tight primary frame as required by the flow.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning forward shoulders tensed",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "off-screen CCTV monitor",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [],
        "lighting_mood": "Neutral interior ambience is shaped into desaturated low-key contrast, allowing 수리영’s deepening anxiety to carry the frame.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Dolly directly toward the monitor at screen-center height until the CCTV image becomes an isolated detail, with only a narrow suggestion of the screen boundary. The unusually dark section sits centrally and the indistinct CCTV 속 남자 실루엣 remains embedded within it rather than resolving into identifiable features.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "blurred mid-conversation silhouette",
            "character": "CCTV 속 남자 실루엣",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Device surface carrying the recorded surveillance image and its anomalously dark section.",
            "directionality_class": "content_surface",
            "element": "CCTV 모니터 화면",
            "orientation": "The active image-bearing face is square to the camera, displaying an unusually dark segment with an indistinct male silhouette.",
            "state": "Playing and repeatedly reviewing the footage."
          }
        ],
        "lighting_mood": "The CCTV image is exceptionally dark and desaturated in the relevant section, preserving the silhouette as an unreadable mass.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The recorded figure is explicitly unidentifiable and must remain a generic, malformed silhouette rather than resolve into a referenced outlook.",
            "subject_id": "C20"
          }
        ]
      },
      {
        "camera_direction": "Finish the desk-side dolly at seated eye level in a tight, nearly frontal close-up of 수리영, excluding the enlarged photographs as specified. Her widened eyes and slightly parted mouth hold the center of frame, with shallow spatial context preventing the surrounding office from diluting the shock.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "frozen with breath caught",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [],
        "lighting_mood": "Desaturated daytime interior ambience is compressed into moody low-to-mid-key contrast around 수리영’s stunned expression.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From standing torso height directly behind 수리영, hold before the dolly-out fully widens, keeping her back aligned with the office door ahead. Her body occupies the central midground while one hand remains at her pocket with the folded note only halfway inserted, suspending the exit action.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "hand paused at pocket",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "office door on her exit line",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Exit anchor centered beyond 수리영's paused back.",
            "directionality_class": "directional_3d",
            "element": "사무실 문",
            "orientation": "The doorway faces 수리영 and remains aligned with the camera’s central axis behind her.",
            "state": "Present on her intended exit path; its opening state is not specified."
          },
          {
            "camera_use": "Readable action detail at the lower edge of 수리영's silhouette.",
            "directionality_class": "content_surface",
            "element": "접힌 좌표 메모 쪽지",
            "orientation": "Only the folded outer face is visible; the written coordinate side is concealed as the note enters the pocket.",
            "state": "Folded and halfway inserted into the pocket."
          },
          {
            "camera_use": "Sparse office context flanking the central retreat line.",
            "directionality_class": "directional_3d",
            "element": "사무실 책상들",
            "orientation": "Their sides recede away from the centered path toward the door.",
            "state": "Left unattended after the detectives depart."
          }
        ],
        "lighting_mood": "Daytime office ambience is restrained and desaturated, with low-to-mid-key separation preserving the lonely pause before departure.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 11,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Hold static at seated chest height from a front-diagonal position, framing 수리영’s upper body as she studies the monitor just beyond the camera-facing edge. She sits slightly left of center, leaning toward the map display, while a narrow portion of the monitor housing establishes the source of her fixed attention without overtaking the frame.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning toward monitor map",
            "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": "Near-foreground edge that motivates 수리영's eyeline while keeping her upper body primary.",
            "directionality_class": "directional_3d",
            "element": "PC방 모니터",
            "orientation": "The screen side faces 수리영, while only its side edge and housing are substantially visible to the camera.",
            "state": "On and displaying the map generated from the entered coordinates."
          },
          {
            "camera_use": "Surrounding spatial context kept subordinate to 수리영.",
            "directionality_class": "non_directional",
            "element": "어두운 PC방 내부",
            "orientation": "",
            "state": "Dark as specified in the shot description."
          }
        ],
        "lighting_mood": "The explicitly dark PC room is rendered in desaturated low-key contrast, with restrained screen influence shaping 수리영’s concentrated face.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Complete the downward tilt at hand height, looking slightly down and forward as 수리영’s hands press several printed maps into a firm half-fold. The hands and stacked pages occupy the central close frame with a margin of desk around them, preserving realistic paper scale and the directional pull toward the backpack in the following shot.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "hands creasing stacked maps",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary action surface held beneath 수리영's folding hands.",
            "directionality_class": "content_surface",
            "element": "인쇄된 지도 여러 장",
            "orientation": "The printed map faces are visible from above as the sheets are aligned and folded together.",
            "state": "Printed, stacked, and folded in half."
          },
          {
            "camera_use": "Provides a restrained scale reference around the paper and hands.",
            "directionality_class": "non_directional",
            "element": "PC방 책상 면",
            "orientation": "",
            "state": "Supporting the maps during the fold."
          }
        ],
        "lighting_mood": "The dark PC-room ambience remains desaturated and low-key, concentrating tonal separation on the hands and printed pages.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 수리영's hands are visible in this detail frame, so an outlook-specific identity reference would not meaningfully align.",
            "subject_id": "C09"
          }
        ]
      },
      {
        "camera_direction": "Track parallel to 수리영 at upper-torso height from her side, matching the bicycle’s speed and holding a medium profile composition. Her forward-pitched torso occupies the center, both hands and the handlebars remain across the lower third, and her rain-swept hair and clothing trail toward the rear edge of the frame.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "leaning forward over handlebars",
            "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": "screen right along the coastal road",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Provides lateral motion behind the tracked bicycle and establishes her route.",
            "directionality_class": "non_directional",
            "element": "coastal road",
            "orientation": "",
            "state": "under heavy rain"
          },
          {
            "camera_use": "Forms the moving weather layer around 수리영 without obscuring her hands or face.",
            "directionality_class": "non_directional",
            "element": "heavy rain",
            "orientation": "",
            "state": "pouring"
          },
          {
            "camera_use": "Maintains the dark storm context in the upper background.",
            "directionality_class": "non_directional",
            "element": "storm clouds",
            "orientation": "",
            "state": "heavily overcast"
          }
        ],
        "lighting_mood": "Storm-dark ambient exposure with brief lightning modulation, restrained saturation, and firm contrast across 수리영’s rain-soaked profile.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Continue the same parallel track while moving slightly ahead and inward to an eye-level, tight side-front angle. Raise the framing just enough to hold 수리영’s eyes near center, with wet bangs crossing the upper face and only fragments of her cheek, shoulder, and receding background remaining visible.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "driving forward over bicycle",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Passes as soft lateral streaks behind the tightly tracked face.",
            "directionality_class": "non_directional",
            "element": "heavy rain",
            "orientation": "",
            "state": "pouring"
          },
          {
            "camera_use": "Provides minimal motion context beyond 수리영’s shoulder.",
            "directionality_class": "non_directional",
            "element": "coastal road",
            "orientation": "",
            "state": "seen only in soft fragments"
          }
        ],
        "lighting_mood": "Low-key storm ambience and intermittent lightning isolate the determined eyes within a desaturated, high-tension close-up.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Dolly inward from eye level on an axis nearly perpendicular to the bedroom wall, then briefly settle into a symmetrical close composition. The roughly painted red circle is centered around the old photograph, with the photograph kept below two-fifths of the frame while the surrounding wall preserves its ritual-like geometry.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "red circle with photograph fixed at its center",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Creates the centered geometric frame around the photograph.",
            "directionality_class": "content_surface",
            "element": "bedroom wall with red circle",
            "orientation": "The marked face is square to camera, showing a roughly drawn red circle centered in the composition.",
            "state": "marked with a red circle"
          },
          {
            "camera_use": "Serves as the central focal point and destination of the dolly-in.",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "Its image-bearing front faces the camera nearly straight on, with blood visible on the photograph.",
            "state": "bloodied and fixed at the circle's center"
          }
        ],
        "lighting_mood": "Low-to-mid-key dusk ambience holds the room in restrained tones while the physical red circle and blood provide the only forceful color accents.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Cut directly onto the photograph’s perpendicular viewing axis at extreme close range, presenting its image edge-to-edge without 수리영’s hands or the wall. Keep the rural restaurant centered, the circular rooftop installation clearly separated against the roofline, and the two seated girls balanced across the lower portion of the photographed image.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "seated beside other girl",
            "character": "낡은 사진 속 어린 여자아이 1",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "facing_camera",
            "body_pose": "seated before rural restaurant",
            "character": "낡은 사진 속 어린 여자아이 2",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Defines the complete visual field as a historical still image rather than the present room.",
            "directionality_class": "content_surface",
            "element": "old photograph image",
            "orientation": "The image-bearing front is viewed straight on, showing a rural restaurant, its rooftop circular installation, and two seated girls.",
            "state": "old photograph from the 1970s or 1980s"
          },
          {
            "camera_use": "Anchors the upper center of the photographed composition.",
            "directionality_class": "directional_3d",
            "element": "rural restaurant in photograph",
            "orientation": "The restaurant's front side faces the original photograph camera.",
            "state": "visible within the old photograph"
          },
          {
            "camera_use": "Creates the ominous circular motif above the girls.",
            "directionality_class": "directional_3d",
            "element": "circular rooftop installation",
            "orientation": "Its circular face is visible above the restaurant roofline.",
            "state": "installed on the roof"
          }
        ],
        "lighting_mood": "The aged photograph is rendered with restrained tonal range and tactile image texture, without introducing a new light source or color cast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From standing eye level several meters behind 수리영, hold a static wide frame with her crouched seated figure low in the foreground and the empty harbor opening across the background. Her back establishes a strong central axis into the fog-concealed sea, leaving broad negative space around the solitary figure before the camera begins its later descent.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "curled on coastal rocks",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "fog-covered sea",
              "label": "수리영",
              "screen_zone": "lower_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "fog-covered sea",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Extends ahead of 수리영 as the principal field of negative space.",
            "directionality_class": "non_directional",
            "element": "empty harbor",
            "orientation": "",
            "state": "empty"
          },
          {
            "camera_use": "Conceals boats and limits the visible distance over the water.",
            "directionality_class": "non_directional",
            "element": "dense fog",
            "orientation": "",
            "state": "drifting in over the sea"
          },
          {
            "camera_use": "Supports 수리영’s low, exhausted silhouette in the foreground.",
            "directionality_class": "non_directional",
            "element": "coastal rocks",
            "orientation": "",
            "state": "used as her seat"
          },
          {
            "camera_use": "Forms the distant object of 수리영’s gaze.",
            "directionality_class": "non_directional",
            "element": "sea",
            "orientation": "",
            "state": "obscured by fog"
          }
        ],
        "lighting_mood": "Soft dusk ambience diffused by the dense fog creates subdued contrast, desaturated distance, and a lonely melodramatic silhouette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Complete the descending dolly directly above and slightly behind 수리영’s knees, settling into a steep high-angle close view. The phone lies centrally over her bent knees and occupies the lower central portion of the frame, large enough for 혜수’s repeated missed-call notifications to read while the knees retain a clear human scale reference.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "hunched over bent knees",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Carries the missed-call information and becomes the focal plane.",
            "directionality_class": "content_surface",
            "element": "mobile phone screen",
            "orientation": "The active front screen faces upward toward the camera, displaying multiple missed-call notifications from 혜수.",
            "state": "active with repeated missed-call notifications"
          },
          {
            "camera_use": "Provides the immediate physical support and scale reference beneath the phone.",
            "directionality_class": "non_directional",
            "element": "수리영's knees",
            "orientation": "",
            "state": "bent while seated"
          }
        ],
        "lighting_mood": "Diffused dusk light through the fog keeps the palette restrained while the readable phone display supplies localized screen luminance.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 2,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 수리영’s bent lower body is retained around the phone, so an outlook-specific facial reference cannot align with the framing.",
            "subject_id": "C09"
          }
        ]
      },
      {
        "camera_direction": "Finish the tracking arc at face level beside 인우, turning his half-rotated face into the close primary subject while retaining the mooring rope along one frame edge. 수리영 remains as a restrained over-shoulder presence in the near foreground, preserving the direction of his glance without competing with his unreadable expression.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "gripping mooring rope",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "paused beside the boat",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C23",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Remains at the composition edge as evidence of 인우’s interrupted task.",
            "directionality_class": "non_directional",
            "element": "mooring rope",
            "orientation": "",
            "state": "held by 인우"
          },
          {
            "camera_use": "Provides a limited working context behind 인우’s close reaction.",
            "directionality_class": "directional_3d",
            "element": "boat",
            "orientation": "The side nearest the harbor and 인우 is partially visible behind him.",
            "state": "arrived at the harbor"
          },
          {
            "camera_use": "Softens the distant harbor behind the two figures.",
            "directionality_class": "non_directional",
            "element": "fog",
            "orientation": "",
            "state": "dense"
          }
        ],
        "lighting_mood": "Fog-diffused dusk ambience keeps 인우’s face muted and low-contrast, with restrained shadows preserving his guarded expression.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Hold a static eye-level medium view from in front of 혜수, framing her from the waist up with a slight three-quarter turn rather than a frontal portrait. The phone is pressed to her ear near the upper side of the frame, while her rigid shoulders and fixed expression carry the visual weight before the horizontal pan begins.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "phone pressed to ear",
            "character": "혜수",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Provides sparse spatial context around 혜수 without distracting from her listening reaction.",
            "directionality_class": "non_directional",
            "element": "rooftop-room living area",
            "orientation": "",
            "state": "dark"
          },
          {
            "camera_use": "Connects 혜수 to 수리영’s recorded message and anchors her raised hand.",
            "directionality_class": "content_surface",
            "element": "mobile phone",
            "orientation": "The screen face is turned away from camera while the phone is held against 혜수's ear.",
            "state": "playing 수리영's recorded message"
          }
        ],
        "lighting_mood": "The dark interior at dusk is held in moody low-to-mid-key contrast with restrained, desaturated color and no added source-specific effect.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Dolly from inside the room toward the entrance and end at close range, tightening on the narrow gap rather than revealing the full door. The stationary slit sits near the center of the frame, bordered by the door’s inner edge on one side and the doorway frame on the other, turning the unseen space beyond into a compressed vertical absence.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "stationary gap of the partly open entrance door",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Forms both sides of the narrow central gap and becomes the endpoint of the camera move.",
            "directionality_class": "directional_3d",
            "element": "old iron entrance door",
            "orientation": "Its inner edge faces the camera while the door remains slightly angled away from the doorway frame.",
            "state": "partly open and stationary after moving in the wind"
          },
          {
            "camera_use": "Creates the narrow visible separation emphasized at the center of the composition.",
            "directionality_class": "non_directional",
            "element": "door gap",
            "orientation": "",
            "state": "narrow and stationary"
          },
          {
            "camera_use": "Provides the fixed opposite boundary of the gap.",
            "directionality_class": "directional_3d",
            "element": "entrance doorway",
            "orientation": "The interior-facing edge is visible opposite the door edge.",
            "state": "partly obstructed by the open door"
          }
        ],
        "lighting_mood": "Dark dusk ambience compresses the doorway into bleak low-key contrast, with the narrow gap held legible but unrevealing.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Dolly inward from beside the seated 수리영 at chest height, angling across the photograph toward 인우 while preserving both ends of her accusatory eyeline. 수리영’s upper body and pointing hand occupy the left foreground, the old photograph rests near the lower center, and 인우’s unsettled face remains across from her in the right midground.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning forward while pointing",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C23",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "recoiling from the photograph",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "인우",
              "screen_zone": "middle_right",
              "target_id": "C23",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Connects 수리영’s pointing finger to 인우’s reaction and carries the visual clue between them.",
            "directionality_class": "content_surface",
            "element": "old black-and-white photograph",
            "orientation": "Its image-bearing front is angled toward 인우 but remains legible to camera, including the small ‘금월’ lettering indicated by 수리영.",
            "state": "held out for 인우 to inspect"
          },
          {
            "camera_use": "Maintains the boat setting beneath and behind the confrontation.",
            "directionality_class": "non_directional",
            "element": "fishing-boat deck",
            "orientation": "",
            "state": "carrying the two seated figures at sea"
          },
          {
            "camera_use": "Provides limited depth behind 인우 and foreshadows the direction of his sudden escape.",
            "directionality_class": "directional_3d",
            "element": "wheelhouse",
            "orientation": "Its entrance side lies behind 인우 within the boat's layout.",
            "state": "present beyond the deck"
          }
        ],
        "lighting_mood": "Dusk over the open sea gives the confrontation restrained, desaturated contrast, with the photograph and trembling exchange held in a bleak natural ambience.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height beside the wheelhouse entrance, the handheld camera briefly settles at a tense medium-action distance as 수리영 cuts across the left foreground and drives her extended arm toward 인우 in the right midground. Their opposing movement crosses the center of the frame, with the entrance and controls remaining visible behind 수리영 so her body clearly blocks his route.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "lunging with arm extended",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C23",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "recoiling mid-stride toward controls",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "Inwoo's path",
              "label": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "wheelhouse controls",
              "label": "인우",
              "screen_zone": "middle_right",
              "target_id": "C23",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "wheelhouse controls",
              "screen_zone": "upper_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "The opening frames the crossed bodies and defines the route 수리영 is denying 인우.",
            "directionality_class": "directional_3d",
            "element": "wheelhouse entrance",
            "orientation": "The camera sees the opening obliquely beside the struggling figures, with its threshold receding behind them.",
            "state": "The entrance is the active passage into the wheelhouse."
          },
          {
            "camera_use": "Kept in the background as the destination of 인우's interrupted movement.",
            "directionality_class": "directional_3d",
            "element": "wheelhouse controls",
            "orientation": "The operating side faces 인우's intended path but is partially screened by 수리영.",
            "state": "Within 인우's attempted reach; operating state is not specified."
          }
        ],
        "lighting_mood": "Desaturated sunset ambience supports tense low-to-mid-key contrast without introducing an additional interior light source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At hand height between 수리영 and 인우, the camera finishes a short dolly-in just above the photograph, angled down so 수리영's fingertip and the selected girl's face meet at frame center. The photograph occupies roughly the central third while the pressing finger and part of 수리영's hand provide human scale, and the composition holds at the point from which the camera can next rise toward 인우.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning over pressed photograph",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "The image-bearing surface anchors the insert beneath 수리영's pressing fingertip.",
            "directionality_class": "content_surface",
            "element": "낡은 사진",
            "orientation": "Its image-bearing face is turned toward the camera, with one young girl's face visible directly beneath 수리영's fingertip.",
            "state": "Old and held steady while the girl's face is pressed."
          }
        ],
        "lighting_mood": "Subdued sunset ambience renders the photograph and hand in restrained, desaturated contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 수리영's hand and a limited portion of her body are visible, so a full outlook reference would not meaningfully align to the framing.",
            "subject_id": "C09"
          }
        ]
      },
      {
        "camera_direction": "From just behind and slightly above 인우's shoulder, the tracking camera reaches the end of its lateral move and looks across his rigid foreground edge toward the wheelhouse wall at medium distance. His shoulder occupies a narrow strip along the lower-right edge while the numerous circular markings remain legible across the central background, with the red circle held as the single sharp crimson accent before the camera moves past him.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "shoulders rigid after recoil",
            "character": "인우",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "인우",
              "screen_zone": "lower_right",
              "target_id": "C23",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "wall of circular markings",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "The reveal's primary visual field, kept readable beyond 인우's shoulder.",
            "directionality_class": "content_surface",
            "element": "조타실 벽면의 원형 표식들",
            "orientation": "The marked face of the wall is presented to the camera, showing numerous circular signs and one distinct red circle.",
            "state": "Densely covered with circular markings, including the newly noticed red circle."
          }
        ],
        "lighting_mood": "Restrained sunset ambience leaves the wheelhouse in moody desaturated contrast while the marked red circle supplies a deep crimson accent.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 5,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "인우 is represented chiefly by a partial shoulder and rear contour serving as a framing edge, making an outlook-specific reference unnecessary.",
            "subject_id": "C23"
          }
        ]
      },
      {
        "camera_direction": "At eye height and perpendicular to 인우's shoulder, the static camera tightens into a two-person profile close-up with 인우 on the right and 수리영 entering from the left. Their faces and shoulder line occupy most of the frame, and the exact contact point where 수리영's head settles against 인우's shoulder is held near center while his wide-eyed rigidity remains fully visible.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "shoulders locked under impact",
            "character": "인우",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "head dropped onto shoulder",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "unconscious"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "인우",
              "screen_zone": "middle_right",
              "target_id": "C23",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "close",
        "key_bg_elements": [],
        "lighting_mood": "Muted sunset ambience and restrained low-to-mid-key contrast isolate the contact as a bleak, suspended emotional beat.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At sea level beside the forward half of the boat, the tracking camera moves parallel to its course in a wide side view as the bow advances from screen left toward the dense fog on screen right. The bow and its wake remain below forty percent of the composition, leaving enough sea and fog visible to show the boat's forward half becoming obscured at the end of the move.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "dense fog at screen right",
              "label": "forward half of the boat",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dense fog belt",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "The moving side profile and bow wake establish the boat's direction into the obscured area.",
            "directionality_class": "directional_3d",
            "element": "boat bow",
            "orientation": "Its forward side points toward screen right while its lateral face remains visible to the camera.",
            "state": "The forward half is entering the dense fog and creating a wake."
          },
          {
            "camera_use": "Forms the boundary that progressively conceals the bow.",
            "directionality_class": "non_directional",
            "element": "dense fog belt",
            "orientation": "",
            "state": "Dense enough to erase the visible boundary beyond the boat's forward section."
          },
          {
            "camera_use": "Provides the lower environmental plane and makes the bow's wake readable.",
            "directionality_class": "non_directional",
            "element": "sea",
            "orientation": "",
            "state": "Disturbed locally by the boat's advancing bow and wake."
          }
        ],
        "lighting_mood": "The setting sun casts supported golden light across the sea, restrained within an otherwise desaturated and bleak palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 3,
        "subject_reference_policy": []
      }
    ],
    "total": 55,
    "failed_batches": 0
  },
  "step_id": "shot_staging",
  "run_id": "b58d2f16-080a-4f40-ae96-1b84c84fe34e",
  "resolved_model": "gpt",
  "updated_at": "2026-07-18T06:17:13.483436+00:00",
  "schema_version": 6,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}