{
  "status": "completed",
  "completed_count": 60,
  "applicable_count": 60,
  "failed_count": 0,
  "data": {
    "shots": [
      {
        "camera_direction": "From the flow’s thigh-level track, the camera tightens to an extreme close position less than a foot beside the injured leg, traveling parallel with the fleeing body so the torn bite mark sits in the center-right of frame and pooled blood trembles with each step. The forest behind becomes smeared gray-green motion, with only a strip of wet leaves and dark stems visible at the lower edge for scale.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "staggering mid-stride",
            "character": "한국인 남자",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "blurred moving background behind the wound, emphasizing flight and disorientation",
            "directionality_class": "non_directional",
            "element": "damp forest floor litter",
            "orientation": "",
            "state": "wet, dark, streaked by motion blur"
          },
          {
            "camera_use": "thin foreground/background streaks that cut across the close-up and make the leg feel trapped in undergrowth",
            "directionality_class": "non_directional",
            "element": "low underbrush and grass stems",
            "orientation": "",
            "state": "dense, shaken by movement"
          }
        ],
        "lighting_mood": "Low sunset light leaks through foggy trees in muted gold and sickly green, catching the blood with a dull wet shine.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 2,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot isolates the injured thigh and wound rather than the character's face or full identity, so a base character reference is sufficient and an outlook reference may not align.",
            "subject_id": "C08"
          }
        ]
      },
      {
        "camera_direction": "Holding the flow’s side-on shoulder-height position about six feet away, the handheld camera catches the impact laterally as the dark silhouette crosses in from frame left and clamps both hands onto the man’s shoulders at midair contact. The man’s upper body snaps sharply backward across the center of frame while his legs remain lower-right, giving the hit a broken, animal-force geometry.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "torso snapping backward",
            "character": "한국인 남자",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          },
          {
            "angle": "profile_left",
            "body_pose": "lunging mid-air",
            "character": "아시아계 남자 (실루엣)",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C08",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "vertical background bars that make the lateral collision feel abrupt and caged",
            "directionality_class": "directional_3d",
            "element": "dark tree trunks",
            "orientation": "their narrow sides face the camera in staggered depth behind the figures",
            "state": "wet, nearly black against fog"
          },
          {
            "camera_use": "soft ground reference under the airborne impact",
            "directionality_class": "non_directional",
            "element": "leaf-covered forest floor",
            "orientation": "",
            "state": "trampled, damp, dusk-dark"
          }
        ],
        "lighting_mood": "A low-key dusk wash turns the attacker into a near-black shape while the man’s bent torso catches a last rim of cold sunset gray.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s shoulder-height close-observation point, the camera holds within two feet of the pair on the woman’s neck side, pressing the man’s red eyes into sharp focus while his mouth remains stopped just beside her skin. The woman’s neck and shoulder form a soft foreground edge on frame right, and the utility pole behind them is only a dark vertical smear.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "hovering at neck",
            "character": "아시아계 남자 (본능 발현)",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_right",
            "body_pose": "pinned against pole",
            "character": "아시아계 여성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "dark vertical pressure behind the bodies, implying the woman is trapped against it",
            "directionality_class": "directional_3d",
            "element": "utility pole",
            "orientation": "one rounded side faces the camera, mostly obscured by the pair",
            "state": "old, stained, dimly lit"
          },
          {
            "camera_use": "thin halo and sickly edge light on skin and eyes",
            "directionality_class": "non_directional",
            "element": "distant alley streetlight glow",
            "orientation": "",
            "state": "weak, flickering through night haze"
          },
          {
            "camera_use": "background texture compressed into shallow focus",
            "directionality_class": "non_directional",
            "element": "narrow alley wall",
            "orientation": "",
            "state": "dirty, damp, green-gray in darkness"
          }
        ],
        "lighting_mood": "The alley is lit by weak sodium streetlight and cold green shadow, with the red eyes rendered unnaturally vivid but still grounded in the dimness.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Following the flow’s dolly-out, the camera settles low near the alley floor about eight feet from the woman, angled slightly down the alley so her full body lies diagonally from lower-left to middle-right beneath the streetlight. The frame briefly stops breathing after the retreat, leaving empty pavement around her to make the collapse feel final.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "lying limp on pavement",
            "character": "아시아계 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "pool of light that isolates the body from the surrounding alley",
            "directionality_class": "non_directional",
            "element": "streetlight spill on pavement",
            "orientation": "",
            "state": "dim, uneven, yellowed"
          },
          {
            "camera_use": "receding vertical anchor at the body’s previous struggle point",
            "directionality_class": "directional_3d",
            "element": "utility pole",
            "orientation": "its street-facing side is visible in the background",
            "state": "weathered, shadowed"
          },
          {
            "camera_use": "cold ground plane emphasizing stillness and distance",
            "directionality_class": "non_directional",
            "element": "wet alley pavement",
            "orientation": "",
            "state": "dark, slick, lightly reflective"
          }
        ],
        "lighting_mood": "Muted yellow streetlight pools over damp asphalt while the alley edges fall into blue-black shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera inherits the dolly-in through the detective cluster and lands at eye level about one and a half meters from 혜수, framing her upper body head-on between blurred shoulders at the left and right edges. Though the angle is direct, it reads like a press/news lens pushing into a crime scene: 혜수 occupies the center third with crossed arms, her gaze fixed past the camera rather than into it.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "arms crossed braced",
            "character": "혜수",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "partial foreground occlusion that compresses 혜수 inside the investigative group",
            "directionality_class": "directional_3d",
            "element": "out-of-focus detectives' shoulders",
            "orientation": "backs and side shoulders face the camera as soft dark edges",
            "state": "crowded, moving minimally"
          },
          {
            "camera_use": "crime-scene boundary visible behind the group",
            "directionality_class": "content_surface",
            "element": "police line tape",
            "orientation": "the printed front side faces the camera in broken strips behind 혜수",
            "state": "stretched taut, slightly dirty"
          },
          {
            "camera_use": "small visual reminders of the forensic work beyond her stare",
            "directionality_class": "content_surface",
            "element": "evidence markers",
            "orientation": "numbered faces turn partially toward the camera in the background",
            "state": "set on damp ground, slightly blurred"
          }
        ],
        "lighting_mood": "Flat daylight is filtered through a news-footage feel, desaturated into gray-green crime-scene tones with low contrast and anxious realism.",
        "perception_mode": "through_device",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 3,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s high overhead crane position, the camera holds a clean bird’s-eye composition directly above the old villa roof, with the rooftop room placed clearly inside the larger rectangle of worn concrete. The small structure sits near the center, surrounded by water stains, pipes, and patched roofing that make the home feel exposed and isolated in daylight.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "rooftop room",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "old villa rooftop area",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary subject of the overhead reveal",
            "directionality_class": "directional_3d",
            "element": "rooftop room",
            "orientation": "its roof plane faces the camera from above, with one wall edge slightly visible due to the downward angle",
            "state": "old, cramped, weather-stained"
          },
          {
            "camera_use": "larger spatial frame isolating the rooftop room",
            "directionality_class": "non_directional",
            "element": "villa rooftop concrete",
            "orientation": "",
            "state": "cracked, patched, mottled with damp stains"
          },
          {
            "camera_use": "thin linear details that add realism and scale to the roof",
            "directionality_class": "directional_3d",
            "element": "rooftop pipes and utility lines",
            "orientation": "their top and side edges are visible as they run across the roof surface",
            "state": "aged, rusted, irregularly arranged"
          }
        ],
        "lighting_mood": "Daylight is pale and washed-out, with coastal gray tones flattening the roof into a lonely, weathered map.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inheriting the flow’s eye-level position from inside the main room, the camera faces the open bedroom doorway head-on from roughly eight feet away and holds it symmetrically. 수리영 is centered in the doorway with both arms stretched upward and eyes closed, her body framed by the doorjamb while the cramped room edges sit quietly around her.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "arms stretched overhead",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영 in open doorway",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "open bedroom doorway",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "symmetrical frame around 수리영’s reveal",
            "directionality_class": "directional_3d",
            "element": "open bedroom doorway",
            "orientation": "the front-facing doorframe surrounds her, with the open door edge visible to one side",
            "state": "open, worn, slightly shadowed inside"
          },
          {
            "camera_use": "soft domestic daylight source from the side of the main room",
            "directionality_class": "transparent_surface",
            "element": "small living-room window",
            "orientation": "thin sunlight passes through the glass, with the outside blown pale and indistinct",
            "state": "closed, slightly dusty"
          },
          {
            "camera_use": "cramped domestic texture around the reveal",
            "directionality_class": "directional_3d",
            "element": "main-room wall and door trim",
            "orientation": "flat wall faces the camera around the doorway, chipped trim catching light",
            "state": "aged, modest, clean but worn"
          }
        ],
        "lighting_mood": "Narrow daytime sunlight cuts into the dim rooftop room, warming 수리영’s face while the doorway interior stays cool and muted.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s static shoulder-height profile near the entryway wall, the camera tightens slightly so 수리영’s nose nearing the middle-aged woman’s neck becomes the dominant action in the center of frame. Both bodies are held side-on, with the entry wall close behind them and the doorway area compressed into a private farewell pocket.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "leaning to neck",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_right",
            "body_pose": "soft shoulder turn",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "tight domestic boundary behind the profile embrace",
            "directionality_class": "directional_3d",
            "element": "entryway wall",
            "orientation": "the wall plane runs nearly parallel to the figures and faces the camera at a shallow angle",
            "state": "plain, slightly scuffed"
          },
          {
            "camera_use": "depth cue suggesting the apartment exit just outside the intimate moment",
            "directionality_class": "directional_3d",
            "element": "front door edge",
            "orientation": "the side edge of the door is visible behind them, angled away from camera",
            "state": "closed or nearly closed, worn around the handle area"
          },
          {
            "camera_use": "soft spill from the main room that keeps the farewell gentle despite the unease",
            "directionality_class": "non_directional",
            "element": "daylight from small window",
            "orientation": "",
            "state": "diffused, warm, faint"
          }
        ],
        "lighting_mood": "Warm interior daylight brushes their profiles while the entryway shadows stay muted gray, making the tenderness feel fragile and enclosed.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Continuing the flow’s drop from the farewell profile, the camera pushes in to hand level less than a foot from the middle-aged woman’s wrist, angled slightly downward so the circular mark sits crisp near the center of the frame. Faces are excluded; only a sliver of sleeve, skin texture, and blurred entryway background remain to keep the mark isolated but physically grounded.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "wrist half-turned",
            "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": "soft neutral background behind the isolated wrist detail",
            "directionality_class": "directional_3d",
            "element": "entryway wall",
            "orientation": "a flat, out-of-focus wall plane faces the camera behind the wrist",
            "state": "pale, worn, softly shadowed"
          },
          {
            "camera_use": "small contextual edge showing this is still the doorway farewell space",
            "directionality_class": "directional_3d",
            "element": "doorframe edge",
            "orientation": "a narrow side edge cuts the blurred background at frame side",
            "state": "aged, chipped, out of focus"
          },
          {
            "camera_use": "fabric edge that frames the wrist without covering the mark",
            "directionality_class": "directional_3d",
            "element": "sleeve cuff",
            "orientation": "the cuff’s outer fold faces the camera beside the exposed wrist",
            "state": "soft, slightly rumpled"
          }
        ],
        "lighting_mood": "A narrow warm highlight grazes the skin while the surrounding entryway falls into soft gray shadow, making the circular mark appear unnervingly clear.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 11,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The frame excludes the face and isolates only the wrist mark, so a base character identity reference is enough and an outlook reference would not be useful.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "Following the flow’s parallel track from the sea side, the camera rides at handlebar height about five feet from 수리영 in a clean side profile, held slightly wider to include her hands, the front wheel area, and one pedal mid-stroke. She leans forward into the ride at center frame, hair and collar blown backward while the coastal road slides horizontally behind her.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "pedaling mid-stroke",
            "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 frame along coastal road",
              "label": "수리영 riding bicycle",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "moving horizontal background that gives speed and openness",
            "directionality_class": "non_directional",
            "element": "coastal road surface",
            "orientation": "",
            "state": "dry, sunlit, lightly worn"
          },
          {
            "camera_use": "wide atmospheric backdrop beyond the road",
            "directionality_class": "non_directional",
            "element": "coastal sea haze",
            "orientation": "",
            "state": "bright, pale blue-gray, breezy"
          },
          {
            "camera_use": "thin route boundary passing behind the bicycle",
            "directionality_class": "directional_3d",
            "element": "roadside guardrail",
            "orientation": "its long side runs horizontally behind her, seen side-on as the camera tracks parallel",
            "state": "weathered, sun-faded"
          }
        ],
        "lighting_mood": "Clear daytime coastal light is warmer and more open than the interiors, with wind-bright highlights and muted gray-blue sea tones.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 6,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the low outside-kennel position, the lens sits just above the damp floor, slightly lower than the flow default, looking through the bars so the black Rottweiler lies across the lower center while 수리영 is held higher in the background line of sight. The composition stays close and compressed: the dog's flattened ears and upward eyes are sharp, while 수리영’s steady presence is partially broken by vertical cage bars, making the animal’s submission feel physically contained.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning toward kennel",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C11",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "prone ears flattened",
            "character": "검은 로트와일러",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "Suriyeong above the kennel line",
              "label": "black Rottweiler",
              "screen_zone": "lower_center",
              "target_id": "C11",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Suriyeong",
              "screen_zone": "upper_right",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Vertical foreground obstruction and emotional barrier between camera, dog, and handler.",
            "directionality_class": "transparent_surface",
            "element": "kennel bars",
            "orientation": "The camera sees through wet vertical bars toward the dog and 수리영 beyond them.",
            "state": "closed, damp, slightly rusted"
          },
          {
            "camera_use": "Low tactile base that keeps the dog pressed into the shelter environment.",
            "directionality_class": "non_directional",
            "element": "concrete kennel floor",
            "orientation": "",
            "state": "wet, scuffed, reflecting faint greenish light"
          },
          {
            "camera_use": "Dark rear plane behind the dog, adding depth without revealing escape space.",
            "directionality_class": "directional_3d",
            "element": "kennel back wall",
            "orientation": "Its flat rear face sits behind the dog, angled only slightly away from camera.",
            "state": "stained and shadowed"
          }
        ],
        "lighting_mood": "Cold shelter daylight mixes with sickly green fluorescent spill, catching moisture on the bars and floor while keeping the dog’s black coat low-key and tactile.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera settles behind 수리영 at shoulder height in a steadier rear medium-wide frame, a few feet back in the aisle, looking past her dropped shoulders into the long corridor of cages. She occupies the lower-middle foreground as a small, burdened silhouette against the repeating cage geometry that recedes deep into the frame.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "shoulders sagging forward",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Creates the long oppressive perspective of work still waiting for her.",
            "directionality_class": "transparent_surface",
            "element": "row of kennel cages",
            "orientation": "The camera looks through successive wire fronts down the aisle, with dogs partially visible behind them.",
            "state": "closed, crowded, unevenly lit"
          },
          {
            "camera_use": "Central depth axis guiding the viewer’s eye past 수리영.",
            "directionality_class": "non_directional",
            "element": "kennel aisle floor",
            "orientation": "",
            "state": "damp, worn, marked by paw prints"
          },
          {
            "camera_use": "Overhead industrial source that flattens the shelter into a weary workplace.",
            "directionality_class": "directional_3d",
            "element": "fluorescent ceiling fixtures",
            "orientation": "The lit undersides face downward along the aisle, receding away from camera.",
            "state": "on, flickering slightly"
          }
        ],
        "lighting_mood": "Muted gray daylight and weak green fluorescents flatten the aisle, with damp surfaces catching dull highlights and no comforting warmth.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the mart aisle, the camera briefly stabilizes from the tracking move into a tighter eye-level upper-body frame just outside the shelf line, about four feet from 수리영. The shelf edge cuts the left foreground while she leans her head and shoulders past it into the open aisle, looking hard in one direction as if trying to catch a glimpse beyond the products.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "neck craned past shelf",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Foreground frame that partially hides her and turns the search into a furtive scan.",
            "directionality_class": "directional_3d",
            "element": "mart shelf edge",
            "orientation": "The shelf’s narrow side faces camera, with stacked products extending away along the aisle.",
            "state": "fully stocked, orderly"
          },
          {
            "camera_use": "Texture and color clutter behind her search line.",
            "directionality_class": "content_surface",
            "element": "product packaging rows",
            "orientation": "The printed label faces are visible in strips along the shelf, creating small blocks of color and text.",
            "state": "bright, repetitive, slightly overlit"
          },
          {
            "camera_use": "Depth corridor for her gaze to travel through.",
            "directionality_class": "directional_3d",
            "element": "mart aisle",
            "orientation": "The aisle runs diagonally past 수리영 toward the unseen display area.",
            "state": "open, busy but momentarily clear"
          }
        ],
        "lighting_mood": "Cool fluorescent mart light is contaminated by faint sunset gold from the entrance, making the ordinary shelves feel tense and washed-out.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The push-in resolves into a frontal close-up of 수리영, her widened eyes centered and isolated from the conversation area; 남자 직원 remains only as a blurred shoulder and box edge at the right foreground. The frame compresses around her face so the surrounding shelves fall soft, preserving the flow’s eye-level approach while emphasizing the single beat of alarm.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "frozen mid-question",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C10",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "holding produce box",
            "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 context showing this is still the mart display area.",
            "directionality_class": "directional_3d",
            "element": "display shelving",
            "orientation": "The shelf fronts angle away behind 수리영, reduced to blurred horizontal lines.",
            "state": "stocked, fluorescent-lit"
          },
          {
            "camera_use": "Foreground sliver that marks the source of the unsettling information without taking focus from her reaction.",
            "directionality_class": "directional_3d",
            "element": "cardboard stock box",
            "orientation": "One box corner faces camera beside 남자 직원’s shoulder.",
            "state": "held, partly open"
          },
          {
            "camera_use": "Overhead practical light that sharpens her eyes and drains the color from her skin.",
            "directionality_class": "directional_3d",
            "element": "ceiling fluorescent strip",
            "orientation": "The glowing underside faces down into the aisle, reflected faintly in her eyes.",
            "state": "on, harsh"
          }
        ],
        "lighting_mood": "Harsh fluorescent light cools her face while the background falls into muted commercial color, making her rounded eyes the brightest emotional point.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside the mart entrance, the camera holds static at eye level from the open sidewalk, about seven feet away, letting 수리영 sit slightly off-center with the storefront behind and beside her. She keeps the phone pressed to her ear, body locked in place, while passing street activity remains peripheral and soft rather than taking over the frame.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "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": "Back-and-side frame confirming she has exited the mart and is stranded at the threshold.",
            "directionality_class": "transparent_surface",
            "element": "mart glass entrance",
            "orientation": "The glass is slightly smudged, showing interior fluorescent shelves through it and faint sidewalk reflections on the surface.",
            "state": "closed behind her, lit inside"
          },
          {
            "camera_use": "Urban color pulse around her stillness.",
            "directionality_class": "content_surface",
            "element": "storefront neon signage",
            "orientation": "The glowing sign face is angled partly toward camera, readable as colored light more than text.",
            "state": "on, buzzing faintly"
          },
          {
            "camera_use": "Movement contrast behind her frozen call attempt.",
            "directionality_class": "non_directional",
            "element": "busy sidewalk haze",
            "orientation": "",
            "state": "evening crowd blur, coastal dampness in the air"
          }
        ],
        "lighting_mood": "Warm sunset residue mixes with green-blue neon and mart fluorescent spill, leaving her face tense in a sickly urban dusk.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a low roadside position at knee height, the camera freezes 수리영 in a dynamic wide composition as she drives the bicycle hard along the dark coastal road from the front-left angle. Her torso is folded deep over the handlebars in the middle of the frame, the road axis stretching behind her into fog so the still image feels like a held breath before speed takes over.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "bent over handlebars",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "left edge along the coastal road",
              "label": "Suriyeong on bicycle",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "coastal road vanishing line",
              "screen_zone": "upper_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary motion axis and perspective line for her urgent ride home.",
            "directionality_class": "non_directional",
            "element": "dark coastal asphalt",
            "orientation": "",
            "state": "wet-looking, nearly black, faintly reflective"
          },
          {
            "camera_use": "Side boundary that makes the road feel exposed to the sea.",
            "directionality_class": "directional_3d",
            "element": "roadside guardrail",
            "orientation": "Its rail face runs diagonally away from camera along the coast.",
            "state": "cold metal, damp with night air"
          },
          {
            "camera_use": "Atmospheric void swallowing the road ahead.",
            "directionality_class": "non_directional",
            "element": "sea fog beyond road",
            "orientation": "",
            "state": "thick, gray-black, obscuring distance"
          }
        ],
        "lighting_mood": "Sparse sodium road light and cold coastal moon haze carve her into a moving silhouette, with wet asphalt catching thin gold streaks.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 9,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At latch height only six inches from the metal door seam, the camera holds an insert-like side angle where the narrow gap runs vertically through the center and the stranger’s fingers enter from the right with the paper flyer wedged deep inside. The door surface stays close and tactile but does not overwhelm the frame, leaving a thin strip of black interior visible beyond the pressed paper.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "fingers wedging flyer",
            "character": "아시아계 남자 (실루엣)",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary intrusion plane, making the break-in mechanical and intimate.",
            "directionality_class": "directional_3d",
            "element": "metal door seam",
            "orientation": "The door edge faces camera in hard side profile, with the latch gap visible as a dark vertical slit.",
            "state": "closed but flexing, paint chipped"
          },
          {
            "camera_use": "Tool of entry caught at the deepest point of insertion.",
            "directionality_class": "content_surface",
            "element": "paper advertising flyer",
            "orientation": "The printed advertising face is partly visible as it bends into the gap, its text distorted by pressure.",
            "state": "creased, dirty, forced inward"
          },
          {
            "camera_use": "Threatening absence beyond the threshold.",
            "directionality_class": "non_directional",
            "element": "interior darkness through gap",
            "orientation": "",
            "state": "unlit, narrow, swallowing detail"
          }
        ],
        "lighting_mood": "A cold rooftop practical skims the chipped metal and knuckles, while the gap beyond remains dead black and airless.",
        "perception_mode": "direct",
        "perspective": "object_pov",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 5,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only the intruder’s hand action is visible in an extreme insert; face and full outfit reference would be misleading.",
            "subject_id": "C13"
          }
        ]
      },
      {
        "camera_direction": "From outside the rooftop-room window, the camera is square to the pane at eye level, holding a flattened medium view of two overlapping shadows rather than any direct bodies. The male shadow folds into the woman’s shoulder area at the center of the glass, while the window frame pins the violence into a silent, graphic shape.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "head buried at shoulder",
            "character": "아시아계 남자 (실루엣)",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "looking_away",
            "body_pose": "shoulder twisted back",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Main viewing surface; it denies direct access and turns the assault into occult-like shadow evidence.",
            "directionality_class": "reflective_surface",
            "element": "dark rooftop-room window glass",
            "orientation": "The glass reflects and holds the overlapping interior shadows, with faint rooftop night glints across the surface.",
            "state": "closed, dirty, slightly reflective"
          },
          {
            "camera_use": "Hard border that flattens and traps the silhouettes.",
            "directionality_class": "directional_3d",
            "element": "window frame",
            "orientation": "The rectangular frame faces camera squarely, dividing the shadow image into rigid panes.",
            "state": "old, dark-painted, weathered"
          },
          {
            "camera_use": "Dim source creating the silhouettes from within.",
            "directionality_class": "directional_3d",
            "element": "interior backlight",
            "orientation": "The unseen light faces the window from inside, projecting bodies as dense shadow shapes.",
            "state": "on, weak, warm"
          }
        ],
        "lighting_mood": "A weak warm interior glow throws black silhouettes onto cold dirty glass, surrounded by blue rooftop night and damp gray masonry.",
        "perception_mode": "reflection",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 8,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The male figure appears only as a shadow on glass, so a full outlook reference should not be required.",
            "subject_id": "C13"
          },
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The woman is readable only through a distorted shadow overlap, not through direct facial or wardrobe detail.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "At the rooftop stair landing, the camera finishes its dolly-in less than a meter from 수리영, eye level but slightly rising from the final step so her lifted chin and wrinkled nose fill the close frame. The stair edge and rooftop darkness are compressed behind her, keeping the emphasis on the instant her body registers the foul smell before she understands it.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "head lifting, nose wrinkled",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Tight spatial cue showing she has just reached the top of the climb.",
            "directionality_class": "directional_3d",
            "element": "rooftop stair landing",
            "orientation": "The landing plane sits just behind her shoulders, receding into dark roof space.",
            "state": "concrete, damp, dim"
          },
          {
            "camera_use": "Hard side boundary and vertical pressure around her face.",
            "directionality_class": "directional_3d",
            "element": "stairwell wall",
            "orientation": "The wall face runs close along one side of the frame, catching a thin dirty highlight.",
            "state": "stained, rough plaster"
          },
          {
            "camera_use": "Unseen source of dread beyond the close-up.",
            "directionality_class": "non_directional",
            "element": "rooftop darkness",
            "orientation": "",
            "state": "deep, humid, almost textureless"
          }
        ],
        "lighting_mood": "Dirty yellow stairwell light grazes her face from below-front while the rooftop behind falls into cold black-green shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "This is a direct subjective view from 수리영’s eye level at the top of the stairs, held static and centered on the rooftop-room entrance several meters ahead. The half-open metal door sits in the middle of the frame with its black gap dominant, while the rooftop landing edges remain visible at the lower sides as scale and distance cues.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "half-open rooftop room door",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "black doorway gap",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Central threat revealed by her eyeline cut.",
            "directionality_class": "directional_3d",
            "element": "half-open metal door",
            "orientation": "The door’s outer face is visible frontally, swung open enough to reveal a vertical black interior gap.",
            "state": "half-open, chipped, motionless"
          },
          {
            "camera_use": "Dominant negative space suggesting danger inside without showing it.",
            "directionality_class": "non_directional",
            "element": "black interior gap",
            "orientation": "",
            "state": "unlit, opaque, visually impenetrable"
          },
          {
            "camera_use": "Foreground distance marker placing the viewer at the stair-top position.",
            "directionality_class": "non_directional",
            "element": "rooftop landing floor",
            "orientation": "",
            "state": "bare concrete, damp, dimly lit"
          }
        ],
        "lighting_mood": "A weak yellow exterior bulb leaves the door edges visible but lets the interior gap remain dense black, with coastal night cooling the surrounding concrete.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 11,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From inside the bedroom at seated eye level, the camera holds a rigidly symmetrical frontal composition about six feet from the window: the opened curtains form vertical borders, the window sits centered behind the 한국인 중년 여성, and her slumped body occupies the lower middle of the frame. The perspective is a neutral, direct observer’s view, static and unnervingly square, with the clean geometry of the window contrasting against the body collapsed on the floor.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "slumped on floor",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Rigid backdrop framing the seated body",
            "directionality_class": "transparent_surface",
            "element": "bedroom window",
            "orientation": "The glass faces the camera from behind the body, dimly showing the night-dark exterior beyond its damp surface.",
            "state": "closed, dark, faintly damp"
          },
          {
            "camera_use": "Symmetrical vertical frame around the corpse",
            "directionality_class": "directional_3d",
            "element": "opened curtains",
            "orientation": "Both curtain panels are pulled aside toward the left and right edges, their inner folds facing the camera.",
            "state": "opened, heavy, slightly rumpled"
          },
          {
            "camera_use": "Grounding plane beneath the body",
            "directionality_class": "non_directional",
            "element": "bedroom floor beneath window",
            "orientation": "",
            "state": "dim, stained by the earlier violence"
          }
        ],
        "lighting_mood": "Low-key room darkness is cut by cold window glow and muted sickly green-gray shadows, with only a thin rim catching the corpse’s bowed head.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 10,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low beside the body within a foot of the floor, the camera pushes in along the same reveal axis into an extreme close view of the slack hand, with the crumpled photograph held between loose, lifeless fingers in the center-lower frame. The hand and photo carry the frame while the floor and a blurred edge of the dead woman’s sleeve remain as scale references; the angle is slightly downward, tactile, and clinical rather than sensational.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "slack hand extended",
            "character": "한국인 중년 여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "crumpled photograph in dead hand",
              "screen_zone": "middle_center",
              "target_id": "P01",
              "target_kind": "prop"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary focal detail held in the corpse’s hand",
            "directionality_class": "content_surface",
            "element": "crumpled photograph",
            "orientation": "The creased image side is partially visible to camera, but its content is obscured by folds and the dead fingers.",
            "state": "crumpled, clenched loosely"
          },
          {
            "camera_use": "Tactile surface supporting the hand",
            "directionality_class": "non_directional",
            "element": "bedroom floor",
            "orientation": "",
            "state": "cold, dirty, faintly smeared"
          },
          {
            "camera_use": "Soft boundary of the body at frame edge",
            "directionality_class": "directional_3d",
            "element": "dead woman’s sleeve and wrist",
            "orientation": "The wrist lies palm-inward toward camera, with the underside of the hand angled slightly down.",
            "state": "limp, shadowed"
          }
        ],
        "lighting_mood": "A narrow, cold spill from the window skims the knuckles and photo creases while the surrounding floor falls into damp gray-black shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 15,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot isolates the dead woman’s hand and wrist rather than her full face or body, so a base identity reference is enough without requiring a full outlook match.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "From near the window side at waist height, the handheld camera snaps into a tight upper-body frame of 수리영 about four feet away, catching her at the peak of the scream. Her face and hands take most of the frame, shoulders twisted slightly off-center, with the unseen bed-wall area implied behind the camera line rather than shown; the shake makes the room feel as if it is buckling around her.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "clutching her head",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Suriyeong screaming alone in tight frame",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Blurred spatial hint behind the panic",
            "directionality_class": "directional_3d",
            "element": "bedroom wall edge",
            "orientation": "Only a soft angled strip of wall is visible behind her shoulder, not enough to reveal the full room.",
            "state": "dim, indistinct"
          },
          {
            "camera_use": "Residual off-frame threat source",
            "directionality_class": "non_directional",
            "element": "bedroom darkness",
            "orientation": "",
            "state": "deep, unstable, swallowing the background"
          }
        ],
        "lighting_mood": "Cold gray room light flickers against her face with a faint ritual-red contamination from the unseen wall sign, heightening the panic without showing the source.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 19,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the mouth of the alley beside the front quarter of a police car, the camera holds steady at eye level from roughly eighteen feet away, framing 수리영 full-body against the pulsing red emergency light. She is isolated in the middle distance, small against the wet alley and coastal darkness, while the police car edge remains at frame side as a hard, official intrusion into her shock.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "frozen mid-breath",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Red flashing light source and foreground spatial anchor",
            "directionality_class": "directional_3d",
            "element": "police car front quarter",
            "orientation": "The front-side corner of the car faces camera from the alley mouth, with the roof lightbar angled toward the frame.",
            "state": "parked, lightbar flashing"
          },
          {
            "camera_use": "Atmospheric corridor isolating the girl",
            "directionality_class": "directional_3d",
            "element": "narrow alley entrance",
            "orientation": "The alley recedes behind 수리영, its side walls forming a dark channel around her body.",
            "state": "wet, empty, foggy"
          },
          {
            "camera_use": "Moving color wash over the scene",
            "directionality_class": "non_directional",
            "element": "red emergency light spill",
            "orientation": "",
            "state": "pulsing, intermittent"
          }
        ],
        "lighting_mood": "Strobing police red cuts through damp coastal gray and black, freezing 수리영 in alternating flashes of alarm and void.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Directly in front of 혜수 at eye level, the camera completes a push-in from conversational distance to a face-only close-up as she stops dead. Her widened eyes sit just above center and her open mouth catches the lower third; the background collapses into red-blue alley blur so the only changed axis is the camera distance tightening into shock.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "halted forward lean",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "Suriyeong just off camera",
              "label": "Hyesu stunned close-up",
              "screen_zone": "middle_center",
              "target_id": "C02",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Abstracted emergency context behind her face",
            "directionality_class": "non_directional",
            "element": "blurred police light bokeh",
            "orientation": "",
            "state": "flashing, out of focus"
          },
          {
            "camera_use": "Dark alley background compressed by the push-in",
            "directionality_class": "directional_3d",
            "element": "alley wall line",
            "orientation": "The wall line runs diagonally behind her but is mostly defocused by the tight lens.",
            "state": "wet, dark"
          }
        ],
        "lighting_mood": "Alternating red siren light and cold street shadow carve her face into startled planes, with moisture in the air softening the highlights.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just outside the fully open bedroom doorway at standing eye level, the camera holds a perfectly centered frontal view through the doorframe into the room. The spotless floor leads the eye to the bed and curtain area where the body and blood should be, making the absence read as a rigid, impossible tableau rather than a simple empty room.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Hard rectangular frame for the impossible clean room",
            "directionality_class": "directional_3d",
            "element": "fully open bedroom doorway",
            "orientation": "The doorframe faces the camera squarely, with the open door swung aside and the interior visible straight through.",
            "state": "fully open, still"
          },
          {
            "camera_use": "Primary evidence of disappearance",
            "directionality_class": "non_directional",
            "element": "spotless bedroom floor",
            "orientation": "",
            "state": "clean, dry, no blood visible"
          },
          {
            "camera_use": "Secondary evidence area where the sign should be absent",
            "directionality_class": "directional_3d",
            "element": "bed",
            "orientation": "The side of the bed faces camera from inside the room, neatly aligned with the wall.",
            "state": "neatly arranged, undisturbed"
          },
          {
            "camera_use": "Back-wall reference to the earlier corpse location",
            "directionality_class": "directional_3d",
            "element": "curtain area",
            "orientation": "The curtain hangs at the far side of the room facing the doorway, no body visible in front of it.",
            "state": "closed or settled, clean-looking"
          }
        ],
        "lighting_mood": "Flat, cold interior light replaces the earlier horror shadows, giving the room a sterile gray calm that feels accusatory.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From just inside the bedroom threshold at face height, the camera pivots back toward the doorway and tightens into 수리영’s close-up, leaving the empty room only as negative space in her eyeline. Her pale face occupies the right-center of frame, jaw slack and breath caught, while the door edge grazes the foreground as a thin vertical divider between what she saw and what remains.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "braced at threshold",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "empty bedroom interior",
              "label": "Suriyeong at the threshold",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "empty bedroom interior implied by eyeline",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Foreground divider and threshold marker",
            "directionality_class": "directional_3d",
            "element": "bedroom door edge",
            "orientation": "A narrow side edge of the open door cuts vertically near the frame edge, viewed from inside the doorway.",
            "state": "open, still"
          },
          {
            "camera_use": "Implied clean room in her eyeline",
            "directionality_class": "non_directional",
            "element": "empty bedroom space",
            "orientation": "",
            "state": "clean, silent, mostly off-frame"
          }
        ],
        "lighting_mood": "Pallid overhead room light drains color from her face, with soft gray shadows under the eyes emphasizing disbelief over panic.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Low inside 수리영’s bedroom at knee height, the camera pushes closer toward the floor corner, angling down so the backpack lies diagonally across the lower half of the frame with the attached doll tilted toward camera. The rest of the room is excluded except for the bare floor and two converging wall edges, making the shifted object feel like a quiet piece of evidence rather than clutter.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "askew backpack with small doll",
              "screen_zone": "lower_center",
              "target_id": "P02",
              "target_kind": "prop"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "bare bedroom floor corner",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary object hinting at altered placement",
            "directionality_class": "directional_3d",
            "element": "backpack with attached doll",
            "orientation": "The backpack lies on its side at a diagonal, with its front pocket partly facing camera and the small doll hanging outward.",
            "state": "askew, slightly misplaced"
          },
          {
            "camera_use": "Minimal spatial reference around the object",
            "directionality_class": "non_directional",
            "element": "bare floor corner",
            "orientation": "",
            "state": "clean, empty, too orderly"
          },
          {
            "camera_use": "Corner lines compressing the object",
            "directionality_class": "directional_3d",
            "element": "bedroom wall base edges",
            "orientation": "Two low wall edges meet behind the backpack, receding away from the camera.",
            "state": "plain, unmarked"
          }
        ],
        "lighting_mood": "Muted gray-green room light falls softly over the clean floor, while the doll catches a faint warmer edge that makes it uncomfortably present.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 12,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the edge of the dark coastal bus stop, the camera holds several meters back at eye level, facing past the bench toward the black sea. 수리영’s full body sits small on the bench in the lower middle-left of the frame, the empty shelter and road space stretching around her so the environment weighs more than her movement.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "hunched on bench",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "night sea",
              "label": "Suriyeong seated alone",
              "screen_zone": "lower_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "night sea beyond bus stop",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Isolation platform for the seated figure",
            "directionality_class": "directional_3d",
            "element": "bus stop bench",
            "orientation": "The bench runs laterally across the frame, its sea-facing side holding 수리영 in profile.",
            "state": "empty except for her, damp"
          },
          {
            "camera_use": "Dark horizon beyond her gaze",
            "directionality_class": "non_directional",
            "element": "night sea",
            "orientation": "",
            "state": "black, fog-heavy, barely moving"
          },
          {
            "camera_use": "Overhead practical shape and shelter outline",
            "directionality_class": "directional_3d",
            "element": "coastal bus stop shelter",
            "orientation": "The shelter’s open front faces the camera at a slight angle, framing the bench beneath it.",
            "state": "dim, weather-worn"
          },
          {
            "camera_use": "Tactile ground texture around the stop",
            "directionality_class": "non_directional",
            "element": "wet roadside pavement",
            "orientation": "",
            "state": "dark, reflective in patches"
          }
        ],
        "lighting_mood": "Sparse bus-stop light and distant sodium spill leave the scene in muted coastal grays, with the sea swallowing most of the background detail.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Near the bench at standing chest height, slightly behind and to the side of 혜수, the camera tracks just enough to hold her upper body as she calls down the dark road. 혜수 occupies the right foreground with one hand cupped at her mouth, while 수리영’s retreat is only a blurred back or edge movement near the left distance, preserving the sense that the shout is chasing someone already leaving.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "hand cupped shouting",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          },
          {
            "angle": "back_to_camera",
            "body_pose": "running away",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "Suriyeong running down the road",
              "label": "Hyesu calling after her",
              "screen_zone": "middle_right",
              "target_id": "C02",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "moves_toward",
              "gesture_target_label": "dark road away from bus stop",
              "label": "Suriyeong retreating",
              "screen_zone": "middle_left",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Anchor showing where the call begins",
            "directionality_class": "directional_3d",
            "element": "bus stop bench",
            "orientation": "The bench sits behind 혜수 at a shallow angle, its wet seat catching a dim highlight.",
            "state": "empty, damp"
          },
          {
            "camera_use": "Direction of 수리영’s exit",
            "directionality_class": "directional_3d",
            "element": "dark coastal road",
            "orientation": "The road recedes diagonally away from the bench toward the left background.",
            "state": "nearly empty, slick, foggy"
          },
          {
            "camera_use": "Atmospheric separation between the two figures",
            "directionality_class": "non_directional",
            "element": "sea fog and night air",
            "orientation": "",
            "state": "thin, gray, drifting"
          }
        ],
        "lighting_mood": "Cool coastal darkness wraps both figures, broken by a weak roadside lamp that rims 혜수’s hand and cheek while 수리영 fades into gray-black distance.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the front corner of Kim detective's desk, the camera sits slightly below standing height and looks diagonally across the desktop as Hyesu's phone juts into the near foreground, its lit screen taking roughly the left lower quarter of frame without overwhelming the room. Kim detective's reacting face stays beyond the phone in the mid-background, softened by shallow depth, while Hyesu's tense shoulder and extended arm cut in from frame left as a sharp interruption.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "arm thrusting phone",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C04",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning back in chair",
            "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": "Hard foreground plane and diagonal anchor between the two characters.",
            "directionality_class": "directional_3d",
            "element": "duty desk corner",
            "orientation": "The front corner points toward the lens, creating a wedge between Hyesu and Kim detective.",
            "state": "cluttered with night-duty paperwork and damp-looking worn edges"
          },
          {
            "camera_use": "Sharp foreground interruption that motivates Kim detective's reaction.",
            "directionality_class": "content_surface",
            "element": "Hyesu's mobile phone screen",
            "orientation": "The illuminated screen face is angled toward Kim detective and partly toward the camera, showing a saved contact/number interface.",
            "state": "on, smudged, held too close to the lens"
          },
          {
            "camera_use": "Background institutional texture enclosing the confrontation.",
            "directionality_class": "content_surface",
            "element": "police office notice board",
            "orientation": "The paper-covered front face is visible behind Kim detective, but the text is indistinct.",
            "state": "dim, crowded with pinned forms"
          }
        ],
        "lighting_mood": "Cold fluorescent office light mixes with the phone's small green-white glow, keeping the scene low-key and sickly rather than clean.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Now on Hyesu's side of the desk, the camera has tightened to a chest-height upper-body composition, looking slightly upward over the tabletop so her planted hands clamp the lower edge of frame. Kim detective is reduced to a blurred shoulder and chair-line at the right foreground edge, while Hyesu's bent torso and widened eyes hold the center as the dolly-in reaches its pressure point.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "bent over desk",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C04",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "recoiling in chair",
            "character": "김형사",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Foreground pressure line under Hyesu's hands.",
            "directionality_class": "directional_3d",
            "element": "desk surface",
            "orientation": "The desktop plane recedes away from the lens toward Kim detective, making Hyesu's hands feel heavy and invasive.",
            "state": "scuffed, paper-strewn, compressed under her palms"
          },
          {
            "camera_use": "Blurred institutional background behind the confrontation.",
            "directionality_class": "content_surface",
            "element": "office partition with notices",
            "orientation": "The notice-covered side faces camera but remains out of focus behind Hyesu.",
            "state": "dim, gray-green, bureaucratic"
          },
          {
            "camera_use": "Peripheral scale reference for Kim detective's seated position.",
            "directionality_class": "directional_3d",
            "element": "detective's chair back",
            "orientation": "Only the chair's side/back edge faces the lens at the right margin.",
            "state": "dark vinyl, slightly worn"
          }
        ],
        "lighting_mood": "The overhead fluorescent light flattens the office into green-gray fatigue while a hard shadow under Hyesu's brow makes her stare feel accusatory.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "A low rooftop-level wide frame holds still beside the wooden platform, about knee height to a person but eye-level to the cat, facing the parapet with the lit rooftop room set back in the dawn haze. The black cat is small but clear near the parapet line, one front paw lifted and touching the wall, while the platform boards and damp rooftop surface occupy the lower half as tactile foreground texture.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "front paw lifted",
            "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": "Primary staging plane beneath the cat.",
            "directionality_class": "directional_3d",
            "element": "wooden rooftop platform",
            "orientation": "Its long plank edges run diagonally from lower left toward the parapet, leading the eye to the cat.",
            "state": "weathered, damp, gray-brown"
          },
          {
            "camera_use": "Destination barrier for the cat's lifted paw.",
            "directionality_class": "directional_3d",
            "element": "low rooftop parapet",
            "orientation": "The inner face of the parapet faces camera, with the top edge catching faint dawn light.",
            "state": "stained concrete, wet along the rim"
          },
          {
            "camera_use": "Background source of human absence and unease.",
            "directionality_class": "directional_3d",
            "element": "lit rooftop room",
            "orientation": "The room's front wall and glowing window/door area face the camera from the background.",
            "state": "light on, quiet, partially veiled by dawn mist"
          }
        ],
        "lighting_mood": "Blue-gray dawn fog softens the roof while the rooftop room leaks a weak warm rectangle behind the cat.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From mattress height inside the main bedroom, the camera holds a low, wide, unmoving view across the bed edge into the pale morning room. Suriyoung is curled on the floor beside the mattress, her head pressed against the bed edge in the lower-middle frame, while the quiet negative space of the room remains visible around her before waking panic enters the scene.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "curled beside mattress",
            "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": "Low foreground boundary beside Suriyoung's head.",
            "directionality_class": "directional_3d",
            "element": "bed mattress edge",
            "orientation": "The long side of the mattress faces the lens, forming a soft horizontal wall above her curled body.",
            "state": "rumpled, slept-near, dawn-lit"
          },
          {
            "camera_use": "Quiet room depth emphasizing absence.",
            "directionality_class": "transparent_surface",
            "element": "bedroom window with sheer curtain",
            "orientation": "The pale curtain hangs across the window; weak daylight filters through rather than revealing a clear exterior.",
            "state": "closed, softly glowing, still"
          },
          {
            "camera_use": "Domestic floor texture under her body.",
            "directionality_class": "non_directional",
            "element": "bedroom floor",
            "orientation": "",
            "state": "clean but cold-looking in the dawn light"
          }
        ],
        "lighting_mood": "Thin dawn light washes the room in muted gray-blue, with no supernatural accent yet, only stillness and exhaustion.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At sink height, the camera faces the bathroom mirror squarely and tightly, excluding almost all of Suriyoung so the reflected tile wall becomes the image. The mirror frame and slightly spotted glass edges remain visible, and the red circle sits on the reflected wall plane near center-right, making it read as an impossible image inside the mirror rather than a mark on the real wall.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary reflective field containing the impossible image.",
            "directionality_class": "reflective_surface",
            "element": "bathroom mirror",
            "orientation": "The mirror reflects the tile wall behind Suriyoung, and within that reflection a red circle appears on the wall surface.",
            "state": "slightly fogged, water-spotted, static"
          },
          {
            "camera_use": "Reflected surface where the apparition manifests.",
            "directionality_class": "non_directional",
            "element": "reflected bathroom tile wall",
            "orientation": "",
            "state": "pale, cold, unnaturally marked by a red circle in reflection only"
          },
          {
            "camera_use": "Lower edge spatial cue for the mirror POV.",
            "directionality_class": "directional_3d",
            "element": "sink rim",
            "orientation": "Only the upper rear rim of the sink is visible at the bottom edge, aligned parallel to the mirror.",
            "state": "wet, porcelain, dimly blue"
          }
        ],
        "lighting_mood": "Cold bathroom daylight turns the tiles greenish-white while the red circle appears saturated and ritual-like, disconnected from the real light.",
        "perception_mode": "mirror",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 18,
        "shot_index": 12,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The lens is nearly level with the dining tabletop and pushed into an unnaturally tight close-up of the framed photograph, square to the woman's face inside the image. The photograph occupies most of the center but leaves a thin border of tabletop and frame visible for scale, while the woman's printed face is frozen mid-smile yet grotesquely half-melted downward as if the ink has become flesh.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "photo-pose beside child",
            "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 content surface carrying the hallucinated distortion.",
            "directionality_class": "content_surface",
            "element": "framed family photograph",
            "orientation": "The front image face is square to camera, showing two people posed together, with the middle-aged woman's face grotesquely distorted and half-melted.",
            "state": "upright on the dining table, visually corrupted only in this perception"
          },
          {
            "camera_use": "Thin physical border proving the image is a photograph, not a real face.",
            "directionality_class": "directional_3d",
            "element": "photo frame edge",
            "orientation": "The narrow front lip of the frame faces camera evenly around the image.",
            "state": "clean, ordinary, rigid"
          },
          {
            "camera_use": "Grounding surface beneath the impossible image.",
            "directionality_class": "directional_3d",
            "element": "dining table surface",
            "orientation": "The tabletop runs flat beneath the frame, visible as a narrow strip along the bottom and sides.",
            "state": "morning-lit, still, domestic"
          }
        ],
        "lighting_mood": "Warm morning spill on the table clashes with the sickly, gray-red distortion in the photograph, making the hallucination feel physically wrong.",
        "perception_mode": "hallucination",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 18,
        "shot_index": 14,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The subject appears only as a distorted printed face inside a photograph; a full outlook reference would over-specify a body and wardrobe that are not visible.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "Inside the supermarket aisle, the camera settles from the tracking move into a near-static side profile about four feet to Suriyoung's left, holding her stopped posture in the left midground and the male employee opposite her in the right midground. Her mouth is open mid-question, with shelf rows forming a shallow corridor behind them and the early-morning emptiness visible between product stacks.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "feet planted mid-question",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C10",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "turning from shelf",
            "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": "Aisle corridor framing the exchange.",
            "directionality_class": "directional_3d",
            "element": "supermarket shelving row",
            "orientation": "Shelf faces run parallel to the characters, with product fronts turned toward the aisle and camera.",
            "state": "orderly, sparsely shopped, fluorescent-lit"
          },
          {
            "camera_use": "Depth cue showing the store is unusually quiet.",
            "directionality_class": "directional_3d",
            "element": "empty aisle floor",
            "orientation": "The floor plane recedes between the characters toward the back of the store.",
            "state": "clean, pale, reflective in patches"
          },
          {
            "camera_use": "Muted commercial background texture.",
            "directionality_class": "content_surface",
            "element": "small price tags on shelves",
            "orientation": "The tag faces point outward from the shelves toward the aisle, visible as blurred strips of color.",
            "state": "neat, unreadable, ordinary"
          }
        ],
        "lighting_mood": "Cool supermarket fluorescents create a flat green-white calm that contrasts with Suriyoung's tightening urgency.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Outside along the supermarket wall, the camera stays at chest height near Suriyoung's raised hand and tilts upward along her pointing finger toward the CCTV mounted high on the wall. Her finger is sharp in the lower foreground, taking less than a quarter of the frame, while the CCTV sits in the upper-right background on the same diagonal line of sight.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "arm raised pointing",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "points_to",
              "gesture_target_label": "CCTV camera",
              "label": "Suriyoung pointing hand",
              "screen_zone": "lower_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "CCTV camera mounted high on wall",
              "screen_zone": "upper_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "points_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Target of Suriyoung's gesture and investigative clue.",
            "directionality_class": "directional_3d",
            "element": "exterior CCTV camera",
            "orientation": "The camera housing is angled downward from high on the wall, its lens side facing the store entrance area rather than directly into our lens.",
            "state": "mounted, intact, slightly weathered"
          },
          {
            "camera_use": "Vertical plane that carries the CCTV and exaggerates height.",
            "directionality_class": "directional_3d",
            "element": "supermarket exterior wall",
            "orientation": "The wall face runs upward through frame, with the camera looking along it at a steep angle.",
            "state": "pale, stained near fixtures, morning damp"
          },
          {
            "camera_use": "Foreground directional cue leading the viewer upward.",
            "directionality_class": "directional_3d",
            "element": "Suriyoung's pointing arm line",
            "orientation": "Her forearm rises diagonally from lower left toward the upper-right CCTV.",
            "state": "tense, extended, held still"
          }
        ],
        "lighting_mood": "Overcast morning light flattens the wall into coastal gray, while the upward angle gives the CCTV a watchful, suspicious weight.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only Suriyoung's partial arm, hand, and side presence are essential; a full outlook reference is unnecessary and could force unwanted facial detail.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "From near the office doorway, the camera holds a wide eye-level view several feet behind Hyesu and Suriyoung, angled toward the desk so the seated security employee, monitor glow, and both women are contained in one functional triangle. The monitor remains visible as a motivating rectangle on the desk, but the composition prioritizes the three bodies watching it rather than the footage itself.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "seated at monitor",
            "character": "보안 직원",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "back_to_camera",
            "body_pose": "leaning toward monitor",
            "character": "혜수",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "hands clasped tense",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "security employee at desk",
              "screen_zone": "middle_center",
              "target_id": "C09",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Hyesu watching behind chair",
              "screen_zone": "middle_left",
              "target_id": "C02",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Suriyoung watching behind chair",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Eyeline magnet and low practical light source.",
            "directionality_class": "content_surface",
            "element": "CCTV review monitor",
            "orientation": "The glowing screen face is turned toward the seated security employee and partly visible to camera, but its footage detail is not emphasized.",
            "state": "on, dim, bluish, indistinct"
          },
          {
            "camera_use": "Spatial divider between operator and observers.",
            "directionality_class": "directional_3d",
            "element": "administration desk",
            "orientation": "The front and side edges of the desk angle from lower center toward the monitor, guiding the later track-in path.",
            "state": "office-worn, crowded with keyboard and small equipment"
          },
          {
            "camera_use": "Institutional enclosure behind the group.",
            "directionality_class": "content_surface",
            "element": "office wall with files and posted papers",
            "orientation": "Flat paper-covered surfaces face the doorway and camera as a dull bureaucratic backdrop.",
            "state": "muted, cluttered, fluorescent-lit"
          }
        ],
        "lighting_mood": "The room is lit by tired office fluorescents and a faint blue monitor glow, giving faces a drained gray-green cast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera is tight and eye-level just in front of Suriyoung, slightly off to the side of the implied monitor, pushing in until her bitten lip and clenched hands near the lower edge become the emotional center. The monitor is not shown, only suggested by her hard off-frame eyeline and the cold screen spill across one side of her face.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "fists clenched near chin",
            "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": "Suriyoung 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": "Implied off-frame source shaping her gaze and facial light.",
            "directionality_class": "content_surface",
            "element": "CCTV monitor glow",
            "orientation": "The screen face is off-frame to camera-left, implied only by reflected blue light on Suriyoung's face.",
            "state": "on, replaying indistinct footage"
          },
          {
            "camera_use": "Soft background texture to keep the office present without distraction.",
            "directionality_class": "content_surface",
            "element": "blurred office paperwork",
            "orientation": "Paper fronts face the room behind her but are fully defocused.",
            "state": "pale, unreadable, bureaucratic"
          },
          {
            "camera_use": "Lower-edge emotional detail supporting the close-up.",
            "directionality_class": "non_directional",
            "element": "shadowed desk-edge darkness",
            "orientation": "",
            "state": "out of focus, dark, compressing the lower frame"
          }
        ],
        "lighting_mood": "Blue monitor spill cuts across the anxious close-up while the surrounding fluorescent wash stays muted and sickly, tightening the dread around her face.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s wide, static eye-level office position, the camera holds several meters back down the entrance-side aisle: 혜수 and 수리영 are readable in the midground, while 김형사 occupies the right foreground with his arm and paperwork extended toward 혜수 without letting the forms overpower the frame. The composition keeps the police desks, monitors, and aisle geometry visible at once, using the document exchange as the central axis of tension rather than cutting in yet.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "slight bow receiving forms",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C04",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "arm extended with forms",
            "character": "김형사",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "hovering behind 혜수",
            "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": "Establishes the institutional layout and creates parallel desk lines leading toward the paperwork exchange.",
            "directionality_class": "directional_3d",
            "element": "police office desk rows",
            "orientation": "Desk fronts and side edges angle toward the camera, forming an aisle that points to the three characters.",
            "state": "cluttered with files, keyboards, and muted office equipment"
          },
          {
            "camera_use": "Foreground action cue, held small enough to remain part of the wider office geography.",
            "directionality_class": "content_surface",
            "element": "paper documents",
            "orientation": "Printed signature faces are angled toward 혜수 and partly toward camera, suggesting official forms without needing full legibility.",
            "state": "clean, freshly handled, extended between characters"
          },
          {
            "camera_use": "Soft background office texture and cold bureaucratic light sources.",
            "directionality_class": "content_surface",
            "element": "computer monitors",
            "orientation": "Screen faces are mostly angled across the desk rows, showing dull desktop glow rather than readable text.",
            "state": "on, dim, scattered through the room"
          }
        ],
        "lighting_mood": "Sickly green-white fluorescent light flattens the office while damp gray daylight from unseen windows leaves the corners low and stale.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Maintaining the flow’s seated-height position across the desk, the camera finishes its dolly-in as a tight facial close-up of 수리영, with only a thin blurred strip of scattered case photographs at the bottom edge to imply what has shocked her. Her widened eyes and the hand clamped over her mouth sit slightly off-center, leaving a narrow band of dead office air behind her.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "hand clamped over mouth",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Barely visible lower-frame cause of her reaction, kept out of focus to avoid graphic overstatement.",
            "directionality_class": "content_surface",
            "element": "scattered case photographs",
            "orientation": "Photo faces lie upward on the desk but are cropped and blurred, showing only pale flesh-toned fragments and dark forensic shapes.",
            "state": "messy, partly overlapping, disturbing"
          },
          {
            "camera_use": "Provides desk-level texture and anchors the seated-height viewpoint.",
            "directionality_class": "directional_3d",
            "element": "혜수's desk edge",
            "orientation": "The near edge runs horizontally across the lower foreground, separating the viewer from 수리영.",
            "state": "cluttered, worn, fluorescent-lit"
          },
          {
            "camera_use": "Background institutional pressure behind her frozen expression.",
            "directionality_class": "directional_3d",
            "element": "empty office partitions",
            "orientation": "Partition edges recede diagonally behind her shoulder, suggesting the vacated office space.",
            "state": "quiet, unoccupied, dim"
          }
        ],
        "lighting_mood": "Cold fluorescent overheads make her skin look drained, with the desk reflecting a faint gray-green sheen under her face.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera inherits the tight side-profile tracking position near the desk exit path, now compressed into a narrow side-face close-up of 수리영’s right side as the folded memo slides halfway into her outer pocket at the lower edge of frame. Her wary glance cuts past the lens toward the empty office aisle, while the desk corner and chair backs pass as soft lateral streaks behind her.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "note entering coat pocket",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "empty office aisle",
              "label": "수리영",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "empty office aisle",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Small concealment detail sharing the frame with her tense profile.",
            "directionality_class": "content_surface",
            "element": "folded memo paper",
            "orientation": "The written side is hidden inside the fold; only the blank creased exterior faces camera as it enters the pocket.",
            "state": "folded, partly concealed"
          },
          {
            "camera_use": "Immediate hiding place and tactile evidence of secrecy.",
            "directionality_class": "directional_3d",
            "element": "outer coat pocket",
            "orientation": "Pocket opening faces slightly toward camera at her right hip, catching the memo halfway in.",
            "state": "open, compressed by her hand"
          },
          {
            "camera_use": "Defines the direction of her anxious check before leaving.",
            "directionality_class": "directional_3d",
            "element": "empty desk exit aisle",
            "orientation": "The aisle recedes away from her profile toward the left background.",
            "state": "vacant, fluorescent-lit, tense"
          }
        ],
        "lighting_mood": "The office fluorescents remain cold and greenish, but the side angle lets her cheek fall into a narrow strip of shadow as if she is already slipping out of sight.",
        "perception_mode": "direct",
        "perspective": "voyeur",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 10,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s low side-tracking position about pedal height, the camera runs parallel to 수리영’s bicycle at roughly 1.5 meters, framing her bent knee, downward pedal stroke, tight grip, and forward-folded torso in one compressed moving plane. The police station frontage and parked curb smear behind her while her hair and clothing stream backward, making the acceleration feel urgent rather than scenic.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "deep pedal downstroke",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "open road ahead",
              "label": "수리영 on bicycle",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "open road ahead",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Motion anchor and mechanical rhythm of the shot.",
            "directionality_class": "directional_3d",
            "element": "bicycle pedal and crank",
            "orientation": "The crank arm faces camera in side profile as the pedal drives downward.",
            "state": "moving fast, slightly wet, dark metal"
          },
          {
            "camera_use": "Provides speed reference as a streaking side background.",
            "directionality_class": "directional_3d",
            "element": "police station roadside curb",
            "orientation": "Curb line runs horizontally behind the bicycle, sliding opposite the camera track.",
            "state": "dry-to-damp daytime pavement"
          },
          {
            "camera_use": "Brief institutional backdrop she is fleeing from.",
            "directionality_class": "directional_3d",
            "element": "police station exterior",
            "orientation": "Facade is seen obliquely in the background, not frontally, as she pulls away.",
            "state": "muted, gray, daylight"
          }
        ],
        "lighting_mood": "Flat daytime gray light keeps the color restrained, with small metallic flashes from the bicycle cutting through the muted police-station exterior.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The lens stays at the flow’s low desk-height position directly in front of the printer output slot, about eight inches away, holding steady as the map sheet emerges halfway into the tray. The printer body becomes blocky dark geometry around the slot, while the printed map occupies the central portion of the frame with enough tray and desk visible to keep the scale real.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary information becoming physical evidence.",
            "directionality_class": "content_surface",
            "element": "printed map sheet",
            "orientation": "The map face is visible upward and toward camera, with coastlike linework and route markings partly readable as it exits the slot.",
            "state": "half-emerged, freshly printed"
          },
          {
            "camera_use": "Frames the sheet as a mechanical reveal.",
            "directionality_class": "directional_3d",
            "element": "printer output slot",
            "orientation": "The front face of the printer and the narrow horizontal slot face camera directly.",
            "state": "active, vibrating slightly"
          },
          {
            "camera_use": "Grounds the extreme close-up in the PC room workspace.",
            "directionality_class": "directional_3d",
            "element": "PC room desk surface",
            "orientation": "The desk plane runs back under the printer, visible as a thin ledge below the tray.",
            "state": "worn, plastic-laminate, dim"
          }
        ],
        "lighting_mood": "Cold monitor-blue and printer-shadow lighting make the white paper feel stark against the grubby PC room desk.",
        "perception_mode": "direct",
        "perspective": "object_pov",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera follows the flow’s tight front-quarter tracking position just ahead of the handlebars, moving backward at bicycle speed and holding 수리영’s upper body close in frame. Her drenched hair lashes backward across one side of the image, both hands clamp the grips in the lower foreground, and her stare is fixed past the lens into the rain-blurred road.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "hunched over handlebars",
            "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 pressure and physical proof of speed.",
            "directionality_class": "directional_3d",
            "element": "bicycle handlebars",
            "orientation": "The bar curves angle toward camera from below, with both grips visible near the lower corners.",
            "state": "wet, shaking, tightly held"
          },
          {
            "camera_use": "Creates streaking depth and coastal danger behind her.",
            "directionality_class": "directional_3d",
            "element": "coastal road edge",
            "orientation": "Road line recedes behind her shoulder at a diagonal, disappearing into rain haze.",
            "state": "slick, dark, storm-lashed"
          },
          {
            "camera_use": "Atmospheric veil between camera and background.",
            "directionality_class": "non_directional",
            "element": "heavy rain curtain",
            "orientation": "",
            "state": "dense, wind-driven, back-swept by motion"
          },
          {
            "camera_use": "Threatening horizon texture beyond the road.",
            "directionality_class": "non_directional",
            "element": "storm-dark sea and clouds",
            "orientation": "",
            "state": "blurred, charcoal gray, unstable"
          }
        ],
        "lighting_mood": "Storm light is blue-gray and low, with hard silver raindrops slashing across her face and sickly coastal green shadows under the clouds.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s wide standing eye-level position near the rooftop room entrance, the camera holds on the trashed living room: overturned dining chairs sit in the foreground, a path of disturbance leads inward, and the open window across the room pulls the eye toward the outside dusk. No person is present, so the frame feels like a crime scene waiting to be interpreted.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Foreground evidence of intrusion and physical chaos.",
            "directionality_class": "directional_3d",
            "element": "overturned dining chairs",
            "orientation": "Chair legs jut toward camera at uneven angles, with seats turned sideways and upside down.",
            "state": "knocked over, scattered"
          },
          {
            "camera_use": "Main breach point and visual destination across the room.",
            "directionality_class": "transparent_surface",
            "element": "open living-room window",
            "orientation": "The window frame is open toward the room, with dusky exterior light and faint rooftop air visible beyond.",
            "state": "wide open, curtains disturbed"
          },
          {
            "camera_use": "Connects the entrance to the bedroom path.",
            "directionality_class": "non_directional",
            "element": "muddy footprints and ransacked floor clutter",
            "orientation": "",
            "state": "dirty, irregular, dragged through household debris"
          },
          {
            "camera_use": "Sets the cramped rooftop-room realism.",
            "directionality_class": "directional_3d",
            "element": "small living-room furniture",
            "orientation": "Cabinet and table edges face camera at skewed angles, showing drawers and surfaces pulled out of order.",
            "state": "searched, disordered, lived-in"
          }
        ],
        "lighting_mood": "Warm sunset gold leaks through the open window but is poisoned by brown shadows and muted red undertones across the ruined room.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera continues the flow into a perpendicular, face-height close observation of the bedroom wall, tightening until the red circle becomes a ritual boundary around the pinned old photograph. The photograph sits central but not oversized, with the dark blood at the pinning point drawing the eye while the wall texture falls almost flat behind it.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary visual threat and narrative evidence.",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "The image face is visible to camera, showing an aged rural restaurant scene with two young girls and a circular roof sign faintly legible within the worn print.",
            "state": "old, creased, pinned to wall"
          },
          {
            "camera_use": "Occult marking that frames the photograph.",
            "directionality_class": "content_surface",
            "element": "red circle on bedroom wall",
            "orientation": "The painted red ring faces camera straight-on, enclosing the photograph at its center.",
            "state": "fresh-looking, uneven, ritualistic"
          },
          {
            "camera_use": "Tactile wound-like detail at the center point.",
            "directionality_class": "non_directional",
            "element": "dark blood at pinning point",
            "orientation": "",
            "state": "dark red, sticky-looking, partially dried"
          },
          {
            "camera_use": "Makes the surface feel invaded rather than decorative.",
            "directionality_class": "non_directional",
            "element": "bedroom wall texture",
            "orientation": "",
            "state": "dull, slightly stained, nearly flattened by close focus"
          }
        ],
        "lighting_mood": "Low sunset warmth grazes the wall, turning the red circle dense and organic while the blood reads almost black.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera has pulled back to the flow’s opposite-wall bedroom position at low-to-mid height, holding a full-body composition of 수리영 collapsed on the mattress edge with empty floor around her. The bed occupies one side of the frame, the disturbed room presses in at the edges, and her unfocused downward stare is isolated by negative space rather than a close-up.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "slumped on mattress 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": "Supports her collapsed posture and marks the emotional drop after the wall discovery.",
            "directionality_class": "directional_3d",
            "element": "bed and mattress edge",
            "orientation": "The mattress edge runs diagonally across the lower midground, with 수리영 perched near its corner.",
            "state": "rumpled, low, dimly lit"
          },
          {
            "camera_use": "Negative space amplifying shock and disorientation.",
            "directionality_class": "non_directional",
            "element": "bare bedroom floor space",
            "orientation": "",
            "state": "empty around her, dusty, scattered with small debris"
          },
          {
            "camera_use": "Residual threat behind the reaction, no longer the main focus.",
            "directionality_class": "content_surface",
            "element": "bedroom wall with red circle area",
            "orientation": "The marked wall plane is off to the side or partially behind her, its content no longer centered but still present in the room’s direction.",
            "state": "marked, unsettling, partially out of focus"
          },
          {
            "camera_use": "Shows the room has been searched and violated.",
            "directionality_class": "directional_3d",
            "element": "displaced personal belongings",
            "orientation": "Small objects and furniture edges face different directions around the bed, creating visual disorder.",
            "state": "ransacked, unevenly scattered"
          }
        ],
        "lighting_mood": "Fading sunset amber is thin and exhausted, leaving her body in soft shadow while the room’s reds and browns feel bruised.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera starts the flow very low on the wet rocks at phone-screen height, locked close to the lit mobile phone without including 수리영’s body. The glowing caller display sits in the lower-center of the frame, surrounded by slick black rock texture and beads of water that catch the dusk light, making the repeated call feel intrusive in the empty fog.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary information source, seen as a device display rather than naked-eye landscape.",
            "directionality_class": "content_surface",
            "element": "lit mobile phone screen",
            "orientation": "The screen face is angled upward toward camera, showing a caller name and missed-call interface as readable luminous content.",
            "state": "on, wet-speckled, vibrating or recently ringing"
          },
          {
            "camera_use": "Tactile base for the phone and coastal isolation.",
            "directionality_class": "non_directional",
            "element": "wet black rocks",
            "orientation": "",
            "state": "slick, dark, rain-soaked"
          },
          {
            "camera_use": "Soft moving background tone beyond the rocks.",
            "directionality_class": "non_directional",
            "element": "foggy harbor air",
            "orientation": "",
            "state": "dense, pale gray, obscuring distance"
          },
          {
            "camera_use": "Adds cold reflection and suggests nearby water without revealing the boat yet.",
            "directionality_class": "reflective_surface",
            "element": "thin seawater puddles between rocks",
            "orientation": "Small puddles reflect the phone glow and dim dusk sky in broken highlights.",
            "state": "shallow, rippled, briny"
          }
        ],
        "lighting_mood": "The phone’s cold white-blue glow cuts against fog-muted dusk, with wet rock reflections giving the shot a clammy coastal texture.",
        "perception_mode": "through_device",
        "perspective": "object_pov",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the damp harbor ground in front of the fishing boat, the camera holds at Suriyoung's chest height and tilts slightly upward, keeping her face centered in a tight frontal composition while her lifted eyeline makes Inwoo's higher position on the boat felt off-frame. Her parted mouth and rain-damp collar occupy the middle of the frame, with the wet hull and rope hardware compressed behind her rather than competing for attention.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "chin lifted tense",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Compressed background plane behind Suriyoung, implying the boat she is asking to board.",
            "directionality_class": "directional_3d",
            "element": "wet fishing boat hull",
            "orientation": "The harbor-facing side of the hull sits behind her shoulders, slick with rain and angled slightly across frame.",
            "state": "moored, wet, darkened by rain"
          },
          {
            "camera_use": "Low tactile foreground texture under her body line, grounding the confrontation on the harbor floor.",
            "directionality_class": "non_directional",
            "element": "damp harbor concrete",
            "orientation": "",
            "state": "wet, stained, reflecting faint sunset gray"
          },
          {
            "camera_use": "Soft atmospheric backing that hides the open water beyond the boat.",
            "directionality_class": "transparent_surface",
            "element": "harbor fog",
            "orientation": "A milky veil behind the boat partially obscures the sea and distant port shapes.",
            "state": "dense, drifting"
          }
        ],
        "lighting_mood": "Low-key dusk light mixes muted coastal gray with a thin warm edge from the sunset, leaving her eyes shadowed but wet highlights alive on skin and fabric.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "A few steps behind Suriyoung at standing height, the camera settles after the retreat into a clean rear composition: her back is centered in the lower middle, phone raised between ear and mouth, and the fog-heavy sea opens across the upper two-thirds. The boat is reduced to a soft side presence near the edge so the frame reads as her private message cast into the water.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "phone held to 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": "Primary emotional backdrop, replacing the boat as the focus of the frame.",
            "directionality_class": "transparent_surface",
            "element": "fog-covered sea",
            "orientation": "The fog hangs between camera and horizon, swallowing any distant boats or shoreline beyond the water.",
            "state": "dense, pale gray, slowly moving"
          },
          {
            "camera_use": "Lateral remnant of the earlier confrontation, kept weak and off to the side.",
            "directionality_class": "directional_3d",
            "element": "moored fishing boat",
            "orientation": "Only a partial side and rail angle are visible near the frame edge, no longer central.",
            "state": "wet, quiet, barely present"
          },
          {
            "camera_use": "Prop silhouette near her face that identifies the voice message action.",
            "directionality_class": "directional_3d",
            "element": "mobile phone",
            "orientation": "The phone's edge and back are visible against her cheek; the screen face is turned away from camera.",
            "state": "held close, active for recording"
          }
        ],
        "lighting_mood": "The palette is hushed blue-gray fog with a faint bruised gold rim on her shoulders, the damp air softening contrast into a lonely silhouette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At intimate shoulder height just off Hyesu's eyeline, the dolly-in ends in a tight close-up that isolates her furrowed brow and the phone clenched beside her cheek. Kim Detective remains outside the frame, present only as the hard direction of her glare across the shallow, dim rooftop room air.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "phone clenched near cheek",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C04",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Small prop inside the close-up, reinforcing that the recorded message has triggered the confrontation.",
            "directionality_class": "directional_3d",
            "element": "mobile phone",
            "orientation": "Its side and dark back press into her tense hand; the screen face is mostly hidden from camera.",
            "state": "gripped tightly, recently used"
          },
          {
            "camera_use": "Soft, claustrophobic backing behind her face.",
            "directionality_class": "non_directional",
            "element": "aged rooftop-room wall",
            "orientation": "",
            "state": "dim, worn, slightly damp-looking"
          },
          {
            "camera_use": "Room atmosphere that catches the failing daylight and makes the space feel stale.",
            "directionality_class": "non_directional",
            "element": "dusty interior air",
            "orientation": "",
            "state": "still, low visibility"
          }
        ],
        "lighting_mood": "A sickly green-gray dusk wash from the room mixes with weak residual phone sheen, carving her brow and knuckles in tense low-key contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera finishes its low track less than a meter from the old iron entrance door, almost on the floor, angled upward so the warped frame looms while the narrow black gap trembles near the center-right. No person enters the shot; the close framing turns the misalignment and rattling seam into the room's threatening face.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary subject, filmed from below to make its closed state feel unstable rather than secure.",
            "directionality_class": "directional_3d",
            "element": "old iron entrance door",
            "orientation": "The interior face of the door tilts slightly out of alignment with the frame, its lower edge closer to camera.",
            "state": "shut, warped, rattling in wind"
          },
          {
            "camera_use": "Dark focal line where outside air seems to intrude.",
            "directionality_class": "transparent_surface",
            "element": "narrow door gap",
            "orientation": "A thin vertical slit shows only blackness and a pulse of moving air beyond the door.",
            "state": "slightly open, vibrating"
          },
          {
            "camera_use": "Foreground texture emphasizing the floor-level perspective.",
            "directionality_class": "non_directional",
            "element": "scuffed threshold floor",
            "orientation": "",
            "state": "dirty, worn, faintly damp"
          },
          {
            "camera_use": "Secondary structure that reveals the door's crooked fit.",
            "directionality_class": "directional_3d",
            "element": "warped metal doorframe",
            "orientation": "The inner edge of the frame faces camera, visibly separating from the door line.",
            "state": "aged, bent, paint chipped"
          }
        ],
        "lighting_mood": "Thin dusk light leaks through the gap in cold gray slivers while the interior falls into greenish shadow, making the rattling metal feel hollow and abandoned.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a very wide offshore position just above the waterline, the camera looks across the sunset-lit open sea at the small fishing boat in profile, holding it as a lonely dark mark against a vast gold-gray surface. The boat stays small in the center-left of the frame, with empty water occupying most of the image before the hard cut onto deck.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary subject, kept small to stress isolation before the confrontation begins.",
            "directionality_class": "directional_3d",
            "element": "small fishing boat",
            "orientation": "Its side profile faces camera, bow and stern readable as a thin silhouette on the horizon line.",
            "state": "afloat, moving slowly or drifting, weathered"
          },
          {
            "camera_use": "Vast negative space surrounding the boat.",
            "directionality_class": "non_directional",
            "element": "open sea",
            "orientation": "",
            "state": "calm but heavy, reflecting sunset gold"
          },
          {
            "camera_use": "Color field and horizon atmosphere that flattens distance.",
            "directionality_class": "transparent_surface",
            "element": "low sea haze",
            "orientation": "A translucent band between boat and horizon softens the edge of the vessel and hides any land.",
            "state": "thin, glowing, persistent"
          },
          {
            "camera_use": "Backlight source shaping the whole establishing image.",
            "directionality_class": "non_directional",
            "element": "sunset sky",
            "orientation": "",
            "state": "golden, muted by moisture"
          }
        ],
        "lighting_mood": "Warm sunset gold skims the water but is dulled by coastal haze, leaving the boat nearly black against a tactile metallic sea.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The dolly-in reaches a tight frontal position just below Inwoo's eye level, less than two feet from his face, compressing the unstable deck behind him into a shallow blur. The photograph sits just outside the lower edge of frame in his eyeline, so his widened eyes and frozen mouth carry the shock rather than the object itself.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "frozen over photo",
            "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": "photograph just below frame",
              "label": "Inwoo",
              "screen_zone": "middle_center",
              "target_id": "C03",
              "target_kind": "character"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Blurred edge cue that motivates his eyeline without stealing focus.",
            "directionality_class": "content_surface",
            "element": "old photograph edge",
            "orientation": "Only the front printed face of the photograph grazes the lower edge, too soft to read except as an aged image surface.",
            "state": "held near him, worn, slightly curled"
          },
          {
            "camera_use": "Compressed moving background that makes the close-up feel trapped at sea.",
            "directionality_class": "directional_3d",
            "element": "deck rail and cabin edge",
            "orientation": "Side edges run diagonally behind his head, suggesting the boat's narrow deck depth.",
            "state": "wet, unstable, out of focus"
          },
          {
            "camera_use": "Atmospheric backdrop beyond the deck.",
            "directionality_class": "transparent_surface",
            "element": "sea haze",
            "orientation": "Foggy air behind the deck blurs the horizon into a gray-gold smear.",
            "state": "thickening, dusk-lit"
          }
        ],
        "lighting_mood": "Low warm sunset glances across one side of his face while gray-green sea shadow hollows the other, making his alarm look suddenly bloodless.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the cramped wheelhouse, the camera holds frontally at chest height about four feet away, centered on the locked hands with the steering wheel immediately behind them. Suriyoung leans in from frame left gripping Inwoo's wrist with both hands, while Inwoo strains from frame right toward the helm, turning the wheel and wrist grip into one blocked action.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "gripping his wrist",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "arm reaching helm",
            "character": "인우",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "reaches_for",
              "gesture_target_label": "Inwoo's wrist",
              "label": "Suriyoung",
              "screen_zone": "middle_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "reaches_for",
              "gesture_target_label": "steering wheel",
              "label": "Inwoo",
              "screen_zone": "middle_right",
              "target_id": "C03",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "steering wheel",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Central anchor behind their hands, visually explaining what Suriyoung is preventing.",
            "directionality_class": "directional_3d",
            "element": "steering wheel",
            "orientation": "The wheel's front face points toward camera behind their locked wrists, slightly higher than their hands.",
            "state": "within reach, blocked"
          },
          {
            "camera_use": "Cramped lower frame boundary that confines their bodies.",
            "directionality_class": "directional_3d",
            "element": "wheelhouse console",
            "orientation": "The front panel faces camera at a slight upward angle, wedging the characters into a narrow space.",
            "state": "old, scratched, damp from sea air"
          },
          {
            "camera_use": "Backlight and exterior context through the tight cabin.",
            "directionality_class": "transparent_surface",
            "element": "dirty wheelhouse window",
            "orientation": "Streaked glass reveals only fogged sunset water beyond the figures.",
            "state": "salt-stained, dim, translucent"
          },
          {
            "camera_use": "Textural enclosure emphasizing the claustrophobic struggle.",
            "directionality_class": "directional_3d",
            "element": "narrow wheelhouse walls",
            "orientation": "Side walls angle inward along both frame edges, pressing the figures toward center.",
            "state": "worn, cramped, shadowed"
          }
        ],
        "lighting_mood": "Muted gold from the window fights with cold green interior shadow, picking out wet hands and tense sleeves in a gritty low-key cabin atmosphere.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "A hand-level macro insert looks down at the old photograph from less than a foot away, excluding the wheelhouse except for the aged paper surface and Suriyoung's fingertip. Her finger lands on the little girl's printed face near the center of frame, the nail and skin texture sharp against the faded emulsion.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "finger pointing photo",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "points_to",
              "gesture_target_label": "girl's face on the old photograph",
              "label": "Suriyoung's fingertip",
              "screen_zone": "middle_center",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "points_to_anchor"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Primary surface carrying the narrative clue.",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "The printed front face is visible to camera, showing the faded girl's portrait area under Suriyoung's fingertip and worn photo grain around it.",
            "state": "aged, creased, slightly curled"
          },
          {
            "camera_use": "Specific printed detail identified by the pointing gesture.",
            "directionality_class": "content_surface",
            "element": "girl's face in photograph",
            "orientation": "The camera sees the photograph's image side, with the girl's face partially covered by the fingertip.",
            "state": "faded, scratched, fixed in the old print"
          },
          {
            "camera_use": "Tactile macro texture around the clue.",
            "directionality_class": "non_directional",
            "element": "photo paper scratches",
            "orientation": "",
            "state": "dry, abraded, yellowed"
          }
        ],
        "lighting_mood": "A small strip of warm wheelhouse sunset grazes the photo while the surrounding paper falls into green-gray shadow, making the fingertip feel accusatory and intimate.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot shows only Suriyoung's fingertip in a macro insert, so a full outlook reference would not align with the visible body area.",
            "subject_id": "C01"
          }
        ]
      },
      {
        "camera_direction": "The handheld lens is tucked just behind and above Suriyoung's bowed head at Inwoo's chest line, angled up so her crown stays soft in the lower foreground while Inwoo's eyes sharpen in the upper center. The frame is extremely tight, letting his cold downward stare dominate over her collapsed weight against him.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "holding collapsed weight",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C01",
            "subject_state": "alive"
          },
          {
            "angle": "back_to_camera",
            "body_pose": "collapsed against chest",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Suriyoung bowed head",
              "screen_zone": "lower_center",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "Suriyoung below him",
              "label": "Inwoo face",
              "screen_zone": "upper_center",
              "target_id": "C03",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Unsettling background clue behind the reaction, kept soft but readable enough to poison the frame.",
            "directionality_class": "content_surface",
            "element": "circle-marked wheelhouse wall",
            "orientation": "The interior wall face behind Inwoo shows partial dark circular marks and a hint of a red circle off to one side.",
            "state": "worn, stained, ominously marked"
          },
          {
            "camera_use": "Claustrophobic side enclosure around the two bodies.",
            "directionality_class": "directional_3d",
            "element": "wheelhouse corner",
            "orientation": "The angled cabin corner recedes behind Inwoo's shoulder, narrowing the visible space.",
            "state": "shadowed, salt-worn"
          },
          {
            "camera_use": "Soft lower foreground mass that blocks the frame and emphasizes her collapse.",
            "directionality_class": "non_directional",
            "element": "Suriyoung's blurred hair texture",
            "orientation": "",
            "state": "out of focus, motion-stilled"
          }
        ],
        "lighting_mood": "A cold green interior shadow flattens the cabin while a thin dying-gold rim catches Inwoo's eyes, draining warmth from his expression and leaving the red wall mark faintly sick.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Very low and close in front of the small fishing boat's bow, the camera tracks backward just above the waterline at nearly the boat's speed as the prow cuts into the dense fog. The bow occupies the lower center without overwhelming the frame, splitting dark water toward both lower corners while the upper hull disappears halfway into the gray-white wall ahead.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary moving subject, aligned with the camera's backward track to feel like a threshold crossing.",
            "directionality_class": "directional_3d",
            "element": "small fishing boat bow",
            "orientation": "The pointed front of the bow faces directly toward camera, its upper half already swallowed by fog.",
            "state": "moving forward, wet, partly obscured"
          },
          {
            "camera_use": "Foreground motion texture showing the boat forcing its way in.",
            "directionality_class": "non_directional",
            "element": "split water wake",
            "orientation": "",
            "state": "dark, churning, reflecting dim gold"
          },
          {
            "camera_use": "Boundary-like atmospheric wall that consumes the vessel.",
            "directionality_class": "transparent_surface",
            "element": "dense fog bank",
            "orientation": "A thick semi-opaque curtain lies directly behind and around the bow, allowing only the lower hull and disturbed water to remain visible.",
            "state": "very dense, swallowing the boat"
          },
          {
            "camera_use": "Faint color memory from the setting sun on the water's surface.",
            "directionality_class": "non_directional",
            "element": "sunset reflection on sea",
            "orientation": "",
            "state": "muted gold, broken by wake"
          }
        ],
        "lighting_mood": "The last warm sunset reflection dies into cold gray fog, creating a tactile threshold where the boat seems to pass from ordinary sea into something withheld.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 30,
        "shot_index": 3,
        "subject_reference_policy": []
      }
    ],
    "total": 60,
    "failed_batches": 0
  },
  "step_id": "shot_staging",
  "run_id": "a5c27818-4f32-4d09-856b-3626b575a483",
  "resolved_model": "gpt",
  "updated_at": "2026-06-02T04:50:03.265901+00:00",
  "schema_version": 6,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}