{
  "status": "completed",
  "completed_count": 53,
  "applicable_count": 53,
  "failed_count": 0,
  "data": {
    "shots": [
      {
        "camera_direction": "At eye height and only about two feet in front of the fleeing man, the handheld camera backs through the undergrowth in a tighter-than-natural close-up, making his sweat-slick face occupy most of the center frame while thorny brush jitters as compressed blur behind him. The perspective is an unstable neutral observer moving backward with him, with a slight forward tilt that catches his panicked eyes and the bounce of his stumbling run without becoming his POV.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "stumbling mid-stride",
            "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": "Compressed, unstable background texture behind the man's face, emphasizing speed and entrapment.",
            "directionality_class": "non_directional",
            "element": "dense forest undergrowth",
            "orientation": "",
            "state": "wet, tangled, dusk-darkened"
          },
          {
            "camera_use": "Narrow dark corridor behind him, visible as a shaky receding path.",
            "directionality_class": "non_directional",
            "element": "forest path",
            "orientation": "",
            "state": "muddy and partially hidden by brush"
          }
        ],
        "lighting_mood": "Dusk light is low and green-gray, with damp foliage swallowing contrast and only a faint cold sheen catching sweat on his skin.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From shoulder height slightly off the man's front-left side, the handheld camera widens to a medium impact frame about three feet away, catching his upper body snapping backward in the center-left as the black silhouette crashes down from the dark forest side into his shoulders. The composition feels knocked off balance, with a slight Dutch instability and the silhouette entering from the right-rear depth so the attack collapses the frame rather than presenting a clean action pose.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "upper body recoiling",
            "character": "한국인 남성",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C12",
            "subject_state": "severely_injured"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "crushing shoulders downward",
            "character": "검은 인영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C04",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Dark mass behind the attacker, making the silhouette read as emerging from the forest rather than from open space.",
            "directionality_class": "non_directional",
            "element": "black forest depth",
            "orientation": "",
            "state": "misty and nearly featureless"
          },
          {
            "camera_use": "Foreground and side-frame streaks that partially obscure the impact, adding violent handheld texture.",
            "directionality_class": "non_directional",
            "element": "whipping branches",
            "orientation": "",
            "state": "wet, blurred by motion"
          },
          {
            "camera_use": "Ground-level texture visible at the lower edge, grounding the man's backward collapse.",
            "directionality_class": "non_directional",
            "element": "muddy forest floor",
            "orientation": "",
            "state": "dark, trampled, leaf-covered"
          }
        ],
        "lighting_mood": "The impact is lit by fading blue-green dusk with almost no fill, letting the attacker fall into a near-black shape against the damp forest.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the mouth of the dim back alley, the camera holds a static eye-level wide frontal composition, facing straight down the alley toward the couple pressed against an old utility pole beneath a weak streetlight. The pole and streetlight sit near the middle of the frame as spatial anchors, while the two bodies read as a dark, intertwined shape slightly below the lamp, surrounded by empty urban dampness.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning into neck",
            "character": "한국인 남성",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C07",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "pinned against pole",
            "character": "한국인 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary vertical anchor behind the couple, fixing their position in the otherwise dark alley.",
            "directionality_class": "directional_3d",
            "element": "old utility pole",
            "orientation": "Its weathered front side faces the camera, with cables climbing upward into darkness.",
            "state": "aged, stained, damp"
          },
          {
            "camera_use": "Weak overhead source that isolates the couple in a sickly pool of light.",
            "directionality_class": "directional_3d",
            "element": "streetlight",
            "orientation": "Lamp head faces downward toward the couple and slightly toward camera.",
            "state": "on, dim, yellowing"
          },
          {
            "camera_use": "Deep negative space around the bodies, increasing voyeuristic distance.",
            "directionality_class": "non_directional",
            "element": "narrow back alley",
            "orientation": "",
            "state": "wet, nearly empty, low visibility"
          }
        ],
        "lighting_mood": "A weak sodium streetlight casts muted amber over wet concrete while the alley edges fall into cold blue-black shadow.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Very close beside the couple at neck height, the camera locks into a tight side close-up nearly parallel to the woman's shoulder line, with the man's jaw and teeth occupying the sharp center while her neck and collar edge fill the lower side of frame. The alley and utility pole dissolve into soft dark blur, turning the physical act into an oppressive, almost ritual detail rather than a readable two-shot.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "jaw clamped forward",
            "character": "한국인 남성",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_right",
            "body_pose": "neck arched back",
            "character": "한국인 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft vertical shadow behind the neck, barely readable but maintaining continuity with the pole location.",
            "directionality_class": "directional_3d",
            "element": "utility pole edge",
            "orientation": "Only a blurred side edge faces camera behind the bodies.",
            "state": "out of focus, damp, dark"
          },
          {
            "camera_use": "Background bokeh and grime that keep the urban alley present without distracting from the bite.",
            "directionality_class": "non_directional",
            "element": "dark alley wall",
            "orientation": "",
            "state": "wet, stained, defocused"
          }
        ],
        "lighting_mood": "The bite is caught in thin amber spill from the streetlight, with crimson-dark skin tones sinking into cold black alley shadows.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Seen with the compressed immediacy of a local news camera feed, the dolly-in reaches a firm upper-body close-up directly in front of 혜수 from slightly below eye level, placing her centered and immovable while officers and police tape blur behind her. The frame treats her stare as the visual command point: her shoulders occupy the lower center, the crime-scene activity is pushed into shallow background chaos, and the lens holds a restrained broadcast-like steadiness.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "braced amid officers",
            "character": "혜수",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "looking_away",
            "body_pose": "moving behind tape",
            "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 background line cutting horizontally behind 혜수, marking the crime-scene boundary.",
            "directionality_class": "content_surface",
            "element": "police line tape",
            "orientation": "The printed warning side faces the camera but is softened by shallow focus.",
            "state": "stretched taut, slightly fluttering"
          },
          {
            "camera_use": "Background human motion that contrasts with 혜수's stillness.",
            "directionality_class": "non_directional",
            "element": "crime-scene police activity",
            "orientation": "",
            "state": "busy, defocused, procedural"
          },
          {
            "camera_use": "Distant evidence-handling area behind her, suggesting bodies being processed without explicit focus.",
            "directionality_class": "directional_3d",
            "element": "forensic work zone",
            "orientation": "Its open working side faces partially toward camera behind the officers.",
            "state": "active, crowded, hazy"
          }
        ],
        "lighting_mood": "Flat daylight is cooled and desaturated like news footage, with pale highlights on rain-dulled surfaces and no comforting warmth.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 3,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From an elevated overhead position directly above the worn multi-family villa roof, the camera completes its slow approach and holds the downward angle long enough for the rooftop room to read as the isolated subject. The 옥탑방 sits near the center of a wide roof geometry, surrounded by weathered concrete edges, pipes, and small domestic traces that make it feel exposed despite the bright day.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary subject of the establishing frame, isolated within the rooftop layout.",
            "directionality_class": "directional_3d",
            "element": "rooftop room",
            "orientation": "Its roof and upper exterior faces are visible from above, with the entrance side only partially readable.",
            "state": "old, sun-faded, cramped"
          },
          {
            "camera_use": "Large surrounding plane that emphasizes isolation and age.",
            "directionality_class": "non_directional",
            "element": "villa rooftop concrete",
            "orientation": "",
            "state": "worn, stained, dry in clear daylight"
          },
          {
            "camera_use": "Peripheral urban detail that grounds the building in an older residential district.",
            "directionality_class": "directional_3d",
            "element": "water tanks and rooftop pipes",
            "orientation": "Their top and side surfaces are visible from the overhead angle.",
            "state": "weathered, utilitarian, still"
          }
        ],
        "lighting_mood": "Clear midday sun is bright but muted by urban haze, bleaching the concrete into pale beige-gray with only faint golden warmth.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just inside the entrance area at shoulder height, the handheld camera holds a tight two-shot from 수리영's side, with her closed-eyed smile dominant in the left-center foreground as her nose presses into the 한국인 중년 여성's shoulder on the right. The mother's shoulder and apron edge anchor the frame, while the entryway and kitchen beyond remain cramped and softly layered, preserving the affectionate pause before the camera drops toward the wrist.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "nuzzling mother's shoulder",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "shoulder turned toward daughter",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft background edge framing the intimate moment near departure.",
            "directionality_class": "directional_3d",
            "element": "entrance door",
            "orientation": "The inner side faces the camera obliquely behind them.",
            "state": "closed, worn, daylight leaking around edges"
          },
          {
            "camera_use": "Lower-frame domestic context suggesting 수리영 is about to leave.",
            "directionality_class": "directional_3d",
            "element": "shoe area",
            "orientation": "The top and front edges angle toward camera near the lower background.",
            "state": "cluttered, lived-in"
          },
          {
            "camera_use": "Soft atmospheric layer from the kitchen, linking warmth with unease.",
            "directionality_class": "non_directional",
            "element": "kitchen steam",
            "orientation": "",
            "state": "thin, drifting, backlit"
          }
        ],
        "lighting_mood": "Narrow daylight from the small window mixes with warm kitchen vapor, creating a tender golden softness edged by muted gray domestic shadows.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At forearm height near the entrance, the camera pushes into an even tighter macro detail of the 한국인 중년 여성's wrist, angling so the skin surface and dark circular mark occupy the central field while the rest of the room drops into creamy blur. This is an observer's detail cut, not 수리영's literal POV, and the mark becomes the only clean narrative information against faint entryway tones.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "wrist held near hip",
            "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": "marked wrist",
              "screen_zone": "middle_center",
              "target_id": "C05",
              "target_kind": "character"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Soft neutral background that keeps the wrist readable without revealing much space.",
            "directionality_class": "non_directional",
            "element": "blurred entrance floor",
            "orientation": "",
            "state": "muted, out of focus"
          },
          {
            "camera_use": "Warm domestic color patch behind the wrist, maintaining continuity with the rooftop room interior.",
            "directionality_class": "directional_3d",
            "element": "shoe cabinet edge",
            "orientation": "A blurred front corner faces the camera behind the wrist.",
            "state": "old, softly defocused"
          },
          {
            "camera_use": "Shallow atmospheric haze connecting the ominous detail to the kitchen scene.",
            "directionality_class": "non_directional",
            "element": "residual kitchen steam",
            "orientation": "",
            "state": "faint, drifting"
          }
        ],
        "lighting_mood": "The wrist is lit by soft golden daylight, but the circular mark holds a dense, almost ink-black tone that feels colder than the room around it.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 9,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot isolates only 한국인 중년 여성's wrist and mark; a full outlook reference would not align with the visible body detail.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "Tracking backward in front of 수리영's bicycle at handlebar-to-chest height, the camera holds a tight moving medium frame with the handlebars cutting across the lower foreground and her upper body centered above them. Her hair streams backward in the wind, her faint smile sits just off-center, and a thin strip of sea remains visible behind her shoulder to keep the coastal road alive within the close tracking motion.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "pedaling into wind",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Lower foreground motion anchor, showing speed without overpowering her face.",
            "directionality_class": "directional_3d",
            "element": "bicycle handlebars",
            "orientation": "The front curve and grips face the camera from the lower frame.",
            "state": "steady in her hands, vibrating slightly"
          },
          {
            "camera_use": "Thin background strip that identifies the coastal setting behind her.",
            "directionality_class": "non_directional",
            "element": "sea horizon",
            "orientation": "",
            "state": "bright, wind-ruffled, slightly hazy"
          },
          {
            "camera_use": "Moving lateral texture beneath the frame, reinforcing forward travel.",
            "directionality_class": "non_directional",
            "element": "coastal road",
            "orientation": "",
            "state": "sunlit, dry, passing quickly"
          }
        ],
        "lighting_mood": "Clear daylight is airy and pale gold, with sea-reflected brightness softened by wind and a restrained realistic palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 6,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just outside the rottweiler kennel at 수리영's eye level, the camera finishes its push-in through mostly blurred kennel bars until her face fills the close frame, three-quarter to camera and locked toward the unseen dog. The bars skim the extreme foreground as dark vertical smears, while her cold stillness occupies the middle center and the rottweiler is excluded except through the direction of her stare.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "chin held rigid",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C09",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "rottweiler off frame",
              "label": "수리영 isolated close-up",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Out-of-focus vertical foreground obstruction, suggesting the kennel without letting it take over the frame.",
            "directionality_class": "directional_3d",
            "element": "kennel bars",
            "orientation": "Their narrow front edges face the camera as dark vertical strips.",
            "state": "metallic, slightly dirty, blurred"
          },
          {
            "camera_use": "Soft institutional background behind 수리영's face.",
            "directionality_class": "non_directional",
            "element": "animal shelter corridor",
            "orientation": "",
            "state": "muted, fluorescent-lit, out of focus"
          },
          {
            "camera_use": "Cold overhead source that hardens her gaze and removes warmth from the shelter space.",
            "directionality_class": "directional_3d",
            "element": "fluorescent ceiling light",
            "orientation": "The lit underside faces down toward her and indirectly toward camera.",
            "state": "on, harsh, clinical"
          }
        ],
        "lighting_mood": "Cool fluorescent light flattens the shelter colors into gray-green tones, making her eyes feel unnaturally calm against the tense kennel shadows.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Beside the grooming station at chest height, the camera holds static about four feet from 수리영, slightly front-side so her tense face, the small dog pressed to her chest, and the open scissors sit on the same shallow-focus plane. The dog occupies the lower center, the scissors hover just to the right of its fur without touching it, and 수리영 is framed in a tight medium three-quarter composition as if the room has stopped breathing.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "cradling dog, scissors raised",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Provides the practical work surface and grounds the frozen grooming action at frame bottom.",
            "directionality_class": "directional_3d",
            "element": "metal grooming station",
            "orientation": "Its front edge faces the camera at a slight diagonal, with damp clippings and tools visible along the near side.",
            "state": "wet, used, cluttered"
          },
          {
            "camera_use": "Faint background context beyond the grooming area, softened by depth of field.",
            "directionality_class": "directional_3d",
            "element": "kennel corridor behind station",
            "orientation": "The corridor recedes away from camera behind 수리영, its cage fronts barely readable in blur.",
            "state": "dim, misty, restless"
          },
          {
            "camera_use": "Cold, clinical texture behind the subject, catching small wet highlights.",
            "directionality_class": "content_surface",
            "element": "stained tile wall",
            "orientation": "The camera sees the grimy room-facing tile surface, marked by water streaks and old grooming residue.",
            "state": "damp, dirty, pale gray"
          },
          {
            "camera_use": "Immediate danger cue held near the dog within the same focus plane.",
            "directionality_class": "directional_3d",
            "element": "grooming scissors",
            "orientation": "The blades are angled side-on to camera, catching a thin silver edge near the dog’s fur.",
            "state": "open, clean but ominous"
          }
        ],
        "lighting_mood": "Cool fluorescent shelter light is underexposed and green-gray, with a faint warm glint on the scissors cutting through the damp gloom.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the display shelf line at eye level, the camera holds a still medium over-the-shoulder view past 여성 직원 toward 수리영, preserving the stage’s settled opposing positions. 수리영 is centered-right with widened eyes and a slight forward lean, while the employee’s apron shoulder and side of head frame the left foreground without stealing focus.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning toward shelf",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C14",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "bracing near display",
            "character": "여성 직원",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Creates the conversation axis and leads the eye toward the later pan direction.",
            "directionality_class": "directional_3d",
            "element": "supermarket display shelf",
            "orientation": "The shelf face runs diagonally from foreground left toward background right, product fronts turned partly toward camera.",
            "state": "stocked, fluorescent-lit, orderly"
          },
          {
            "camera_use": "Adds opposing presence in the foreground and partially occludes the frame.",
            "directionality_class": "directional_3d",
            "element": "employee apron shoulder",
            "orientation": "The back-left shoulder side faces camera in soft focus, forming a human foreground edge.",
            "state": "clean, work-worn"
          },
          {
            "camera_use": "Urban dusk color leaking into the store through the entrance area behind the aisle.",
            "directionality_class": "transparent_surface",
            "element": "supermarket front glass",
            "orientation": "The glass is visible in the far background with neon and street dusk blurred through it.",
            "state": "closed, slightly smudged"
          },
          {
            "camera_use": "Practical overhead source that flattens the market realism while leaving faces tense.",
            "directionality_class": "non_directional",
            "element": "fluorescent ceiling strips",
            "orientation": "",
            "state": "on, cold white"
          }
        ],
        "lighting_mood": "Cold supermarket fluorescents mix with muted dusk-neon spill, draining warmth from 수리영’s face while leaving small crimson product labels as uneasy accents.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the supermarket at dusk, the handheld camera backs away less than a meter from 수리영’s front-left side, tightened into a close-up that still catches the phone edge near the lower frame and one suspended step at the bottom. Her face occupies the right-center of frame, jaw locked and eyes pulled downward toward the failed call, while neon and passing street shapes smear behind her.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "clutching phone mid-step",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "camera along sidewalk",
              "label": "수리영",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Blurred moving background that emphasizes her anxious forward motion.",
            "directionality_class": "directional_3d",
            "element": "dusk sidewalk outside supermarket",
            "orientation": "The pavement plane runs under her lifted foot toward the camera, compressed by the close tracking distance.",
            "state": "wet-looking, crowded at edges"
          },
          {
            "camera_use": "Color contrast and urban unease behind the close face.",
            "directionality_class": "content_surface",
            "element": "neon shop signs",
            "orientation": "Only the glowing sign faces toward camera are visible in background blur, with unreadable Korean lettering and red-blue color blocks.",
            "state": "on, flickering softly"
          },
          {
            "camera_use": "The immediate cause of her fixed stare, kept partially visible for motivation.",
            "directionality_class": "content_surface",
            "element": "smartphone screen",
            "orientation": "The lit front screen tilts upward toward 수리영 and only partially toward camera, unreadable but visibly active.",
            "state": "on, call not connecting"
          },
          {
            "camera_use": "Ambient street texture passing behind her head and shoulder.",
            "directionality_class": "non_directional",
            "element": "port-town traffic haze",
            "orientation": "",
            "state": "misty, noisy, dim"
          }
        ],
        "lighting_mood": "Dusk-blue ambient light is slashed by dirty neon reds and yellows, with handheld exposure breathing slightly as her panic hardens.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Centered on the empty coastal road axis, the tracking camera stays very close in front of 수리영, about two meters away and slightly below eye level, moving backward with her speed. The framing is wider than a face close-up: her wind-torn hair and clothes whip backward, both hands clamp the handlebar in the lower third, and one pedal is caught mid-drive downward as the black sea stretches behind her.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "driving pedal down",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "camera on road axis",
              "label": "수리영 on bicycle",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dark sea horizon",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Defines the straight frontal tracking axis and speed pressure.",
            "directionality_class": "directional_3d",
            "element": "empty coastal road",
            "orientation": "The lane lines and road edges run directly toward camera beneath the bicycle, centered in perspective.",
            "state": "empty, dark, slightly damp"
          },
          {
            "camera_use": "Massive black negative space behind the rider, heightening urgency and isolation.",
            "directionality_class": "non_directional",
            "element": "night sea",
            "orientation": "",
            "state": "black, wind-rough, barely visible"
          },
          {
            "camera_use": "Sparse practical streaks that flare along the road axis.",
            "directionality_class": "directional_3d",
            "element": "coastal streetlights",
            "orientation": "The lamp posts recede behind 수리영 along the road’s side, their lit heads facing downward rather than toward camera.",
            "state": "on, weak amber"
          },
          {
            "camera_use": "Foreground mechanical evidence of force and urgency.",
            "directionality_class": "directional_3d",
            "element": "bicycle handlebar and pedal",
            "orientation": "The handlebar faces camera symmetrically while the visible pedal is angled downward under her foot.",
            "state": "moving fast, vibrating"
          }
        ],
        "lighting_mood": "Low night blues and black sea tones are cut by sparse sodium-gold streetlight streaks, turning her forward motion into a desperate ritual dash.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 9,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the exterior rooftop beside the window at shoulder height, the camera tracks very close to the glass at an oblique angle, refusing to enter the room. The attack is visible only as a warped black reflection: 한국인 남성 lunges over 한국인 중년 여성’s collapsed form, their silhouettes squeezed into the dark window surface while the actual interior remains mostly hidden.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "lunging over body",
            "character": "한국인 남성",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "looking_away",
            "body_pose": "collapsed on floor",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Primary image surface; reveals the violence only through reflection.",
            "directionality_class": "reflective_surface",
            "element": "rooftop room window glass",
            "orientation": "The glass reflects the distorted black silhouettes of a man biting down over a fallen woman, mixed with faint rooftop darkness and almost no clear interior detail.",
            "state": "closed, dirty, night-reflective"
          },
          {
            "camera_use": "Keeps the camera physically outside and gives the shot a voyeuristic edge.",
            "directionality_class": "directional_3d",
            "element": "exterior rooftop wall",
            "orientation": "The wall edge runs along the right side of frame, its exterior face grazing the camera at a shallow angle.",
            "state": "rough, damp, dark"
          },
          {
            "camera_use": "Adds wind-tapped unease in the outer layer of the frame.",
            "directionality_class": "non_directional",
            "element": "rooftop clothesline shadows",
            "orientation": "",
            "state": "swaying, barely visible"
          },
          {
            "camera_use": "Distant practical glow that faintly outlines the window edge.",
            "directionality_class": "directional_3d",
            "element": "roof landing light spill",
            "orientation": "The light source is off-axis, skimming the outer window frame rather than lighting the room directly.",
            "state": "weak, amber, intermittent"
          }
        ],
        "lighting_mood": "The reflected image is nearly monochrome black with thin amber edge-light, allowing only a bruised crimson suggestion inside the room to pulse through the glass.",
        "perception_mode": "reflection",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 5,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The man is visible only as an anonymous reflected silhouette with no facial or clothing identity cues; a generic intruder descriptor is more accurate than a full outlook reference.",
            "subject_id": "C04"
          },
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The woman is reduced to a fallen reflected silhouette during the attack, so identity-specific outlook detail should not be forced in this shot.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "Halfway up the steep exterior stairs, the camera locks at eye level but sits slightly below 수리영’s face because of the incline, close enough that her hand clamped over her nose dominates the lower cheek line. The stair rail and slanted steps scrape the frame edges, keeping the vertical pressure visible while her expression twists into sudden nausea.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "hand clamped nose",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Maintains the incline and claustrophobic climb within the tight reaction shot.",
            "directionality_class": "directional_3d",
            "element": "steep exterior stairs",
            "orientation": "The steps cut diagonally upward behind and beside 수리영, their edges receding toward the rooftop.",
            "state": "narrow, worn, damp"
          },
          {
            "camera_use": "Foreground edge that compresses her body against the stairs.",
            "directionality_class": "directional_3d",
            "element": "metal stair railing",
            "orientation": "The railing side runs close to camera along the left edge, slightly out of focus.",
            "state": "rusted, cold, wet"
          },
          {
            "camera_use": "Sickly atmospheric source of the reaction, suggested rather than shown.",
            "directionality_class": "non_directional",
            "element": "foul night air",
            "orientation": "",
            "state": "heavy, invisible, oppressive"
          },
          {
            "camera_use": "Weak environmental texture beyond the stairwell.",
            "directionality_class": "non_directional",
            "element": "villa exterior darkness",
            "orientation": "",
            "state": "dim, misted, silent"
          }
        ],
        "lighting_mood": "A weak greenish exterior bulb and cold blue night ambience flatten her skin while shadows gather under her hand and eyes.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "On the rooftop landing at shoulder height, the camera holds eight to ten feet behind 수리영, slightly wider than the default reveal so her frozen back and the half-open metal door share the frame. She occupies the lower center as a dark human stop-sign, while the door’s narrow interior slice sits beyond her in the upper center, black enough to feel like it is watching back.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "frozen before doorway",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "half-open metal front door",
              "label": "수리영",
              "screen_zone": "lower_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "half-open metal front door",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Main reveal target beyond the character, showing enough interior to create dread.",
            "directionality_class": "directional_3d",
            "element": "half-open metal front door",
            "orientation": "The exterior face is angled toward camera, opened inward enough to expose a thin dark wedge of the room beyond.",
            "state": "half-open, scratched, ominously still"
          },
          {
            "camera_use": "Holds 수리영 in a liminal space before entry.",
            "directionality_class": "directional_3d",
            "element": "rooftop landing floor",
            "orientation": "The flat landing spreads from the camera foreground to the door threshold, centered behind her feet.",
            "state": "damp, bare concrete"
          },
          {
            "camera_use": "Creates a hard threshold line between rooftop and interior.",
            "directionality_class": "directional_3d",
            "element": "doorframe and threshold",
            "orientation": "The frame faces camera almost frontally, with the open door breaking its symmetry.",
            "state": "old, chipped, darkened"
          },
          {
            "camera_use": "Night texture around the doorway, enclosing the reveal.",
            "directionality_class": "non_directional",
            "element": "rooftop mist",
            "orientation": "",
            "state": "thin, cold, drifting"
          }
        ],
        "lighting_mood": "Cold rooftop blue surrounds her silhouette while a faint dirty amber leaks from inside the doorway, making the threshold feel contaminated.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just inside 수리영’s room, the handheld camera has finished its blood-trail approach and now holds about one meter from the curtain reveal at waist-to-chest height. The pulled-aside curtain frames 한국인 중년 여성 seated motionless in the center-left, head dropped forward, while the blood-marked floor remains visible in the lower foreground as the path that led us here.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "seated head dropped",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Reveals and frames the body without returning to movement.",
            "directionality_class": "transparent_surface",
            "element": "pulled-aside curtain",
            "orientation": "The thin fabric is dragged open to both sides, its stained folds partly translucent with the body visible beyond.",
            "state": "open, wrinkled, smeared"
          },
          {
            "camera_use": "Guides the viewer from doorway to corpse and anchors the shock.",
            "directionality_class": "non_directional",
            "element": "bloodstained floor",
            "orientation": "",
            "state": "wet in patches, smeared, dark red"
          },
          {
            "camera_use": "Evidence path leading into the reveal.",
            "directionality_class": "non_directional",
            "element": "bloody footprints",
            "orientation": "",
            "state": "partial, drying at edges"
          },
          {
            "camera_use": "Constricts the room and prevents the reveal from feeling staged.",
            "directionality_class": "directional_3d",
            "element": "small bedroom corner",
            "orientation": "The corner walls close in behind the seated body, their planes meeting behind her shoulder.",
            "state": "dim, cramped, stained"
          }
        ],
        "lighting_mood": "A sickly mix of TV-blue spill and weak lamp amber barely reaches the room, letting the blood read as muted black-red rather than bright gore.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 10,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low beside 한국인 중년 여성’s seated body at hand level, the dolly-in tightens into an insert of her dead fingers gripping a crumpled old photograph. The photo sits near the center and takes roughly a third of the frame, with only the edge of her wrist and a sliver of floor-blood kept as scale and evidence; the bed line remains a faint blurred orientation in the background.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "fingers clenched photo",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary evidence object held within the corpse’s hand.",
            "directionality_class": "content_surface",
            "element": "crumpled old photograph",
            "orientation": "The camera sees the creased image-bearing front face at an oblique angle, with its contents partly hidden by dead fingers.",
            "state": "crumpled, aged, stained"
          },
          {
            "camera_use": "Immediate body evidence and occult clue adjacent to the photo.",
            "directionality_class": "content_surface",
            "element": "wrist mark on dead hand",
            "orientation": "The marked skin surface faces partly upward toward camera, close to the photo but not fully flattened to view.",
            "state": "darkening toward red, tense under dead skin"
          },
          {
            "camera_use": "Maintains the same room geography for the next upward reveal.",
            "directionality_class": "directional_3d",
            "element": "bed edge in background",
            "orientation": "The bed’s side edge runs horizontally in soft focus behind the hand, pointing toward the wall above it.",
            "state": "dim, rumpled, partially obscured"
          },
          {
            "camera_use": "Textural evidence surrounding the hand.",
            "directionality_class": "non_directional",
            "element": "blood-specked floor",
            "orientation": "",
            "state": "sticky, dark, uneven"
          }
        ],
        "lighting_mood": "Low amber-blue spill glances across the knuckles and paper creases, while a faint crimson contamination begins to gather around the wrist mark.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 16,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot isolates only the dead hand, wrist, and photograph; a full outlook reference would over-specify facial or wardrobe identity that is not visible.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "At the side of the bed at chest height, the camera settles into a locked-off upward angle toward the wall above the bed, ending the previous glide with unnatural stillness. The completed red circle sits upper-center on the wall and commands the composition without filling the entire frame, while the bed edge remains low in frame as the physical anchor beneath the mark.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "red circle on wall above bed",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "bed edge below wall mark",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary supernatural reveal, held in a fixed composition.",
            "directionality_class": "content_surface",
            "element": "wall above bed with red circle",
            "orientation": "The camera sees the room-facing wall surface directly enough to read the completed brush-like red circle painted across it.",
            "state": "marked, damp-looking, unnaturally fresh"
          },
          {
            "camera_use": "Spatial anchor proving the mark is above the bed, not floating abstractly.",
            "directionality_class": "directional_3d",
            "element": "bed edge",
            "orientation": "The side of the bed faces camera in the lower frame, slightly angled away toward the marked wall.",
            "state": "rumpled, dim, stained by shadow"
          },
          {
            "camera_use": "Cuts off the room edges and makes the wall feel sealed.",
            "directionality_class": "directional_3d",
            "element": "bedroom side wall corner",
            "orientation": "The corner plane is visible at one side, turning away from the marked wall.",
            "state": "dark, cramped, peeling"
          },
          {
            "camera_use": "Residual atmosphere from the corpse reveal, barely visible near the lower frame.",
            "directionality_class": "non_directional",
            "element": "low room haze",
            "orientation": "",
            "state": "still, heavy, cold"
          }
        ],
        "lighting_mood": "The room stays blue-black and underlit while the circle holds a wet crimson glow, as if the only warm color has become a ritual wound in the wall.",
        "perception_mode": "hallucination",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 19,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the top landing of the steep exterior stairs, the camera holds eye-level about two meters in front of 수리영, locked into the flow's frontal panic frame with the rooftop-room entrance behind her. She occupies the center third in a tight medium composition, mouth open at the scream's peak, damp stair rails slicing diagonally along both lower edges before the coming descent is implied but not begun.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "recoiling on landing",
            "character": "수리영",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Deep background anchor behind 수리영, making the room she fled from feel like a dark source.",
            "directionality_class": "directional_3d",
            "element": "rooftop room entrance",
            "orientation": "The open doorway faces camera from behind 수리영, its dark interior visible as a rectangular void.",
            "state": "open and unlit inside"
          },
          {
            "camera_use": "Diagonal foreground lines that trap the body and preview the stair-axis retreat.",
            "directionality_class": "directional_3d",
            "element": "steep exterior stair rails",
            "orientation": "Both rail sides angle downward away from the landing toward the camera's lower corners.",
            "state": "wet and cold with night condensation"
          },
          {
            "camera_use": "Texture and horror realism around the screaming figure.",
            "directionality_class": "non_directional",
            "element": "damp concrete landing wall",
            "orientation": "",
            "state": "stained, mist-slick, low visibility"
          }
        ],
        "lighting_mood": "Cold bluish rooftop night light wraps the wet concrete, with a faint dirty-gold spill from the doorway grazing 수리영's face and a restrained crimson anxiety in the shadows.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Close in front of 혜수 at chest-to-eye height, the lens sits just beyond 수리영's shoulder line, inheriting the urgent close observation as 혜수 crowds into the frame. 혜수's face fills the upper half while her hands clamp 수리영's shoulders along the lower foreground edge; the only emphasized shift from the earlier panic is the tighter camera distance, not a new axis.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "gripping both shoulders",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          },
          {
            "angle": "back_to_camera",
            "body_pose": "shoulders seized forward",
            "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 stair geometry behind the confrontation, keeping the escape route present without stealing focus.",
            "directionality_class": "directional_3d",
            "element": "lower stair run",
            "orientation": "The stair treads recede behind 혜수 at a steep downward angle, mostly out of focus.",
            "state": "wet and dim"
          },
          {
            "camera_use": "Intermittent color pulse across 혜수's cheek and hands.",
            "directionality_class": "directional_3d",
            "element": "police car siren spill",
            "orientation": "The unseen car's light direction comes from the alley behind camera-left, striking one side of the subjects.",
            "state": "flashing off-screen"
          },
          {
            "camera_use": "Low background grit and depth between the two bodies.",
            "directionality_class": "non_directional",
            "element": "night alley mist",
            "orientation": "",
            "state": "thin, damp, drifting"
          }
        ],
        "lighting_mood": "Low-key night lighting is cut by faint blue-red siren pulses, with 혜수's anxious face warmed only by a weak streetlamp edge.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 6,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "수리영 is visible mainly as shoulders and back in the lower foreground, so a full outlook reference would over-specify features not seen in this shot.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "From the bedroom doorway at eye level, the camera holds a static frontal wide frame that takes in the bed, curtain area, spotless floor, and the empty negative space where the body and blood should have been. The doorway edge lightly frames the left and right margins, forcing the viewer to inspect the unnaturally tidy room rather than follow any person inside.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary absence marker; the clean surface contradicts the earlier red sign.",
            "directionality_class": "directional_3d",
            "element": "bed",
            "orientation": "The foot and top plane of the bed face the camera from mid-background, showing an unmarked cover.",
            "state": "neatly made with no red mark"
          },
          {
            "camera_use": "Secondary absence marker where the hidden body should have been.",
            "directionality_class": "directional_3d",
            "element": "curtain area",
            "orientation": "The curtain folds face the doorway directly, with the space behind them implied but undisturbed.",
            "state": "closed-looking, clean, no body visible"
          },
          {
            "camera_use": "Large empty surface used to prove there are no bloodstains.",
            "directionality_class": "non_directional",
            "element": "bedroom floor",
            "orientation": "",
            "state": "spotless and dry"
          },
          {
            "camera_use": "Foreground frame that makes the room feel like evidence being examined.",
            "directionality_class": "directional_3d",
            "element": "bedroom doorway",
            "orientation": "The inner sides of the jambs face camera, creating a rigid rectangular border around the room.",
            "state": "open and still"
          }
        ],
        "lighting_mood": "Flat, pale interior light is drained of warmth, making the room's cleanliness feel sterile and accusatory against the muted night tones.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the bedroom near the foot of the bed, the camera dollies in from chest height to a tightened close frame on 수리영's pale, frozen face while the spotless room remains visible around her shoulders. She is centered but slightly swallowed by the clean bed and curtain edges in the background, preserving the flow's front-facing confrontation with absence.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "frozen mid-step",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Clean rear plane that isolates 수리영's disbelief.",
            "directionality_class": "directional_3d",
            "element": "bed footboard and cover",
            "orientation": "The bed's foot faces camera behind 수리영, its top surface visible and unnaturally ordered.",
            "state": "perfectly clean and aligned"
          },
          {
            "camera_use": "Vertical background lines around her head, replacing the missing corpse with blank fabric.",
            "directionality_class": "directional_3d",
            "element": "bedroom curtain",
            "orientation": "The front folds face camera behind her, their lower edge clean and motionless.",
            "state": "still, clean, no stain"
          },
          {
            "camera_use": "Peripheral continuity clue in the room, visible but not emphasized.",
            "directionality_class": "directional_3d",
            "element": "backpack and doll area",
            "orientation": "The bag's side is angled toward camera near the room edge, small in frame.",
            "state": "slightly displaced but tidy"
          }
        ],
        "lighting_mood": "A cool overhead wash flattens her pallor, with only a faint yellow domestic spill on the room edges, making the cleanliness feel supernatural without overt distortion.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low and close in front of the bus-stop bench, the camera finishes its dolly-in slightly below 수리영's eye line, compressing her face into a determined close-up as she looks upward toward 혜수. 혜수 is only a cropped presence at the upper side of frame—coat edge and hand with drink implied—so 수리영's upward gaze carries the relationship more than a full two-shot.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "perched forward on bench",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "holding drink low",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Low foreground support line beneath 수리영, grounding the close-up in the bus stop location.",
            "directionality_class": "directional_3d",
            "element": "bus stop bench",
            "orientation": "The bench side runs horizontally across the lower background, with its front edge facing camera.",
            "state": "damp and worn"
          },
          {
            "camera_use": "Soft context behind the face, suggesting the coastal stop without pulling focus.",
            "directionality_class": "transparent_surface",
            "element": "bus stop glass panel",
            "orientation": "Moist glass sits behind the figures; blurred streetlight and sea darkness are visible through it.",
            "state": "fogged with condensation"
          },
          {
            "camera_use": "Distant ambient horizon that contrasts her urgent decision.",
            "directionality_class": "non_directional",
            "element": "night sea air",
            "orientation": "",
            "state": "misty, dark, wind-damp"
          }
        ],
        "lighting_mood": "Sodium streetlamp gold skims 수리영's cheek from above while the coast behind falls into blue-gray mist, sharpening her resolve in a muted crimson-gold horror palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "혜수 is only partially visible as a cropped presence near the edge of the close-up, so a full outlook reference is not necessary or reliable.",
            "subject_id": "C02"
          }
        ]
      },
      {
        "camera_direction": "Cut to a high, far static view from across the coastal road near streetlamp height, looking down into a wide overhead composition where the lamp's pool of light defines the action area. 수리영 is caught mid-run near the lit road edge while 혜수 remains behind by the bus stop, small and fixed, making the camera feel like an unseen watcher rather than a companion.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "one foot striking road",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "calling from curb",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "road beyond the streetlight",
              "label": "수리영 running out of the light",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "looks_toward",
              "gesture_target_label": "수리영",
              "label": "혜수 left behind near bus stop",
              "screen_zone": "middle_left",
              "target_id": "C02",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "streetlight pool of action",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Defines the circular zone where 수리영 breaks away.",
            "directionality_class": "non_directional",
            "element": "streetlight pool",
            "orientation": "",
            "state": "bright, isolated, damp on asphalt"
          },
          {
            "camera_use": "Places 혜수 spatially behind the action.",
            "directionality_class": "transparent_surface",
            "element": "bus stop shelter panels",
            "orientation": "The glass sides face the road at an angle, reflecting faint lamp streaks while showing the empty bench through them.",
            "state": "wet and semi-reflective"
          },
          {
            "camera_use": "Escape path and negative space around the running figure.",
            "directionality_class": "directional_3d",
            "element": "coastal road",
            "orientation": "The road surface stretches diagonally from the bus stop toward the lower-right exit of frame.",
            "state": "empty, dark, slick"
          },
          {
            "camera_use": "Remote horizon that makes the figures vulnerable and watched.",
            "directionality_class": "non_directional",
            "element": "black sea beyond road",
            "orientation": "",
            "state": "barely visible through mist"
          }
        ],
        "lighting_mood": "A dirty-gold lamp circle floats in blue-black coastal fog, leaving both figures small under surveillance-like darkness.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 7,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "수리영 is a small overhead figure in a wide surveillance-like view, so base identity is enough while detailed outlook cues would be unreadable.",
            "subject_id": "C01"
          },
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "혜수 is also distant and small near the bus stop; the shot prioritizes spatial relation over facial identity detail.",
            "subject_id": "C02"
          }
        ]
      },
      {
        "camera_direction": "Tight over the detective's desk at seated eye-line height, the camera pushes within one to two feet of 혜수's extended hand so the phone contact screen sits sharply in the middle foreground. 김형사's eyes and upper face are compressed behind the phone at the right rear, while 혜수's arm enters from the left edge like an accusation thrust across the desk.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "arm thrust forward",
            "character": "혜수",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning back in chair",
            "character": "김형사",
            "gaze_direction_kind": "looks_at_object",
            "gaze_target_id": "P01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "contact-screen phone held before detective",
              "screen_zone": "middle_center",
              "target_id": "P01",
              "target_kind": "prop"
            },
            {
              "depth_plane": "background",
              "gesture_action": "looks_toward",
              "gesture_target_label": "contact-screen phone",
              "label": "김형사 behind phone",
              "screen_zone": "middle_right",
              "target_id": "C06",
              "target_kind": "character"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary evidence surface; focus is locked so the contact entry is readable.",
            "directionality_class": "content_surface",
            "element": "혜수's phone screen",
            "orientation": "The lit front face points directly toward camera, showing a saved contact and number interface.",
            "state": "on, bright, held inches from 김형사"
          },
          {
            "camera_use": "Horizontal plane that frames the confrontation and adds office realism.",
            "directionality_class": "directional_3d",
            "element": "detective desk",
            "orientation": "The desktop plane recedes from the lower foreground toward 김형사, cluttered but subdued.",
            "state": "messy with papers and duty items"
          },
          {
            "camera_use": "Muted institutional background behind 김형사.",
            "directionality_class": "content_surface",
            "element": "office monitor",
            "orientation": "A side-facing screen is visible in soft focus, its dull interface turned partly away from camera.",
            "state": "on but unreadable"
          }
        ],
        "lighting_mood": "Greenish fluorescent office light flattens the room while the phone screen casts a cold rectangle onto 김형사's face, making the evidence feel invasive.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "혜수 is represented mainly by her extended hand and arm in this evidence insert-like close shot, so full outlook reference is unnecessary.",
            "subject_id": "C02"
          }
        ]
      },
      {
        "camera_direction": "From 혜수's front-left side, the camera sits slightly below eye level about two feet from her face and holds static as she looks down toward the office floor. Her brow line and tightened mouth fill most of the frame, with the desk edge and fluorescent blur kept low and soft so the emphasized change is her downcast gaze rather than a new spatial move.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning over desk",
            "character": "혜수",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Soft lower-frame anchor for her anxiety.",
            "directionality_class": "directional_3d",
            "element": "desk edge",
            "orientation": "The near edge cuts across the lower frame, angled away from camera-left.",
            "state": "cluttered, dimly visible"
          },
          {
            "camera_use": "Institutional depth behind her shoulder.",
            "directionality_class": "directional_3d",
            "element": "filing cabinets",
            "orientation": "Cabinet fronts face slightly away from camera in soft focus.",
            "state": "closed, dull metal"
          },
          {
            "camera_use": "Cold ambient source reflected on her skin.",
            "directionality_class": "non_directional",
            "element": "fluorescent ceiling wash",
            "orientation": "",
            "state": "steady, harsh, greenish"
          }
        ],
        "lighting_mood": "Sickly fluorescent green-gray light carves the wrinkle between her brows, with almost no warmth except a faint desk-lamp amber lost in the background.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At parapet height, the camera dollies in to a medium distance from the 검은 고양이, positioned slightly front-left so its yellow eyes and the softly glowing rooftop room beyond share the same sightline. The cat sits on the wall in the middle-left foreground, its head turned past camera-right toward the lit room, while the room remains blurred enough to feel watched rather than revealed.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "perched on parapet",
            "character": "검은 고양이",
            "gaze_direction_kind": "looks_at_object",
            "gaze_target_id": "B01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "lit rooftop room",
              "label": "black cat on parapet",
              "screen_zone": "middle_left",
              "target_id": "C11",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "lit rooftop room",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Physical perch and lateral path for the cat's coming movement.",
            "directionality_class": "directional_3d",
            "element": "rooftop parapet wall",
            "orientation": "The top ledge runs horizontally across the lower frame, its outer face angled toward camera.",
            "state": "damp, rough, dawn-cold"
          },
          {
            "camera_use": "Gaze target and ominous domestic glow behind the animal.",
            "directionality_class": "transparent_surface",
            "element": "lit rooftop room window",
            "orientation": "The window surface is hazy; warm interior light and indistinct room shapes are visible through it behind the cat's gaze.",
            "state": "light on, glass slightly fogged"
          },
          {
            "camera_use": "Atmospheric veil that softens the city edges.",
            "directionality_class": "non_directional",
            "element": "pre-dawn mist",
            "orientation": "",
            "state": "thin blue-gray haze"
          }
        ],
        "lighting_mood": "Blue dawn mist wraps the parapet while a dirty golden room glow catches the cat's yellow eyes, giving the image a ritual watchfulness.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At eye level in the center of the living room, the camera holds a wider-than-default full-body frame roughly twelve feet from 수리영, panning only enough for her head turn to lead the empty-house search. She stands in the middle third but is dwarfed by negative space, with open doorways and unused furniture arranged around her like silent witnesses.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "mid-turn scanning room",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Negative space surrounding 수리영, emphasizing no one answers her call.",
            "directionality_class": "non_directional",
            "element": "empty living room space",
            "orientation": "",
            "state": "silent, still, overly tidy"
          },
          {
            "camera_use": "Potential paths for her anxious search, held in the background.",
            "directionality_class": "directional_3d",
            "element": "bedroom and hallway doorways",
            "orientation": "The open doorway faces the camera obliquely while the darker hallway recedes off to one side.",
            "state": "open, quiet, no movement"
          },
          {
            "camera_use": "Domestic object that later becomes a site of visual fear, planted in the wide frame.",
            "directionality_class": "directional_3d",
            "element": "dining table",
            "orientation": "The table's long side faces camera from the rear of the room, with its surface partially visible.",
            "state": "clean and undisturbed"
          },
          {
            "camera_use": "Cool daylight source and texture against the room's stale air.",
            "directionality_class": "transparent_surface",
            "element": "living room window",
            "orientation": "Pale daylight filters through slightly grimy glass, with muted exterior brightness beyond.",
            "state": "closed, hazy"
          }
        ],
        "lighting_mood": "Weak daylight seeps through the closed window in gray-blue tones, leaving corners underlit and the tidy home unnervingly lifeless.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From sink height just behind and slightly beside 수리영’s implied position, the lens aims into the bathroom mirror but tightens the reflected composition until only the tiled wall and the red circular mark sit in the center-right of the mirror image. The mirror frame trims the shot on all sides, making the reflected wall feel like a trapped second room; no human figure is visible, only the cold sink edge grazing the lower foreground.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary reflective framing device; it contains the visible horror image rather than the real wall.",
            "directionality_class": "reflective_surface",
            "element": "bathroom mirror",
            "orientation": "The mirror reflects the tiled bathroom wall behind the camera position, with the red circular mark appearing inside the reflected space.",
            "state": "slightly fogged and streaked, intact"
          },
          {
            "camera_use": "Reflected focal plane carrying the mark.",
            "directionality_class": "content_surface",
            "element": "reflected bathroom tile wall",
            "orientation": "The tile face visible in the mirror shows a sharp crimson circular symbol centered across several pale tiles.",
            "state": "clean but visually contaminated by the sudden mark"
          },
          {
            "camera_use": "Low foreground spatial cue anchoring the camera at sink height.",
            "directionality_class": "directional_3d",
            "element": "sink rim",
            "orientation": "Only the near top edge of the sink faces the camera at the bottom of frame.",
            "state": "wet with faint water beads"
          }
        ],
        "lighting_mood": "Cold bathroom daylight is flattened by mirror haze, with the red mark cutting through the muted green-gray tiles like a ritual stain.",
        "perception_mode": "hallucination",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 12,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At low tabletop height about two feet from the framed photograph, the dolly-in reaches its climax with the picture occupying most of the center frame while the dining table edge remains visible as scale reference. The frame is angled slightly upward, so the smiling portrait becomes accusatory as the 한국인 중년 여성’s face liquefies within the glass rather than in the room itself.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "framed smiling portrait",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary object and hallucination surface; the distorted face is contained within it.",
            "directionality_class": "content_surface",
            "element": "framed family photograph",
            "orientation": "The front photo face is visible to camera, showing the mother’s smiling portrait as the facial features smear downward unnaturally.",
            "state": "upright on the table, glass clean but visually warping"
          },
          {
            "camera_use": "Foreground base holding the photograph and grounding the hallucination in domestic realism.",
            "directionality_class": "directional_3d",
            "element": "dining table",
            "orientation": "The tabletop plane recedes away from camera with the photo standing near its far edge.",
            "state": "tidy, dimly reflective"
          },
          {
            "camera_use": "Soft background context behind the photo, kept out of focus.",
            "directionality_class": "non_directional",
            "element": "living area darkness",
            "orientation": "",
            "state": "quiet and still"
          }
        ],
        "lighting_mood": "Muted morning interior light falls golden-gray across the table while the melting face takes on a sickly crimson shadow.",
        "perception_mode": "hallucination",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 16,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The character appears as a distorted face inside a framed photograph, so full outlook continuity would be visually unreliable while base identity remains important.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "From across the sidewalk at chest height, the static frame holds wider than a normal entrance shot so 수리영’s full body, the parked bicycle, and the empty supermarket frontage share the frame. She is positioned slightly left of center with the bicycle angled beside her, gripping the handlebar as the glass entrance sits ahead on the right, making her hesitation feel exposed against the vacant morning street.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "gripping bicycle handlebar",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Defines destination and emotional threshold before she enters.",
            "directionality_class": "transparent_surface",
            "element": "supermarket glass entrance",
            "orientation": "The glass doors face the sidewalk, reflecting pale street light while showing a dim store interior beyond.",
            "state": "closed or barely ajar, clean but cold-looking"
          },
          {
            "camera_use": "Foreground companion object emphasizing her pause before action.",
            "directionality_class": "directional_3d",
            "element": "parked bicycle",
            "orientation": "The bicycle is seen in side three-quarter view, front wheel angled slightly toward the entrance.",
            "state": "stationary, recently parked"
          },
          {
            "camera_use": "Environmental emptiness around the character.",
            "directionality_class": "non_directional",
            "element": "early-morning sidewalk",
            "orientation": "",
            "state": "nearly empty and damp"
          }
        ],
        "lighting_mood": "Thin dawn light desaturates the storefront, with a faint green-blue cast and damp pavement dulling every reflection.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From low shoulder height behind 수리영 and 남자직원, the camera holds both backs along the lower third while tilting up the supermarket wall to the CCTV camera high above. 수리영 is lower left and 남자직원 lower right, their heads tipped upward, while the wall-mounted lens becomes the hard focal point near the upper center.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "neck craned upward",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "back_to_camera",
            "body_pose": "hands on hips",
            "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": "wall-mounted CCTV camera",
              "label": "수리영",
              "screen_zone": "lower_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "wall-mounted CCTV camera",
              "label": "남자직원",
              "screen_zone": "lower_right",
              "target_id": "C08",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "wall-mounted CCTV camera",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Dominant clue revealed by the upward tilt.",
            "directionality_class": "directional_3d",
            "element": "wall-mounted CCTV camera",
            "orientation": "The camera housing protrudes from the wall with its lens angled down toward the sidewalk and entrance area.",
            "state": "fixed in place, functioning but impersonal"
          },
          {
            "camera_use": "Vertical plane guiding the tilt and separating the figures from the clue.",
            "directionality_class": "directional_3d",
            "element": "supermarket exterior wall",
            "orientation": "The flat wall face rises away from the characters toward the CCTV mount.",
            "state": "plain, slightly weather-stained"
          },
          {
            "camera_use": "Lower-frame base that keeps the characters grounded outside the store.",
            "directionality_class": "non_directional",
            "element": "sidewalk below wall",
            "orientation": "",
            "state": "quiet, lightly damp"
          }
        ],
        "lighting_mood": "Cool morning light leaves the figures in subdued back shadow while the CCTV housing catches a dull metallic highlight.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Tracking from the front edge of the desk beside the monitor, the camera faces 수리영 from across the screen line, holding her frontally while the monitor’s dark top edge and glow sit low in the foreground. She fills the center of the frame from chest up, not touching the controls, her tension isolated by the shallow depth between her eyes and the screen.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "leaning over monitor",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Low foreground barrier and light source separating 수리영 from the evidence.",
            "directionality_class": "content_surface",
            "element": "CCTV monitor edge",
            "orientation": "Only the upper front edge and a low wash of the screen face are visible to camera; the image content is mostly hidden from this angle.",
            "state": "on, dim, flickering"
          },
          {
            "camera_use": "Foreground track path and physical boundary between viewer and subject.",
            "directionality_class": "directional_3d",
            "element": "office desk",
            "orientation": "The front desk edge runs horizontally across the lower frame, receding slightly toward the monitor.",
            "state": "cluttered but subdued in darkness"
          },
          {
            "camera_use": "Background pressure around 수리영’s face.",
            "directionality_class": "non_directional",
            "element": "dark general affairs office",
            "orientation": "",
            "state": "low-lit and cramped"
          }
        ],
        "lighting_mood": "The monitor casts a cold blue-green underglow on 수리영’s face while the room falls into brown-gray police-office shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Directly in front of the monitor just above desk height, the dolly-in ends with the screen surface nearly filling the image, its bezel still visible as a thin dark border for scale. The man and woman inside the CCTV playback remain unreadable black silhouettes suspended in a muddy patch of darkness, with focus held on scanlines and screen glare rather than depth behind them.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "blurred silhouette pose",
            "character": "한국인 남성",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "looking_away",
            "body_pose": "blurred silhouette pose",
            "character": "한국인 여성",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary mediated image surface containing the clue.",
            "directionality_class": "content_surface",
            "element": "CCTV monitor screen",
            "orientation": "The front screen face is visible to camera, showing a dark CCTV frame where two figures are reduced to indistinct silhouettes.",
            "state": "on, noisy, underexposed"
          },
          {
            "camera_use": "Thin edge preserving the sense that this is a monitor, not the real space.",
            "directionality_class": "directional_3d",
            "element": "monitor bezel",
            "orientation": "The front rim faces camera as a narrow black border around the screen.",
            "state": "matte, dusty"
          },
          {
            "camera_use": "Visual texture obscuring identification.",
            "directionality_class": "non_directional",
            "element": "digital noise and scanlines",
            "orientation": "",
            "state": "active and flickering"
          }
        ],
        "lighting_mood": "The shot is lit almost entirely by dirty monitor glow, with crushed blacks and green-gray digital smear swallowing any human detail.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The CCTV image intentionally prevents identification; the figure should remain an unreadable male silhouette rather than a specific outlook match.",
            "subject_id": "C04"
          },
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The CCTV image intentionally prevents identification; the figure should remain an unreadable female silhouette rather than a specific outlook match.",
            "subject_id": "C07"
          }
        ]
      },
      {
        "camera_direction": "From the office entrance at eye level, the static wide frame looks down the empty central aisle toward 혜수’s desk, placing 수리영 small and alone in the chair at the far center. Empty desks flank her on both sides like abandoned witness stands, and the doorway edge lightly frames the foreground without making the shot feel hidden.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "perched on chair edge",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Foreground threshold emphasizing that everyone else has left.",
            "directionality_class": "directional_3d",
            "element": "office entrance doorway",
            "orientation": "The inner doorway sides face camera as a shallow frame around the empty office view.",
            "state": "open"
          },
          {
            "camera_use": "Spatial isolation grid around 수리영.",
            "directionality_class": "directional_3d",
            "element": "empty police desks",
            "orientation": "Rows of desk fronts and side panels recede from foreground toward the desk where 수리영 sits.",
            "state": "vacant, papers and equipment left behind"
          },
          {
            "camera_use": "Distant focal destination holding 수리영 and the evidence area.",
            "directionality_class": "directional_3d",
            "element": "혜수’s desk",
            "orientation": "The desk front faces the camera at the end of the aisle, with its top barely visible from distance.",
            "state": "occupied only by documents and photos"
          }
        ],
        "lighting_mood": "Flat fluorescent daylight leaves the office pale and official, but the empty desks sink into gray-green stillness around 수리영.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Beside 혜수’s desk just above tabletop height, the camera tilts up from the implied photographs into a tight close-up of 수리영’s face. Her widened eyes occupy the upper center while the lower edge of frame barely catches the blurred tops of the crime photos, keeping the horror present without showing it fully.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hunched over photos",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Implied source of her reaction, kept just below the frame line.",
            "directionality_class": "content_surface",
            "element": "expanded crime photographs",
            "orientation": "The face-up photo surfaces sit at the bottom edge, their graphic content mostly cropped and blurred but still visibly official evidence prints.",
            "state": "scattered and disturbing"
          },
          {
            "camera_use": "Low-angle base for the tilt into her face.",
            "directionality_class": "directional_3d",
            "element": "desk edge",
            "orientation": "The tabletop edge cuts across the bottom foreground, angled slightly upward toward 수리영.",
            "state": "cluttered with papers"
          },
          {
            "camera_use": "Cold institutional ceiling ambience behind her.",
            "directionality_class": "non_directional",
            "element": "fluorescent office background",
            "orientation": "",
            "state": "dim and sterile"
          }
        ],
        "lighting_mood": "Harsh overhead fluorescents bleach her skin tone while a faint sickly green reflection from the desk shadows her eyes.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height about 1.5 meters in front of 수리영, the camera tracks backward toward the aisle as she raises from the desk area into an upper-body frame. Her hand finishes pushing the folded note into her pocket in the lower frame while her eyes cut across the empty office, with abandoned desks kept in soft peripheral view.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "tucking note into pocket",
            "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": "Peripheral emptiness she scans for witnesses.",
            "directionality_class": "directional_3d",
            "element": "empty surrounding desks",
            "orientation": "Desk sides and chair backs angle away on both sides of 수리영 as the camera withdraws.",
            "state": "unoccupied, messy"
          },
          {
            "camera_use": "Background escape route implied by camera movement.",
            "directionality_class": "directional_3d",
            "element": "central office aisle",
            "orientation": "The aisle opens behind the camera direction, pulling the frame away from the desk cluster.",
            "state": "clear and quiet"
          },
          {
            "camera_use": "Residual light source from the location-tracking clue area.",
            "directionality_class": "content_surface",
            "element": "nearby workstation monitor",
            "orientation": "A distant screen face glows off to one side, its text no longer readable from this angle.",
            "state": "on, unattended"
          }
        ],
        "lighting_mood": "Cold office fluorescents mix with a faint monitor glow, leaving her face tense in muted blue-gray shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 10,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Moving parallel on the road about eight feet from the bicycle at roughly four feet lens height, the camera holds a tight side profile of 수리영 as she drives the pedals hard away from the police station. Her forward-leaning torso and the bicycle frame cut horizontally through the middle of the shot, while the background slides leftward in a restrained tracking blur.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "driving bicycle pedals",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "right side of the road frame",
              "label": "수리영 on bicycle",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "police station frontage receding behind her",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Moving background that confirms she is leaving the police station fast.",
            "directionality_class": "directional_3d",
            "element": "police station frontage",
            "orientation": "The building facade is seen side-on behind her, sliding backward relative to her movement.",
            "state": "open daytime exterior, receding"
          },
          {
            "camera_use": "Motion plane for the tracking shot.",
            "directionality_class": "non_directional",
            "element": "road surface",
            "orientation": "",
            "state": "dry to slightly damp, streaked by morning light"
          },
          {
            "camera_use": "Primary vehicle shaping her posture and speed.",
            "directionality_class": "directional_3d",
            "element": "bicycle",
            "orientation": "The bicycle is shown in clean side profile, wheels aligned with the frame direction.",
            "state": "in motion, pedals turning"
          }
        ],
        "lighting_mood": "Cool daylight catches the bicycle rims and her tense profile while the background stays muted, gray, and urgent.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From an object-like neutral viewpoint just outside the open backpack, the camera sits low at desk level and angles slightly down into the bag, cropping out 수리영’s face completely. Her hand enters from the upper right and pushes folded printed maps into the bag mouth at center, with the zipper teeth and damp desk edge forming a tight foreground frame.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "reaching into backpack",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Central receiving frame for the hand and maps; its opening creates a dark mouth-like border.",
            "directionality_class": "directional_3d",
            "element": "open backpack",
            "orientation": "The unzipped front opening faces the camera, showing the shadowed interior and zipper teeth along both lower edges.",
            "state": "open, worn, slightly damp"
          },
          {
            "camera_use": "Primary evidence detail sliding into the bag; printed lines and coordinate-like shapes remain partly visible.",
            "directionality_class": "content_surface",
            "element": "printed maps",
            "orientation": "The printed faces are angled toward camera, showing map grids and folded edges as they disappear halfway into the backpack.",
            "state": "freshly printed, folded, partially inserted"
          },
          {
            "camera_use": "Low horizontal plane grounding the insert and catching monitor spill.",
            "directionality_class": "directional_3d",
            "element": "PC café desk surface",
            "orientation": "The desktop top plane recedes away from the camera behind the bag.",
            "state": "cluttered, dull, faintly reflective"
          },
          {
            "camera_use": "Off-frame light source bleeding cold light onto the hand and paper edges.",
            "directionality_class": "content_surface",
            "element": "computer monitor glow",
            "orientation": "Only the light from the screen face reaches frame, tinting the maps with bluish rectangular spill.",
            "state": "on, mostly out of frame"
          }
        ],
        "lighting_mood": "Cold monitor-blue light grazes the hand and paper against a low-key black backpack interior, with muted urban shadows and no warmth.",
        "perception_mode": "direct",
        "perspective": "object_pov",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 2,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 수리영’s hand and partial forearm are visible; a full outlook reference would over-specify a face and costume not present in the frame.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "A direct frontal tracking camera retreats at bicycle speed from chest height, holding 수리영 in a medium cut rather than closing into her face. She stays centered in the rain-slashed road, one knee lifted high on the pedal stroke while the bicycle front wheel and handlebar occupy the lower third as wet hair whips backward.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "one knee lifted",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "camera along coastal road",
              "label": "수리영 riding toward camera",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Linear background axis that emphasizes forward struggle and speed.",
            "directionality_class": "directional_3d",
            "element": "coastal road",
            "orientation": "The road surface runs from lower foreground toward the upper center behind 수리영, slick with rainwater.",
            "state": "wet, dark, empty"
          },
          {
            "camera_use": "Moving veil between lens and subject; streaks reinforce storm pressure.",
            "directionality_class": "non_directional",
            "element": "heavy rain",
            "orientation": "",
            "state": "pouring, wind-driven"
          },
          {
            "camera_use": "Lower-frame motion anchor and scale reference for her body.",
            "directionality_class": "directional_3d",
            "element": "bicycle front assembly",
            "orientation": "The handlebar and front fork face the camera head-on while the lifted pedal angles diagonally upward.",
            "state": "wet, in motion"
          },
          {
            "camera_use": "Dark lateral negative space beyond the road, barely visible through rain.",
            "directionality_class": "non_directional",
            "element": "stormy coastal waterline",
            "orientation": "",
            "state": "obscured by rain and low cloud"
          }
        ],
        "lighting_mood": "Slate-gray storm light flattens the coast while occasional cold lightning lift catches rain beads and her wet hair with harsh silver highlights.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From inside the ransacked living room at chest height, the camera faces back toward the entrance and holds 수리영 frontally at the doorway for a beat longer than a normal establish. Broken domestic shapes remain in the foreground edges, framing her shocked face and rigid threshold posture without changing the fixed frontal axis.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "frozen at threshold",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Foreground disorder that partially frames 수리영 and proves the room has been searched.",
            "directionality_class": "directional_3d",
            "element": "overturned dining chairs",
            "orientation": "Chair legs jut diagonally toward camera from the lower left and right edges.",
            "state": "knocked over, wet-footprint marked"
          },
          {
            "camera_use": "Backlight and escape wound in the room’s geography.",
            "directionality_class": "transparent_surface",
            "element": "living room window",
            "orientation": "The open frame shows dim evening air and a wet exterior beyond, with curtains pulled unevenly aside.",
            "state": "open, rain-damp, smeared glass"
          },
          {
            "camera_use": "Texture trail leading from the room interior toward the doorway.",
            "directionality_class": "non_directional",
            "element": "muddy footprints",
            "orientation": "",
            "state": "fresh, irregular, tracked across floor"
          },
          {
            "camera_use": "Boundary where 수리영 is trapped between outside and violated home.",
            "directionality_class": "directional_3d",
            "element": "entrance doorway",
            "orientation": "The inner side of the doorway faces camera, enclosing 수리영 in a narrow vertical frame.",
            "state": "open, shadowed"
          }
        ],
        "lighting_mood": "Fading golden dusk from the open window mixes with dirty interior shadow, leaving her face pale and the room edges brown-gray and damp.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just inside the bedroom doorway, the camera stays square to the inner wall and slowly presses closer on the red circular mark and the pinned photograph at its exact center. The composition is flat and ritualistic: the circle spans most of the middle field while the photograph remains smaller, sharp, and slightly below eye line, with no person entering frame.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary ritual image; the flat wall turns into a graphic occult plane.",
            "directionality_class": "content_surface",
            "element": "bedroom wall with red circular mark",
            "orientation": "The camera-facing wall surface shows a crude red painted circle surrounding the pinned photograph at the center.",
            "state": "dirty, marked with wet-looking red pigment"
          },
          {
            "camera_use": "Evidence focal point within the symbol, held sharp as the camera creeps inward.",
            "directionality_class": "content_surface",
            "element": "blood-stained old photograph",
            "orientation": "The photograph’s front face is visible to camera, showing an aged rural restaurant image with dark blood smears crossing part of the picture.",
            "state": "pinned at center, old, blood-stained"
          },
          {
            "camera_use": "Subtle dark border suggesting the camera has just entered the room.",
            "directionality_class": "directional_3d",
            "element": "bedroom doorway edge",
            "orientation": "The inside edge of the open doorway grazes the far frame side, barely visible as a vertical shadow.",
            "state": "open, dim"
          }
        ],
        "lighting_mood": "Low dusk light drains the wall to gray-beige while the red paint reads dark crimson, giving the reveal a restrained ceremonial menace.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a low three-quarter position among wet rocks, the camera holds within a gentle push-in and lets 수리영 sit small against the fog-heavy sea. She is seen mostly from behind and slightly to one side, shoulders collapsed, occupying the lower right while pale mist and dark water stretch across the frame.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "slumped on wet rocks",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Foreground texture and unstable seat beneath 수리영.",
            "directionality_class": "non_directional",
            "element": "wet harbor rocks",
            "orientation": "",
            "state": "slick, dark, rain-washed"
          },
          {
            "camera_use": "Emotional negative space she faces; the fog hides any destination.",
            "directionality_class": "non_directional",
            "element": "foggy sea",
            "orientation": "",
            "state": "still, opaque with mist"
          },
          {
            "camera_use": "Dim spatial boundary of the empty port behind the rocks.",
            "directionality_class": "directional_3d",
            "element": "harbor edge",
            "orientation": "The quay line cuts diagonally behind her, its side facing camera as a dark horizontal mass.",
            "state": "empty, damp, quiet"
          },
          {
            "camera_use": "Atmospheric veil softening distance and suspending motion.",
            "directionality_class": "non_directional",
            "element": "low fog",
            "orientation": "",
            "state": "dense, drifting"
          }
        ],
        "lighting_mood": "Post-rain blue-gray dusk spreads through thick fog, with wet rocks catching faint silver highlights and almost no warm light.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the boat line, the lens sits slightly above 수리영’s eye level and less than a meter from her face, compressing the space so 인우 is only implied by her upward eyeline. Her face fills the central frame in a tight, still close-up, the background reduced to blurred rope, hull darkness, and fog.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "chin lifted pleading",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영 isolated pleading close-up",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Blurred vertical mass suggesting 인우’s boat without showing him.",
            "directionality_class": "directional_3d",
            "element": "boat hull side",
            "orientation": "The dark side plane of the boat sits behind her shoulder, angled away from camera.",
            "state": "wet, shadowed"
          },
          {
            "camera_use": "Thin practical detail near frame edge linking the plea to boarding.",
            "directionality_class": "directional_3d",
            "element": "mooring rope",
            "orientation": "The rope runs diagonally behind her, its length receding toward the unseen cleat.",
            "state": "taut, damp"
          },
          {
            "camera_use": "Soft background veil isolating her face.",
            "directionality_class": "non_directional",
            "element": "harbor fog",
            "orientation": "",
            "state": "thick, gray, low contrast"
          }
        ],
        "lighting_mood": "Soft cold fog light wraps her face from above while the boat side falls nearly black, concentrating the desperation in her wet eyes.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the boarding point, the camera settles from a slight dolly-out into a near-static side medium-close, chest height, with 수리영 in the foreground and the dark sea left open behind her. Her smartphone stays near her mouth in the lower side of her face, while her profile is held against a broad field of fog-black water.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "phone near mouth",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Large negative space behind her, making the message feel like a farewell before departure.",
            "directionality_class": "non_directional",
            "element": "dark foggy sea",
            "orientation": "",
            "state": "nearly black, mist-covered"
          },
          {
            "camera_use": "Spatial marker for the imminent boarding action.",
            "directionality_class": "directional_3d",
            "element": "boarding edge of the boat",
            "orientation": "The boat edge cuts across the lower background side, angled away toward the water.",
            "state": "wet, gently moving"
          },
          {
            "camera_use": "Handheld voice-message prop near her mouth, catching a small highlight.",
            "directionality_class": "content_surface",
            "element": "smartphone",
            "orientation": "The dark screen side is turned partly inward toward 수리영, with only its black reflective edge visible to camera.",
            "state": "on or recording, screen mostly hidden"
          }
        ],
        "lighting_mood": "Dim blue-gray sea light silhouettes her profile while the phone catches a small cold glint, leaving the background in heavy mist and muted black.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera has finished its slow frontal dolly-in and stops directly before 혜수 in the center of the ruined rooftop-room living area. She is held in a medium frontal frame with the phone pressed to her ear, surrounded by toppled furniture and scattered traces, as if the message has physically frozen her in place.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "phone pressed to ear",
            "character": "혜수",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Surrounding evidence of intrusion framing her shock.",
            "directionality_class": "directional_3d",
            "element": "ransacked living area",
            "orientation": "Cabinet faces, chair backs, and table edges point at uneven angles toward camera around 혜수.",
            "state": "disordered, searched through"
          },
          {
            "camera_use": "Communication object fixing the emotional beat of hearing 수리영’s message.",
            "directionality_class": "content_surface",
            "element": "smartphone",
            "orientation": "The active speaker side is pressed to 혜수’s ear, hiding the screen face from camera.",
            "state": "in use, held tightly"
          },
          {
            "camera_use": "Cool exterior spill contrasting the warm dusk interior remnants.",
            "directionality_class": "transparent_surface",
            "element": "open window",
            "orientation": "The open glass frame shows murky evening beyond and throws a dim rectangle of light into the room.",
            "state": "open, smeared, damp"
          },
          {
            "camera_use": "Floor-level chaos that makes the room feel recently violated.",
            "directionality_class": "non_directional",
            "element": "scattered household items",
            "orientation": "",
            "state": "strewn across floor, dirty"
          }
        ],
        "lighting_mood": "Fading dusk and weak interior shadow flatten the room into muted gray-brown, with a faint cold phone-side highlight sharpening 혜수’s stunned face.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a high wide position several boat lengths off the bow, the camera looks slightly down at the small fishing boat isolated in the red evening sea and holds it small before beginning its crane descent. The boat sits near the center of a vast water field, with the horizon and mist keeping the frame solemn and exposed.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "small fishing boat isolated in red sea",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Main isolated subject, kept small to stress distance from land and safety.",
            "directionality_class": "directional_3d",
            "element": "old small fishing boat",
            "orientation": "The bow points roughly toward the camera from below, with the starboard side slightly more visible as the crane prepares to descend.",
            "state": "afloat, weathered, alone"
          },
          {
            "camera_use": "Vast colored field surrounding the vessel.",
            "directionality_class": "non_directional",
            "element": "red evening sea",
            "orientation": "",
            "state": "calm but ominous, sunset-stained"
          },
          {
            "camera_use": "Atmospheric boundary that makes the open water feel endless.",
            "directionality_class": "non_directional",
            "element": "misty sunset horizon",
            "orientation": "",
            "state": "low, hazy, crimson-gold"
          },
          {
            "camera_use": "Soft overhead darkness pressing down on the boat.",
            "directionality_class": "non_directional",
            "element": "evening cloud cover",
            "orientation": "",
            "state": "darkening, heavy"
          }
        ],
        "lighting_mood": "A restrained crimson sunset bleeds across muted water while the boat remains a small dark shape under low, mist-softened sky.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Eye-level and directly in front of 인우, the camera completes a tightening dolly-in so his widened eyes sit sharp in the center while the photograph hovers near the foreground edge of the lens line. 수리영 remains just off to the side as a partial shoulder and extended arm, turning the frame into a pressure line between the evidence and his involuntary recognition.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "recoiling from photograph",
            "character": "인우",
            "gaze_direction_kind": "looks_at_object",
            "gaze_target_id": "P01",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "arm extending photo",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "blood-stained photograph near lens edge",
              "screen_zone": "middle_left",
              "target_id": "P01",
              "target_kind": "prop"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "blood-stained photograph",
              "label": "인우 shocked reaction",
              "screen_zone": "middle_center",
              "target_id": "C03",
              "target_kind": "character"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Foreground evidence edge that pulls 인우’s gaze toward the lens line.",
            "directionality_class": "content_surface",
            "element": "blood-stained old photograph",
            "orientation": "The photograph’s front face is angled partly toward camera at the left foreground edge, showing aged paper and dark blood marks without covering 인우’s face.",
            "state": "held out, stained, slightly trembling"
          },
          {
            "camera_use": "Compressed background behind 인우, giving the close-up a confined deck pressure.",
            "directionality_class": "directional_3d",
            "element": "fishing boat deck rail",
            "orientation": "The rail runs horizontally behind 인우’s shoulders with its side plane catching sunset spill.",
            "state": "wet, weathered"
          },
          {
            "camera_use": "Color field beyond the deck, blurred by the long lens.",
            "directionality_class": "non_directional",
            "element": "red dusk sea",
            "orientation": "",
            "state": "out of focus, dark crimson"
          },
          {
            "camera_use": "Subtle enclosure suggesting the wheelhouse direction he will bolt toward next.",
            "directionality_class": "directional_3d",
            "element": "wheelhouse wall edge",
            "orientation": "A narrow vertical edge sits behind him to one side, its outer face turned slightly toward camera.",
            "state": "dim, salt-streaked"
          }
        ],
        "lighting_mood": "Low crimson-gold sunset skims the wet deck while 인우’s face stays cool and tense, with the photograph catching a darker blood-red accent near the lens.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the scene flow’s evidence-close position, the camera sits extremely low over the damp console, roughly 20 centimeters above the old photograph, with the lens nearly parallel to Suriyoung’s index finger as it presses into the printed image of the young girl. This is a direct, neutral object-level observation: her fingertip and the girl’s faded face occupy the center, the photo edges skew diagonally across the lower frame, and the helm hardware remains as soft, dark geometry behind them.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "index pressing photograph",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary evidence surface under Suriyoung’s fingertip, angled diagonally to turn the old family image into a physical clue.",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "The printed face of the photograph is visible to camera, showing the faded young girl under the pressure of the fingertip.",
            "state": "worn, slightly curled, damp-edged"
          },
          {
            "camera_use": "Dark base plane beneath the photograph, giving the insert a cramped wheelhouse texture.",
            "directionality_class": "directional_3d",
            "element": "boat console surface",
            "orientation": "The top plane faces camera at a shallow angle, with chipped paint and grime catching low sidelight.",
            "state": "wet, scratched, dim"
          },
          {
            "camera_use": "Blurred background shape that anchors the photograph inside the wheelhouse rather than an abstract tabletop.",
            "directionality_class": "directional_3d",
            "element": "helm hardware",
            "orientation": "Its side and rim are barely visible behind the photo, turned away from camera in soft focus.",
            "state": "dark, worn, out of focus"
          }
        ],
        "lighting_mood": "Low-key sunset spill mixes muted gold with damp green-black shadows, with a faint crimson stain in the grade hinting at ritual danger.",
        "perception_mode": "direct",
        "perspective": "object_pov",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only Suriyoung’s hand and fingertip are framed; a full outlook reference would not align with the partial-body insert.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "Following the collapse-reaction flow, the camera holds at waist-to-chest height in a three-quarter side medium frame about 1.5 meters from the helm, keeping Suriyoung and Inwoo locked in the same shallow plane. The shot lingers just before full collapse: Suriyoung cuts a diagonal from lower left toward Inwoo’s shoulder while Inwoo’s upper body remains unnervingly vertical on the right, his stillness emphasized rather than a change in distance.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "knees buckling sideways",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "shoulders rigid above her",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "Inwoo's shoulder",
              "label": "Suriyoung losing balance",
              "screen_zone": "lower_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Inwoo rigid above her",
              "screen_zone": "middle_right",
              "target_id": "C03",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Spatial anchor beside both bodies, confirming the collapse happens beside the steering area.",
            "directionality_class": "directional_3d",
            "element": "helm wheel",
            "orientation": "The rim is turned partially side-on to camera, its circular form broken by shadow behind the figures.",
            "state": "still, worn, darkened by moisture"
          },
          {
            "camera_use": "Ominous background clue behind Inwoo’s still torso, kept soft but legible enough to echo the occult pattern.",
            "directionality_class": "content_surface",
            "element": "wall with red circular marks",
            "orientation": "The marked wall face is visible behind Inwoo, showing blurred crimson circles on its damp surface.",
            "state": "stained, dim, out of focus"
          },
          {
            "camera_use": "Backlight source and cramped boundary of the wheelhouse, compressing the figures against the exterior dusk.",
            "directionality_class": "transparent_surface",
            "element": "wheelhouse window",
            "orientation": "Clouded glass faces camera obliquely, with foggy sunset water barely visible through grime and condensation.",
            "state": "closed, dirty, wet"
          }
        ],
        "lighting_mood": "Cold wheelhouse shadow cuts the bodies into green-gray planes while thin golden dusk from the window rims Suriyoung’s fall and leaves Inwoo’s eyes hard and dark.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Derived from the threshold flow, the camera skims just above the water directly ahead and slightly off the bow, holding lower and tighter as the fishing boat pushes into the fog wall. The bow’s black silhouette sits in the lower middle-left at roughly one third of the frame, with small ripples breaking in the lower center and the dense fog rising immediately behind it like a vertical border swallowing the hull.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "dense fog wall",
              "label": "fishing boat bow entering fog",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "dense fog wall",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary moving silhouette and threshold marker, angled toward camera as it enters the mist.",
            "directionality_class": "directional_3d",
            "element": "fishing boat bow",
            "orientation": "The forward bow faces camera at a slight side angle, its front edge already half swallowed by fog while one flank remains visible.",
            "state": "black silhouette, wet, slowly advancing"
          },
          {
            "camera_use": "Boundary wall that erases depth and turns the boat’s movement into a crossing into the unknown.",
            "directionality_class": "non_directional",
            "element": "dense fog wall",
            "orientation": "",
            "state": "thick, opaque, motionless-looking"
          },
          {
            "camera_use": "Low foreground texture showing the boat’s movement through small prow ripples.",
            "directionality_class": "reflective_surface",
            "element": "dark seawater",
            "orientation": "The surface reflects broken gold from the sunset and the bow’s black shape, distorted by ripples at the prow.",
            "state": "calm but disturbed near the bow"
          },
          {
            "camera_use": "Muted backlight source that separates the black hull from the fog without revealing detail.",
            "directionality_class": "non_directional",
            "element": "sunset glow",
            "orientation": "",
            "state": "fading, golden, diffused by mist"
          }
        ],
        "lighting_mood": "A dying gold horizon is heavily diffused through gray fog, reducing the boat to a black silhouette with damp highlights and ritual stillness.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 30,
        "shot_index": 3,
        "subject_reference_policy": []
      }
    ],
    "total": 53,
    "failed_batches": 0
  },
  "step_id": "shot_staging",
  "run_id": "fd3742e2-02c8-4b11-b31e-8dfbd9f7341e",
  "resolved_model": "gpt",
  "updated_at": "2026-07-01T16:11:31.041799+00:00",
  "schema_version": 6,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}