{
  "status": "completed",
  "completed_count": 60,
  "applicable_count": 60,
  "failed_count": 0,
  "data": {
    "shots": [
      {
        "camera_direction": "Chest-height handheld camera backs away two meters in front of 동양인 남성 on the narrow wet forest path, held slightly wider than a panic close-up so his lifted foot, torn foliage, and backward glance remain in one unstable composition. He occupies the middle-right of frame with blurred damp leaves slashing across the foreground, while the path recedes behind him into fog, making the viewer feel dragged backward by his escape rather than watching from safety.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "one foot lifted",
            "character": "동양인 남성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "camera position",
              "label": "fleeing man",
              "screen_zone": "middle_right",
              "target_id": "C01",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Foreground obstruction and motion texture around the running body.",
            "directionality_class": "non_directional",
            "element": "wet undergrowth",
            "orientation": "",
            "state": "soaked, bent aside by movement"
          },
          {
            "camera_use": "Depth line behind the fleeing man, narrowing into fog.",
            "directionality_class": "directional_3d",
            "element": "narrow forest path",
            "orientation": "The path runs away from camera behind the man, its dark center channel visible between bushes.",
            "state": "muddy and uneven"
          },
          {
            "camera_use": "Atmospheric veil that softens the background threat space.",
            "directionality_class": "non_directional",
            "element": "low dusk fog",
            "orientation": "",
            "state": "thick, bluish-gray, hanging close to the ground"
          }
        ],
        "lighting_mood": "Muted blue-gray dusk light is flattened by fog, with wet leaves catching faint cold highlights and no clean source of safety.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From shoulder height just behind and slightly beside 동양인 남성, the camera finishes its pan past his twisted shoulder and holds on the darker forest corridor before 검은 형체 resolves as an airborne silhouette. The man is a partial foreground over-shoulder shape at lower left, while the suspended black figure appears upper center in the depth of the frame, making the empty darkness become the threat rather than simply revealing it.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "shoulders twisted back",
            "character": "동양인 남성",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C02",
            "subject_state": "alive"
          },
          {
            "angle": "looking_away",
            "body_pose": "airborne lunge",
            "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": "airborne silhouette",
              "label": "man's shoulder and head",
              "screen_zone": "lower_left",
              "target_id": "C01",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "moves_toward",
              "gesture_target_label": "man in foreground",
              "label": "black airborne silhouette",
              "screen_zone": "upper_center",
              "target_id": "C02",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "Negative space held before the silhouette becomes readable.",
            "directionality_class": "non_directional",
            "element": "dark forest opening",
            "orientation": "",
            "state": "nearly black, fog-softened"
          },
          {
            "camera_use": "Thin foreground frame around the man's shoulder line.",
            "directionality_class": "directional_3d",
            "element": "wet tree trunks",
            "orientation": "The trunks show narrow side faces to camera, forming vertical bars between foreground and background.",
            "state": "slick, dark, partially obscured by mist"
          },
          {
            "camera_use": "Atmospheric separation around the airborne shape.",
            "directionality_class": "non_directional",
            "element": "hanging forest mist",
            "orientation": "",
            "state": "dense enough to halo the silhouette"
          }
        ],
        "lighting_mood": "The palette drops into cold charcoal greens and blue-black fog, with the figure almost unlit except for a faint rim of dying sky.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 1,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height beside the utility pole, the dolly-in ends in a tight side composition about one meter from the pair, angled across 동양인 여성's shoulder toward 동양인 남성's open mouth and the pulled skin at her neck. The frame isolates the impact zone without widening into spectacle: his jaw and her neck occupy the central band, while the pole and alley wall press in as grim vertical edges.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "jaw clamped forward",
            "character": "동양인 남성",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "head pulled sideways",
            "character": "동양인 여성",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Hard side anchor beside the bodies, compressing the attack into the alley edge.",
            "directionality_class": "directional_3d",
            "element": "utility pole",
            "orientation": "The pole's rounded side faces camera, cutting a dark vertical strip along the frame edge.",
            "state": "wet, stained, dimly lit"
          },
          {
            "camera_use": "Background plane catching sodium spill behind the figures.",
            "directionality_class": "directional_3d",
            "element": "alley wall",
            "orientation": "The wall face runs diagonally away from camera behind the pair.",
            "state": "dirty, damp, patched with shadow"
          },
          {
            "camera_use": "Low glints beneath the figures, visible at the bottom edge as environmental texture.",
            "directionality_class": "reflective_surface",
            "element": "wet asphalt edge",
            "orientation": "The surface reflects broken amber streetlight and blurred body movement in smeared highlights.",
            "state": "rain-dark and slick"
          }
        ],
        "lighting_mood": "A sickly sodium-vapor glow grazes skin and wet concrete, restrained by deep alley shadows and faint red-black contrast.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera settles fully at pavement height about one meter from 동양인 여성, angled slightly upward along her collapsed form so the wet asphalt leads the eye from foreground puddle texture to her limp body. She lies across the middle of frame in a low, widened aftermath composition, with the alley receding above her rather than giving a clean overhead view.",
        "character_angles": [
          {
            "angle": "profile_left",
            "body_pose": "sprawled on wet asphalt",
            "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": "Primary ground plane and reflective emotional surface beneath the body.",
            "directionality_class": "reflective_surface",
            "element": "wet asphalt",
            "orientation": "The pavement reflects dim streetlamp streaks and the woman's softened outline in broken puddle highlights.",
            "state": "slick, dark, uneven"
          },
          {
            "camera_use": "Background depth marker at the collapse site.",
            "directionality_class": "directional_3d",
            "element": "utility pole base",
            "orientation": "The base faces camera at a shallow angle near the upper side of frame.",
            "state": "wet and grimy"
          },
          {
            "camera_use": "Dim source shaping the alley without revealing safety beyond it.",
            "directionality_class": "directional_3d",
            "element": "distant streetlight housing",
            "orientation": "Its underside and side edge are barely visible down the alley.",
            "state": "on, weak, sodium amber"
          }
        ],
        "lighting_mood": "Low amber street glow skims the wet ground while the body falls into desaturated blue-black shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 2,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "A static ground-level camera sits less than a meter from the recovery area, angled slightly downward across the floor so two separate raised forms beneath the cloth are the only clear subject. The frame is held cold and low, excluding investigators and leaving just enough surrounding ground to confirm scale without turning the covered shapes into an abstract object.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Primary visual subject, revealing two distinct body-shaped elevations.",
            "directionality_class": "directional_3d",
            "element": "covering cloth over two forms",
            "orientation": "The camera sees the upper ridges and sloping sides of the cloth, with two separate bulges running diagonally across frame.",
            "state": "dull, damp, pulled taut in places"
          },
          {
            "camera_use": "Thin border of scene texture around the covered forms.",
            "directionality_class": "non_directional",
            "element": "recovery-area ground",
            "orientation": "",
            "state": "cold, dirty, slightly wet"
          },
          {
            "camera_use": "Atmospheric suppression of surrounding detail.",
            "directionality_class": "non_directional",
            "element": "pale outdoor haze",
            "orientation": "",
            "state": "flat and overcast, reducing contrast"
          }
        ],
        "lighting_mood": "Flat daylight is drained into gray-green coldness, with damp cloth texture emphasized and no warm human presence.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 3,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a locked high aerial position roughly sixty meters above the aging residential block, the lens looks steeply downward in a still bird's-eye composition holding the rooftop room and surrounding villa roofs in one bleak map-like frame. The old rooftop room sits slightly off-center amid patched roofs and water tanks, small but unmistakably isolated under low fog.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Primary establishing subject, isolated within the surrounding roofs.",
            "directionality_class": "directional_3d",
            "element": "old rooftop room",
            "orientation": "Its roof plane and two outer wall faces are visible from above, boxed in by the rooftop perimeter.",
            "state": "worn, weather-stained, closed up"
          },
          {
            "camera_use": "Environmental grid that makes the rooftop room feel trapped.",
            "directionality_class": "directional_3d",
            "element": "surrounding villa rooftops",
            "orientation": "Mostly top faces are visible, with occasional parapet sides cutting horizontal lines around the frame.",
            "state": "aged, patched, damp"
          },
          {
            "camera_use": "Atmospheric layer pressing down on the neighborhood.",
            "directionality_class": "non_directional",
            "element": "low fog",
            "orientation": "",
            "state": "thin but persistent, flattening distance"
          },
          {
            "camera_use": "Muted urban detail adding grounded realism.",
            "directionality_class": "directional_3d",
            "element": "rooftop water tanks and vents",
            "orientation": "Their top and side faces are visible as small dark fixtures scattered across roofs.",
            "state": "static, weathered"
          }
        ],
        "lighting_mood": "Overcast natural light creates a desaturated coastal-noir gray palette, with fog dulling edges and making the block feel airless.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 4,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the rooftop room at chest height, the static camera holds 민숙 almost head-on from about seven feet away, with the small window off to one side sending a thin shaft of light between lens and face. She occupies the center of the frame in a restrained frontal portrait, while the TV glow and kitchen clutter stay subdued around the edges, turning the domestic room into a watchful, uneasy space.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "shoulders locked forward",
            "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": "Side light source and visual blade cutting through the still room.",
            "directionality_class": "transparent_surface",
            "element": "small living-room window",
            "orientation": "The glass is slightly hazy, with pale daylight passing through from outside rather than revealing a clear view beyond.",
            "state": "closed, dusty, damp-edged"
          },
          {
            "camera_use": "Muted source of news anxiety near the camera line.",
            "directionality_class": "content_surface",
            "element": "television screen",
            "orientation": "The screen face is angled partly toward 민숙 and partly away from camera, showing indistinct news flicker rather than legible detail.",
            "state": "on, low volume, flickering"
          },
          {
            "camera_use": "Domestic texture that contrasts with her fixed stare.",
            "directionality_class": "directional_3d",
            "element": "sink counter and faucet",
            "orientation": "The counter edge runs across the rear side of the room, with the faucet side visible in soft focus.",
            "state": "wet, faucet running faintly"
          },
          {
            "camera_use": "Steam texture deepening the occult unease inside an ordinary kitchen.",
            "directionality_class": "non_directional",
            "element": "boiling pot steam",
            "orientation": "",
            "state": "thin white vapor rising intermittently"
          }
        ],
        "lighting_mood": "A narrow natural sunbeam mixes with dim TV flicker, keeping the room muted beige-gray with damp kitchen highlights and a faintly ominous stillness.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "In the entryway at shoulder height, the camera stays slightly behind 수리영's side and tightens into an intimate two-shot, looking into the small space between her closed eyes and 민숙's shoulder. 수리영 fills the left foreground in soft profile while 민숙 is held close on the right midground, the doorframe and shoe area compressing them into a brief private pocket before departure.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "face pressed to shoulder",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "holding daughter close",
            "character": "민숙",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "Narrow architectural frame around the intimate gesture.",
            "directionality_class": "directional_3d",
            "element": "entryway doorframe",
            "orientation": "The inner side face of the frame borders the right edge, making the entry feel tight.",
            "state": "closed-in, slightly worn"
          },
          {
            "camera_use": "Departure context below the characters without distracting from the embrace.",
            "directionality_class": "directional_3d",
            "element": "shoe area",
            "orientation": "The top surfaces of shoes and the side of the low step are visible at the lower edge.",
            "state": "cluttered but still"
          },
          {
            "camera_use": "Soft background plane that keeps attention on faces and shoulder contact.",
            "directionality_class": "directional_3d",
            "element": "entry wall",
            "orientation": "A flat side wall recedes behind them, visible in shallow focus.",
            "state": "dull, off-white, lightly scuffed"
          }
        ],
        "lighting_mood": "Soft interior daylight falls off into entryway shadow, warming the two faces slightly while the surrounding room stays muted and gray.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 7,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At hand height in the entryway, the dolly-in ends in a near-macro insert angled slightly downward so 민숙's wrist occupies the foreground center and the small circular mark is sharply legible. The rest of her body and the entryway dissolve into soft blur, leaving only enough sleeve edge and doorway tone to keep the mark physically grounded.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "wrist angled outward",
            "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": "Minsuk wrist with circular mark",
              "screen_zone": "middle_center",
              "target_id": "C05",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "Soft spatial reference behind the wrist, kept out of focus.",
            "directionality_class": "directional_3d",
            "element": "entryway door edge",
            "orientation": "Only the blurred vertical side edge of the door area is visible behind the wrist.",
            "state": "closed or nearly closed, indistinct"
          },
          {
            "camera_use": "Muted background color field that isolates the skin mark.",
            "directionality_class": "directional_3d",
            "element": "entry wall",
            "orientation": "The wall face sits behind the wrist as a soft flat plane.",
            "state": "dim, scuffed, out of focus"
          },
          {
            "camera_use": "Texture contrast against the circular mark.",
            "directionality_class": "non_directional",
            "element": "soft sleeve fabric",
            "orientation": "",
            "state": "slightly wrinkled, muted color"
          }
        ],
        "lighting_mood": "A quiet strip of natural light catches the wrist while the background falls into gray-brown softness, making the mark feel unnaturally clear.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 5,
        "shot_index": 9,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot isolates only 민숙's wrist and mark; a full outlook reference would not be visually alignable in this near-macro insert.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "From a saddle-height parallel tracking position two to three meters off 수리영's side, the camera moves with her along the damp coastal road in a three-quarter side view. She and the bicycle occupy the middle-right of the frame at the instant one knee bends through the pedal stroke, hair blown backward against the mist while the wet road and foggy coastline remain visible around her.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "one knee bent",
            "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 road frame",
              "label": "Suriyeong riding bicycle",
              "screen_zone": "middle_right",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "foggy coastal road continuing ahead",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "Main motion plane running beside the bicycle.",
            "directionality_class": "directional_3d",
            "element": "wet coastal road",
            "orientation": "The road surface stretches diagonally through frame in the direction of travel, with the shoulder closest to camera.",
            "state": "damp, dark, lightly reflective"
          },
          {
            "camera_use": "Atmospheric backdrop that softens the horizon and gives the ride a coastal unease.",
            "directionality_class": "non_directional",
            "element": "thick sea fog",
            "orientation": "",
            "state": "dense, milky, drifting low"
          },
          {
            "camera_use": "Faint environmental line beyond the road, mostly swallowed by mist.",
            "directionality_class": "non_directional",
            "element": "coastline and sea air",
            "orientation": "",
            "state": "blurred, desaturated, barely visible"
          },
          {
            "camera_use": "Foreground speed texture at wheel level.",
            "directionality_class": "non_directional",
            "element": "road shoulder grit",
            "orientation": "",
            "state": "wet, scattered, motion-blurred"
          }
        ],
        "lighting_mood": "Cool overcast daylight diffuses through sea fog, keeping 수리영's brightness gentle against a muted gray-blue coastal palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 6,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the scene flow’s locked low eye-level position about one meter outside the kennel, the camera stares straight through the metal bars; the Rottweiler’s bared teeth sit in the lower-center foreground and take the threat, while the rest of its head presses back into the cage gloom. The bars cut the frame into narrow vertical slices, with the dog facing the lens almost like an accusation, and the composition stays immobile to let the barking energy feel trapped rather than chased.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "teeth bared forward",
            "character": "맹견",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "foreground barrier and graphic vertical frame slicing the dog’s face",
            "directionality_class": "directional_3d",
            "element": "kennel metal bars",
            "orientation": "The front edges of the vertical bars face the camera, separating the dog into tight strips.",
            "state": "closed, damp, worn metal"
          },
          {
            "camera_use": "dark containment space behind the dog",
            "directionality_class": "directional_3d",
            "element": "kennel interior",
            "orientation": "The back wall recedes behind the dog, barely visible through shadow and cage depth.",
            "state": "dim, cramped, wet-looking"
          },
          {
            "camera_use": "low texture under the dog and bars",
            "directionality_class": "non_directional",
            "element": "concrete kennel floor",
            "orientation": "",
            "state": "stained and damp"
          }
        ],
        "lighting_mood": "Low natural shelter light is flattened into a cold gray-green cast, with wet metal highlights and deep cage shadows giving the shot a coastal noir harshness.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Derived from the waist-height handheld position outside the cage, the camera angles downward through softly blurred bars so 수리영’s hand resting on the dog’s skin becomes the center of the frame, while her face stays secondary near the upper edge. The frame breathes slightly with handheld intimacy, keeping her bent posture close but emphasizing touch over expression.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "bending over cage",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft foreground texture partially veiling the care action",
            "directionality_class": "directional_3d",
            "element": "kennel bars",
            "orientation": "The bars are seen obliquely from outside the cage, their sides blurred by the shallow focus.",
            "state": "closed, scuffed, slightly wet"
          },
          {
            "camera_use": "working surface beneath 수리영’s hands",
            "directionality_class": "non_directional",
            "element": "cage floor mat",
            "orientation": "",
            "state": "used, damp, practical"
          },
          {
            "camera_use": "clinical shelter context in the background",
            "directionality_class": "directional_3d",
            "element": "open cage area",
            "orientation": "The cage opening angles away behind her, showing only a narrow interior depth.",
            "state": "open enough for treatment, shadowed"
          }
        ],
        "lighting_mood": "Muted daylight leaks through the shelter with a milky gray tone, softened by cage shadows and the dull sheen of damp surfaces.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 7,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Following the aisle-axis flow, the camera holds eye level in a clean medium two-shot perpendicular to the display shelf: 수리영 is on the left in profile facing right, and the middle-aged female employee is on the right in profile facing left. The shelf line runs horizontally behind them like a rigid grid, making the question about her mother feel direct and boxed-in rather than casual.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "leaning toward aisle",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C03",
            "subject_state": "alive"
          },
          {
            "angle": "profile_left",
            "body_pose": "pausing beside display",
            "character": "동양인 여성",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "linear background that pins both profiles into the same commercial space",
            "directionality_class": "content_surface",
            "element": "display shelf product fronts",
            "orientation": "The label-facing sides of the packaged goods face camera in repeated rows behind the two women.",
            "state": "stocked, orderly, fluorescent-lit"
          },
          {
            "camera_use": "depth line leading toward later interruption down the aisle",
            "directionality_class": "directional_3d",
            "element": "market aisle",
            "orientation": "The aisle extends laterally behind the pair, with shelf sides forming a corridor.",
            "state": "open, busy but momentarily still"
          },
          {
            "camera_use": "cold practical overhead source",
            "directionality_class": "non_directional",
            "element": "fluorescent ceiling wash",
            "orientation": "",
            "state": "on, flat, slightly greenish"
          }
        ],
        "lighting_mood": "Market fluorescents mix with fading coastal dusk at the entrance, giving the aisle a drained blue-green cast with faint neon residue on plastic packaging.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From slightly across the curb at eye height, the camera tightens just inside a medium frame: 수리영 occupies the middle-right under the streetlamp, phone pressed to her ear, while wet pavement and the market edge remain visible around her. Her shoulders curl inward and the unanswered call becomes the posture, not the device, with the street receding behind her in soft sodium haze.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "phone pressed to ear",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "overhead pool of light isolating 수리영 on the sidewalk",
            "directionality_class": "directional_3d",
            "element": "streetlamp",
            "orientation": "The lamp pole is seen from the curb side, its glowing head just above and behind her frame position.",
            "state": "on, sodium-vapor glow"
          },
          {
            "camera_use": "reflective ground plane holding the night atmosphere",
            "directionality_class": "reflective_surface",
            "element": "wet sidewalk and curb",
            "orientation": "The pavement reflects the streetlamp and nearby market signage as broken amber and muted neon streaks.",
            "state": "wet, uneven, dark"
          },
          {
            "camera_use": "context for her recent exit",
            "directionality_class": "transparent_surface",
            "element": "market entrance glass",
            "orientation": "The glass is rain-smudged, with faint interior light and shelf shapes visible through it.",
            "state": "closed or half-closed, smeared with moisture"
          }
        ],
        "lighting_mood": "Sodium street glow warms her face from above while wet concrete throws back restrained neon reflections in a foggy blue-black night palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 8,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera tracks parallel on the seaward side at handlebar height, tighter than the flow default, locking onto 수리영’s left-side profile as she folds low over the bicycle. Her pedaling leg drives through the lower frame while her hair and clothing stream backward, and the fogged coastal road slides past as a dark lateral smear.",
        "character_angles": [
          {
            "angle": "profile_left",
            "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": "foggy road ahead",
              "label": "수리영 on bicycle",
              "screen_zone": "middle_center",
              "target_id": "C06",
              "target_kind": "character"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "moving reflective strip beneath the bicycle, conveying speed and danger",
            "directionality_class": "reflective_surface",
            "element": "wet coastal road",
            "orientation": "The road surface reflects faint roadside light in stretched, broken lines under the bicycle path.",
            "state": "wet, dark, slick"
          },
          {
            "camera_use": "lateral edge marker between road and sea",
            "directionality_class": "directional_3d",
            "element": "coastal guardrail",
            "orientation": "The guardrail is seen side-on, receding quickly behind her along the sea edge.",
            "state": "damp, dim, partially lost in fog"
          },
          {
            "camera_use": "atmospheric veil reducing distance and swallowing the background",
            "directionality_class": "non_directional",
            "element": "sea fog",
            "orientation": "",
            "state": "thick, low, drifting"
          }
        ],
        "lighting_mood": "The scene is lit by sparse roadside spill and cold moonless fog, with muted blue-black shadows and occasional sodium glints on the wet asphalt.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 9,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s ground-level approach endpoint, the frame stays extremely low and tight: a pair of old shoes stops in the lower center, while the iron door is reduced to a dark threshold line behind them. The upward angle is minimal, making the unseen man’s presence register through weight, shadow, and the sudden halt rather than a revealed body.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary physical clue of intrusion, held low in frame",
            "directionality_class": "directional_3d",
            "element": "old shoes",
            "orientation": "The toe fronts point toward the rooftop room threshold, with the camera seeing the worn uppers from floor height.",
            "state": "worn, dusty, motionless"
          },
          {
            "camera_use": "implied entrance line behind the shoes",
            "directionality_class": "directional_3d",
            "element": "iron rooftop door threshold",
            "orientation": "Only the lower edge and threshold plane are visible behind the shoes, facing the camera as a dark horizontal boundary.",
            "state": "closed or barely implied, shadowed"
          },
          {
            "camera_use": "wind-carried trace crossing the frame",
            "directionality_class": "non_directional",
            "element": "dried leaf",
            "orientation": "",
            "state": "dry, windblown, caught near the shoes"
          },
          {
            "camera_use": "elongated threat shape cast behind the unseen body",
            "directionality_class": "content_surface",
            "element": "rooftop floor shadow",
            "orientation": "The floor’s top surface carries the man’s long shadow stretching away from the shoes.",
            "state": "dark, hard-edged, unstable in wind"
          }
        ],
        "lighting_mood": "Night rooftop light is sparse and dirty, mixing cold ambient blue with a faint sodium edge that hardens the shoe shadow on the concrete.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Square-on to the rooftop room window, the camera stays close to the glass so the scene reads as a flat reflected image rather than an interior space. The male silhouette presses over the woman’s darker shape in the center of the pane, his head buried near her shoulder, with no depth cues beyond the window frame and dirty surface.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "hunched over shoulder",
            "character": "남성",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_right",
            "body_pose": "pinned beneath figure",
            "character": "여성",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "severely_injured"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "reflective window surface",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "the actual viewing surface, flattening the violence into a reflected silhouette",
            "directionality_class": "reflective_surface",
            "element": "rooftop room window glass",
            "orientation": "The glass reflects the male silhouette pinning the woman’s shape, compressing both into a dark surface image with little interior depth.",
            "state": "dirty, dark, slightly streaked"
          },
          {
            "camera_use": "rigid border that makes the reflection feel trapped and graphic",
            "directionality_class": "directional_3d",
            "element": "window frame",
            "orientation": "The frame faces camera squarely, forming a flat rectangle around the reflected action.",
            "state": "closed, worn, dim"
          },
          {
            "camera_use": "soft exterior contamination across the reflection",
            "directionality_class": "transparent_surface",
            "element": "smudged glass layer",
            "orientation": "Moisture and grime partially obscure what lies beyond the pane, making the reflected forms less legible.",
            "state": "clouded, damp"
          }
        ],
        "lighting_mood": "The window catches cold rooftop darkness with a thin amber interior leak, rendering the figures as near-black silhouettes against a grimy reflective surface.",
        "perception_mode": "reflection",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 10,
        "shot_index": 5,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The man is shown only as a flat reflected silhouette with no identifying facial or costume detail; a generic silhouette descriptor is more accurate than an identity reference.",
            "subject_id": "C10"
          },
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "The woman appears only as a pinned reflected shape, not as an identifiable portrait; outlook-specific reference would overdefine the image.",
            "subject_id": "C11"
          }
        ]
      },
      {
        "camera_direction": "Following 수리영’s eyeline from the flow, the camera completes the slow push-in and then almost freezes several meters from the rooftop room entrance, centered on the iron door. The half-open gap sits as a narrow black vertical wound in the middle of the frame, with the surrounding rooftop swallowed by darkness.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "half-open iron front door",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "central ominous subject of the reveal",
            "directionality_class": "directional_3d",
            "element": "iron front door",
            "orientation": "The door’s front face is nearly square to camera, stopped half-open so its edge creates a thin black gap.",
            "state": "half-open, still, dark"
          },
          {
            "camera_use": "unreadable void beyond the entrance",
            "directionality_class": "transparent_surface",
            "element": "narrow door gap",
            "orientation": "The slit exposes only darkness beyond, with no clear interior detail visible through it.",
            "state": "slightly open, lightless"
          },
          {
            "camera_use": "empty approach plane emphasizing isolation",
            "directionality_class": "non_directional",
            "element": "rooftop concrete",
            "orientation": "",
            "state": "damp, dim, vacant"
          }
        ],
        "lighting_mood": "The rooftop is nearly lightless, with faint blue-black ambient fog and a weak sodium spill catching the metal door edge.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "수리영",
        "scene_index": 11,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Cutting back from the door, the camera sits at eye level from the direction of the open gap and tightens into an extreme close frame where 수리영’s widened eyes occupy the center. The rooftop disappears into soft black edges, turning her fixed stare toward the gap into the entire visual event.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "frozen near doorway",
            "character": "수리영",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영’s eyes",
              "screen_zone": "middle_center",
              "target_id": "C06",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "dark edge suggesting the source of her stare without revealing the room",
            "directionality_class": "directional_3d",
            "element": "iron door edge",
            "orientation": "Only a blurred side edge of the door intrudes near the frame margin, facing away into darkness.",
            "state": "half-open, out of focus"
          },
          {
            "camera_use": "negative space around her face",
            "directionality_class": "non_directional",
            "element": "rooftop darkness",
            "orientation": "",
            "state": "deep, fog-softened, nearly featureless"
          }
        ],
        "lighting_mood": "A faint cold-blue rooftop wash catches the moisture in her eyes, while the rest falls into low, sodium-tinged darkness.",
        "perception_mode": "direct",
        "perspective": "object_pov",
        "pov_character": "",
        "scene_index": 11,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From chest height inside the bedroom, the camera holds after drifting left past the parted curtain, keeping 민숙’s seated body centered between the dark fabric edges. The frame is frontal and still enough to make the discovery unavoidable, with the curtain acting like a grim proscenium around her slumped form.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "slumped seated behind curtain",
            "character": "민숙",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "dark foreground frame around the body",
            "directionality_class": "directional_3d",
            "element": "parted curtain edges",
            "orientation": "The inner folds face camera on both sides, opening just enough to reveal the seated body behind them.",
            "state": "parted, heavy, shadowed"
          },
          {
            "camera_use": "visual trail leading to the reveal",
            "directionality_class": "content_surface",
            "element": "bedroom floor with blood trail",
            "orientation": "The top surface of the floor faces camera and carries dark stains and footprints leading toward the curtain.",
            "state": "wet-stained, disturbed"
          },
          {
            "camera_use": "dim enclosure behind the corpse",
            "directionality_class": "directional_3d",
            "element": "bedroom corner wall",
            "orientation": "The wall plane sits directly behind the body, flattening the background and limiting escape depth.",
            "state": "dark, cramped, low-lit"
          }
        ],
        "lighting_mood": "Weak practical spill from the apartment mixes with cold night shadow, muting the reds into brown-black and leaving the curtain edges almost silhouetted.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the flow’s very close front-left position beside 민숙’s upper body, the lens tightens into an extreme close-up just below shoulder height, angled downward so the torn shoulder and rough bite-like texture occupy most of the frame while her collarbone and dead-still skin fall into shallow-focus edges. The composition keeps the wound in the lower-center foreground, with only a blurred strip of curtain and floor blood at the margins, as if the camera has been pulled too close to look away.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "slumped seated corpse",
            "character": "민숙",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft, oppressive background blur behind the shoulder wound",
            "directionality_class": "transparent_surface",
            "element": "thin bedroom curtain",
            "orientation": "semi-sheer fabric hangs partly drawn, with the dim room shape barely visible through it",
            "state": "partly drawn, stained at the lower edge"
          },
          {
            "camera_use": "dark peripheral texture reinforcing the path of violence",
            "directionality_class": "non_directional",
            "element": "blood-smeared floor area",
            "orientation": "",
            "state": "wet-looking, unevenly smeared"
          },
          {
            "camera_use": "out-of-focus hard edge that anchors the corpse beside the room furniture",
            "directionality_class": "directional_3d",
            "element": "bed edge",
            "orientation": "the narrow side of the bed faces the camera obliquely behind the body",
            "state": "dim, rumpled, mostly blurred"
          }
        ],
        "lighting_mood": "Low lamp spill and cold TV residue mix into a muted coastal-noir darkness, making the wound read in damp crimson-brown rather than bright red.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 8,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "The shot isolates 민숙’s shoulder wound and only a partial corpse surface is visible, so a full outlook reference would not align with the framing.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "At floor level beside 민숙’s hand, the camera holds almost frozen in a macro insert, angled slightly downward so the pale clenched fingers and the crumpled photograph sit sharp in the lower-middle of frame. Her body becomes an indistinct shadow beyond the knuckles, preserving the flow’s downward slide while emphasizing this clue as the next point of dread.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "clenched hand on floor",
            "character": "민숙",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "dead"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary clue trapped inside the dead hand",
            "directionality_class": "content_surface",
            "element": "crumpled photograph",
            "orientation": "the image-bearing face is mostly folded inward and partly hidden by the fingers, with only creased pale photo paper visible to camera",
            "state": "crushed, tightly gripped"
          },
          {
            "camera_use": "scale reference and deathly surface under the hand",
            "directionality_class": "non_directional",
            "element": "bedroom floor",
            "orientation": "",
            "state": "dark, damp-looking, slightly sticky with blood traces"
          },
          {
            "camera_use": "blurred vertical boundary guiding the next tilt upward",
            "directionality_class": "directional_3d",
            "element": "nearby bed base",
            "orientation": "its side panel runs diagonally away from the hand toward the background",
            "state": "dim and out of focus"
          }
        ],
        "lighting_mood": "A narrow, cold spill of room light catches the photo creases while the rest falls into brown-black shadow with faint sodium warmth at the edges.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 11,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "Only 민숙’s hand is framed in macro detail; identity must be attached to the base character without requiring a full appearance reference.",
            "subject_id": "C05"
          }
        ]
      },
      {
        "camera_direction": "Completing the flow’s upward tilt from beside the bed, the camera locks at low-to-mid height aimed up at the wall, placing the large red circle centered above the bed with the bed edge grazing the lower frame as scale. The angle is subtly low and unnerving, making the mark feel suspended over the room rather than merely painted on it.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "red circle on wall above bed",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "bed edge below the mark",
              "screen_zone": "lower_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "central supernatural focal point",
            "directionality_class": "content_surface",
            "element": "wall with large red circle",
            "orientation": "the camera-facing wall surface shows a freshly visible, brush-like red circle centered above the bed",
            "state": "marked, stark against the otherwise bare wall"
          },
          {
            "camera_use": "lower-frame anchor showing the mark’s position over the bed",
            "directionality_class": "directional_3d",
            "element": "bed",
            "orientation": "the upper side of the bed and its edge face the camera from below the wall mark",
            "state": "still, dim, slightly rumpled"
          },
          {
            "camera_use": "uneasy domestic texture around the apparition",
            "directionality_class": "content_surface",
            "element": "aged wallpaper",
            "orientation": "the patterned face of the wallpaper is visible around and beneath the red circle",
            "state": "dull, faintly damp, otherwise clean"
          }
        ],
        "lighting_mood": "The room’s low natural darkness and weak lamp residue flatten into a sickly grey-brown field, with the red circle appearing unnaturally saturated against the muted palette.",
        "perception_mode": "hallucination",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 12,
        "shot_index": 13,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Just outside the rooftop room’s iron door, the handheld camera waits at chest height about two meters from the threshold, angled slightly upward as 수리영 bursts toward it from the doorway. The frame holds the threshold fractionally long: her mouth open in a scream, one foot already over the sill in the middle of frame and the other suspended behind her, while the open iron door and wet rooftop concrete squeeze her into a panicked exit corridor.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "one foot airborne",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "camera-side threshold",
              "label": "수리영 bursting out",
              "screen_zone": "middle_center",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "open rooftop iron door",
              "screen_zone": "upper_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "hard rectangular frame around her escape",
            "directionality_class": "directional_3d",
            "element": "rooftop iron door",
            "orientation": "the door slab is open toward camera-left, exposing its inner face and the dark room beyond",
            "state": "open, dark, cold metal"
          },
          {
            "camera_use": "physical line she is crossing in panic",
            "directionality_class": "directional_3d",
            "element": "raised threshold sill",
            "orientation": "the sill runs horizontally across the lower doorway, seen from outside",
            "state": "wet, scuffed"
          },
          {
            "camera_use": "ground texture catching her landing path",
            "directionality_class": "non_directional",
            "element": "rooftop concrete landing",
            "orientation": "",
            "state": "damp, dim, sodium-stained"
          }
        ],
        "lighting_mood": "Wet rooftop darkness is cut by a weak sodium-vapor glow, with the doorway behind her swallowing detail in cold black.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera tightens from the flow’s frontal track into a near-static eye-height close-up directly in front of 수리영, letting her face fill most of the frame while the street and rooftop access blur into a low-motion haze behind her. This is one of the few justified frontal compositions: her unfocused eyes stare through the lens rather than at it, turning the frame into a shocked confession without breaking realism.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "rigid shoulders trembling",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "수리영 isolated close face",
              "screen_zone": "middle_center",
              "target_id": "C06",
              "target_kind": "character"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft background smear behind her vacant stare",
            "directionality_class": "non_directional",
            "element": "rooftop exterior darkness",
            "orientation": "",
            "state": "blurred, damp, low visibility"
          },
          {
            "camera_use": "faint contextual color behind her face",
            "directionality_class": "content_surface",
            "element": "distant police light spill on wall",
            "orientation": "a wall surface behind her catches intermittent colored light but no readable text or signage",
            "state": "soft, out of focus"
          },
          {
            "camera_use": "thin vertical edge suggesting the stairwell route she came from",
            "directionality_class": "directional_3d",
            "element": "stairwell wall edge",
            "orientation": "one side edge angles away behind her shoulder",
            "state": "dark, wet-looking"
          }
        ],
        "lighting_mood": "Cold ambient night light and faint siren reflections drain her face of warmth, leaving her eyes glassy against a muted blue-grey coastal noir background.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 13,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From inside 수리영’s room, slightly behind and to her side at shoulder height, the camera holds wider than the base flow position so her stunned stillness sits in the left foreground while the clean floor, bed, and curtain area open across the frame. The dolly-in is restrained, almost accusatory, emphasizing that the space where the blood and body should be is now unnaturally orderly.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "halted mid-step",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "spotless room where blood should be",
              "label": "수리영 staring into room",
              "screen_zone": "lower_left",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "spotless floor and curtain area",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "looks_to_anchor"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "main absence-of-evidence field across the room",
            "directionality_class": "non_directional",
            "element": "spotless bedroom floor",
            "orientation": "",
            "state": "clean, dry, no blood visible"
          },
          {
            "camera_use": "location where the corpse had been hidden, now empty",
            "directionality_class": "transparent_surface",
            "element": "bedroom curtain",
            "orientation": "the fabric hangs with enough translucency to show there is no body shape behind it",
            "state": "neatly hanging, clean"
          },
          {
            "camera_use": "domestic order contrasting the prior horror",
            "directionality_class": "directional_3d",
            "element": "bed",
            "orientation": "the side and top plane face the camera from the room’s right half",
            "state": "tidy, undisturbed"
          },
          {
            "camera_use": "background clue of altered arrangement",
            "directionality_class": "directional_3d",
            "element": "backpack and doll area",
            "orientation": "small objects face slightly different directions on the room side, visible beyond 수리영",
            "state": "orderly but subtly repositioned"
          }
        ],
        "lighting_mood": "The room is lit with low, flat apartment light and faint street sodium seepage, making the impossible cleanliness feel colder than the earlier blood-darkness.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "In the central room area, the camera stays close at chest height over 혜수’s shoulder, tightening just enough that her two hands enclosing 수리영’s shoulders become the dominant foreground action while both faces remain partially readable. 수리영 is held slightly lower and deeper in frame, visually compressed between 혜수’s arms and the quiet apartment behind them.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "hands clasping shoulders",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "hunched under hands",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft domestic background behind the consolation",
            "directionality_class": "directional_3d",
            "element": "central room wall and doorway",
            "orientation": "the doorway edge angles away behind the two figures, suggesting the path back toward 수리영’s room",
            "state": "still, dim"
          },
          {
            "camera_use": "small warm practical source softening the scene without removing unease",
            "directionality_class": "directional_3d",
            "element": "table lamp or room light spill",
            "orientation": "light falls from off-frame side onto their shoulders, with the fixture mostly unseen",
            "state": "on, weak"
          },
          {
            "camera_use": "subtle reminder of the failed search beyond them",
            "directionality_class": "content_surface",
            "element": "clean dining table surface",
            "orientation": "the tabletop plane faces upward and catches a dull reflection-free sheen with no cups present",
            "state": "clear, wiped clean"
          }
        ],
        "lighting_mood": "Warm interior spill wraps 혜수’s hands, but the surrounding room remains muted grey-brown, keeping the comfort scene uneasy rather than safe.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 14,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Beside the bus-stop bench at 수리영’s seated eye level, the camera frames slightly tighter than a normal two-shot across her shoulder toward 혜수, keeping the drink in 수리영’s hand visible in the lower foreground while her fixed eyeline cuts across the frame. The sea and road fall behind them as soft horizontal bands, so the emotional line between niece and aunt becomes the main axis.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "perched gripping drink",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C04",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning toward bench",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "seated anchor tying both characters into the same space",
            "directionality_class": "directional_3d",
            "element": "bus-stop bench",
            "orientation": "the bench length runs diagonally across the lower frame from 수리영 toward 혜수",
            "state": "damp, dark metal or plastic"
          },
          {
            "camera_use": "coastal noir backdrop beyond the emotional exchange",
            "directionality_class": "non_directional",
            "element": "night sea beyond road",
            "orientation": "",
            "state": "dark, fog-softened, barely visible"
          },
          {
            "camera_use": "practical urban frame around the bench",
            "directionality_class": "content_surface",
            "element": "bus-stop sign panel",
            "orientation": "the sign face is turned partly away, with no readable route information emphasized",
            "state": "wet, dimly reflective"
          },
          {
            "camera_use": "foreground prop linking comfort and unease",
            "directionality_class": "directional_3d",
            "element": "bottled drink",
            "orientation": "the bottle is angled in 수리영’s hand, its side facing the camera rather than the label front",
            "state": "unopened or barely handled, catching small highlights"
          }
        ],
        "lighting_mood": "Sodium street glow, foggy sea darkness, and restrained neon reflections leave both faces muted and damp-edged, with the drink catching the brightest small highlight.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a lower rear three-quarter tracking position behind 수리영, the camera drops to knee-to-waist height and follows as she runs away from the bench along the roadside path. Her back leans forward in the middle of frame, one foot pushing off the wet ground and the other caught airborne, while the bus stop recedes behind her in colder, looser focus.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "mid-stride airborne",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "moves_toward",
              "gesture_target_label": "dark roadside ahead",
              "label": "수리영 running away",
              "screen_zone": "middle_center",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "bus stop left behind",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "movement_direction"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "receding origin point of the departure",
            "directionality_class": "directional_3d",
            "element": "bus-stop shelter and bench",
            "orientation": "the shelter side and bench angle away behind her on the left side of frame",
            "state": "wet, dim, partially blurred"
          },
          {
            "camera_use": "directional path for her escape",
            "directionality_class": "directional_3d",
            "element": "roadside path",
            "orientation": "the path narrows forward from the camera toward the upper frame where she is running",
            "state": "dark, damp, reflecting sodium light"
          },
          {
            "camera_use": "cold negative space beside her motion",
            "directionality_class": "non_directional",
            "element": "foggy coastal air",
            "orientation": "",
            "state": "misty, low visibility"
          },
          {
            "camera_use": "low streaks of urban light underfoot",
            "directionality_class": "reflective_surface",
            "element": "wet pavement",
            "orientation": "the pavement reflects broken sodium and faint neon streaks beneath her moving feet",
            "state": "slick, unevenly reflective"
          }
        ],
        "lighting_mood": "Low sodium-vapor light skims the wet road and silhouettes her retreating body against foggy blue-black coastal darkness.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 15,
        "shot_index": 5,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the desk edge just in front of 김형사’s face, the camera pushes into a tight close-up where 혜수’s extended hand and smartphone screen form the sharp foreground anchor in the lower-center to middle frame. 김형사’s face remains partially visible behind the phone, slightly compressed by the lens, while 혜수’s arm enters from frame right like a hard diagonal line of pressure across the desk.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning behind desk",
            "character": "김형사",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "profile_right",
            "body_pose": "arm extended across desk",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C12",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "sharp foreground anchor carrying the demanded information",
            "directionality_class": "content_surface",
            "element": "smartphone screen",
            "orientation": "the lit front face of the phone is angled toward 김형사 and camera, showing a saved contact/number interface without needing legible text",
            "state": "on, held close to his face"
          },
          {
            "camera_use": "physical barrier and confrontation plane between them",
            "directionality_class": "directional_3d",
            "element": "police office desk edge",
            "orientation": "the desk edge cuts horizontally across the lower frame between 혜수’s arm and 김형사",
            "state": "cluttered but subdued"
          },
          {
            "camera_use": "background work texture behind the detective",
            "directionality_class": "content_surface",
            "element": "office notice board or paperwork wall",
            "orientation": "paper-covered faces point toward the room but remain out of focus, with no readable details emphasized",
            "state": "dim, cluttered"
          },
          {
            "camera_use": "institutional overhead color cast",
            "directionality_class": "directional_3d",
            "element": "fluorescent office fixture spill",
            "orientation": "light falls from above and slightly behind camera onto the phone and faces",
            "state": "on, harsh and greenish"
          }
        ],
        "lighting_mood": "Greenish police-station fluorescents flatten the faces while the phone adds a cold white rectangle, replacing coastal fog with bureaucratic unease.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 3,
        "subject_reference_policy": [
          {
            "policy": "base_id_required",
            "policy_type": "identity_reference",
            "reason": "혜수 is represented primarily by her hand and extended arm in the foreground, so a full outlook-based identity reference is unnecessary for this shot.",
            "subject_id": "C04"
          }
        ]
      },
      {
        "camera_direction": "From the opposite side of the desk, the camera holds at Hyesu’s standing eye level in an intimate close-up, slightly off-center so her face sits just left of center with the blurred detective’s desk edge cutting the lower foreground. The frame inherits the static reaction hold: her eyes drift a little past the unseen detective rather than into the lens, and the shot lingers a beat too long to let dread settle in her stillness.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning over desk",
            "character": "혜수",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft lower-foreground obstruction and spatial reminder of the interrogation-like desk divide",
            "directionality_class": "directional_3d",
            "element": "police office desk edge",
            "orientation": "the long front edge runs diagonally across the bottom of frame, its near side facing camera",
            "state": "cluttered, damp-looking laminate under low office light"
          },
          {
            "camera_use": "blurred background texture behind Hyesu, adding official pressure without drawing focus",
            "directionality_class": "content_surface",
            "element": "pinned office notices",
            "orientation": "the printed notice faces are turned toward camera but kept unreadable by shallow focus",
            "state": "old, curled at the corners"
          },
          {
            "camera_use": "dim practical glow in the deep background",
            "directionality_class": "directional_3d",
            "element": "desk lamp and file stacks",
            "orientation": "lamp shade side faces camera from behind Hyesu’s shoulder line",
            "state": "lamp on, files unevenly piled"
          }
        ],
        "lighting_mood": "Muted green-gray police-office fluorescents mix with a tired sodium spill from outside, leaving Hyesu’s skin cool and the desk edge damply dark.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 16,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From a neighboring rooftop corner about 1.5 meters high and roughly 12 meters away, the camera holds a wide, static dawn exterior with the lit rooftop room small but isolated in the middle distance. The cold blue roofscape occupies most of the frame, while the warm window glow sits off-center like a warning light against the parapet and fog-softened walls.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary architectural subject and eerie focal point",
            "directionality_class": "directional_3d",
            "element": "lit rooftop room",
            "orientation": "its windowed front and one side wall face camera at a shallow angle",
            "state": "interior light on, exterior walls damp and weather-stained"
          },
          {
            "camera_use": "foreground and midground horizontal lines guiding the later approach",
            "directionality_class": "directional_3d",
            "element": "rooftop parapet wall",
            "orientation": "the top ledge runs laterally across the lower frame, with its outer face angled toward camera",
            "state": "wet, chipped concrete with dark moss stains"
          },
          {
            "camera_use": "atmospheric veil that flattens distance and softens edges",
            "directionality_class": "non_directional",
            "element": "blue dawn fog",
            "orientation": "",
            "state": "thin, cold, lingering over rooftops"
          },
          {
            "camera_use": "texture bed for the wide frame",
            "directionality_class": "non_directional",
            "element": "damp rooftop floor",
            "orientation": "",
            "state": "darkened by moisture, faint puddle sheen"
          }
        ],
        "lighting_mood": "Bluish pre-sunrise ambient light is broken only by the rooftop room’s stale warm bulb, creating a coastal-noir contrast between cold air and inhabited dread.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 17,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At mattress height near the bed corner, the camera pushes in from the foot-side angle until Suriyeong’s face nearly fills the frame, tighter than the stage default. Only the plane of her cheek, startled eyes, and a sliver of rumpled bedding remain sharp; the room falls away into shallow, bluish blur as her eyes snap open to the cat’s cry.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "jerking awake on bed",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft foreground and context for her half-sleeping position",
            "directionality_class": "non_directional",
            "element": "rumpled bedding",
            "orientation": "",
            "state": "creased, pale fabric compressed near her shoulder"
          },
          {
            "camera_use": "blurred background pressure point for the next anxious reorientation",
            "directionality_class": "directional_3d",
            "element": "closed bedroom door",
            "orientation": "the flat front of the door is barely visible behind her in soft focus",
            "state": "closed, still"
          },
          {
            "camera_use": "low natural dawn source diffused into the bedroom",
            "directionality_class": "transparent_surface",
            "element": "curtained bedroom window",
            "orientation": "thin curtain fabric filters the unseen window beyond, with no clear exterior detail visible",
            "state": "curtain drawn, light weak and blue"
          }
        ],
        "lighting_mood": "Cold dawn light seeps through curtains with almost no fill, leaving her face pale and wet-eyed against a hushed gray bedroom.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At chest height beside the sink, the lens is squared perfectly to the mirror plane so the reflected bathroom wall reads like a flat, frontal image within the mirror. Suriyeong is excluded entirely; the red circle sits sharp in the reflected wall area, centered slightly high, while the mirror frame and sink edge prove we are seeing an image inside glass rather than the wall directly.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary viewing surface, turning the wall into a threatening flat image",
            "directionality_class": "reflective_surface",
            "element": "bathroom mirror",
            "orientation": "the mirror reflects the opposite bathroom wall with the red circle clearly visible inside the reflection; the mirror frame edges remain visible",
            "state": "slightly spotted with moisture, otherwise still"
          },
          {
            "camera_use": "occult mark revealed only as a reflected image",
            "directionality_class": "content_surface",
            "element": "reflected bathroom wall with red circle",
            "orientation": "the reflected wall face is shown frontally inside the mirror, carrying a sharp red circular mark on its surface",
            "state": "clean pale wall in reflection, red circle newly vivid"
          },
          {
            "camera_use": "lower frame anchor establishing sink-side camera position",
            "directionality_class": "directional_3d",
            "element": "bathroom sink rim",
            "orientation": "the near curved rim clips the lower edge of the frame",
            "state": "wet from recent washing, porcelain dimly glossy"
          }
        ],
        "lighting_mood": "Flat, cold bathroom light mixes with gray daylight, but the red circle appears unnaturally saturated against the drained tile-and-mirror palette.",
        "perception_mode": "mirror",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From standing height at the dining-table edge, the camera finishes its push down and forward to within inches of the framed photograph, settling into a close view without letting the frame cover the entire image; table grain and a thin strip of surrounding room remain as scale. The grotesque melting of 민숙’s face happens inside the glossy photo surface, while the printed 수리영 beside her remains trapped in the same flat family snapshot.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "posed in framed photo",
            "character": "민숙",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "facing_camera",
            "body_pose": "leaning into photo pose",
            "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 flat image surface where the supernatural distortion occurs",
            "directionality_class": "content_surface",
            "element": "framed family photograph",
            "orientation": "the front photo face under glass tilts slightly upward toward camera, showing 민숙 and 수리영 printed side by side; 민숙’s printed face is visibly melting within the image",
            "state": "glass clean but catching a faint streak of room light"
          },
          {
            "camera_use": "dark reflective accent that makes the printed distortion feel slick and unstable",
            "directionality_class": "reflective_surface",
            "element": "photograph glass",
            "orientation": "the glass reflects a thin diagonal highlight from the room while still revealing the distorted printed faces beneath",
            "state": "glossy, faintly smudged at the edge"
          },
          {
            "camera_use": "surrounding context and scale so the photo does not become an abstract full-frame object",
            "directionality_class": "non_directional",
            "element": "dining table surface",
            "orientation": "",
            "state": "clean, slightly worn wood with cool morning shadows"
          }
        ],
        "lighting_mood": "Weak apartment daylight and a faint sickly interior spill flatten the tabletop, while the melted face carries a wet, dark red-brown unease against the muted domestic palette.",
        "perception_mode": "hallucination",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 18,
        "shot_index": 13,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From inside the market aisle at low eye level, the camera pushes into a tight frontal close-up of Suriyeong, placed center frame with display shelves falling into soft vertical bands behind her. The male employee is not shown; his presence is implied by her upward eyeline, making the shot feel like we are caught at his height as she presses the question.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "chin lifted questioning",
            "character": "수리영",
            "gaze_direction_kind": "camera",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft background grid that compresses the aisle around her face",
            "directionality_class": "directional_3d",
            "element": "market display shelves",
            "orientation": "shelf fronts recede behind her on both sides, their product faces angled toward the aisle",
            "state": "orderly, sparsely shopped early morning display"
          },
          {
            "camera_use": "small patches of mundane detail contrasting her alarm",
            "directionality_class": "content_surface",
            "element": "price labels on shelves",
            "orientation": "printed label faces point toward the aisle and camera but remain soft and unreadable",
            "state": "neatly attached, fluorescent-lit"
          },
          {
            "camera_use": "overhead practical source producing a banal realism",
            "directionality_class": "directional_3d",
            "element": "fluorescent ceiling strips",
            "orientation": "long strip housings run lengthwise above the aisle",
            "state": "on, slightly cold and flickering"
          }
        ],
        "lighting_mood": "Cold supermarket fluorescents wash her face with pale green-blue realism, with only muted product colors and no comforting warmth.",
        "perception_mode": "direct",
        "perspective": "subjective_pov",
        "pov_character": "남자 직원",
        "scene_index": 19,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Under the exterior eaves, the camera holds the end of an upward tilt from just below Suriyeong’s shoulder height, catching her in the lower frame as her raised finger stops beneath the ceiling-mounted CCTV camera. Her arm creates a diagonal from lower left toward the camera above, while the storefront edge and damp pavement keep the gesture grounded in the market exterior.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "arm raised pointing",
            "character": "수리영",
            "gaze_direction_kind": "up",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "points_to",
              "gesture_target_label": "ceiling-mounted CCTV camera",
              "label": "수리영",
              "screen_zone": "lower_left",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "ceiling-mounted CCTV camera",
              "screen_zone": "upper_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "points_to_anchor"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "gesture target and evidence anchor above her hand",
            "directionality_class": "directional_3d",
            "element": "ceiling-mounted CCTV camera",
            "orientation": "the lens underside points downward toward the entrance, with the housing side visible to camera",
            "state": "fixed in place, small indicator unlit or barely visible"
          },
          {
            "camera_use": "overhead frame and directional line for the upward tilt",
            "directionality_class": "directional_3d",
            "element": "market eaves",
            "orientation": "the underside of the eaves faces camera, slanting upward toward the CCTV",
            "state": "weathered, damp along the edge"
          },
          {
            "camera_use": "side reflection and exterior context",
            "directionality_class": "transparent_surface",
            "element": "storefront glass door",
            "orientation": "slightly dirty glass shows a dim view into the market interior and faint exterior reflections",
            "state": "closed, streaked with morning moisture"
          },
          {
            "camera_use": "lower texture grounding the outside space",
            "directionality_class": "non_directional",
            "element": "wet entrance pavement",
            "orientation": "",
            "state": "darkened by dampness, faintly reflective"
          }
        ],
        "lighting_mood": "Overcast morning light under the eaves is cool and flat, with a weak sodium residue from the storefront sign reflecting in the wet ground.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 19,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At seated eye level beside the desk, the camera holds about three feet from the security employee, angled three-quarters toward both his extended hand and the CCTV monitor so they form one visual line. His pointing finger leads from the foreground-midground into the dim screen, while the chair back and desk clutter compress the cramped office around the evidence.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "seated reaching forward",
            "character": "30대 동양인 남성",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "evidence surface and visual anchor for the pointing gesture",
            "directionality_class": "content_surface",
            "element": "CCTV monitor",
            "orientation": "the glowing screen face is angled toward camera, showing a dark, low-contrast surveillance image with an especially blackened area",
            "state": "on, dim and unclear"
          },
          {
            "camera_use": "foreground shape guiding the lateral move that follows",
            "directionality_class": "directional_3d",
            "element": "office chair back",
            "orientation": "the curved rear of the chair faces camera near the lower edge",
            "state": "occupied, slightly scuffed"
          },
          {
            "camera_use": "workplace clutter that makes the security room feel practical and cramped",
            "directionality_class": "directional_3d",
            "element": "desk with keyboard and cables",
            "orientation": "desktop plane angles away from camera toward the monitor",
            "state": "messy, cables exposed, keyboard pushed close to screen"
          },
          {
            "camera_use": "ambient bureaucratic texture behind the monitor",
            "directionality_class": "content_surface",
            "element": "posted office schedule",
            "orientation": "the printed schedule face is on the rear wall facing camera but kept soft",
            "state": "taped flat, corners lifting"
          }
        ],
        "lighting_mood": "The room is lit by dull office fluorescents and the monitor’s bluish glow, giving the employee’s hand a cold, investigative edge.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At standing eye level just off the monitor axis, the camera completes a push into Suriyeong’s face from about a foot and a half away, cropping tightly enough that her furrowed brow and tense mouth carry the frame. The monitor itself stays mostly off-frame as a blue-white source grazing one side of her face, so her gaze locks just past the lens toward the unclear footage.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "leaning toward monitor",
            "character": "수리영",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "off-axis light source shaping her expression rather than becoming the subject",
            "directionality_class": "content_surface",
            "element": "CCTV monitor edge",
            "orientation": "only the bright screen edge is visible at the far side, its content face turned toward Suriyeong and mostly away from camera",
            "state": "on, casting cold flickering light"
          },
          {
            "camera_use": "soft background official texture",
            "directionality_class": "directional_3d",
            "element": "security office partition wall",
            "orientation": "flat partition surface recedes behind her shoulder",
            "state": "dull beige-gray, slightly stained"
          },
          {
            "camera_use": "thin foreground blur tying her to the desk setup",
            "directionality_class": "directional_3d",
            "element": "desk corner",
            "orientation": "near corner clips the bottom edge at a shallow angle",
            "state": "cluttered but out of focus"
          }
        ],
        "lighting_mood": "Blue monitor glow dominates her face against weak fluorescent fill, draining the room into a tense gray-green surveillance palette.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 20,
        "shot_index": 3,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From just inside the police office entrance, the camera holds a wider-than-default threshold frame at eye level, keeping Suriyeong and Hyesu evenly side by side while the office opens around them in layered desks and movement. The doorway and corridor sit behind their shoulders, and the camera is ready to track backward into the room as they step in, but this shot remains a static arrival tableau.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "half-bow at threshold",
            "character": "혜수",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C12",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "clutching backpack strap",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "architectural frame around the two women at the start of the office movement",
            "directionality_class": "directional_3d",
            "element": "police office doorway",
            "orientation": "the inner jambs frame both women, with the corridor side behind them and the office side facing camera",
            "state": "open, scuffed at handle height"
          },
          {
            "camera_use": "background depth and procedural bustle",
            "directionality_class": "directional_3d",
            "element": "police desks and partitions",
            "orientation": "desk fronts and partition sides recede inward behind and around the women",
            "state": "busy, paperwork scattered, chairs uneven"
          },
          {
            "camera_use": "official task texture that foreshadows paperwork and investigation",
            "directionality_class": "content_surface",
            "element": "case boards and wall notices",
            "orientation": "printed faces on the rear and side walls are angled toward camera but too distant to read",
            "state": "posted densely, slightly curled"
          },
          {
            "camera_use": "overhead institutional light pattern",
            "directionality_class": "directional_3d",
            "element": "fluorescent ceiling panels",
            "orientation": "rectangular panels run back into the office above the entrance path",
            "state": "on, cool and harsh"
          }
        ],
        "lighting_mood": "Harsh police-station fluorescents flatten the room into cool gray-green tones, with faint daylight from unseen windows leaving damp shadows in the corners.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera inherits the shock-reaction flow: a locked, tight frontal close-up at 수리영's seated eye level, less than two feet away, aligned with her downward line of sight toward the unseen desk photographs. Her face occupies most of the center frame; the desk edge is only a blurred lower sliver, keeping the photographs implied below frame while her open mouth and rigid eyes carry the horror.",
        "character_angles": [
          {
            "angle": "facing_camera",
            "body_pose": "frozen over desk",
            "character": "수리영",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "blurred lower foreground edge that implies the disturbing photographs without showing them",
            "directionality_class": "directional_3d",
            "element": "police desk edge",
            "orientation": "the near front edge faces camera as a shallow horizontal strip at the bottom of frame",
            "state": "cluttered, dimly visible"
          },
          {
            "camera_use": "soft institutional background texture behind her head",
            "directionality_class": "content_surface",
            "element": "police office notice board",
            "orientation": "the posted-paper side faces camera but remains out of focus, turning official paperwork into muted blocks of gray",
            "state": "covered with papers, unreadable"
          }
        ],
        "lighting_mood": "Cold police-office daylight and weak fluorescent spill flatten her skin, with a faint green-gray cast that makes the shock feel clinical and airless.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Following the monitor-reveal flow, the camera sits low at desk height in a close three-quarter side position beside the detective's computer station, about three feet from 수리영. Her mouse hand anchors the lower foreground while her tense face sits upper right, both connected by a hard diagonal toward the monitor just off-frame, preserving the tracked shift from her reaction to the computer discovery.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hand tense on mouse",
            "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": "off-axis light source and implied object of attention",
            "directionality_class": "content_surface",
            "element": "detective's computer monitor",
            "orientation": "the glowing screen face is angled away from camera, showing only a narrow bright plane and unreadable spill",
            "state": "on, displaying location-result light"
          },
          {
            "camera_use": "foreground action surface for her hand and mouse",
            "directionality_class": "directional_3d",
            "element": "computer desk",
            "orientation": "the front-left corner and top plane face camera at a low diagonal",
            "state": "messy with office items, damp-looking shadows"
          },
          {
            "camera_use": "small focal prop under her fingers",
            "directionality_class": "directional_3d",
            "element": "computer mouse",
            "orientation": "top shell and left side face camera beneath her palm",
            "state": "in use, slightly glossy"
          }
        ],
        "lighting_mood": "The monitor throws a cold blue-white wedge across her hand and cheek while the rest of the office sinks into muted fluorescent gray.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 21,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera derives from the departure track: low at handlebar height, three meters ahead-left of the bicycle, moving parallel to the curb as 수리영 surges forward from the police station frontage. The framing holds a medium tracking moment, with her torso and pumping legs in the middle of frame, the handlebar cutting across the lower third, and her wind-swept hair pulled backward against the motion.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "driving bicycle pedals",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "receding institutional backdrop that marks her departure point",
            "directionality_class": "directional_3d",
            "element": "police station frontage",
            "orientation": "the entrance side recedes behind her to camera right as the tracking move carries forward",
            "state": "open, official, subdued daylight"
          },
          {
            "camera_use": "motion guide and lower-frame line of travel",
            "directionality_class": "directional_3d",
            "element": "curbside road",
            "orientation": "the curb runs diagonally from lower left toward the rear of frame",
            "state": "dry-to-damp pavement, muted urban texture"
          },
          {
            "camera_use": "moving foreground vehicle structure around her body",
            "directionality_class": "directional_3d",
            "element": "bicycle handlebar",
            "orientation": "front bar and grips angle across the lower frame toward camera-left travel direction",
            "state": "in motion, slightly vibrating"
          }
        ],
        "lighting_mood": "Overcast daylight is desaturated and cool, with a hard urban gray replacing the office fluorescents as the pace snaps outward.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "After the hard cut indoors, the camera holds the interior close-observation flow from the monitor side of the desk, seated eye-level and about one meter from 수리영's face. Her expressionless face is centered more rigidly than before, with only the monitor's unseen glow shaping her features while dark PC-room partitions swallow the edges of the frame.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "hunched toward monitor",
            "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": "수리영 centered alone in monitor glow",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "primary_subject_isolation"
        },
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "primary light source outside the visible frame edge",
            "directionality_class": "content_surface",
            "element": "PC monitor",
            "orientation": "the screen face is just off-camera in front of her, casting contentless blue-white light back onto her face",
            "state": "on, bright, unreadable from this angle"
          },
          {
            "camera_use": "dark side framing that narrows the booth-like space",
            "directionality_class": "directional_3d",
            "element": "PC room partition panels",
            "orientation": "their side edges flank her as vertical dark slabs receding behind the desk",
            "state": "dark, matte, enclosing"
          },
          {
            "camera_use": "background practical ambience",
            "directionality_class": "non_directional",
            "element": "distant PC room darkness",
            "orientation": "",
            "state": "mostly unlit with faint monitor flecks"
          }
        ],
        "lighting_mood": "Blue monitor light isolates her blank face in a pool of cold glow, while the surrounding PC room falls into near-black with restrained neon flecks.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 22,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The shot follows the pursuit-observation flow: a low lateral tracking position beside the moving bicycle at handlebar height, about 1.5 meters from 수리영, matching her speed along the wet coastal road. The frame tightens slightly on her side profile and handlebar, with her body pressed low over the bike, one leg caught at the forceful downward pedal stroke, rain and hair streaking backward across the frame.",
        "character_angles": [
          {
            "angle": "profile_right",
            "body_pose": "folded 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": "horizontal motion plane beneath the bicycle",
            "directionality_class": "reflective_surface",
            "element": "rain-slick coastal road",
            "orientation": "the wet surface reflects gray sky streaks and blurred bicycle movement in broken strips",
            "state": "soaked, rippling with impacts"
          },
          {
            "camera_use": "foreground streaking texture that conveys speed and weather pressure",
            "directionality_class": "non_directional",
            "element": "heavy rain",
            "orientation": "",
            "state": "dense, wind-driven, slanting backward"
          },
          {
            "camera_use": "moving structure defining her compressed posture",
            "directionality_class": "directional_3d",
            "element": "bicycle handlebar and frame",
            "orientation": "the side of the handlebar and front frame run left-to-right through the lower middle of the shot",
            "state": "in motion, rain-beaded"
          }
        ],
        "lighting_mood": "Storm-dark coastal light washes everything blue-gray, with wet asphalt catching dull silver highlights under the downpour.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 23,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera stays just inside the rooftop room entrance at standing eye level, slightly behind and to the side of the open doorway, inheriting the establishing flow. 수리영 is held slightly off-center in the foreground, frozen at the threshold, while the ransacked living room stretches past her toward the open window in the background, making the intrusion visible around her body.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "frozen in doorway",
            "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": "수리영 at threshold",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "ransacked living room visible beyond her",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "threshold frame around her discovery",
            "directionality_class": "directional_3d",
            "element": "open entrance doorway",
            "orientation": "the inner side of the doorframe forms a dark vertical edge beside the camera",
            "state": "open, recently crossed"
          },
          {
            "camera_use": "main evidence of intrusion visible past her shoulder",
            "directionality_class": "directional_3d",
            "element": "overturned dining chairs",
            "orientation": "chair legs jut toward camera at uneven angles across the living room floor",
            "state": "knocked over, disorderly"
          },
          {
            "camera_use": "background escape/intrusion point",
            "directionality_class": "transparent_surface",
            "element": "living room window",
            "orientation": "the open glass frame exposes dim exterior dusk beyond the room",
            "state": "open, damp air entering"
          },
          {
            "camera_use": "floor-level disturbance leading into the room",
            "directionality_class": "non_directional",
            "element": "muddy footprints and scattered household items",
            "orientation": "",
            "state": "fresh-looking, chaotic"
          }
        ],
        "lighting_mood": "Dusk light leaks through the open window in a cold coastal gray, mixing with stale interior shadow and damp textures.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the bedroom, the camera faces the wall head-on at eye level and completes the close-observation dolly-in until the lens is only inches from the pinned photograph. The old photo sits in the center, taking focus as the red painted circle becomes a soft, abstract halo behind it; blood smears remain visible but the object stays naturally scaled against the wall, not oversized beyond plausibility.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "blood-stained old photograph at center of red circle",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "insert",
        "key_bg_elements": [
          {
            "camera_use": "primary focal detail and narrative clue",
            "directionality_class": "content_surface",
            "element": "blood-stained old photograph",
            "orientation": "the image-bearing front face looks directly into camera, showing an aged rural restaurant scene partly obscured by dark blood marks",
            "state": "pinned, wrinkled, stained"
          },
          {
            "camera_use": "occult visual field behind the clue",
            "directionality_class": "content_surface",
            "element": "red painted circle on bedroom wall",
            "orientation": "the painted face of the wall is visible to camera as a red ring surrounding the photograph",
            "state": "fresh-looking, uneven, ominous"
          },
          {
            "camera_use": "supporting surface for the pinned object",
            "directionality_class": "content_surface",
            "element": "bedroom wall",
            "orientation": "the marked wall face is perpendicular to camera, flattened into a tense graphic plane",
            "state": "dirty, marked, pierced by pin"
          }
        ],
        "lighting_mood": "Dim dusk spill and a faint reddish contamination from the painted circle create a dry, occult unease against otherwise muted gray-brown walls.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera adopts the withdraw flow from outside the rooftop-room threshold, facing inward from just beyond the doorway at eye level as 수리영 reaches the exit. She stops in the doorway area with the backpack on her shoulders, her body held in the middle-right of frame while the clenched, crumpled photograph is kept visible at her lowered hand as the final point of attention.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "halted beyond threshold",
            "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": "수리영 stopped outside threshold",
              "screen_zone": "middle_right",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "clenched crumpled photograph in lowered hand",
              "screen_zone": "lower_right",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "boundary between violated home and departure",
            "directionality_class": "directional_3d",
            "element": "rooftop room doorway",
            "orientation": "the outer side of the frame faces camera, with the dark interior visible beyond her shoulder",
            "state": "open, shadowed"
          },
          {
            "camera_use": "visible narrative clue in her grip",
            "directionality_class": "content_surface",
            "element": "crumpled old photograph",
            "orientation": "only the creased front face catches partial light in her hand, its content mostly hidden by her fist",
            "state": "wrinkled, blood-stained, tightly gripped"
          },
          {
            "camera_use": "dark negative space behind her",
            "directionality_class": "directional_3d",
            "element": "ransacked interior behind doorway",
            "orientation": "the room recedes inward behind her, showing broken silhouettes rather than clear details",
            "state": "messy, dim"
          }
        ],
        "lighting_mood": "Late dusk outlines her with a cool exterior rim while the room behind her remains brown-gray and violated, the photograph catching the last sickly highlight.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 24,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At the end of the pier, the camera holds low just above dock height and faces straight into the fog-bound water channel, inheriting the boat-reveal endpoint. The small fishing boat's bow is centered in the middle distance, pushing a V-shaped wake that spreads across the lower foreground water, while fog compresses the harbor into a flat, ghostly corridor.",
        "character_angles": [],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary moving subject emerging from fog",
            "directionality_class": "directional_3d",
            "element": "small fishing boat bow",
            "orientation": "the front bow faces camera directly, cutting toward the pier through the channel",
            "state": "approaching, wet, engine wake active"
          },
          {
            "camera_use": "foreground motion texture leading the eye to the boat",
            "directionality_class": "reflective_surface",
            "element": "harbor water surface",
            "orientation": "the surface reflects the gray fog and breaks into ripples from the bow wake spreading toward camera",
            "state": "dark, disturbed, rain-cooled"
          },
          {
            "camera_use": "atmospheric obstruction and supernatural veil",
            "directionality_class": "non_directional",
            "element": "dense harbor fog",
            "orientation": "",
            "state": "thick, low, swallowing background detail"
          },
          {
            "camera_use": "stable low reference at frame edge",
            "directionality_class": "directional_3d",
            "element": "pier end",
            "orientation": "the dock edge sits low and nearly frontal, anchoring the camera at water level",
            "state": "wet, empty"
          }
        ],
        "lighting_mood": "Post-rain dusk turns the harbor into muted blue-gray vapor, with no hard sun and only dull water reflections under the fog.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 4,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera sits a few steps behind 인우 at shoulder height, slightly offset so his back and working shoulder occupy the left foreground while 수리영 is visible beyond him about two meters away. A longer lens compresses the dock space, making her fixed stare feel close and direct over his back while the rope and boat edge remain practical, grounded barriers between them.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "bending over mooring rope",
            "character": "인우",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_left",
            "body_pose": "leaning toward him",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C18",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "인우's back at mooring line",
              "screen_zone": "middle_left",
              "target_id": "",
              "target_kind": "background"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "looks_toward",
              "gesture_target_label": "인우",
              "label": "수리영 staring from behind him",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "foreground task object defining Inwoo's turned-away posture",
            "directionality_class": "directional_3d",
            "element": "mooring rope",
            "orientation": "the rope runs from his hands down toward the dock cleat, angled away from camera",
            "state": "wet, being secured"
          },
          {
            "camera_use": "partial barrier and source of damp texture",
            "directionality_class": "directional_3d",
            "element": "boat gunwale",
            "orientation": "the side edge of the boat cuts horizontally behind 인우 at waist level",
            "state": "wet, recently docked"
          },
          {
            "camera_use": "compressed background atmosphere around 수리영",
            "directionality_class": "non_directional",
            "element": "foggy empty harbor",
            "orientation": "",
            "state": "quiet, desaturated, nearly empty"
          },
          {
            "camera_use": "shared ground plane between the two characters",
            "directionality_class": "reflective_surface",
            "element": "wet dock planks",
            "orientation": "the slick planks reflect gray sky and faint silhouettes beneath their feet",
            "state": "rain-wet, dark"
          }
        ],
        "lighting_mood": "Soft fog-diffused dusk flattens the figures into gray silhouettes, with damp wood and rope catching subdued silver highlights.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 6,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From behind 수리영 at standing eye level, the camera has stopped 3–4 meters back on the wet pier, holding her small back-facing figure in the lower center while the foggy sea opens into heavy negative space ahead. This is an observer view, not her POV; her smartphone hand is readable at her ear, and the pier planks lead the eye toward the blank water without revealing what waits inside the mist.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "phone held to ear",
            "character": "수리영",
            "gaze_direction_kind": "distant",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "dominant background and negative space swallowing the horizon",
            "directionality_class": "non_directional",
            "element": "fog-covered sea",
            "orientation": "",
            "state": "dense, gray, visibility almost erased"
          },
          {
            "camera_use": "wet leading lines under the character, grounding her at the pier edge",
            "directionality_class": "directional_3d",
            "element": "pier planks",
            "orientation": "long planks run away from camera toward the sea, their slick top faces visible",
            "state": "rain-wet and darkened"
          },
          {
            "camera_use": "low horizon separation behind her silhouette",
            "directionality_class": "non_directional",
            "element": "distant sea mist",
            "orientation": "",
            "state": "thick and drifting"
          }
        ],
        "lighting_mood": "Muted blue-gray dusk light lies flat across damp wood and fog, with no warm relief except faint residual sunset in the mist.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 25,
        "shot_index": 9,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "Inside the rooftop room living area, the static camera holds a wide eye-level composition slightly off the doorway axis, with 혜수 centered amid the wrecked room and her smartphone clearly pressed to her ear. The surrounding clutter takes up most of the frame around her, making her look stranded in the damaged domestic space rather than isolated by a close-up.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "phone pressed to ear",
            "character": "혜수",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "spatial context around 혜수, emphasizing disorder and emotional aftermath",
            "directionality_class": "non_directional",
            "element": "messy rooftop room living area",
            "orientation": "",
            "state": "ransacked, scattered, and unsettled"
          },
          {
            "camera_use": "off-axis frame reference behind the room, suggesting the source of later wind noise",
            "directionality_class": "directional_3d",
            "element": "entrance door",
            "orientation": "door slab is seen at a slight angle from inside the room, its inner face toward camera",
            "state": "closed but loose enough to rattle"
          },
          {
            "camera_use": "floor-level texture around her feet, making the room feel damp and neglected",
            "directionality_class": "non_directional",
            "element": "scattered household items",
            "orientation": "",
            "state": "disordered and partly overturned"
          }
        ],
        "lighting_mood": "Dim late-evening interior light mixes with cold window spill, leaving the room in dusty gray-brown tones with a hollow, wind-chilled mood.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 26,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "From the open deck, slightly off 수리영's shoulder at standing eye level, the camera holds a medium-wide static frame: her extended arm and map sit in the left foreground while 인우 remains across the deck in the midground. The sea and wet deck stay visible behind them, but the offered map becomes the pressure point between their bodies.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "arm extending map",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C18",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "crouched on deck edge",
            "character": "인우",
            "gaze_direction_kind": "down",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "reaches_for",
              "gesture_target_label": "Inwoo with the offered map",
              "label": "Suriyeong offering map",
              "screen_zone": "lower_left",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Inwoo receiving pressure",
              "screen_zone": "middle_right",
              "target_id": "C18",
              "target_kind": "character"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "grounding plane and visual path between the two characters",
            "directionality_class": "directional_3d",
            "element": "wet fishing boat deck",
            "orientation": "deck surface faces camera at a shallow angle, leading from foreground hand to 인우",
            "state": "slick with sea spray"
          },
          {
            "camera_use": "low boundary framing the figures against open water",
            "directionality_class": "directional_3d",
            "element": "boat gunwale",
            "orientation": "side rail runs laterally behind the characters, its inner face visible",
            "state": "damp and worn"
          },
          {
            "camera_use": "background emptiness beyond the boat",
            "directionality_class": "non_directional",
            "element": "open sea at dusk",
            "orientation": "",
            "state": "darkening and slightly fogged"
          }
        ],
        "lighting_mood": "Cold coastal dusk wraps the deck in desaturated blue-gray, with wet surfaces catching faint amber from the sinking sun.",
        "perception_mode": "direct",
        "perspective": "over_shoulder",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 1,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "The camera is tight near 인우's seated eye level in a steady frontal three-quarter close-up, compressing his widened eyes against a blurred deck background. 수리영's hand and the old photograph intrude only at the lower frame edge, enough to explain his stare without stealing focus from his frozen reaction.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "seated recoil frozen",
            "character": "인우",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "photo held forward",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C18",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "soft compressed background behind 인우's face",
            "directionality_class": "directional_3d",
            "element": "deck structure",
            "orientation": "blurred vertical and horizontal boat surfaces sit behind his head, their exact faces indistinct",
            "state": "wet and dim"
          },
          {
            "camera_use": "foreground clue at frame edge linking his reaction to the evidence",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "front image side is angled up toward 인우 and partially toward camera, showing faded figures on creased paper",
            "state": "creased, worn, and damp-looking"
          }
        ],
        "lighting_mood": "Low dusk light flattens his face into gray-green shadow, while a faint wet highlight catches his eyes and makes the panic feel trapped.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "수리영 appears only as a partial shoulder/hand presence at the frame edge; a full outlook reference would not be visually useful.",
            "subject_id": "C06"
          }
        ]
      },
      {
        "camera_direction": "From just inside the wheelhouse entrance, the handheld camera settles low at upper-torso height and faces outward into the doorway. 수리영 blocks the middle of the frame from behind with both arms stretched across the opening, while 인우 is stopped outside beyond her, unable to reach the controls.",
        "character_angles": [
          {
            "angle": "back_to_camera",
            "body_pose": "arms braced wide",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C18",
            "subject_state": "alive"
          },
          {
            "angle": "three_quarter_right",
            "body_pose": "halted at doorway",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Suriyeong blocking doorway",
              "screen_zone": "middle_center",
              "target_id": "C06",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Inwoo blocked outside",
              "screen_zone": "middle_center",
              "target_id": "C18",
              "target_kind": "character"
            },
            {
              "depth_plane": "midground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "wheelhouse doorway opening",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "shared_space_relation"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "hard architectural frame around the confrontation",
            "directionality_class": "directional_3d",
            "element": "wheelhouse doorway",
            "orientation": "inner jambs and threshold face the camera from inside, forming a rigid rectangular frame around 수리영",
            "state": "open and cramped"
          },
          {
            "camera_use": "partial interior reference behind the camera-side position",
            "directionality_class": "directional_3d",
            "element": "wheelhouse control area",
            "orientation": "control surfaces are mostly off to camera side, implied by the interior angle",
            "state": "dim and confined"
          },
          {
            "camera_use": "exterior deck space behind 인우",
            "directionality_class": "directional_3d",
            "element": "open deck outside doorway",
            "orientation": "deck surface recedes away from the doorway toward the sea",
            "state": "wet and moving underfoot"
          }
        ],
        "lighting_mood": "The doorway cuts cold exterior dusk against a darker cockpit interior, leaving 수리영's blocking shape edged in damp gray backlight.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 27,
        "shot_index": 8,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "At waist-to-chest height beside the ship's wheel, the handheld camera crowds in across 인우's steering arm toward 수리영's face. Her two hands clamp his forearm in the foreground, occupying the lower center, while her glare cuts through just beyond the struggling arms.",
        "character_angles": [
          {
            "angle": "three_quarter_right",
            "body_pose": "gripping his forearm",
            "character": "수리영",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C18",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "arm locked on wheel",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "physical anchor of the struggle, tight beside the characters' hands",
            "directionality_class": "directional_3d",
            "element": "ship's wheel",
            "orientation": "round wheel is seen obliquely from the side, with spokes angled toward 인우's gripped arm",
            "state": "in use, partly turned"
          },
          {
            "camera_use": "cramped interior boundary behind 수리영",
            "directionality_class": "directional_3d",
            "element": "cockpit console",
            "orientation": "console face angles away from camera, creating a narrow wedge of space",
            "state": "worn and dim"
          },
          {
            "camera_use": "cold exterior haze glimpsed through the cockpit",
            "directionality_class": "transparent_surface",
            "element": "cockpit window",
            "orientation": "salt-marked glass faces camera at a slant, with foggy dusk sea faintly visible beyond",
            "state": "dirty and damp"
          }
        ],
        "lighting_mood": "Handheld shadows pulse in the cramped cockpit, with cold blue dusk through dirty glass and weak amber instrument spill catching wet skin and knuckles.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 2,
        "subject_reference_policy": []
      },
      {
        "camera_direction": "A locked-off low overhead macro angle hovers only inches above the old photograph, with 수리영's finger entering from the side to press firmly onto the child's flat image. The frame is an isolated evidence insert: the photo and fingertip sit central, with only a narrow margin of dark cockpit surface around them.",
        "character_angles": [
          {
            "angle": "looking_away",
            "body_pose": "finger pressing photo",
            "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 evidence surface under the pointing finger",
            "directionality_class": "content_surface",
            "element": "old photograph",
            "orientation": "front image face is visible to camera, showing a faded child figure under the fingertip and creased paper around it",
            "state": "wrinkled, aged, and slightly curled"
          },
          {
            "camera_use": "thin surrounding context to keep the insert grounded in the cockpit",
            "directionality_class": "directional_3d",
            "element": "dark helm surface",
            "orientation": "flat top surface faces upward toward camera around the photograph edges",
            "state": "scratched and damp"
          }
        ],
        "lighting_mood": "A small, cold cockpit light skims the creases of the photo, turning the faded child image into a pale, accusatory detail against the murky interior.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 4,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "Only 수리영's fingertip is visible in an evidence insert; identity should be conveyed by action rather than a full character reference.",
            "subject_id": "C06"
          }
        ]
      },
      {
        "camera_direction": "From eye level behind 인우's shoulder inside the cockpit, the dolly inches forward while his dark shoulder forms a blurred foreground frame on the left. Focus stays past him on the rear wall, where many vivid red circles scatter across the background like an occult warning becoming clearer with each centimeter.",
        "character_angles": [
          {
            "angle": "over_shoulder",
            "body_pose": "shoulder blocking frame",
            "character": "인우",
            "gaze_direction_kind": "off_screen",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "foreground",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "Inwoo shoulder foreground frame",
              "screen_zone": "lower_left",
              "target_id": "C18",
              "target_kind": "character"
            },
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "rear wall with red circles",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "medium",
        "key_bg_elements": [
          {
            "camera_use": "main focal reveal beyond 인우's shoulder",
            "directionality_class": "content_surface",
            "element": "cockpit rear wall with red circles",
            "orientation": "interior wall face is fully visible beyond the shoulder, marked with many uneven vivid red circles",
            "state": "dirty wall, markings fresh-looking and disturbing"
          },
          {
            "camera_use": "foreground obstruction shaping a voyeuristic reveal",
            "directionality_class": "directional_3d",
            "element": "인우's shoulder silhouette",
            "orientation": "back side of his shoulder faces camera, soft and dark at the frame edge",
            "state": "tense and still"
          },
          {
            "camera_use": "claustrophobic side boundary of the cockpit",
            "directionality_class": "transparent_surface",
            "element": "salt-streaked cockpit window",
            "orientation": "clouded glass catches faint exterior fog while partially revealing the dim sea outside",
            "state": "dirty, damp, and low-visibility"
          }
        ],
        "lighting_mood": "The cockpit falls into green-gray shadow while the red wall markings stay unnaturally saturated, creating grounded realism edged with occult dread.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 6,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "인우 is present only as an out-of-focus shoulder used as a framing obstruction; detailed identity reference is unnecessary for this shot.",
            "subject_id": "C18"
          }
        ]
      },
      {
        "camera_direction": "The dolly-in resolves into near stillness just below 인우's eye line, looking slightly upward into an extreme close-up of his eyes and lowered brow. 수리영 is only a soft collapsed shape against his shoulder at the lower edge, while his gaze angles down past the lens toward her with controlled coldness.",
        "character_angles": [
          {
            "angle": "three_quarter_left",
            "body_pose": "chin dipped coldly",
            "character": "인우",
            "gaze_direction_kind": "looks_at_character",
            "gaze_target_id": "C06",
            "subject_state": "alive"
          },
          {
            "angle": "over_shoulder",
            "body_pose": "slumped against shoulder",
            "character": "수리영",
            "gaze_direction_kind": "closed_eyes",
            "gaze_target_id": null,
            "subject_state": "alive"
          }
        ],
        "frame_spatial_contract": null,
        "framing_scale": "close",
        "key_bg_elements": [
          {
            "camera_use": "barely visible claustrophobic background behind the eye close-up",
            "directionality_class": "directional_3d",
            "element": "dark cockpit interior",
            "orientation": "interior surfaces sit behind 인우 at indistinct angles, mostly swallowed by shallow focus",
            "state": "dim and cramped"
          },
          {
            "camera_use": "faint color threat bleeding behind the face",
            "directionality_class": "content_surface",
            "element": "red-marked wall fragments",
            "orientation": "small out-of-focus portions of the wall face are visible behind him, carrying traces of red circular markings",
            "state": "blurred but ominous"
          }
        ],
        "lighting_mood": "A low, cold cockpit glow catches only the wet highlights in 인우's eyes, while the rest of his face sinks into desaturated coastal shadow.",
        "perception_mode": "direct",
        "perspective": "observer",
        "pov_character": "",
        "scene_index": 28,
        "shot_index": 10,
        "subject_reference_policy": [
          {
            "policy": "generic_descriptor_allowed",
            "policy_type": "identity_reference",
            "reason": "수리영 is only a blurred collapsed partial shape at the bottom of the frame; full outlook reference would distract from 인우's eye close-up.",
            "subject_id": "C06"
          }
        ]
      },
      {
        "camera_direction": "Low-to-mid over the dark water, the tracking camera faces the massive fog wall head-on in a wide composition, letting the fog occupy the upper and central frame like a solid barrier. The fishing boat's direction is suggested from low foreground water movement and the open channel leading toward the wall, without needing the boat centered in the image.",
        "character_angles": [],
        "frame_spatial_contract": {
          "constraints": [
            {
              "depth_plane": "background",
              "gesture_action": "none",
              "gesture_target_label": "",
              "label": "towering fog wall",
              "screen_zone": "middle_center",
              "target_id": "",
              "target_kind": "background"
            }
          ],
          "reason": "required_background_position"
        },
        "framing_scale": "wide",
        "key_bg_elements": [
          {
            "camera_use": "primary visual obstacle blocking forward movement",
            "directionality_class": "non_directional",
            "element": "towering fog wall",
            "orientation": "",
            "state": "dense, dark, and seemingly impenetrable"
          },
          {
            "camera_use": "low foreground plane carrying the camera toward the barrier",
            "directionality_class": "reflective_surface",
            "element": "dark sea surface",
            "orientation": "water reflects dim gold sunset streaks and the gray mass of fog in broken ripples",
            "state": "restless and metallic"
          },
          {
            "camera_use": "thin atmospheric backlight behind the fog mass",
            "directionality_class": "non_directional",
            "element": "fading sunset glow",
            "orientation": "",
            "state": "muted gold nearly swallowed by mist"
          }
        ],
        "lighting_mood": "The palette shifts to bruised blue-gray and tarnished gold, with the fog absorbing the last sunset light like a supernatural boundary.",
        "perception_mode": "direct",
        "perspective": "omniscient",
        "pov_character": "",
        "scene_index": 29,
        "shot_index": 2,
        "subject_reference_policy": []
      }
    ],
    "total": 60,
    "failed_batches": 0
  },
  "step_id": "shot_staging",
  "run_id": "3284215e-a570-4fd7-87e9-ccdca15ce8e7",
  "resolved_model": "gpt",
  "updated_at": "2026-06-01T00:24:41.768865+00:00",
  "schema_version": 6,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}