{
  "status": "completed",
  "completed_count": 66,
  "applicable_count": 66,
  "failed_count": 0,
  "data": {
    "shots": [
      {
        "camera_direction": "From the scene flow’s close shoulder-height track, the camera ends inches off the woman’s side and slides around the man’s shoulder into a tight front three-quarter close-up. His face occupies the right two-thirds of frame, the red flare in his eyes held sharp while the damp alley and utility pole collapse into a smeared, dark background.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "neck twisted mid-turn",
            "character": "아시아계 남성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "nearly abstract blurred background behind the face",
            "directionality_class": "non_directional",
            "element": "wet alley darkness",
            "orientation": "",
            "state": "damp and low visibility"
          },
          {
            "camera_use": "thin vertical blur at frame edge, giving location without stealing focus",
            "directionality_class": "directional_3d",
            "element": "utility pole",
            "orientation": "its side edge faces the camera as a soft vertical strip",
            "state": "old and rain-darkened"
          },
          {
            "camera_use": "distant practical glow creating the eye glint contrast",
            "directionality_class": "directional_3d",
            "element": "streetlamp",
            "orientation": "lamp head angled down into the alley, seen only as defocused glow",
            "state": "dimly on"
          }
        ],
        "lighting_mood": "Low-key sodium streetlight is cooled by blue-black alley shadow, with the only sharp crimson accent coming from the man’s eyes.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera continues the flow downward into an extreme compressed insert beside the woman’s neck, handheld and trapped between the two bodies. The bite point sits center frame, with the man’s teeth and the taut pull of skin in focus while both faces are mostly cut off by the frame edges.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "jaw clamped on neck",
            "character": "아시아계 남성",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "head forced aside",
            "character": "아시아계 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "thin blurred sliver behind the bodies, adding claustrophobic alley texture",
            "directionality_class": "non_directional",
            "element": "damp concrete wall",
            "orientation": "",
            "state": "wet and grimy"
          },
          {
            "camera_use": "barely visible dark vertical boundary behind the contact point",
            "directionality_class": "directional_3d",
            "element": "utility pole edge",
            "orientation": "one rounded side faces the camera in soft blur",
            "state": "old and stained"
          },
          {
            "camera_use": "background shadow swallowing facial context",
            "directionality_class": "non_directional",
            "element": "alley shadow pocket",
            "orientation": "",
            "state": "deep and indistinct"
          }
        ],
        "lighting_mood": "The contact point is lit by a sickly, weak streetlamp edge, with cold shadows and a faint wet crimson highlight at the skin.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The frame shows only the biting mouth and partial body contact, so a full outlook reference would be visually over-specified.",
            "subject_id": "C01"
          },
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The woman is represented by neck and shoulder detail rather than a recognizable full appearance.",
            "subject_id": "C03"
          }
        ]
      },
      {
        "camera_direction": "Seen as regional news footage, the camera holds a static eye-level wide frame from just outside the police line, slightly looking down into the cordoned scene. The yellow tape cuts across the lower foreground as the dominant boundary, while two sheet-covered bodies lie separated in the midground on the wet ground.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "covered supine remains",
            "character": "변사체",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "police line tape",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "two covered bodies",
              "screen_zone": "middle_center",
              "target_id": "C04",
              "target_kind": "character"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "dominant foreground barrier separating viewer from crime scene",
            "directionality_class": "content_surface",
            "element": "police line tape",
            "orientation": "camera-facing side shows warning text along the tape",
            "state": "stretched taut across the frame"
          },
          {
            "camera_use": "primary visual focus in the cordoned area",
            "directionality_class": "non_directional",
            "element": "white covering sheets",
            "orientation": "",
            "state": "dirty, still, and rain-damp"
          },
          {
            "camera_use": "broadcast-context background with forensic activity implied at edges",
            "directionality_class": "non_directional",
            "element": "wet crime scene ground",
            "orientation": "",
            "state": "dark, slick, and scuffed"
          },
          {
            "camera_use": "adds procedural realism around the bodies",
            "directionality_class": "directional_3d",
            "element": "evidence markers",
            "orientation": "numbered faces angled partly toward the news camera",
            "state": "placed and undisturbed"
          }
        ],
        "lighting_mood": "Flat daylight is desaturated by damp pavement and news-camera exposure, giving the scene a cold procedural realism.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 1,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The bodies are explicitly unidentifiable and covered by sheets; the shot should prioritize forensic anonymity over character-specific likeness.",
            "subject_id": "C04"
          }
        ]
      },
      {
        "camera_direction": "The camera begins from the flow’s very high aerial position, looking almost straight down through fog at the clustered Incheon outskirts. The old rooftop room is held near the center as the clearest geometric landmark, while the surrounding low-rise roofs fade outward into mist-softened edges.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "central landmark anchoring the aerial composition",
            "directionality_class": "directional_3d",
            "element": "old villa rooftop room",
            "orientation": "flat roof and upper walls face the top-down camera, with the door side barely readable",
            "state": "weathered and still"
          },
          {
            "camera_use": "environmental grid around the landmark",
            "directionality_class": "directional_3d",
            "element": "clustered low-rise rooftops",
            "orientation": "roof planes face upward in varied angles beneath the camera",
            "state": "aged, muted, and damp"
          },
          {
            "camera_use": "softens the neighborhood boundary and adds dread",
            "directionality_class": "non_directional",
            "element": "coastal fog",
            "orientation": "",
            "state": "thick and drifting"
          },
          {
            "camera_use": "thin dark lines breaking the pale mist",
            "directionality_class": "directional_3d",
            "element": "narrow alley lanes",
            "orientation": "seen as vertical and diagonal cuts between buildings from above",
            "state": "empty and shadowed"
          }
        ],
        "lighting_mood": "Overcast daylight is filtered through gray coastal fog, creating a cold, suspended dread with almost no hard shadows.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 3,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the far side of the cramped rooftop living room, the camera holds the flow’s eye-level medium-wide view toward the TV side and the thin sunlit window. The 50대 한국인 여성 is centered slightly right, frozen with her apron gathered in her hands, her stare aimed just past the lens toward the television so the room feels like it is holding its breath.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "gripping apron hem",
            "character": "50대 한국인 여성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "off-axis object motivating her stare and the news audio",
            "directionality_class": "content_surface",
            "element": "television screen",
            "orientation": "front screen faces the woman and is partly visible to camera with indistinct news imagery",
            "state": "on, flickering softly"
          },
          {
            "camera_use": "thin natural light source framing her tension",
            "directionality_class": "transparent_surface",
            "element": "small living room window",
            "orientation": "dusty glass lets in a narrow shaft of sunlight and a washed-out exterior beyond",
            "state": "closed and hazy"
          },
          {
            "camera_use": "uneasy domestic sound and motion in the background",
            "directionality_class": "directional_3d",
            "element": "sink faucet",
            "orientation": "spout side points down into the sink, visible in the kitchen area",
            "state": "running"
          },
          {
            "camera_use": "folk-remedy detail grounding the occult atmosphere",
            "directionality_class": "non_directional",
            "element": "washed medicinal herbs",
            "orientation": "",
            "state": "half-washed and wet"
          },
          {
            "camera_use": "domestic unease through steam and rattling sound",
            "directionality_class": "directional_3d",
            "element": "boiling pot",
            "orientation": "side and lid edge face camera on the stove",
            "state": "boiling and steaming"
          }
        ],
        "lighting_mood": "A thin blade of warm window light cuts through otherwise dim blue-gray interior shadow, with the TV adding a faint nervous flicker.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera stays at the table-side close position from the flow, slightly above cup height and angled toward 수리영 at arm’s length. The cup rim hovers in the lower foreground near her lips, while her furrowed brow and displeased mouth fill the upper center against a softly blurred kitchen background.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "cup lowered from lips",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "near foreground object tying the reaction to the bitter drink",
            "directionality_class": "directional_3d",
            "element": "drinking cup",
            "orientation": "rim and side wall angle upward toward camera near her mouth",
            "state": "partly full and just lowered"
          },
          {
            "camera_use": "soft table plane supporting the domestic beat",
            "directionality_class": "directional_3d",
            "element": "small dining table",
            "orientation": "top surface recedes diagonally behind the cup",
            "state": "worn and lightly cluttered"
          },
          {
            "camera_use": "blurred source of steam and herbal smell behind her",
            "directionality_class": "directional_3d",
            "element": "kitchen stove area",
            "orientation": "front edge faces camera in background blur",
            "state": "active and steaming"
          },
          {
            "camera_use": "cool background stripe contrasting her face",
            "directionality_class": "transparent_surface",
            "element": "small window",
            "orientation": "hazy glass passes pale daylight behind the room",
            "state": "closed and dusty"
          }
        ],
        "lighting_mood": "Soft daylight and kitchen steam flatten into muted grays, letting her skin tone and the bitter cup edge carry the human warmth.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera finishes the reveal flow at wrist level, dollying into an isolated insert of the 50대 한국인 여성’s wrist near the entryway. Her skin crosses the center of frame diagonally, with the small circular mark sharp and red while shoes, doorframe, and hallway clutter dissolve into shallow-focus shapes.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "wrist exposed mid-embrace",
            "character": "50대 한국인 여성",
            "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": "wrist with red circular mark",
              "screen_zone": "middle_center",
              "target_id": "C08",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "soft contextual blur behind the wrist",
            "directionality_class": "directional_3d",
            "element": "entryway doorframe",
            "orientation": "inner edge faces the camera as a vertical dark strip",
            "state": "closed and worn"
          },
          {
            "camera_use": "blurred departure context beneath the wrist",
            "directionality_class": "directional_3d",
            "element": "shoe area",
            "orientation": "shoe tops and sides angle toward camera at floor level",
            "state": "cluttered but still"
          },
          {
            "camera_use": "muted background plane isolating the red mark",
            "directionality_class": "non_directional",
            "element": "out-of-focus hallway wall",
            "orientation": "",
            "state": "faded and slightly stained"
          }
        ],
        "lighting_mood": "A low, shallow-focus sliver of daylight skims the wrist, making the circular mark the only vivid crimson point in the muted entryway.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 9,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only the wrist and skin mark are visible, so a full outlook reference would not match the isolated detail framing.",
            "subject_id": "C08"
          }
        ]
      },
      {
        "camera_direction": "The camera tracks parallel to 수리영 from a low waist-to-knee height, holding a clean side composition as she rides along the coastal road. Her bent knee and pedal stroke occupy the lower middle of frame, while her smiling profile, earphones, and wind-blown hair ride across the upper right against the sea road blur.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "one knee pressing pedal",
            "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": "수리영 riding bicycle",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "coastal road direction",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "horizontal motion blur reinforcing speed",
            "directionality_class": "directional_3d",
            "element": "coastal guardrail",
            "orientation": "rail side runs parallel to the camera movement, streaking behind her",
            "state": "sun-faded and slightly rusted"
          },
          {
            "camera_use": "open background giving her ride a bright release before the bark",
            "directionality_class": "non_directional",
            "element": "distant sea haze",
            "orientation": "",
            "state": "pale and breezy"
          },
          {
            "camera_use": "moving ground reference under the bicycle",
            "directionality_class": "non_directional",
            "element": "asphalt road",
            "orientation": "",
            "state": "dry with faint coastal grit"
          },
          {
            "camera_use": "thin background line separating road from sea",
            "directionality_class": "directional_3d",
            "element": "roadside curb",
            "orientation": "long side faces camera in a shallow diagonal",
            "state": "worn and sunlit"
          }
        ],
        "lighting_mood": "Bright coastal daylight is kept cool and slightly desaturated, with her smile and movement briefly lifting the otherwise muted palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Following the flow, the lens pushes very close to 수리영 outside the kennel at eye level, with the metal bars softened into a dark grid across her eyes. Her face is held tight in the center, almost frontal but slightly offset, while the kennel interior behind the grid remains indistinct and threatening.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning into bars",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C10",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "Rottweiler behind the kennel bars",
              "label": "수리영's cold stare",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "kennel bars crossing her eyes",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft foreground grid slicing across her stare",
            "directionality_class": "directional_3d",
            "element": "kennel bars",
            "orientation": "vertical metal rods face the camera as a close, out-of-focus barrier",
            "state": "locked and worn"
          },
          {
            "camera_use": "dark threat space beyond her gaze",
            "directionality_class": "non_directional",
            "element": "kennel interior shadow",
            "orientation": "",
            "state": "dim and unsettled"
          },
          {
            "camera_use": "cold institutional texture around the cage",
            "directionality_class": "non_directional",
            "element": "shelter concrete wall",
            "orientation": "",
            "state": "stained and damp-looking"
          }
        ],
        "lighting_mood": "Harsh shelter daylight is cooled into gray-green shadow, with the bars casting prisonlike bands that make her stare feel unnaturally calm.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 6,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height in the shelter aisle, the camera holds slightly in front of and to the right of 수리영 for a medium phone-side profile. Her phone hand sits along the right edge of her face, her eyes lowered toward the bottom left of frame, while kennel fronts recede softly behind her without drawing attention.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "phone pressed to ear",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "receding background geometry minimized behind her worry",
            "directionality_class": "directional_3d",
            "element": "kennel fronts",
            "orientation": "cage doors angle away down the aisle from camera right to left",
            "state": "closed and softly blurred"
          },
          {
            "camera_use": "narrow negative space emphasizing her pause away from the cages",
            "directionality_class": "non_directional",
            "element": "shelter aisle floor",
            "orientation": "",
            "state": "clean but scuffed"
          },
          {
            "camera_use": "key object explaining the silent unanswered call",
            "directionality_class": "directional_3d",
            "element": "mobile phone",
            "orientation": "thin side edge and back corner face camera as it presses to her ear",
            "state": "active call in progress"
          },
          {
            "camera_use": "distant practical fixtures flattening the aisle",
            "directionality_class": "directional_3d",
            "element": "overhead shelter lights",
            "orientation": "undersides face down toward the aisle and camera",
            "state": "on, cool, and clinical"
          }
        ],
        "lighting_mood": "Cool fluorescent shelter light drains the color from the aisle, leaving her furrowed brow and lowered gaze as the emotional focus.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 6,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the supermarket aisle at eye level, the camera completes the flow's dolly-in into a tight face close-up of 수리영, placed slightly right of center as if just off the 남자 직원's eyeline. The male employee remains off-screen left; her widened eyes and parted lips carry the information, with blurred shelf edges compressing around her cheeks.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "neck craned forward",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C13",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft aisle texture framing the sides of her face without pulling focus.",
            "directionality_class": "directional_3d",
            "element": "supermarket shelving",
            "orientation": "shelf ends angle away from the camera on both sides, creating a shallow tunnel around her face",
            "state": "stocked, fluorescent-lit, slightly cluttered"
          },
          {
            "camera_use": "Color accents behind her head, kept out of focus to preserve urban realism.",
            "directionality_class": "content_surface",
            "element": "price labels on shelf edges",
            "orientation": "printed label faces are turned toward camera but unreadable in blur",
            "state": "small, bright, partially obscured"
          }
        ],
        "lighting_mood": "Cold supermarket fluorescents flatten her skin while faint crimson packaging blur adds an uneasy occult accent.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the supermarket entrance at chest height, the static frame angles slightly downward so 수리영's bowed face sits in the upper half and her phone rests near the lower center. The glowing street and supermarket doors stay softly behind her, while the unchanged camera distance turns the previous confusion into a held, frozen decision point.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hunched over phone",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Soft background anchor showing she has exited the store.",
            "directionality_class": "transparent_surface",
            "element": "supermarket glass entrance doors",
            "orientation": "smudged glass panels reveal blurred interior aisles and reflect faint street color",
            "state": "closed behind her, damp fingerprints visible"
          },
          {
            "camera_use": "Backlight and urban movement behind her silhouette.",
            "directionality_class": "non_directional",
            "element": "neon street glow",
            "orientation": "",
            "state": "on, diffused by evening mist"
          },
          {
            "camera_use": "Secondary clue in her hands, kept legible enough to imply unanswered contact without becoming a screen insert.",
            "directionality_class": "content_surface",
            "element": "mobile phone screen",
            "orientation": "lit front face tilts upward toward her and slightly toward the camera",
            "state": "on, casting a pale glow on her fingers"
          }
        ],
        "lighting_mood": "Wet dusk neon and cold phone light carve her face from below, with the street behind falling into blue-gray coastal shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera holds the flow's parallel side-tracking position about three meters from 수리영, waist-to-chest height, keeping her bicycle in hard profile as she cuts through the foggy coastal road. Her torso leans forward into the left third, one knee driven down on the pedal, while hair and jacket edges stream backward to make the speed visible against the dark negative space.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "pressing pedal downward",
            "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": "foggy road ahead",
              "label": "수리영 on bicycle",
              "screen_zone": "middle_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "foggy road ahead",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Lateral streaking background that emphasizes her speed.",
            "directionality_class": "non_directional",
            "element": "fog over coastal road",
            "orientation": "",
            "state": "dense, low, wind-torn"
          },
          {
            "camera_use": "Dark horizontal base line behind the bicycle wheels.",
            "directionality_class": "non_directional",
            "element": "wet asphalt",
            "orientation": "",
            "state": "slick, black, reflecting faint road light"
          },
          {
            "camera_use": "Distant environmental edge giving the frame its coastal chill.",
            "directionality_class": "non_directional",
            "element": "cold roadside darkness",
            "orientation": "",
            "state": "nearly featureless, swallowed by mist"
          }
        ],
        "lighting_mood": "Low-key night lighting turns her into a blue-black silhouette, with tiny wet highlights on the bicycle and a faint sodium rim through the fog.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At waist height, the camera pushes into the old metal door seam from a slight downward angle, stopping in an insert where the half-inserted flyer occupies roughly the central third and the lock gap cuts a dark vertical line beside it. The surrounding chipped paint and rust remain visible as scale texture, making the intrusion feel mechanical and intimate without enlarging the flyer unrealistically.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal plane showing the forced entry method.",
            "directionality_class": "content_surface",
            "element": "advertising flyer",
            "orientation": "printed advertising face is partially visible to camera while its far edge disappears into the door gap",
            "state": "creased, half-pushed into the seam"
          },
          {
            "camera_use": "Hard vertical frame line and source of the lock-release tension.",
            "directionality_class": "directional_3d",
            "element": "old metal door edge",
            "orientation": "the side edge and inner seam face the camera at a shallow angle",
            "state": "closed but flexing, chipped and rusty"
          },
          {
            "camera_use": "Small moving detail at the seam, kept partially hidden.",
            "directionality_class": "directional_3d",
            "element": "door lock mechanism",
            "orientation": "only the narrow latch side is visible inside the gap",
            "state": "giving way, barely exposed"
          }
        ],
        "lighting_mood": "A damp rooftop night palette of green-black metal and thin amber spill makes the red flecks of rust read like restrained blood marks.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 9,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the rooftop window at eye level, the camera is squared directly to the pane and holds still as the enlarged shadow of 한국인 성인 남성 bends from the upper window area toward a smaller compressed shadow near the bottom edge. The glass itself becomes the stage: no body is shown directly, only silhouettes trapped in the rectangular frame.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "hunched over victim",
            "character": "한국인 성인 남성",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "man's enlarged shadow",
              "screen_zone": "upper_center",
              "target_id": "C14",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "compressed smaller shadow",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Main projection surface for the threatening silhouette action.",
            "directionality_class": "transparent_surface",
            "element": "rooftop room window glass",
            "orientation": "dirty glass faces camera square-on, showing blurred interior light and shadows pressed against it",
            "state": "closed, grimy, slightly fogged"
          },
          {
            "camera_use": "Rigid frame that cages the silhouette.",
            "directionality_class": "directional_3d",
            "element": "window frame",
            "orientation": "front face is parallel to camera, dividing the pane into a tight rectangle",
            "state": "old, paint peeling"
          },
          {
            "camera_use": "Off-screen source that enlarges the shadow unnaturally.",
            "directionality_class": "non_directional",
            "element": "interior lamp spill",
            "orientation": "",
            "state": "on, harsh and low"
          }
        ],
        "lighting_mood": "Backlit yellow interior spill throws black, enlarged shapes onto cold blue exterior glass, creating a ritual-like shadow tableau.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 9,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "Only the distorted shadow of the figure is visible on glass; facial and wardrobe identity references would not align with the image.",
            "subject_id": "C14"
          }
        ]
      },
      {
        "camera_direction": "From 수리영's locked subjective POV at the top of the rooftop stairs, the camera faces across several meters of rooftop toward the half-open old metal door, held dead center after the prior handheld urgency stops. The stair edge remains low in the foreground, and the door's black interior slit pulls the eye into the stillness.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "half-open old metal door",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary reveal object at the end of the POV path.",
            "directionality_class": "directional_3d",
            "element": "old metal rooftop door",
            "orientation": "front face is angled slightly toward camera, with the open edge exposing a narrow dark interior gap",
            "state": "half-open, scratched, rust-stained"
          },
          {
            "camera_use": "Foreground threshold from her arrival point.",
            "directionality_class": "directional_3d",
            "element": "top stair lip",
            "orientation": "horizontal stair edge cuts across the lower frame toward the door",
            "state": "wet, concrete, dim"
          },
          {
            "camera_use": "Empty rooftop space increasing distance and dread.",
            "directionality_class": "non_directional",
            "element": "rooftop concrete floor",
            "orientation": "",
            "state": "damp, dark, wind-scuffed"
          }
        ],
        "lighting_mood": "Moonless blue-gray rooftop darkness is broken only by a thin sickly spill from the open door, making the doorway feel contaminated.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 10,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From 수리영's eye-height POV just inside the bedroom, the frame holds about two meters from the pulled curtain, placing 50대 한국인 여성 seated behind it in the center-right midground. The curtain edge hangs in the left foreground like a torn veil, while her dropped head and unmoving shoulders are allowed to register before any closer detail.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "slumped behind curtain",
            "character": "50대 한국인 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Foreground reveal frame, showing the moment after it has been pulled aside.",
            "directionality_class": "transparent_surface",
            "element": "thin bedroom curtain",
            "orientation": "sheer fabric hangs partly open, allowing the body and stained floor beyond to be seen through and around it",
            "state": "pulled aside, wrinkled, damp-looking"
          },
          {
            "camera_use": "Ground trail leading the eye to the seated body.",
            "directionality_class": "non_directional",
            "element": "blood-stained floor",
            "orientation": "",
            "state": "wet patches and smeared footprints visible in low light"
          },
          {
            "camera_use": "Soft domestic background made threatening by stillness.",
            "directionality_class": "directional_3d",
            "element": "bedroom wall corner",
            "orientation": "corner planes recede behind the body, compressing the small room",
            "state": "dim, worn, stained"
          }
        ],
        "lighting_mood": "A weak TV-blue spill and dull lamp amber mix into low-key bedroom gloom, with dark reds on the floor sharply muted but unmistakable.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 11,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low at mattress height on the curtain side of the body, the dolly-in tightens to a close view of 50대 한국인 여성's torn shoulder and collarbone, with only a blurred hint of fabric and hair at the edges. The wound line sits diagonally across the frame, making the camera distance the only intensified axis after the previous reveal.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "slumped shoulder exposed",
            "character": "50대 한국인 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "wound area on seated body",
              "screen_zone": "middle_center",
              "target_id": "C08",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft color and texture boundary around the injury.",
            "directionality_class": "transparent_surface",
            "element": "curtain edge",
            "orientation": "semi-sheer fabric falls out of focus along one side, barely revealing darkness beyond",
            "state": "parted, stained at the lower edge"
          },
          {
            "camera_use": "Muted domestic surface behind the close-up for scale.",
            "directionality_class": "non_directional",
            "element": "bedding fabric",
            "orientation": "",
            "state": "rumpled, shadowed, slightly soiled"
          },
          {
            "camera_use": "Small red accent near the injury, reinforcing the forensic horror tone.",
            "directionality_class": "non_directional",
            "element": "stilled blood at collarbone",
            "orientation": "",
            "state": "darkened, no longer flowing"
          }
        ],
        "lighting_mood": "Cold side spill skims the skin texture while a dirty amber falloff leaves the torn area in brutal, shallow-depth shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 10,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot isolates a wound and partial torso rather than the full face or wardrobe, so a base character reference is more appropriate than an outlook-specific identity prompt.",
            "subject_id": "C08"
          }
        ]
      },
      {
        "camera_direction": "At chest height near the bedroom center, the tracking move pauses about one meter in front of 수리영, catching her upper body nearly head-on as she holds the phone hard to her ear. Her wet eyes look past the lens toward the body outside the main frame, while the room behind her stays unstable and dim rather than becoming a clean portrait.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "phone clutched to ear",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C08",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Blurred domestic light source that flickers behind her panic.",
            "directionality_class": "content_surface",
            "element": "television screen in adjoining room",
            "orientation": "lit screen face is angled toward camera but too blurred to read content",
            "state": "on, casting blue flicker"
          },
          {
            "camera_use": "Dim warm counterpoint to the TV spill.",
            "directionality_class": "directional_3d",
            "element": "living room floor lamp",
            "orientation": "lampshade side faces camera from background, its bulb hidden by the shade",
            "state": "on, weak, yellowing"
          },
          {
            "camera_use": "Unfocused trace of the crime scene behind her.",
            "directionality_class": "non_directional",
            "element": "blood marks on bedroom floor",
            "orientation": "",
            "state": "dark, smeared, partially hidden by depth of field"
          }
        ],
        "lighting_mood": "Her face is split between cold phone-blue and weak amber room light, with faint crimson floor stains bleeding into the background blur.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 13,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Beside the seated body at waist height, the camera looks downward into 50대 한국인 여성's clenched hand, pushing close enough that the crumpled photograph and rigid fingers occupy the center while the rest of the body falls into shallow blur. The frame keeps a sliver of floor and curtain as scale references, but the focus is locked on the trapped clue.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "hand clenched around photo",
            "character": "50대 한국인 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary clue held within the dead hand.",
            "directionality_class": "content_surface",
            "element": "crumpled photograph",
            "orientation": "creased image side faces upward toward camera, but folds obscure most details",
            "state": "wrinkled, partly trapped between fingers"
          },
          {
            "camera_use": "Soft background plane tying the insert to the discovered body.",
            "directionality_class": "transparent_surface",
            "element": "curtain hem",
            "orientation": "thin stained fabric lies beyond the hand, partly revealing the dark floor through it",
            "state": "parted, dirty, still"
          },
          {
            "camera_use": "Dark base surface grounding the hand and photo.",
            "directionality_class": "non_directional",
            "element": "bedroom floor near body",
            "orientation": "",
            "state": "damp-looking, marked with blood smears"
          }
        ],
        "lighting_mood": "A narrow cold highlight catches the photo creases and knuckles, while the surrounding room drops into brown-black shadow with restrained red stains.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 14,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only the dead character's hand is visible around the clue; outlook-specific facial or costume identity would not be useful for image generation.",
            "subject_id": "C08"
          }
        ]
      },
      {
        "camera_direction": "Subjective POV from 수리영’s eye height beside the bed, squared flat to the wall about 1.5 meters away; the rough crimson circle sits almost dead center, with only a thin suggestion of the bed edge along the lower frame. The image should feel unnaturally stripped down, as if the room has fallen away and the wall surface itself is staring back.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary focal surface holding the hallucinated symbol",
            "directionality_class": "content_surface",
            "element": "wall above the bed",
            "orientation": "the camera-facing wall plane is visible, carrying a wet-looking rough red circular smear like blood brushed onto plaster",
            "state": "bare, dim, damp-looking, visually emptied except for the red mark"
          },
          {
            "camera_use": "low contextual edge at the bottom of frame",
            "directionality_class": "directional_3d",
            "element": "bed edge",
            "orientation": "only the upper edge of the bed faces the camera as a narrow, dark horizontal reference",
            "state": "mostly obscured, still, shadowed"
          }
        ],
        "lighting_mood": "Cold low-key darkness collapses around the wall while the crimson mark appears over-saturated and wet, like a hallucinated stain glowing from inside the plaster.",
        "perception_mode": "hallucination",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 11,
        "shot_index": 17,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At street waist height beside the police car, held static about six feet from the open driver-side door and angled three-quarters toward the rooftop stair entrance in the background. 혜수 is caught mid-exit with one foot planted on the pavement and one hand still near the door, while the open car door cuts a dark diagonal in the left foreground and the stairwell sits small and black in the rear depth.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "one foot on pavement",
            "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": "foreground frame and arrival anchor",
            "directionality_class": "directional_3d",
            "element": "police car with open driver-side door",
            "orientation": "the driver-side flank and open door interior angle toward the camera, creating a partial metal frame around 혜수",
            "state": "parked, door open, wet reflective bodywork"
          },
          {
            "camera_use": "pulsing practical color source",
            "directionality_class": "directional_3d",
            "element": "police siren light bar",
            "orientation": "mounted on the car roof with its lit side visible above the doorline",
            "state": "on, flashing red-blue pulses"
          },
          {
            "camera_use": "background threat destination",
            "directionality_class": "directional_3d",
            "element": "rooftop stair entrance",
            "orientation": "the dark mouth of the stairway faces the camera from the rear depth",
            "state": "open, unlit, partially swallowed by shadow"
          }
        ],
        "lighting_mood": "Hard red-blue siren flashes rake across wet metal and 혜수’s coat, cutting through cold coastal night shadows.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Eye-level side two-shot, perpendicular to the women’s eyeline and close enough that 혜수’s hands locking onto 수리영’s shoulders are clearly readable in the center of the frame. 혜수 holds the left side of the composition in tense profile while 수리영 is pinned on the right, the stair base and police light flicker reduced to blurred pressure behind them.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "gripping both shoulders",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "shoulders seized, recoiling",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C07",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "soft background depth and escape route",
            "directionality_class": "directional_3d",
            "element": "rooftop stair base",
            "orientation": "the side of the stair opening recedes behind the two women, not fully frontal",
            "state": "dark, damp, partially out of focus"
          },
          {
            "camera_use": "intermittent color wash across the figures",
            "directionality_class": "non_directional",
            "element": "siren spill on exterior wall",
            "orientation": "",
            "state": "flickering red-blue over stained concrete"
          },
          {
            "camera_use": "grounding plane beneath their locked stance",
            "directionality_class": "non_directional",
            "element": "wet pavement",
            "orientation": "",
            "state": "dark, slick, reflecting small broken flashes"
          }
        ],
        "lighting_mood": "Cold street darkness is repeatedly broken by siren pulses, turning the grip on 수리영’s shoulders into alternating blue shadow and crimson alarm.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Tight eye-level close-up just off 혜수’s shoulder line, compressed into 수리영’s face so her lifted eyes and half-parted lips occupy most of the frame. 혜수 is kept out of frame, existing only as the eyeline above camera-left, while the background collapses into pulsing color blur.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "chin lifted, frozen",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C07",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영 isolated close-up",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "abstracted color pressure behind the face",
            "directionality_class": "non_directional",
            "element": "blurred siren-lit street background",
            "orientation": "",
            "state": "out of focus, pulsing red-blue"
          },
          {
            "camera_use": "implied off-frame presence through eyeline",
            "directionality_class": "directional_3d",
            "element": "space where 혜수 stands just off camera",
            "orientation": "the off-camera position is above and slightly left of the lens, pulling 수리영’s gaze upward",
            "state": "not visibly occupied in frame"
          }
        ],
        "lighting_mood": "Blue siren light hollows out 수리영’s pale face while brief red pulses catch her lower eyelids and parted mouth.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside 수리영’s room at shoulder height, tightened to about two feet from her face and angled so the empty curtain-side space is only implied beyond her stare. Her pale face holds the center-left of frame, with a sliver of curtain blur at the far edge as the camera’s dolly-in ends in a trapped, breathless close-up.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "neck craned, rigid",
            "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": "curtain-side empty space",
              "label": "수리영",
              "screen_zone": "middle_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "curtain-side empty space",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "implied absence just beyond her eyeline",
            "directionality_class": "transparent_surface",
            "element": "thin curtain at frame edge",
            "orientation": "the semi-sheer curtain edge is barely visible, with only empty room darkness suggested beyond it",
            "state": "closed enough to form a pale vertical blur, unstained and still"
          },
          {
            "camera_use": "cleaned environment contradicting the previous horror",
            "directionality_class": "non_directional",
            "element": "spotless bedroom wall and floor texture",
            "orientation": "",
            "state": "too clean, no visible blood, flattened by low light"
          },
          {
            "camera_use": "nearby spatial reference for camera placement",
            "directionality_class": "directional_3d",
            "element": "bed line",
            "orientation": "the side edge of the bed runs diagonally below frame, only partly visible",
            "state": "neatly arranged, shadowed"
          }
        ],
        "lighting_mood": "A weak cold room light leaves 수리영’s face chalky and desaturated, with the empty curtain area falling into soft grey-black shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the main room near the table, the camera holds at chest height but lifts the lens slightly toward 김형사’s chin, making his dismissive tilt feel heavier. 수리영 remains nearer the camera as a partial foreground presence, while 김형사’s tightened brow and raised jaw sit sharp in the midground across her position.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "chin raised, jaw set",
            "character": "김형사",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "hunched by table edge",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C15",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "shared confrontation plane between them",
            "directionality_class": "directional_3d",
            "element": "clean dining table",
            "orientation": "the table edge cuts across the lower frame, its near side facing the camera and separating 수리영 from 김형사",
            "state": "spotless, no teacups, unnervingly cleared"
          },
          {
            "camera_use": "background exit line for the detective’s authority",
            "directionality_class": "directional_3d",
            "element": "entryway corridor",
            "orientation": "the corridor opening faces the camera obliquely behind 김형사",
            "state": "dim, open, plain"
          },
          {
            "camera_use": "flat domestic light source that makes the room feel exposed",
            "directionality_class": "non_directional",
            "element": "overhead apartment light spill",
            "orientation": "",
            "state": "on but weak, yellowed, uncomfortably practical"
          }
        ],
        "lighting_mood": "Muted apartment light mixes with cold night seepage, giving 김형사’s face a hard grey cast while the clean table reflects almost no warmth.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Shoulder-level insert from less than a foot away, framing only 혜수’s hand settling gently on 수리영’s shoulder and the tense fabric beneath it. Faces are excluded; the hand enters from the upper-left edge while 수리영’s shoulder slopes through the lower-right, turning the touch into the whole emotional event.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "hand resting on shoulder",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          },
          {
            "angle": "back_to_camera",
            "body_pose": "shoulder sunk forward",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "soft negative space around the touch",
            "directionality_class": "non_directional",
            "element": "blurred main-room wall",
            "orientation": "",
            "state": "dim, worn, out of focus"
          },
          {
            "camera_use": "subtle domestic grounding below the figures",
            "directionality_class": "directional_3d",
            "element": "table edge in deep blur",
            "orientation": "only a narrow side edge is visible behind the shoulder line",
            "state": "clean, distant, unfocused"
          }
        ],
        "lighting_mood": "Soft, low practical light warms the hand slightly while the surrounding room stays cold and grey, shifting the tone from accusation to fragile reassurance.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 11,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 혜수’s hand is visible in an insert detail, so a full outlook reference would over-specify a face and body not shown.",
            "subject_id": "C07"
          },
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "수리영 is represented mainly by shoulder and clothing in a tight insert, not by a full identifiable portrait.",
            "subject_id": "C09"
          }
        ]
      },
      {
        "camera_direction": "Back inside 수리영’s room at low bedside height, the track settles into a locked still-life about three feet from the bed surface. The backpack sits slightly off-center with the doll angled nearby, both too neatly placed yet subtly wrong, while the empty room holds them in a quiet, suspicious frame with no people present.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "primary still-life object suggesting displacement",
            "directionality_class": "directional_3d",
            "element": "backpack on the bed",
            "orientation": "the front pocket and shoulder strap side angle toward the camera, showing it has been set down slightly askew",
            "state": "closed, dry, shifted from its remembered position"
          },
          {
            "camera_use": "secondary still-life object with eerie human-like orientation",
            "directionality_class": "directional_3d",
            "element": "doll on the bed",
            "orientation": "the doll’s face and torso are turned partly toward the camera rather than lying square, making its placement feel intentional",
            "state": "still, clean, subtly displaced"
          },
          {
            "camera_use": "clean surface emphasizing the absence of blood",
            "directionality_class": "directional_3d",
            "element": "bedspread",
            "orientation": "the top plane faces the low camera at a shallow angle, supporting the objects in a flat tableau",
            "state": "neatly made, unstained, unnaturally orderly"
          },
          {
            "camera_use": "silent background boundary of the room",
            "directionality_class": "transparent_surface",
            "element": "curtain in the room",
            "orientation": "the curtain hangs in the background with no body or movement visible beyond its fabric",
            "state": "closed, pale, motionless"
          }
        ],
        "lighting_mood": "Cool, restrained room light flattens the bed into a forensic still-life, with only faint crimson memory implied by the otherwise clean surfaces.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 13,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At bench level on the seaward side, the camera holds static at seated eye height about two meters from 수리영, framing her in side profile against the black ocean. She occupies the right half of the frame while the dark sea and bus-stop emptiness press across the left and rear, making her stillness feel exposed and small.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "slumped on bench edge",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "emotional pressure backdrop",
            "directionality_class": "non_directional",
            "element": "dark ocean",
            "orientation": "",
            "state": "black, restless, barely separated from the night sky"
          },
          {
            "camera_use": "seated anchor and horizontal composition line",
            "directionality_class": "directional_3d",
            "element": "bus-stop bench",
            "orientation": "the bench side runs laterally across the frame, with its seat plane visible beneath 수리영",
            "state": "empty except for 수리영, damp, cold-looking"
          },
          {
            "camera_use": "thin shelter frame around the loneliness",
            "directionality_class": "transparent_surface",
            "element": "bus-stop glass panel",
            "orientation": "the glass side is visible with faint reflections and the dark sea seen through it",
            "state": "slightly dirty, damp, reflecting small street highlights"
          },
          {
            "camera_use": "distant practical accent",
            "directionality_class": "non_directional",
            "element": "coastal road darkness",
            "orientation": "",
            "state": "quiet, sparsely lit, misty"
          }
        ],
        "lighting_mood": "Cold sodium street spill and faint sea-reflected darkness leave 수리영 desaturated, with the coastal night swallowing the background in blue-black tones.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Close at arm height between 혜수’s approach path and 수리영’s seated position, dollying in until the offered canned drink and 혜수’s extended hand sit in crisp focus near the middle of the frame. 혜수’s body remains only a cropped edge presence on one side, while 수리영 is a soft, seated figure beyond the can, still psychologically far away despite the short distance.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "arm extended with can",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "hands clasped on lap",
            "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 foreground object receiving focus",
            "directionality_class": "directional_3d",
            "element": "canned drink",
            "orientation": "the cylindrical side faces the camera at a slight angle in 혜수’s hand, without taking over more than a small central portion of the frame",
            "state": "unopened, cold, catching small wet highlights"
          },
          {
            "camera_use": "horizontal support and depth line behind the hand",
            "directionality_class": "directional_3d",
            "element": "bus-stop bench",
            "orientation": "the bench seat recedes behind the can toward 수리영’s lap",
            "state": "damp, dark, partially out of focus"
          },
          {
            "camera_use": "soft background texture through the shelter",
            "directionality_class": "transparent_surface",
            "element": "bus-stop glass and sea beyond",
            "orientation": "the damp glass catches faint reflections while the dark ocean remains visible as blurred depth behind it",
            "state": "wet-speckled, dim, wind-streaked"
          }
        ],
        "lighting_mood": "A small cold streetlight glints off the can while 혜수 and 수리영 remain in muted blue-grey shadow, preserving the coastal unease beneath the gesture of comfort.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From behind and slightly off Suriyeong’s right side, the chest-height tracking camera matches her speed for a suspended mid-stride beat: her lifted foot hangs in the center of frame while her hair and hemline stream backward. Hyesu stays small and left-rear near the bus stop, while the dark road opens ahead into the upper center of the frame, keeping the escape direction clear and ominous.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "mid-stride foot lifted",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "calling after her",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "dark road",
              "label": "Suriyeong running away",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dark road ahead",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Hyesu near bus stop",
              "screen_zone": "middle_left",
              "target_id": "C07",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "kept open ahead of Suriyeong to create a threatening destination space",
            "directionality_class": "non_directional",
            "element": "dark coastal road",
            "orientation": "",
            "state": "empty, wet-looking, underlit"
          },
          {
            "camera_use": "anchors Hyesu behind Suriyeong and marks the place she is abandoning",
            "directionality_class": "directional_3d",
            "element": "bus stop shelter",
            "orientation": "its road-facing side is visible, with the bench area receding behind Hyesu",
            "state": "dim, damp, partially shadowed"
          },
          {
            "camera_use": "forms a cold rear atmosphere beyond the stop",
            "directionality_class": "non_directional",
            "element": "misty sea darkness",
            "orientation": "",
            "state": "nearly black with faint coastal haze"
          }
        ],
        "lighting_mood": "Cold coastal sodium-blue darkness wraps the road, with a weak bus-stop glow catching only the crimson-tinged edges of motion.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Held steady beside the front corner of the duty desk at seated-to-standing eye level, the camera frames Kim Detective in a medium three-quarter composition as he leans diagonally against the desk. Hyesu’s shoulder and arm sit soft in the near foreground edge, turning the shot into a tense over-the-shoulder exchange without shifting attention away from his slanted posture and skeptical look.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "hip braced on desk",
            "character": "김형사",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C07",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "leaning over desk edge",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C15",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "physical anchor for Kim Detective’s leaning posture and the confrontation line",
            "directionality_class": "directional_3d",
            "element": "duty desk front corner",
            "orientation": "the front corner angles toward camera, separating Hyesu’s side from the detective’s side",
            "state": "cluttered, worn, under night-duty lighting"
          },
          {
            "camera_use": "adds muted police-station realism behind him",
            "directionality_class": "content_surface",
            "element": "paperwork and case forms",
            "orientation": "the printed sides face upward and partly toward camera, showing indistinct official text and stamped blocks",
            "state": "messy, slightly curled"
          },
          {
            "camera_use": "background practical source and cold institutional texture",
            "directionality_class": "content_surface",
            "element": "office monitor",
            "orientation": "the screen face is angled away from camera with only a dull blue glow visible",
            "state": "on, idle, low brightness"
          }
        ],
        "lighting_mood": "Greenish fluorescent office light flattens the room while a cooler monitor glow gives the desk a damp, sleepless cast.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The dolly-in lands tight at the desk edge, slightly below eye level, just as Hyesu’s hand punches the phone into the foreground near the lens line. The phone screen occupies the lower-middle foreground without overwhelming the frame, while Kim Detective’s face remains close behind it, compressed by shallow depth of field into a reluctant target of her demand.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "arm thrust forward",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C15",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "chin pulled back",
            "character": "김형사",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "foreground confrontation object that breaks the desk space between them",
            "directionality_class": "content_surface",
            "element": "Hyesu’s phone screen",
            "orientation": "the lit screen face is turned toward Kim Detective and partly toward camera, showing a saved contact interface without readable emphasis",
            "state": "on, close to his face"
          },
          {
            "camera_use": "hard horizontal boundary beneath the raised phone hand",
            "directionality_class": "directional_3d",
            "element": "desk edge",
            "orientation": "the near edge runs diagonally across the lower frame, separating foreground hand from detective",
            "state": "scuffed, cluttered"
          },
          {
            "camera_use": "adds institutional depth behind the detective’s head",
            "directionality_class": "content_surface",
            "element": "office notice board",
            "orientation": "the notice side faces camera at an oblique angle with blurred posted papers",
            "state": "dim, crowded with papers"
          }
        ],
        "lighting_mood": "The phone’s small cold glow cuts against tired fluorescent light, making the confrontation feel sharper and more accusatory.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot emphasizes Hyesu’s thrusting hand and phone more than a clear facial identity; a base character reference is safer than forcing an outlook match on a partial limb.",
            "subject_id": "C07"
          }
        ]
      },
      {
        "camera_direction": "Across the desk from Hyesu, the camera pushes in from chest-to-eye level until her upper body and furrowed brow hold the frame. She faces near the camera axis as if pinning Kim Detective in place, with the desk edge low in frame and background office clutter reduced to a narrow, oppressive band.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "bracing on desk edge",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C15",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "low foreground boundary reinforcing that the confrontation crosses the desk line",
            "directionality_class": "directional_3d",
            "element": "duty desk top",
            "orientation": "the detective-side edge is closest to camera, with its surface receding toward Hyesu",
            "state": "scuffed, paperwork pushed aside"
          },
          {
            "camera_use": "compressed background texture around Hyesu’s head and shoulders",
            "directionality_class": "content_surface",
            "element": "office wall notices",
            "orientation": "their printed faces are visible behind Hyesu but softened, carrying indistinct police-office information",
            "state": "aged, slightly peeling"
          },
          {
            "camera_use": "small practical light source creating a tired night-shift pool",
            "directionality_class": "directional_3d",
            "element": "desk lamp",
            "orientation": "the shade points downward toward the desk rather than camera",
            "state": "on, weak, yellowed"
          }
        ],
        "lighting_mood": "Muted fluorescent green and a weak desk-lamp amber mix on her face, leaving her eyes hard and anxious against the cold office palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "A wide static exterior frames the rooftop room from across the way, slightly above roofline height, letting the squat structure sit low against the bluish dawn sky. The single warm window glows on one side of the frame, small but unmistakable, surrounded by damp concrete, railings, and quiet pre-sunrise air.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary establishing subject, showing the isolated rooftop living space",
            "directionality_class": "directional_3d",
            "element": "rooftop room exterior",
            "orientation": "the front and side walls are both visible, giving the room a boxed, exposed shape on the roof",
            "state": "still, worn concrete, weather-stained"
          },
          {
            "camera_use": "warm focal point within the blue exterior, suggesting someone or something inside",
            "directionality_class": "transparent_surface",
            "element": "lit window",
            "orientation": "slightly dirty glass reveals warm interior light beyond while reflecting a faint blue dawn sheen",
            "state": "closed, glowing from inside"
          },
          {
            "camera_use": "atmospheric field holding the room in cold emptiness",
            "directionality_class": "non_directional",
            "element": "bluish dawn sky",
            "orientation": "",
            "state": "pale, misty, pre-sunrise"
          },
          {
            "camera_use": "foreground and midground texture that grounds the rooftop height",
            "directionality_class": "directional_3d",
            "element": "low rooftop parapet",
            "orientation": "its top edge runs horizontally across the lower frame, its outer face darkened by moisture",
            "state": "damp, chipped"
          }
        ],
        "lighting_mood": "Blue dawn ambient light dominates, with one small warm interior glow creating an uneasy pulse inside the otherwise cold rooftop silhouette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From low eye level beside the bed, about two meters away, the dolly-in freezes on Suriyeong the instant her upper body snaps upright against the headboard. The bed edge stays low across the foreground, her startled face sits upper-center, and the room behind her remains dim enough to feel unsearched.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "snapping upright in bed",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "low foreground plane emphasizing that she has just jerked awake",
            "directionality_class": "directional_3d",
            "element": "bed edge",
            "orientation": "the mattress edge runs across the lower frame, angled slightly away from camera",
            "state": "rumpled from waiting overnight"
          },
          {
            "camera_use": "supports her sudden vertical movement and frames her upper body",
            "directionality_class": "directional_3d",
            "element": "headboard",
            "orientation": "its flat front face is behind her shoulders, parallel to camera",
            "state": "shadowed, plain, worn"
          },
          {
            "camera_use": "soft background threat beyond the bed space",
            "directionality_class": "directional_3d",
            "element": "bedroom doorway area",
            "orientation": "only the dark side of the doorway zone is suggested beyond her line of sight",
            "state": "dim, quiet"
          }
        ],
        "lighting_mood": "Pale morning light leaks into the room but stays underexposed, leaving her face cool and sleepless with faint shadow under the eyes.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera tracks laterally inside the bedroom between bed and doorway, tightening into a close three-quarter profile of Suriyeong’s face. The closed door is only a soft, partial presence beyond her eyeline, so the frame privileges the fear in her eyes rather than the full geography of the room.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "neck craned forward",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "closed bedroom door",
              "label": "Suriyeong anxious face",
              "screen_zone": "middle_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "closed bedroom door",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "anxiety anchor beyond her eyeline, kept partial and soft",
            "directionality_class": "directional_3d",
            "element": "closed bedroom door",
            "orientation": "its flat inner face is angled away and only partly visible behind her line of sight",
            "state": "firmly closed, silent"
          },
          {
            "camera_use": "thin vertical frame that visually traps her profile",
            "directionality_class": "directional_3d",
            "element": "doorframe edge",
            "orientation": "one narrow side edge faces camera as a dark vertical strip",
            "state": "still, shadowed"
          },
          {
            "camera_use": "foreground softness that keeps the shot intimate and unsettled",
            "directionality_class": "non_directional",
            "element": "dim bedroom air and fabric shadows",
            "orientation": "",
            "state": "cool, quiet, slightly dusty"
          }
        ],
        "lighting_mood": "Cold, weak daylight grazes one side of her face while the door side falls into gray shadow, sharpening the dread without revealing too much.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height near the window and small furniture, the handheld camera holds almost still on Suriyeong’s tense upper body after the call. Her clenched phone sits in the lower foreground of her torso line while her severe stare cuts into empty room space, making the silence after the voice on the phone feel heavier.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "clutching phone tightly",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "cool side source and spatial reference near her shoulder",
            "directionality_class": "transparent_surface",
            "element": "bedroom window",
            "orientation": "the glass is slightly hazed, showing pale daylight beyond while softening the outside view",
            "state": "closed, faintly fogged"
          },
          {
            "camera_use": "nearby domestic scale that makes the room feel too orderly",
            "directionality_class": "directional_3d",
            "element": "small furniture beside window",
            "orientation": "its front face is angled toward camera, with the top surface catching a thin strip of light",
            "state": "neat, undisturbed"
          },
          {
            "camera_use": "object tied to her decision to leave, visible as anxious preparation rather than action",
            "directionality_class": "directional_3d",
            "element": "backpack with dangling doll",
            "orientation": "the front pocket side faces partially toward camera, the doll hanging from one strap",
            "state": "ready, slightly slumped"
          }
        ],
        "lighting_mood": "Washed-out daylight and muted gray shadows hold the room in suspended dread, with the phone catching a small cold highlight in her grip.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Fixed at sink height facing the bathroom mirror, the frame is built entirely through the mirror image: Suriyeong’s reflected face occupies one side while the reflected tiled wall remains visible beside her. The crimson circular hallucination appears on that reflected wall near her cheek line, with the mirror frame and slight surface grime making the reversed image feel trapped and unreliable.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "leaning over sink",
            "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 visual medium; the camera sees Suriyeong and the red circle only as reflected content",
            "directionality_class": "reflective_surface",
            "element": "bathroom mirror",
            "orientation": "the mirror reflects Suriyeong’s face, the tiled wall behind her, and the crimson circular hallucination beside her reflected face",
            "state": "slightly spotted, cold, fixed"
          },
          {
            "camera_use": "surface where the impossible crimson mark appears within the reflection",
            "directionality_class": "content_surface",
            "element": "reflected tiled wall",
            "orientation": "the reflected face of the tile wall is visible in the mirror, carrying the red circular mark that is not confirmed on the direct wall",
            "state": "pale, wet-looking, unnaturally marked"
          },
          {
            "camera_use": "low foreground spatial cue beneath the mirror image",
            "directionality_class": "directional_3d",
            "element": "sink rim",
            "orientation": "the curved front rim cuts across the lower frame below the reflected face",
            "state": "damp, recently used"
          }
        ],
        "lighting_mood": "Cold bathroom light turns skin and tile bluish while the red circle burns with ritual-like saturation, making the mirror reflection feel infected.",
        "perception_mode": "mirror",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From chest height near the dining table, the handheld camera falls back a fraction as Suriyeong recoils, catching her open mouth and backward step in a medium frame. The framed photograph remains blurred at the lower-left foreground as the emotional trigger, while Suriyeong shifts into the right-middle of the frame with the living room stretching uneasily behind her.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "stepping backward in shock",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_object",
            "gaze_target_id": "P01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "away from dining table",
              "label": "Suriyeong recoiling",
              "screen_zone": "middle_right",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "framed photograph on dining table",
              "screen_zone": "lower_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "blurred foreground trigger that motivates her panic without overtaking the frame",
            "directionality_class": "content_surface",
            "element": "framed family photograph",
            "orientation": "the printed photo face is angled up toward camera from the table, but its smiling faces are out of focus after the hallucination beat",
            "state": "upright or propped, visually normal now, slightly blurred"
          },
          {
            "camera_use": "foreground anchor for the recoil direction",
            "directionality_class": "directional_3d",
            "element": "dining table edge",
            "orientation": "the near edge cuts diagonally across the lower-left frame, pointing toward Suriyeong’s retreat",
            "state": "clean, still, tense"
          },
          {
            "camera_use": "small domestic object emphasizing ordinary reality after the impossible vision",
            "directionality_class": "transparent_surface",
            "element": "water glass",
            "orientation": "clear sides reveal a small amount of water and distort the table line behind it",
            "state": "half-filled, unmoving"
          },
          {
            "camera_use": "background depth behind her backward step",
            "directionality_class": "directional_3d",
            "element": "living room wall and doorway gap",
            "orientation": "the wall plane recedes behind Suriyeong while the doorway gap opens as a dark vertical slot",
            "state": "dim, quiet"
          }
        ],
        "lighting_mood": "Flat morning interior light is shaken by handheld motion, with the photograph area slightly warmer and Suriyeong’s face kept cool and bloodless.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 12,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the mart, the camera stays behind 수리영 and 남자 직원 at shoulder height about 3 meters back, inheriting the reveal-stage tilt toward the upper wall. Their backs occupy the lower third—수리영 lower left, 남자 직원 lower right—while the damp exterior wall and high CCTV area take over the upper frame, making their upward eyeline the only emphasized change from the previous conversational axis.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "head tilted upward",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "back_to_camera",
            "body_pose": "neck craned upward",
            "character": "남자 직원",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "high wall CCTV",
              "label": "수리영",
              "screen_zone": "lower_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "high wall CCTV",
              "label": "남자 직원",
              "screen_zone": "lower_right",
              "target_id": "C13",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "high wall CCTV",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary eyeline anchor in the upper frame, revealed by the tilt.",
            "directionality_class": "directional_3d",
            "element": "wall-mounted CCTV camera",
            "orientation": "The lens side faces down toward the mart entrance and is visible high above the characters.",
            "state": "fixed, slightly weathered, active-looking"
          },
          {
            "camera_use": "Large negative space that makes the CCTV feel unreachable and watchful.",
            "directionality_class": "non_directional",
            "element": "damp mart exterior wall",
            "orientation": "",
            "state": "stained by morning moisture, muted concrete texture"
          },
          {
            "camera_use": "Peripheral context behind the characters, keeping the location readable.",
            "directionality_class": "transparent_surface",
            "element": "mart entrance glass",
            "orientation": "Smudged glass shows a dim, quiet shop interior beyond it.",
            "state": "closed, slightly dirty"
          }
        ],
        "lighting_mood": "Cold early-morning daylight is flattened by mist, with the CCTV area catching a faint gray sheen against otherwise muted storefront shadows.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Still outside the mart, the camera tightens from the reveal into an eye-level side-profile close-up about 0.8 meters from 수리영, holding the reaction-stage stillness. Her phone and cheek fill most of the right half of frame, the background reduced to a soft gray wall edge so the only emphasized shift is camera distance, not location.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "phone pressed to ear",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft, minimal background plane behind her profile.",
            "directionality_class": "non_directional",
            "element": "blurred mart exterior wall",
            "orientation": "",
            "state": "damp, out of focus"
          },
          {
            "camera_use": "Thin edge of location context without distracting from her face.",
            "directionality_class": "transparent_surface",
            "element": "distant entrance glass",
            "orientation": "Only a vague dark reflection and interior blur are visible through the glass.",
            "state": "closed, hazy"
          }
        ],
        "lighting_mood": "A cool, overcast side light carves her tense profile while the phone edge catches a small hard highlight, keeping the palette gray-blue and restrained.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the general affairs office, the camera sits just behind and beside the CCTV monitor at chest height, looking past the desk toward 수리영 from 4 to 5 feet away as the dolly-out settles into a tight upper-body hold. The monitor edge remains a dark blurred sliver in the foreground, while 수리영’s clasped hands and fixed stare occupy center frame, making her anxious posture the single emphasized axis.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hands clasped tight",
            "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": "Foreground obstruction and source of her eyeline tension.",
            "directionality_class": "content_surface",
            "element": "CCTV monitor edge",
            "orientation": "The screen face is mostly turned away from camera, leaving only a dark glowing edge visible.",
            "state": "on, dim, partially out of focus"
          },
          {
            "camera_use": "Horizontal plane separating the monitor from 수리영’s anxious hands.",
            "directionality_class": "directional_3d",
            "element": "security office desk",
            "orientation": "The front edge faces camera, with paperwork and cables receding toward 수리영.",
            "state": "cluttered, worn laminate surface"
          },
          {
            "camera_use": "Institutional background texture behind her shoulders.",
            "directionality_class": "content_surface",
            "element": "office notice board",
            "orientation": "Its paper-covered front face is visible but blurred behind 수리영.",
            "state": "pinned with notices, faded"
          }
        ],
        "lighting_mood": "Blue-gray monitor spill mixes with weak fluorescent overhead light, leaving her eyes sharp but the corners of the office muddy and underexposed.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the side of the desk, the camera tracks into a chest-height profile composition about 3 to 4 feet from 혜수, holding her lean toward 보안요원 rather than centering him. 혜수 anchors the left-middle of frame in crisp profile, while 보안요원 remains partially visible at the right edge near the monitor, so the emphasized axis is her decisive eyeline across the desk.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "leaning over desk",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C19",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "seated at console",
            "character": "보안요원",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C07",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Shared axis between 혜수 and 보안요원, visually grounding the request.",
            "directionality_class": "directional_3d",
            "element": "security desk corner",
            "orientation": "The side edge runs diagonally from foreground to the monitor area, guiding the eye between them.",
            "state": "cluttered with office items"
          },
          {
            "camera_use": "Off-axis glow that implies the CCTV evidence without taking focus.",
            "directionality_class": "content_surface",
            "element": "CCTV monitor",
            "orientation": "Its front face is angled away from camera, showing a dim bluish rectangle rather than readable detail.",
            "state": "on, dark image playing"
          },
          {
            "camera_use": "Compressed bureaucratic background.",
            "directionality_class": "content_surface",
            "element": "filing cabinet labels",
            "orientation": "Label faces point toward camera in a shallow row behind the desk.",
            "state": "worn, slightly crooked"
          }
        ],
        "lighting_mood": "Flat fluorescent office light is undercut by cold monitor spill, giving 혜수’s profile a hard, practical edge against the murky desk space.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the front edge of 혜수’s desk, the camera holds a downward chest-height angle so the desktop becomes a disturbing still-life plane. Scattered forensic photographs occupy the center and lower frame in uneven diagonals, with only hints of folders and the desk edge around them, preserving the flow’s slow tilt before any reaction is shown.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal subject, arranged as a chaotic evidence spread.",
            "directionality_class": "content_surface",
            "element": "murder case photographs",
            "orientation": "The printed image faces are visible to camera, showing harsh forensic victim close-ups with torn skin and red evidence markings.",
            "state": "scattered, overlapping, glossy, unsettling"
          },
          {
            "camera_use": "Grounding surface for the photographs.",
            "directionality_class": "directional_3d",
            "element": "혜수's desk",
            "orientation": "The desktop plane faces upward toward the angled camera; its front edge cuts across the lower frame.",
            "state": "scratched, crowded, police-office worn"
          },
          {
            "camera_use": "Small contextual clutter around the evidence without stealing focus.",
            "directionality_class": "content_surface",
            "element": "case file folder",
            "orientation": "The labeled cover face is partly visible beneath the photographs, text mostly obscured.",
            "state": "half-open, creased"
          }
        ],
        "lighting_mood": "Dim office daylight and overhead fluorescent green cast make the photo paper gleam coldly, while crimson evidence marks puncture the otherwise muted beige-gray palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera rises from the desktop into a close, slightly below-eye-level view across the desk, dollying in on 수리영’s shocked face as her hands remain braced on the photographs at the bottom edge. Her face nearly fills the center, with the photo corners and desk lip kept as blurred evidence in the lower strip, making the lighting on her widened eyes the only strong change from the previous still life.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "bracing on photographs",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Lower-frame reminder of what triggered her reaction.",
            "directionality_class": "content_surface",
            "element": "forensic photographs",
            "orientation": "Only partial printed faces are visible at the bottom, angled upward on the desk surface.",
            "state": "spread out, slightly blurred"
          },
          {
            "camera_use": "Foreground boundary separating viewer from 수리영.",
            "directionality_class": "directional_3d",
            "element": "desk edge",
            "orientation": "The near edge faces camera as a narrow horizontal strip beneath her hands.",
            "state": "worn, shadowed"
          },
          {
            "camera_use": "Minimal background to isolate her expression.",
            "directionality_class": "non_directional",
            "element": "empty police office behind her",
            "orientation": "",
            "state": "quiet, out of focus after officers have left"
          }
        ],
        "lighting_mood": "Pale fluorescent light drains her skin tone while a faint cold monitor glow catches her pupils, turning the office into a tense gray-blue void.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From 수리영’s subjective eye line, the camera cuts cleanly to a close, direct view of the dark computer monitor, excluding her body from the image. The screen and its black bezel fill the frame as a device-mediated reveal, with red GPS coordinates and the words “LAST LOCATION” locked in the center while the surrounding office falls into darkness.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "computer monitor with LAST LOCATION result",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary content surface revealing the location-tracking result.",
            "directionality_class": "content_surface",
            "element": "computer monitor screen",
            "orientation": "The front screen face is directly visible to camera, displaying red GPS coordinates, a sea-map location, and the text 'LAST LOCATION'.",
            "state": "on, dark interface, high contrast red text"
          },
          {
            "camera_use": "Dark boundary that confirms this is a viewed screen rather than a floating graphic.",
            "directionality_class": "directional_3d",
            "element": "monitor bezel",
            "orientation": "The black front frame surrounds the screen evenly and faces camera head-on.",
            "state": "matte, slightly dusty"
          },
          {
            "camera_use": "Almost swallowed background that removes office context.",
            "directionality_class": "non_directional",
            "element": "unlit office surroundings",
            "orientation": "",
            "state": "receding into darkness"
          }
        ],
        "lighting_mood": "The monitor emits the only meaningful light, a cold black-blue field cut by ominous crimson text that feels like an occult warning inside a police interface.",
        "perception_mode": "through_device",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 20,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "In front of the police station, the camera tracks from a front-left three-quarter position at waist-to-chest height, parallel to the bicycle’s first push-off line. 수리영 fills the middle frame from torso to wheels, hands tight on the handlebars and one pedal driving down, while the station frontage stays readable behind her; the emphasized axis is forward motion beginning across screen.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "one foot on pedal",
            "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": "right side of frame along the road",
              "label": "수리영 on bicycle",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "police station frontage",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Location anchor sliding behind her as she launches forward.",
            "directionality_class": "directional_3d",
            "element": "police station frontage",
            "orientation": "The entrance-facing facade is visible behind 수리영, slightly receding to the right.",
            "state": "open public building, muted daylight"
          },
          {
            "camera_use": "Movement prop integrated with her body line.",
            "directionality_class": "directional_3d",
            "element": "bicycle frame and handlebars",
            "orientation": "The front-left side faces camera, with the handlebar angled slightly toward screen right.",
            "state": "in motion, wet metal highlights"
          },
          {
            "camera_use": "Ground plane showing the push-off direction.",
            "directionality_class": "non_directional",
            "element": "station forecourt pavement",
            "orientation": "",
            "state": "damp, dull gray"
          }
        ],
        "lighting_mood": "Overcast daylight flattens the police station exterior, while faint wet pavement reflections add cold urgency to her departure.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the dark PC room, the camera is locked at monitor height about 0.6 meters in front of 수리영, facing her head-on in an intensified close-up from the flow’s close-observation stage. Her face fills the center with only the monitor edge implied below frame, and the static composition emphasizes her hardened expression rather than changing her position.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "hunched toward monitor",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Unseen primary light source just below camera line.",
            "directionality_class": "content_surface",
            "element": "PC monitor",
            "orientation": "The screen face points toward 수리영 and is mostly off-camera, but its blue light reflects across her face.",
            "state": "on, bright blue interface glow"
          },
          {
            "camera_use": "Dark repeating background texture of the PC room.",
            "directionality_class": "directional_3d",
            "element": "neighboring computer stations",
            "orientation": "Their side panels and monitor backs recede behind her in rows.",
            "state": "dim, mostly unused"
          },
          {
            "camera_use": "Local surface barely visible at the bottom edge.",
            "directionality_class": "directional_3d",
            "element": "PC desk line",
            "orientation": "The front edge runs horizontally below her chin level, mostly swallowed by shadow.",
            "state": "dark, clutter-minimal"
          }
        ],
        "lighting_mood": "Blue monitor glow sculpts only the hard planes of her face, leaving the PC room black-green and claustrophobic with no warm fill.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "On the coastal road in heavy rain, the camera tracks low and side-on about 3 meters from 수리영, parallel to the bicycle at cyclist chest height. Her soaked silhouette cuts across the middle of the wide frame, torso hunched over the handlebars at the instant before another pedal stroke, while rain streaks and backlit spray obscure facial detail and make the motion axis the dominant change.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "hunched 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": "수리영 riding bicycle",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "rainy coastal road",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Horizontal path that carries the side-tracking motion.",
            "directionality_class": "non_directional",
            "element": "coastal road",
            "orientation": "",
            "state": "slick with rain, dark asphalt reflecting storm light"
          },
          {
            "camera_use": "Backlit environmental curtain that turns her into a silhouette.",
            "directionality_class": "non_directional",
            "element": "dense downpour",
            "orientation": "",
            "state": "heavy, wind-driven, streaking across frame"
          },
          {
            "camera_use": "Cold open backdrop suggesting the sea near the GPS point.",
            "directionality_class": "non_directional",
            "element": "misty coastal horizon",
            "orientation": "",
            "state": "blurred by storm and spray"
          },
          {
            "camera_use": "Physical extension of her urgency and forward lean.",
            "directionality_class": "directional_3d",
            "element": "bicycle side profile",
            "orientation": "The full left side of the frame, wheels, and pedal line are visible in profile as it moves screen right.",
            "state": "wet, in motion"
          }
        ],
        "lighting_mood": "Storm-cloud darkness is broken by harsh coastal backlight and occasional lightning-like flashes, turning rain and wheel spray into silver lines against a cold, nearly monochrome frame.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the bedroom at eye level, the lens sits about 1.5 meters from the wall and faces the bloody circle dead-on, making the red mark and pinned photograph a rigid central icon. The composition is nearly square and frontal, with no hand, shadow, or human movement entering the frame; the photograph occupies the center while the rough circle holds the outer third like a ritual target.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal surface; the red circle organizes the entire frame into a ritual-like target.",
            "directionality_class": "content_surface",
            "element": "bedroom wall with bloody circular mark",
            "orientation": "The camera sees the marked wall face directly; the front surface carries a rough crimson circle painted in blood around the photograph.",
            "state": "damp-looking, stained, and freshly marked"
          },
          {
            "camera_use": "Pinned focal detail at the center of the red symbol.",
            "directionality_class": "content_surface",
            "element": "blood-stained photograph pinned to wall",
            "orientation": "The front face of the photograph is visible to camera, partly smeared with blood so only hints of the printed image show.",
            "state": "creased, dirty, and fixed to the wall"
          },
          {
            "camera_use": "Peripheral texture that keeps the still life grounded in the violated room.",
            "directionality_class": "non_directional",
            "element": "shadowed bedroom clutter near frame edges",
            "orientation": "",
            "state": "dim, scattered, and out of focus"
          }
        ],
        "lighting_mood": "Low dusk light leaks across the damp wall, with cold blue-gray shadows and the blood circle cutting through as the only sharp crimson accent.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At very close macro distance, the lens is held slightly above hand height and kept parallel to the faded photograph, flattening the real room into the paper surface. The old rural restaurant, roof-mounted round symbol, and two seated girls fill almost the whole image, while the paper grain, cracks, and blood smears remain visible along the margins.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "seated in photograph",
            "character": "한국인 여자아이 A (사진)",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "hands folded seated",
            "character": "한국인 여자아이 B (사진)",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary photographed surface; its aged texture replaces spatial depth.",
            "directionality_class": "content_surface",
            "element": "faded photograph front",
            "orientation": "The printed front face is seen squarely, showing a 1970s rural restaurant, two seated girls, and a round symbol on the roof beneath age stains.",
            "state": "yellowed, creased, blood-specked, and slightly glossy"
          },
          {
            "camera_use": "Symbolic detail within the printed image, placed high in the frame.",
            "directionality_class": "content_surface",
            "element": "round roof symbol printed in the photograph",
            "orientation": "The symbol is visible on the front printed face of the photograph, positioned above the restaurant roof like a crude sacred sign.",
            "state": "faded but legible"
          },
          {
            "camera_use": "Context inside the photo image, giving the girls a historical place.",
            "directionality_class": "directional_3d",
            "element": "printed rural restaurant facade",
            "orientation": "The restaurant facade faces the old photographer frontally within the printed image, with the roofline angled only slightly.",
            "state": "sun-bleached and grainy"
          }
        ],
        "lighting_mood": "Soft, cold room light skims the paper fibers, muting the sepia tones while leaving the roof symbol unnervingly clear.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the foot-side corner of the bed at waist height, the camera has dollyed out to a wider reaction frame about 2.5 meters from 수리영. She is held full-body on the bed edge in the middle distance, with the violated bedroom around her and the red-marked wall left behind in the composition as a silent accusation.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "slumped on bed edge",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Physical anchor for 수리영's collapse and stillness.",
            "directionality_class": "directional_3d",
            "element": "bed edge",
            "orientation": "The foot-side and near edge of the bed face the camera, placing 수리영 on the exposed front corner.",
            "state": "rumpled and unstable-looking"
          },
          {
            "camera_use": "Background reminder of the ritual threat, now less dominant than her frozen body.",
            "directionality_class": "content_surface",
            "element": "bloody circle wall",
            "orientation": "The marked wall face is visible behind and to one side, with the red circle partially readable from the same room axis.",
            "state": "stained and drying"
          },
          {
            "camera_use": "Spatial evidence of the search and intrusion.",
            "directionality_class": "non_directional",
            "element": "overturned belongings on bedroom floor",
            "orientation": "",
            "state": "scattered, damp-shadowed, and chaotic"
          },
          {
            "camera_use": "Dim exit line beyond the bedroom, suggesting the next hard cut toward escape.",
            "directionality_class": "directional_3d",
            "element": "open bedroom doorway",
            "orientation": "The open door edge is seen obliquely, its dark inner side turned partly toward camera.",
            "state": "open and still"
          }
        ],
        "lighting_mood": "Blue dusk shadows swallow the corners while a weak side spill catches 수리영's rigid outline and leaves the red mark dull but poisonous.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Behind 수리영 at shoulder height in the dark entry area, the tracking camera slows 1.5 meters back as she crosses toward the open door. Her back sits in the lower middle of the frame, one foot suspended into the black exterior while the doorway leaves a large empty mass of darkness ahead of her.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "one foot lifted",
            "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": "open doorway",
              "label": "수리영",
              "screen_zone": "lower_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "open doorway into darkness",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Main exit frame and destination of movement.",
            "directionality_class": "directional_3d",
            "element": "open front door",
            "orientation": "The door is seen from inside with its inner face angled away, opening into a dark exterior void.",
            "state": "open and unmoving"
          },
          {
            "camera_use": "Negative space that absorbs 수리영's step.",
            "directionality_class": "non_directional",
            "element": "dark exterior beyond doorway",
            "orientation": "",
            "state": "nearly black, misty, and unreadable"
          },
          {
            "camera_use": "Foreground darkness that frames the escape from behind.",
            "directionality_class": "directional_3d",
            "element": "narrow entry wall edges",
            "orientation": "The side wall planes face the camera obliquely, creating a tunnel-like passage toward the door.",
            "state": "dim and worn"
          }
        ],
        "lighting_mood": "Interior shadows are cold and thin, while the doorway beyond is a near-black coastal void with only a faint wet glimmer at the threshold.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low at knee height on the wet harbor edge, the camera remains almost motionless several meters from the waterline, facing straight into dense fog. A small black boat silhouette enters the center distance without being followed, its bow only gradually separating from the gray sea haze.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary atmospheric veil that reveals the boat slowly.",
            "directionality_class": "non_directional",
            "element": "dense harbor fog",
            "orientation": "",
            "state": "thick, wet, and drifting slowly"
          },
          {
            "camera_use": "Emerging focal shape within the fog.",
            "directionality_class": "directional_3d",
            "element": "small dark boat",
            "orientation": "The bow faces generally toward the camera and harbor, reduced to a black frontal silhouette by the fog.",
            "state": "approaching but visually flattened"
          },
          {
            "camera_use": "Low foreground anchor with damp texture.",
            "directionality_class": "non_directional",
            "element": "wet harbor edge",
            "orientation": "",
            "state": "slick, dark, and rain-washed"
          },
          {
            "camera_use": "Reflective tonal bed under the silhouette.",
            "directionality_class": "reflective_surface",
            "element": "fog-covered seawater",
            "orientation": "The water surface reflects only a broken smear of gray fog and the faint dark underside of the boat silhouette.",
            "state": "calm, dark, and lightly rippled"
          }
        ],
        "lighting_mood": "Post-rain dusk turns the harbor into cold gray layers, with the boat reduced to a black cutout against milk-thick mist.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Near the end of the pier at chest height beside 수리영, the lens holds close on her fixed expression in the foreground while angling upward across the gunwale toward 인우 on the boat. 수리영 occupies the lower left foreground, and 인우 remains higher in the upper right deck space, keeping their power and height difference tense without shifting the camera axis.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "braced at pier edge",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C22",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "bracing over gunwale",
            "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": "Inwoo on the boat",
              "label": "수리영",
              "screen_zone": "lower_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "Suriyoung on the pier",
              "label": "인우",
              "screen_zone": "upper_right",
              "target_id": "C22",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "boat gunwale height line",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Physical divider between pier and boat, emphasizing the upward angle.",
            "directionality_class": "directional_3d",
            "element": "boat gunwale",
            "orientation": "The side rail faces the camera obliquely, cutting diagonally between 수리영 below and 인우 above.",
            "state": "wet, dark, and salt-worn"
          },
          {
            "camera_use": "Ground plane under 수리영, slick and unstable.",
            "directionality_class": "non_directional",
            "element": "rain-wet pier end",
            "orientation": "",
            "state": "slick, empty, and darkened by rain"
          },
          {
            "camera_use": "Background veil that isolates the confrontation from the rest of the harbor.",
            "directionality_class": "non_directional",
            "element": "harbor fog behind boat",
            "orientation": "",
            "state": "dense and colorless"
          },
          {
            "camera_use": "Implied recent docking action near 인우's hands.",
            "directionality_class": "directional_3d",
            "element": "coiled dock rope",
            "orientation": "The rope coil lies along the deck side facing the pier, partly visible near the gunwale.",
            "state": "wet and recently handled"
          }
        ],
        "lighting_mood": "Flat fog light chills both faces, with a faint low harbor sheen catching 수리영's eyes and leaving 인우 half-swallowed by gray shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "After the cut, the camera holds shoulder height in a still front three-quarter view a few steps away from the boat, placing 수리영 slightly off-center with the dark sea filling the background behind her. Her phone stays near her mouth in the lower side of the frame, small enough not to overpower her face, while the boat presence is reduced to almost nothing at the edge.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "phone at lips",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Dominant background mass behind 수리영, replacing the boat with uncertainty.",
            "directionality_class": "reflective_surface",
            "element": "dark sea behind pier",
            "orientation": "The water reflects only scattered gray dusk and fog, with no clear horizon or readable shore detail.",
            "state": "dark, restless, and mist-covered"
          },
          {
            "camera_use": "Soft atmospheric boundary around her silhouette.",
            "directionality_class": "non_directional",
            "element": "low coastal fog",
            "orientation": "",
            "state": "hanging thick over the water"
          },
          {
            "camera_use": "Narrow ground strip grounding her stillness.",
            "directionality_class": "non_directional",
            "element": "outer pier edge",
            "orientation": "",
            "state": "wet and nearly black"
          },
          {
            "camera_use": "Small communication prop held close to her mouth.",
            "directionality_class": "directional_3d",
            "element": "mobile phone",
            "orientation": "The phone's side and dark screen edge face the camera at a shallow angle near her mouth.",
            "state": "on or recording, but screen not emphasized"
          }
        ],
        "lighting_mood": "The sea throws back a cold blue-gray gloom, outlining 수리영's cheek and phone while the rest of the harbor falls into muted darkness.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At eye level about one foot from 혜수's face, the camera holds the very start of a dolly-out before the movement becomes noticeable. Her face and phone fill the tight frame slightly off-center, with her anxious sideward gaze pulling toward the unseen conversation axis rather than straight into the lens.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "phone pressed to ear",
            "character": "혜수",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft, cramped backdrop behind her face.",
            "directionality_class": "non_directional",
            "element": "dim rooftop room interior",
            "orientation": "",
            "state": "shadowed, disordered, and claustrophobic"
          },
          {
            "camera_use": "Communication object pressed to her ear, confirming she is listening to the recorded message.",
            "directionality_class": "directional_3d",
            "element": "mobile phone",
            "orientation": "The phone's side edge faces the camera against her cheek, with the screen mostly hidden from view.",
            "state": "active call or playback"
          },
          {
            "camera_use": "Out-of-focus texture that suggests the violated room without distracting from her face.",
            "directionality_class": "directional_3d",
            "element": "blurred interior wall corner",
            "orientation": "The corner line recedes diagonally behind her, barely visible in shallow focus.",
            "state": "dark and worn"
          }
        ],
        "lighting_mood": "A thin dusk wash and phone-side shadow carve her rigid expression in cold tones, with no warm practical light to soften the anxiety.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From eye level near the center of the rooftop room, the pan has settled into a wider still frame looking across the dim interior toward the entrance. No people remain in view; the half-open front door sits in the middle distance, stopped by the wind, with dark emptiness pooled behind it.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal point and source of the unsettling wind sound.",
            "directionality_class": "directional_3d",
            "element": "half-open front door",
            "orientation": "The inner face of the door is angled toward the camera, leaving a dark wedge-shaped gap to the exterior.",
            "state": "half-open and momentarily still"
          },
          {
            "camera_use": "Negative space beyond the door, holding the threat after people leave frame.",
            "directionality_class": "non_directional",
            "element": "dark entrance void",
            "orientation": "",
            "state": "black, empty, and drafty"
          },
          {
            "camera_use": "Foreground and midground spatial emptiness after the conversation.",
            "directionality_class": "non_directional",
            "element": "bare rooftop room floor",
            "orientation": "",
            "state": "dim, worn, and sparsely cluttered"
          },
          {
            "camera_use": "Thin motion cue left by the wind, now almost stopped.",
            "directionality_class": "transparent_surface",
            "element": "loose doorway curtain or plastic strip",
            "orientation": "Its translucent edge hangs near the door gap, faintly showing darkness through it.",
            "state": "dirty, damp, and barely moving"
          }
        ],
        "lighting_mood": "Cold blue dusk and doorway darkness flatten the room into a hollow gray-black space, with the open gap reading as the deepest shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "On the open deck at seated eye level from slightly off 인우's side of the conversation, the camera ends its slow approach still wide enough to hold 수리영's upper body and the old photograph together. She is centered-right, frozen as she extends the photo toward the lens side, while the deck gap and dark sea remain as scale behind her.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "offering old photograph",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C22",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Offered evidence in the foreground line between 수리영 and unseen 인우.",
            "directionality_class": "content_surface",
            "element": "old photograph in 수리영's hand",
            "orientation": "The photograph's printed front is angled partly toward the camera and toward 인우's side, with faded image details and age stains visible.",
            "state": "creased, old, and handled tightly"
          },
          {
            "camera_use": "Moving but grounded platform beneath the confrontation.",
            "directionality_class": "directional_3d",
            "element": "small fishing boat deck",
            "orientation": "The deck boards recede diagonally from the camera toward 수리영, defining the narrow space between speakers.",
            "state": "wet, worn, and gently rocking"
          },
          {
            "camera_use": "Background pressure behind the deck conversation.",
            "directionality_class": "reflective_surface",
            "element": "dark open sea",
            "orientation": "The sea surface reflects a dim gray sky in broken, low-contrast ripples behind 수리영.",
            "state": "cold, dark, and unsettled"
          },
          {
            "camera_use": "Vertical frame element suggesting the boat's working space.",
            "directionality_class": "directional_3d",
            "element": "cabin edge or railing",
            "orientation": "A side edge faces the camera obliquely at frame margin, keeping the deck cramped.",
            "state": "salt-stained and damp"
          }
        ],
        "lighting_mood": "Dusk sea light is cold and flat, catching the pale photograph and 수리영's tense hands while the deck falls into damp blue-gray shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Directly in front of 수리영 at seated chest height, the lens is squared rigidly to her upper body from about 1.2 meters away, making her stare confrontational rather than conversational. The photograph projects toward the lower center of the frame at natural hand scale, while her face holds the upper center; the wet deck and sea are compressed into a thin, blurred rim behind her.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "photograph thrust forward",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C22",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "foreground pressure point held between viewer and her face",
            "directionality_class": "content_surface",
            "element": "worn photograph",
            "orientation": "front face is angled squarely toward the camera, showing the old image surface and the tiny written detail she wants noticed",
            "state": "creased, damp-edged, held steady"
          },
          {
            "camera_use": "minimal blurred context behind her shoulders",
            "directionality_class": "non_directional",
            "element": "wet fishing deck",
            "orientation": "",
            "state": "dark, slick, salt-stained"
          },
          {
            "camera_use": "thin horizontal boundary behind her, keeping the boat at sea without distracting from her stare",
            "directionality_class": "directional_3d",
            "element": "low deck rail",
            "orientation": "inner side of the rail faces the camera from behind 수리영",
            "state": "weathered, wet, dimly visible"
          }
        ],
        "lighting_mood": "Cold dusk light washes her face in gray-blue shadow, with the photograph catching a faint pale edge and a muted crimson tension implied in the color grade.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From mid-deck at standing waist-to-chest height, the camera has settled just behind and to the side of 수리영, looking diagonally across her half-risen body toward 인우's retreating back. 수리영 occupies the lower-left foreground with one arm cutting into the frame, while 인우 recedes toward the wheelhouse at the right background, stretching the deck into a tense diagonal line.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "half-rising arm extended",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C22",
            "subject_state": "alive"
          },
          {
            "angle": "back_to_camera",
            "body_pose": "mid-stride toward wheelhouse",
            "character": "인우",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "reaches_for",
              "gesture_target_label": "Inwoo's back",
              "label": "Suriyeong half-rising",
              "screen_zone": "lower_left",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "moves_toward",
              "gesture_target_label": "wheelhouse doorway",
              "label": "Inwoo retreating",
              "screen_zone": "middle_right",
              "target_id": "C22",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "wheelhouse doorway",
              "screen_zone": "upper_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "destination point for 인우 and background anchor for the diagonal pursuit",
            "directionality_class": "directional_3d",
            "element": "wheelhouse doorway",
            "orientation": "open front edge faces the camera at an oblique angle from the right side of frame",
            "state": "open, shadowed, salt-worn"
          },
          {
            "camera_use": "slick path separating 수리영 and 인우",
            "directionality_class": "non_directional",
            "element": "wet deck planks",
            "orientation": "",
            "state": "darkened by spray, unevenly reflective"
          },
          {
            "camera_use": "side boundary that funnels the eye toward the wheelhouse",
            "directionality_class": "directional_3d",
            "element": "deck rail",
            "orientation": "inner rail line runs away from camera toward the right background",
            "state": "rust-spotted, damp"
          },
          {
            "camera_use": "soft exterior veil beyond the boat, flattening the horizon",
            "directionality_class": "non_directional",
            "element": "gray sea haze",
            "orientation": "",
            "state": "thickening at dusk"
          }
        ],
        "lighting_mood": "The deck is lit by cold coastal twilight, with the wheelhouse falling into deeper blue-gray shadow and tiny crimson accents kept subdued and ominous.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low over the wheelhouse console at hand height, the camera sits within twenty centimeters of the worn photograph, looking almost straight down with a slight diagonal from 수리영's side. The frame becomes a still insert: her index fingertip arrests the viewer's eye on the girl's face in the photograph, while the console edge remains only a narrow grimy border for scale.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "index finger pressing photo",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary focal surface beneath the fingertip",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "front image face is visible to camera, with the girl's face under 수리영's fingertip and faded printed details around it",
            "state": "yellowed, scratched, slightly curled"
          },
          {
            "camera_use": "thin contextual surface under the photograph",
            "directionality_class": "directional_3d",
            "element": "wheelhouse console top",
            "orientation": "upper horizontal plane faces the camera from below the photograph",
            "state": "grimy, damp, worn at the edges"
          },
          {
            "camera_use": "soft peripheral hints of the cramped interior",
            "directionality_class": "content_surface",
            "element": "instrument panel edge",
            "orientation": "its front face is only partially visible at the top edge, with unreadable dark markings",
            "state": "dim, scuffed, mostly out of focus"
          }
        ],
        "lighting_mood": "A narrow, cold window glow skims the paper fibers and fingertip, leaving the surrounding console in damp green-gray shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 수리영's hand action is visible in a macro insert; a full outlook reference would not align with the cropped fingertip-only framing.",
            "subject_id": "C09"
          }
        ]
      },
      {
        "camera_direction": "This is 수리영's subjective eye-level view from just behind 인우's shoulder, looking past him into the wheelhouse rather than at his face. His shoulder forms a dark foreground edge on the left, while the inner wall with many red circles holds the middle and right background in a frozen, accusatory plane.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "blocking wheelhouse wall",
            "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": "Inwoo shoulder edge",
              "screen_zone": "middle_left",
              "target_id": "C22",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "red-circle wheelhouse wall",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "main reveal beyond 인우's shoulder",
            "directionality_class": "content_surface",
            "element": "wheelhouse wall covered in red circles",
            "orientation": "inner wall face is visible to camera, carrying many uneven crimson circles scrawled across its surface",
            "state": "stained, cramped, disturbingly marked"
          },
          {
            "camera_use": "thin cold backlight and claustrophobic boundary",
            "directionality_class": "transparent_surface",
            "element": "misted wheelhouse window",
            "orientation": "condensed glass partly reveals gray sea light beyond while obscuring detail",
            "state": "fogged, dirty, closed"
          },
          {
            "camera_use": "low foreground structure beneath the sightline",
            "directionality_class": "directional_3d",
            "element": "helm console",
            "orientation": "rear and top edges angle away from the camera toward the marked wall",
            "state": "scratched, damp, dim"
          }
        ],
        "lighting_mood": "The view is chilled by flat gray window light, while the red circles cut through the gloom as harsh ritual-like accents in 수리영's normal but panicked perception.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 27,
        "shot_index": 6,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "인우 is seen mainly as a shoulder and partial back in 수리영's POV; the shot needs his base identity but not a detailed outlook match.",
            "subject_id": "C22"
          }
        ]
      },
      {
        "camera_direction": "A tight frontal close-up returns to 수리영 at her eye level from about forty centimeters away, holding long enough for the shock to register before collapse begins. Her widened eyes sit high in the frame and her dropped jaw opens the lower center, while the wheelhouse behind her dissolves into indistinct dark shapes.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "balance beginning to fail",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "blurred reminder of what she has just seen",
            "directionality_class": "content_surface",
            "element": "red-marked wheelhouse wall",
            "orientation": "its inner marked face is behind her but out of focus, with crimson circles reduced to soft stains",
            "state": "dim, smeared by shallow focus"
          },
          {
            "camera_use": "cold side glow around her face",
            "directionality_class": "transparent_surface",
            "element": "wheelhouse window",
            "orientation": "dirty glass at the side admits gray exterior light without clear view beyond",
            "state": "closed, fogged, salt-streaked"
          },
          {
            "camera_use": "narrow vertical frame line tightening the close-up",
            "directionality_class": "directional_3d",
            "element": "wheelhouse doorframe",
            "orientation": "inner edge faces camera as a dark vertical strip near the frame edge",
            "state": "wet, chipped, shadowed"
          }
        ],
        "lighting_mood": "Pale blue-gray light catches the whites of her eyes and the edge of her jaw, with the background sinking into damp shadow and faint crimson blur.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a low waterline position three meters off the front quarter of the small fishing boat, the lens hovers just above the black-green chop and holds still on the bow half-swallowed by dense gray fog. The bow sits slightly off center with its wet prow angled toward camera, while the fog erases the stern and horizon until the vessel feels suspended rather than moving.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary environmental subject at close waterline distance",
            "directionality_class": "directional_3d",
            "element": "small fishing boat bow",
            "orientation": "front quarter and prow face the camera at a slight angle, with the rest of the hull vanishing backward into fog",
            "state": "wet, weathered, partially obscured"
          },
          {
            "camera_use": "occluding atmosphere that swallows the boat and background",
            "directionality_class": "non_directional",
            "element": "dense gray fog",
            "orientation": "",
            "state": "thick, opaque, motionless-looking"
          },
          {
            "camera_use": "low foreground texture and scale reference for the lens height",
            "directionality_class": "non_directional",
            "element": "dark coastal waves",
            "orientation": "",
            "state": "restless, cold, reflecting dull dusk light"
          },
          {
            "camera_use": "faint tonal gradient behind the fog",
            "directionality_class": "non_directional",
            "element": "dying sunset glow",
            "orientation": "",
            "state": "muted gold nearly drained to gray"
          }
        ],
        "lighting_mood": "The scene is drained into cold gray dusk, with only a dying gold trace behind the fog and the boat reduced to a damp, ominous silhouette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 2,
        "subject_reference_policy": []
      }
    ],
    "total": 66,
    "failed_batches": 0
  },
  "step_id": "shot_staging",
  "run_id": "c7c999b2-8be3-4249-b54f-b644f2a37636",
  "resolved_model": "gpt",
  "updated_at": "2026-05-21T07:14:43.139191+00:00",
  "schema_version": 6,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}