{
  "status": "completed",
  "completed_count": 29,
  "applicable_count": 29,
  "failed_count": 0,
  "data": {
    "scenes": [
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Ground-level camera half-hidden inside dense underbrush, about 20 cm above the forest floor, close to a single fallen shoe and blood-marked leaves at dusk",
            "stage_index": 1,
            "stage_label": "establishing_evidence",
            "transition_to_next": "The camera lifts slightly and pushes forward through the brush, following the line of blood deeper into the trees.",
            "visual_focus": "the abandoned shoe, blood on leaves, and disturbed forest floor"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Low handheld camera moving through waist-high bushes, about 1 meter above ground, trailing just behind and beside the fleeing man at close distance",
            "stage_index": 2,
            "stage_label": "approach_pursuit",
            "transition_to_next": "The camera closes the gap and rises toward the man's upper body, shifting attention from the trail to his fear and injury.",
            "visual_focus": "the fleeing man forcing his way through branches and the bloody wound on his thigh"
          },
          {
            "camera_motion": "track",
            "camera_position": "Tight moving camera at chest height, slightly behind the man's shoulder, tracking with his unstable run through the darkening forest",
            "stage_index": 3,
            "stage_label": "close_observation_threat",
            "transition_to_next": "A hard cut jumps ahead of the man to a low frontal position in his path, preserving his forward momentum as he runs into the frame.",
            "visual_focus": "the man's terrified face and the dark shape gathering behind him"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Low frontal camera about 1.2 meters high, several meters ahead of the man on the forest path, backing up as he rushes toward lens",
            "stage_index": 4,
            "stage_label": "impact_reveal",
            "transition_to_next": "",
            "visual_focus": "the dark figure crashing onto the man's shoulders and both bodies falling toward the forest floor"
          }
        ],
        "flow_summary": "카메라는 숲바닥의 신발과 핏자국에서 출발해 피의 흔적을 따라 덤불 속으로 들어가며 도망치는 남자를 추적한다. 마지막에는 남자 앞쪽으로 위치를 점프해, 정면에서 검은 인영이 덮치는 충격을 포착한다.",
        "scene_index": 1,
        "shot_assignments": [
          {
            "deviation_note": "Frame remains especially low and still, letting the shoe and bloodied leaves dominate the foreground while the surrounding forest falls into darkness.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Camera holds the frontal axis but widens slightly and drops with the motion so the impact on the shoulders and the fall to the ground are captured in one violent beat.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Across the narrow alley at chest height, about 5 meters from the utility pole, looking sideways under the dim streetlight",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow push toward the two bodies locked against the utility pole, narrowing the alley space around them.",
            "visual_focus": "the man and the woman pressed together near the utility pole in the dark alley"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Mid-alley at shoulder height, about 2 meters from the pair, slightly offset to the man's side",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The push-in resolves into a tighter side angle, then the camera tracks a half step around the pair to expose the man's mouth at the woman's neck.",
            "visual_focus": "the man's lifted face and unnatural eyes as his breathing turns predatory"
          },
          {
            "camera_motion": "track",
            "camera_position": "Close side position at neck height, less than 1 meter from the pair, parallel to the wall and utility pole",
            "stage_index": 3,
            "stage_label": "attack_detail",
            "transition_to_next": "As the woman's strength gives out, the camera follows the downward motion from the neck line toward the pavement, letting the bodies fall out of the tight side frame.",
            "visual_focus": "the man's teeth tearing into the woman's neck from a stark side profile"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low near the pavement beside the fallen woman, about 40 centimeters above ground, angled slightly down the alley",
            "stage_index": 4,
            "stage_label": "aftermath",
            "transition_to_next": "",
            "visual_focus": "the woman collapsed on the ground with blood at her neck, her body limp in the dim pool of streetlight"
          }
        ],
        "flow_summary": "카메라는 희미한 가로등 아래 전봇대에 얽힌 두 사람을 골목 건너편에서 바라보다가 천천히 접근해 남자의 얼굴과 목덜미의 공격 순간으로 좁혀 들어간다. 이후 여자가 힘없이 무너지는 움직임을 따라 시선이 아래로 떨어지며, 바닥에 쓰러진 몸을 낮은 위치에서 붙잡는다.",
        "scene_index": 2,
        "shot_assignments": [
          {
            "deviation_note": "Keep the frame locked in a tight side profile so the bite lands at the center of the movement path, with the background reduced to the utility pole and dark alley texture.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Settle the camera slightly lower than the stage default to emphasize the woman's slack posture on the pavement while retaining the same dim streetlight direction.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "News camera at shoulder height outside the forest crime scene, several meters behind the police line, looking inward from a public-access edge",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins tracking laterally along the police line, keeping the scene boundary in frame while searching deeper into the site.",
            "visual_focus": "the police line, the forest crime scene, and police officers working inside the perimeter"
          },
          {
            "camera_motion": "track",
            "camera_position": "News camera at shoulder height moving parallel to the perimeter, now closer to the recovery area and angled slightly across the scene",
            "stage_index": 2,
            "stage_label": "survey",
            "transition_to_next": "The camera eases past the recovery activity and pans deeper into the cluster of detectives, settling on the commanding figure at the center.",
            "visual_focus": "police officers handling a covered stretcher and the organized recovery work inside the scene"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "News camera at chest-to-eye height just outside the detective cluster, medium distance from Hyesu, aligned slightly below her eye line",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Hyesu standing among detectives with a radio near her mouth, staring forward as she directs the investigation"
          }
        ],
        "flow_summary": "뉴스 카메라는 숲속 사건 현장의 경계에서 시작해 폴리스 라인과 수습 현장을 훑고, 형사들 무리 한가운데 있는 혜수에게 점점 접근한다. 마지막에는 현장을 지휘하는 혜수의 상체를 TV 뉴스 화면의 중심으로 고정한다.",
        "scene_index": 3,
        "shot_assignments": [
          {
            "deviation_note": "Frames Hyesu tighter as an upper-body TV-news image, holding the radio near her mouth while the surrounding detectives remain secondary background context.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "crane",
            "camera_position": "High above the outskirts, at rooftop level but set far back, looking down at a cluster of aging multi-family houses in harsh daylight",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera descends and glides forward toward one particular rooftop, narrowing the view from the neighborhood to the building.",
            "visual_focus": "the dense old residential rooftops and the surrounding urban outskirts"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Several meters above and in front of the target building, moving toward the rooftop at a shallow downward angle",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The forward movement slows and settles into a steady framed view of the rooftop room.",
            "visual_focus": "the sunlit rooftop with laundry lines, a water tank, and the worn rooftop room coming into clear view"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye-level to slightly elevated on the rooftop edge, medium-wide distance from the old rooftop room, facing it across the roof surface",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "the weathered rooftop room, laundry lines, water tank, and sun-beaten rooftop details"
          }
        ],
        "flow_summary": "카메라는 인천 변두리의 낡은 주거지를 높은 부감으로 훑은 뒤, 특정 다세대 주택 옥상으로 천천히 내려와 접근한다. 마지막에는 빨랫줄과 물탱크가 있는 옥탑방 전경에 고정되어 불안한 지역 분위기를 조용히 강조한다.",
        "scene_index": 4,
        "shot_assignments": [
          {
            "deviation_note": "Frame the rooftop room slightly wider than the stage default so the laundry lines and water tank remain clearly visible as environmental markers.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the small living room, waist height, starting near the sunlit sink and kitchen counter, about 2 meters from the faucet, sliding laterally toward the TV side of the room",
            "stage_index": 1,
            "stage_label": "establishing_to_observation",
            "transition_to_next": "The camera continues its lateral move past the kitchen line and settles into Minsuk's eyeline, then pans with her attention toward the room door as Suriyoung enters.",
            "visual_focus": "the running faucet, unfinished herbs, steaming pot, then Minsuk watching the turned-on TV with a dark expression"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Mid-room between the kitchen counter and dining table, chest height, 1.5 meters from Minsuk, angled to include the room door and table in the same shallow space",
            "stage_index": 2,
            "stage_label": "domestic_exchange",
            "transition_to_next": "After the table exchange, the scene makes a logical cut to the entrance area, resetting the camera near the front door while preserving the morning routine's forward movement.",
            "visual_focus": "Minsuk turning away from the TV toward Suriyoung, then the mother and daughter at the table"
          },
          {
            "camera_motion": "cut",
            "camera_position": "Near the front door, shoulder height, 2.5 meters back from the entrance threshold, facing inward toward Suriyoung preparing to leave",
            "stage_index": 3,
            "stage_label": "transition_to_departure",
            "transition_to_next": "From the wider entrance view, the camera tracks closer as Suriyoung moves into Minsuk's personal space for the affectionate goodbye.",
            "visual_focus": "Suriyoung at the doorway and Minsuk nearby in the entrance area"
          },
          {
            "camera_motion": "track",
            "camera_position": "At the entrance area, shoulder height, moving from a medium two-shot at 1.5 meters to a closer position beside Minsuk's shoulder, slightly behind Suriyoung",
            "stage_index": 4,
            "stage_label": "embrace",
            "transition_to_next": "The camera cuts into Suriyoung's point of view, dropping from the embrace to the inside of Minsuk's wrist for the small detail she notices.",
            "visual_focus": "Suriyoung wrapping her arms around Minsuk's neck and burying her face against Minsuk's shoulder"
          },
          {
            "camera_motion": "static",
            "camera_position": "Suriyoung's point-of-view position, very close to Minsuk's inner wrist, below chest height, macro distance of about 20 centimeters",
            "stage_index": 5,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the dark small circular mark on the inside of Minsuk's wrist"
          }
        ],
        "flow_summary": "카메라는 싱크대와 TV가 있는 생활 공간에서 민숙의 불안한 시선을 따라가며 모녀의 아침 대화로 이동한다. 이후 현관 쪽으로 논리적 컷을 거쳐 작별 포옹에 밀착하고, 수리영의 시선으로 민숙 손목의 표식을 가까이 포착한다.",
        "scene_index": 5,
        "shot_assignments": [
          {
            "deviation_note": "Frame Minsuk in a tight side profile with the TV glow implied at the edge of frame, holding her expression longer than the surrounding kitchen movement.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten the two-shot so Suriyoung's face is mostly hidden against Minsuk's shoulder, emphasizing physical closeness rather than the doorway space.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 4
          },
          {
            "deviation_note": "Shift fully into Suriyoung's POV and use a macro close-up; the wrist mark becomes the only sharp focal point.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "On the seaward side of the coastal road, slightly ahead of the bicycle lane, at chest height and about 6 meters from Suriyeong, moving parallel with the road",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera vehicle matches Suriyeong's speed and gradually slides closer toward the bicycle, tightening from the road-and-sea view into her riding space.",
            "visual_focus": "the blue sea, the coastal road, and Suriyeong riding through the open daylight"
          },
          {
            "camera_motion": "track",
            "camera_position": "Alongside and slightly in front of Suriyeong, at handlebar-to-chest height, about 1.5 meters away, angled back toward her upper body with the sea behind her",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera continues tracking at the same speed, then begins to drift a little farther ahead as the offscreen barking sound pulls attention toward the road ahead.",
            "visual_focus": "Suriyeong smiling, holding the bicycle handlebar, her hair blown backward by the ride"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Still moving just ahead of Suriyeong on the coastal road, at chest height and about 2 meters from her front quarter",
            "stage_index": 3,
            "stage_label": "reaction_hint",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's forward direction and the unseen source of the barking sound beyond the edge of frame"
          }
        ],
        "flow_summary": "카메라는 해안도로와 바다를 함께 잡는 병렬 트래킹으로 출발해, 자전거 속도에 맞춰 수리영의 상체 가까이로 자연스럽게 붙는다. 마지막에는 주행 흐름을 유지한 채 개 짖는 소리가 나는 전방으로 시선을 살짝 열어 둔다.",
        "scene_index": 6,
        "shot_assignments": [
          {
            "deviation_note": "Keep the framing as a bright medium close shot: include the bicycle handlebar in the lower frame and leave enough background space for the blue sea and wind-blown hair to read clearly.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Just outside the kennel gate, at the large dog's eye level, about 1.5 meters from the bars, centered square-on to the cage front",
            "stage_index": 1,
            "stage_label": "establishing_threat",
            "transition_to_next": "The camera begins to slide laterally along the kennel bars, following the dog's eyeline outward toward Suri-young and then lowering as the tension breaks.",
            "visual_focus": "the large black dog standing against the bars with its teeth exposed"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low beside the kennel threshold, roughly knee height, angled toward the floor near the dog's rear flank, close enough to see the veterinarian's hand work safely behind the subdued dog",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After the injection, the camera rises with Suri-young's attention toward the row of dogs, then a practical cut compresses time and relocates the view to the grooming area.",
            "visual_focus": "the prone dog on the floor and the syringe held by the middle-aged veterinarian"
          },
          {
            "camera_motion": "static",
            "camera_position": "At the grooming station, chest height and about 1 meter in front of Suri-young, framed as a medium close view over the work surface",
            "stage_index": 3,
            "stage_label": "task_pause",
            "transition_to_next": "",
            "visual_focus": "Suri-young holding a small dog while gripping grooming scissors"
          }
        ],
        "flow_summary": "카메라는 철장 정면의 위협적인 개에서 시작해, 개가 수그러드는 순간 낮은 위치로 이동해 주사 장면을 붙잡는다. 이후 수리영의 바쁜 동선을 따라 보호원 안쪽 미용 공간으로 시간 압축 컷을 넘어가며, 작은 개를 안은 수리영의 상체에서 멈춘다.",
        "scene_index": 7,
        "shot_assignments": [
          {
            "deviation_note": "",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Frame tighter on the dog's body and the veterinarian's hand so the syringe at the rear flank becomes the dominant detail.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold the frame still for a brief suspended beat, emphasizing Suri-young frozen mid-task with the small dog and scissors.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At street level, slightly ahead and to the left of the bicycle lane, waist-high, about 3 meters from Suriyeong, moving backward through the neon-lit market street",
            "stage_index": 1,
            "stage_label": "establishing_track",
            "transition_to_next": "The camera keeps retreating as Suriyeong rides toward the large market entrance, then narrows the distance while guiding her into the doorway.",
            "visual_focus": "Suriyeong riding through street stalls, taxis, signs, and pedestrians"
          },
          {
            "camera_motion": "track",
            "camera_position": "Just inside the market entrance at chest height, 2 meters in front of Suriyeong, backing between display aisles as she searches the interior",
            "stage_index": 2,
            "stage_label": "interior_search",
            "transition_to_next": "As Suriyeong spots a familiar female employee, the camera eases sideways and settles into a frontal conversation position.",
            "visual_focus": "Suriyeong scanning the aisles and looking for her mother"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the market aisle, chest-height, directly facing Suriyeong from just beyond the female employee's shoulder line, about 1.5 meters away",
            "stage_index": 3,
            "stage_label": "question_and_confusion",
            "transition_to_next": "After the employee's answer and the male employee's added comment, the camera cuts to a moving position leading Suriyeong back toward the exit.",
            "visual_focus": "Suriyeong's face as she questions the employee and absorbs the unexpected news"
          },
          {
            "camera_motion": "track",
            "camera_position": "Near the automatic doors, chest-height, 2 meters ahead of Suriyeong, moving backward from the interior threshold to the sidewalk",
            "stage_index": 4,
            "stage_label": "exit_transition",
            "transition_to_next": "The camera continues through the doorway, then arcs around to face Suriyeong as she stops outside and brings the phone to her ear.",
            "visual_focus": "Suriyeong leaving the market while checking her phone"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Outside the market on the sidewalk, slightly low and close in front of Suriyeong, about 1 meter away, angled upward toward her face and the darkening sky",
            "stage_index": 5,
            "stage_label": "phone_reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyeong holding the phone to her ear, looking up into the evening sky with rising worry"
          }
        ],
        "flow_summary": "카메라는 번화가 속 자전거를 따라 움직이다가 마트 안으로 이어 들어가 수리영의 수색과 대화를 정면에서 붙잡는다. 이후 다시 자동문 밖으로 빠져나와, 연락이 닿지 않는 순간의 불안한 얼굴을 낮은 위치에서 올려다보며 마무리한다.",
        "scene_index": 8,
        "shot_assignments": [
          {
            "deviation_note": "Frame wider than the stage default to hold Suriyeong's full body on the bicycle at the pedal-down moment, letting the surrounding neon and street stalls streak around her.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten from the conversation setup to a clean frontal view of Suriyeong, keeping the employee only as an implied off-camera presence.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold the upward angle after the tilt completes, emphasizing her bitten lip and fixed expression against the darkened sky.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide roadside position on the seaward side of the coastal road, about 1.4 meters high and several meters back from the lane, looking across the road toward the dark night sea",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyeong approaches from down the road, the camera begins to move laterally along the roadside to match her direction of travel.",
            "visual_focus": "the empty coastal road, the dark sea beyond it, and Suriyeong entering the frame on a bicycle"
          },
          {
            "camera_motion": "track",
            "camera_position": "Parallel tracking position beside the coastal road, roughly handlebar height to chest height, maintaining a medium side distance from Suriyeong as she rides",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The tracking move carries the camera with her toward a streetlamp, then gradually eases down as she reaches the pool of light.",
            "visual_focus": "Suriyeong riding quickly along the coastal road"
          },
          {
            "camera_motion": "static",
            "camera_position": "Close side position under the streetlamp on the seaward side of the road, about 1.2 meters high and close enough to frame Suriyeong’s upper body, hands, handlebar, and one pedal in profile",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyeong leaning forward over the bicycle handlebar with the dark sea behind her"
          }
        ],
        "flow_summary": "카메라는 밤바다와 해안도로를 넓게 잡은 뒤 수리영의 주행 방향에 맞춰 옆으로 따라붙는다. 가로등 아래에 이르러 움직임을 멈추고, 긴박하게 페달을 밟는 수리영의 측면 순간을 정지하듯 포착한다.",
        "scene_index": 9,
        "shot_assignments": [
          {
            "deviation_note": "The frame holds a freeze-like instant as one pedal is pressed, emphasizing her forward lean and grip on the handlebar against the night sea.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low on the rooftop floor, about 25 cm above the ground, starting near the drying platform and moving along the wind-scattered dried leaves toward the rooftop room entrance",
            "stage_index": 1,
            "stage_label": "establishing_approach",
            "transition_to_next": "The camera continues its low track until the iron door fills the frame, then rises slightly into a frontal door position.",
            "visual_focus": "wind-blown dried leaves, the approaching shoes, and the long shadow leading toward the iron door"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Directly in front of the old iron door at chest height, about 1.2 meters from the surface, centered on the narrow door gap",
            "stage_index": 2,
            "stage_label": "threshold_observation",
            "transition_to_next": "After the flyer is pushed inward and the latch sound is heard, the camera holds on the opening gap, then cuts to the exterior side of the living room window.",
            "visual_focus": "the firmly shut iron door and the paper flyer caught in the door gap"
          },
          {
            "camera_motion": "static",
            "camera_position": "Outside the dark living room window, eye-level, about 1 meter from the glass, square to the curtain so the window becomes a shadow screen",
            "stage_index": 3,
            "stage_label": "shadow_reveal",
            "transition_to_next": "The silhouette peaks in size and intensity, then a hard cut places the camera inside the room at floor level behind the struggle.",
            "visual_focus": "large black silhouettes of two bodies tangled across the curtain"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Inside the dark room, low on the floor behind the strange man, about 60 cm from him, angled downward over Minsuk's shoulder area",
            "stage_index": 4,
            "stage_label": "interior_close_observation",
            "transition_to_next": "",
            "visual_focus": "the strange man's back as he bends over Minsuk on the floor"
          }
        ],
        "flow_summary": "카메라는 옥상 바닥의 잎사귀와 그림자를 따라 낮게 이동해 철문 앞에서 멈춘 뒤, 문틈의 전단지와 잠금이 풀리는 순간을 관찰한다. 이후 공간을 건너뛰는 컷으로 창문 바깥의 그림자 실루엣을 포착하고, 마지막에는 실내 바닥 가까이 진입해 민숙 위로 몸을 숙인 낯선 남자를 가까이 확인한다.",
        "scene_index": 10,
        "shot_assignments": [
          {
            "deviation_note": "Frame the door more square-on than the moving approach, letting the flyer in the gap become the clear center of attention.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Keep the real figures unseen; enlarge the projected shadows so the curtain reads as the primary surface of action.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "Shift from the exterior silhouette language to an immediate interior proximity; slight handheld instability emphasizes the sudden closeness.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Behind Suriyeong at waist-to-shoulder height, 8 feet back inside the villa courtyard, moving from the gate area toward the rear stairwell",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera keeps following her path and slips into the narrow stairwell behind her as she abandons the bicycle and hurries upward.",
            "visual_focus": "Suriyeong crossing the courtyard toward the rooftop stairs"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "On the dark stairwell, close behind and slightly below Suriyeong at chest height, keeping a tight upward angle as she climbs",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As she reaches the top landing and reacts to the foul smell, the camera rises with her to the rooftop threshold and rotates into her eyeline.",
            "visual_focus": "Suriyeong’s hurried climb and her sudden reaction to the smell"
          },
          {
            "camera_motion": "static",
            "camera_position": "At Suriyeong’s eye level on the rooftop threshold, facing inward across the dim rooftop space from roughly 12 feet away",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "Cut to a reverse angle positioned near the half-open metal door, turning the view back onto Suriyeong as she begins to move toward it.",
            "visual_focus": "the half-open rusted metal entrance door in the dark rooftop interior"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Just in front of the half-open metal door at face height, 4 to 5 feet from Suriyeong, backing away slightly as she steps forward",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyeong’s tense face as she cautiously approaches the half-open door"
          }
        ],
        "flow_summary": "카메라는 빌라 마당에서 수리영을 따라 계단으로 올라가며 냄새를 감지하는 순간까지 밀착하고, 옥상 문턱에서 그녀의 시선으로 어두운 현관 철문을 드러낸다. 이후 문 쪽으로 위치를 옮긴 역방향 시점에서 수리영이 조심스럽게 다가오는 긴장을 이어받는다.",
        "scene_index": 11,
        "shot_assignments": [
          {
            "deviation_note": "POV framing removes Suriyeong from frame and holds the door slightly off-center in the darkness.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Tighter framing favors Suriyeong’s face while still implying the half-open door just ahead of her.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the dim living room, at standing eye height, several meters behind Suriyeong as she enters from the doorway and moves past the table toward the inner rooms",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera follows Suriyeong forward, then angles with her toward the bedroom corridor as her attention leaves the living room clues behind.",
            "visual_focus": "Suriyeong entering the silent living room, the cooled pot, the glowing television, and the disturbed table setting"
          },
          {
            "camera_motion": "track",
            "camera_position": "At shoulder height just behind and slightly to the side of Suriyeong in the narrow approach to the rooms, close enough to catch her hesitation at each door",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera stays with her as she reaches her own room, crosses the threshold, and lowers its angle toward the floor where the first undeniable sign appears.",
            "visual_focus": "Suriyeong moving from the empty main room area toward the closed bedroom door"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Just inside Suriyeong's room, behind her at upper-back height, angled down toward the floor and the window side of the room",
            "stage_index": 3,
            "stage_label": "blood_trail_discovery",
            "transition_to_next": "The camera advances with Suriyeong along the line of bloody footprints, rising from the floor toward the curtain as her hands prepare to pull it aside.",
            "visual_focus": "The pooled blood on the floor and the bloody footprints leading toward the curtain, with Suriyeong blocking part of the frame from behind"
          },
          {
            "camera_motion": "static",
            "camera_position": "At Suriyeong's eye height immediately in front of the opened curtain, very close to her line of sight and facing the seated body near the window",
            "stage_index": 4,
            "stage_label": "corpse_reveal",
            "transition_to_next": "After holding the terrible reveal, the camera breaks from the fixed point and drifts lower and closer toward the body as Suriyeong reacts, calls for help, and notices something in the hand.",
            "visual_focus": "Minsuk's collapsed body, bowed head, torn shoulder and collarbone wounds, and blood on the floor around her"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low beside Minsuk's body, below waist height, moving from Suriyeong's reaching hand toward Minsuk's clenched hand on the floor side",
            "stage_index": 5,
            "stage_label": "evidence_close_observation",
            "transition_to_next": "The close push on the hand continues into an even tighter detail, then the camera shifts its attention from the crumpled photo to the wrist as the mark changes.",
            "visual_focus": "The crumpled photo half-gripped in Minsuk's stiff hand and Suriyeong reaching toward it"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Close to Minsuk's hand and wrist at floor level, then rotating upward across the bed area toward the empty wall",
            "stage_index": 6,
            "stage_label": "supernatural_reveal",
            "transition_to_next": "",
            "visual_focus": "The reddening circular mark on Minsuk's wrist, then the red circle forming on the wall above the bed"
          }
        ],
        "flow_summary": "카메라는 수리영을 거실에서 방 안까지 따라 들어가며 불길한 생활 흔적에서 혈흔의 방향으로 시선을 낮춘다. 커튼 앞에서 시선이 멈춰 민숙의 시신을 정면으로 드러낸 뒤, 바닥 가까이 내려가 손아귀의 사진과 이어지는 초자연적 징후로 좁혀 들어간다.",
        "scene_index": 12,
        "shot_assignments": [
          {
            "deviation_note": "Frame Suriyeong as a dark back silhouette in the foreground while tilting more steeply downward than the stage default so the pooled blood and footprints dominate the lower half of the image.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Shift fully into Suriyeong's POV, removing her from frame and holding the body frontally after the curtain has been opened.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 4
          },
          {
            "deviation_note": "Tighten the push-in into an extreme close-up so the stiff fingers and the crumpled photo fill the frame, with surrounding body detail reduced to indistinct edges.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "At the foot of the rooftop stairway in the dark alley, shoulder height, about 12 feet from the lowest step, angled upward toward the stairwell opening",
            "stage_index": 1,
            "stage_label": "descent_establishing",
            "transition_to_next": "The camera pans and tracks right toward the sound of the siren, letting the stairway fall to the edge of frame as the police car becomes the new anchor point.",
            "visual_focus": "Suriyoung rushing down from the rooftop stairs into the alley"
          },
          {
            "camera_motion": "static",
            "camera_position": "Beside the parked police car at curb level, waist height, 4 feet from the open front door, looking through the gap of the door toward Hyesu stepping out",
            "stage_index": 2,
            "stage_label": "arrival_reveal",
            "transition_to_next": "As Hyesu leaves the car, the camera begins to track backward and pivot left, joining her movement toward Suriyoung.",
            "visual_focus": "Hyesu emerging from the police car through the open door"
          },
          {
            "camera_motion": "track",
            "camera_position": "In the middle of the alley between the police car and the stair base, chest height, retreating ahead of Hyesu as she runs toward Suriyoung",
            "stage_index": 3,
            "stage_label": "approach",
            "transition_to_next": "The camera slows near Suriyoung, drops slightly to her eye line, and compresses the distance into an intimate close observation.",
            "visual_focus": "Hyesu closing the distance to the stunned Suriyoung"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low and close in front of Suriyoung, slightly below her eye level, about 2 feet from her face, with Hyesu implied just above the lens line",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "The camera reverses the emotional axis with a clean cut to Hyesu’s face from Suriyoung’s side of the exchange.",
            "visual_focus": "Suriyoung looking up at Hyesu with tearful, reddened eyes"
          },
          {
            "camera_motion": "static",
            "camera_position": "Near Suriyoung’s side of the alley, shoulder height, about 3 feet from Hyesu, facing Hyesu squarely as she stops in place",
            "stage_index": 5,
            "stage_label": "reaction",
            "transition_to_next": "The camera pivots and follows the urgency back toward the stairway as Hyesu breaks from shock into action.",
            "visual_focus": "Hyesu’s shocked face as she absorbs Suriyoung’s words"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Behind Hyesu and the junior detective at the base of the rooftop stairs, low chest height, close enough to follow their backs as they step upward",
            "stage_index": 6,
            "stage_label": "withdraw_to_stairs",
            "transition_to_next": "",
            "visual_focus": "Hyesu and the junior detective rushing up the rooftop stairs"
          }
        ],
        "flow_summary": "카메라는 옥탑 계단 아래에서 수리영의 탈출을 받아낸 뒤, 사이렌 방향으로 시선을 돌려 경찰차에서 내리는 혜수를 포착한다. 이후 혜수를 따라 수리영에게 접근하고, 수리영의 고백과 혜수의 충격을 같은 대화 축 위에서 좁혀 찍은 뒤 다시 계단 쪽 행동으로 흐른다.",
        "scene_index": 13,
        "shot_assignments": [
          {
            "deviation_note": "Frame the open car door as a partial foreground mask, emphasizing Hyesu’s upper body emerging and one foot landing on the ground.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten into a face close-up and keep Hyesu only as an implied off-camera presence above Suriyoung’s gaze.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          },
          {
            "deviation_note": "Hold the camera still a beat longer than the dialogue rhythm so Hyesu’s raised brows and open mouth register before she moves.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Just inside the rooftop room entrance, chest height, about 2 meters behind the detective and Hyesu, angled down the narrow interior toward Suriyoung's bedroom door",
            "stage_index": 1,
            "stage_label": "approach",
            "transition_to_next": "The camera follows Suriyoung's sudden movement, sliding past the doorway and settling at the bedroom threshold.",
            "visual_focus": "the adults at the entrance and Suriyoung's abrupt run toward her bedroom"
          },
          {
            "camera_motion": "static",
            "camera_position": "At Suriyoung's bedroom doorway, chest height, 2.5 meters from the bed, centered to take in the bed, curtain area, floor, and surrounding furniture in one wide frame",
            "stage_index": 2,
            "stage_label": "reveal",
            "transition_to_next": "After holding on the impossibly clean room, the camera pivots and tracks back out behind Suriyoung toward the dining table.",
            "visual_focus": "the unnaturally tidy bedroom with no blood, no red mark, and no body"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the dining table at waist height, about 1 meter from the tabletop, looking slightly across Suriyoung's profile toward the clean surface",
            "stage_index": 3,
            "stage_label": "verification",
            "transition_to_next": "As the detective's irritation peaks and he moves away, the camera eases off the tabletop and reorients toward Hyesu and Suriyoung.",
            "visual_focus": "Suriyoung checking the empty dining table where the teacups should have been"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "In the living area near the dining table, lowered to Suriyoung's eye level, about 1 meter from Hyesu and Suriyoung, slightly over Suriyoung's shoulder toward Hyesu",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "The emotional hold is broken by a quiet cut back into the bedroom, isolating the objects that no one is looking at.",
            "visual_focus": "Hyesu bending down to meet Suriyoung's eye line while resting one hand on Suriyoung's shoulder"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside Suriyoung's bedroom corner, low height near the floor, about 80 centimeters from the backpack and doll, angled diagonally into the room",
            "stage_index": 5,
            "stage_label": "object_reveal",
            "transition_to_next": "",
            "visual_focus": "the backpack and doll sitting slightly out of their previous positions"
          }
        ],
        "flow_summary": "카메라는 현관 쪽의 수색 종료 분위기에서 수리영의 돌발적인 움직임을 따라 방 안으로 들어가고, 사라진 흔적을 확인한 뒤 식탁과 인물들의 반응으로 좁혀 들어간다. 마지막에는 감정의 클로즈업에서 조용히 방 한구석의 물건으로 시선을 옮겨, 사라진 사건의 미세한 흔적을 남긴다.",
        "scene_index": 14,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame longer than the surrounding movement to make the absence of blood, red markings, and the body feel deliberate and unnatural.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten slightly from the stage's eye-level setup so Hyesu's lowered posture and hand on Suriyoung's shoulder dominate the frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 4
          },
          {
            "deviation_note": "Keep the camera completely still and exclude people from the frame, emphasizing only the subtle displacement of the backpack and doll.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 12,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the edge of the coastal bus stop shelter, eye-level, about 12 feet from the bench, angled three-quarters toward the seated girl with the dark sea beyond her.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow push toward the bench as Hyesu enters the immediate space with the drink.",
            "visual_focus": "Suryoung sitting in silence near the bus stop, with the empty night sea as emotional background"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Bench-side at chest height, about 4 feet from Suryoung, close enough for Hyesu's hand and the offered drink to enter the foreground.",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As Suryoung decides to leave, the camera eases backward and lowers slightly to regain her full body when she rises.",
            "visual_focus": "The offered drink, Hyesu's concern, and Suryoung's conflicted face"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "In front of the bench at waist-to-chest height, about 9 feet away, centered on the space where Suryoung stands up from the seat.",
            "stage_index": 3,
            "stage_label": "decision",
            "transition_to_next": "When Suryoung runs out toward the coastal road, the camera lets her exit frame, then cuts to a frontal position on Hyesu for the call after her.",
            "visual_focus": "Suryoung abruptly standing, gathering resolve before leaving"
          },
          {
            "camera_motion": "static",
            "camera_position": "Several feet in front of Hyesu at chest height, facing her from the direction Suryoung has run, tight enough for a front upper-body view with the road space implied behind camera.",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Hyesu calling after Suryoung as she runs away"
          }
        ],
        "flow_summary": "카메라는 해안가 버스정류장의 정적인 거리감에서 시작해 수리영의 혼란과 결심 쪽으로 천천히 다가간 뒤, 그녀가 벌떡 일어나는 순간에 맞춰 물러나 전신을 확보한다. 수리영이 달려 나가면 시선은 컷으로 혜수의 정면으로 넘어가, 등 뒤로 외치는 반응을 붙잡는다.",
        "scene_index": 15,
        "shot_assignments": [
          {
            "deviation_note": "Hold a full-body frame as Suryoung straightens her back and clenches both fists; keep the bench edge low in frame to show she has just risen.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Tighten slightly from the stage default to a front upper-body composition, with Hyesu's cupped hands near her mouth emphasized while she shouts toward Suryoung off-camera.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At the office entrance, eye-level, just inside the glass door, medium distance in front of Hyesu as she steps into the room",
            "stage_index": 1,
            "stage_label": "entry_establishing",
            "transition_to_next": "The camera tracks backward with Hyesu, then begins to pan right as her attention shifts toward the duty desk.",
            "visual_focus": "Hyesu entering the police office while holding a phone close to her ear"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Near the center aisle of the office, eye-level, angled from Hyesu's side toward the duty desk several feet away",
            "stage_index": 2,
            "stage_label": "desk_orientation",
            "transition_to_next": "The camera continues the pan into a short push toward the desk, closing the distance as Hyesu extends the phone toward Kim detective.",
            "visual_focus": "Kim detective seated alone at the desk and Hyesu approaching him with urgency"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At the front edge of the duty desk, slightly below eye-level, close to Hyesu's extended hand, aligned so the phone screen sits in the foreground with Kim detective's face beyond it",
            "stage_index": 3,
            "stage_label": "evidence_close_observation",
            "transition_to_next": "After holding on the phone and Kim detective's reaction plane, the camera tracks laterally around the desk toward Hyesu's side as her worry pulls her gaze away from him.",
            "visual_focus": "The phone displaying Minsuk's number in front of Kim detective's face"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the office window at Hyesu's shoulder height, close profile distance, looking across her cheek line toward the dark exterior beyond the glass",
            "stage_index": 4,
            "stage_label": "anxious_reaction",
            "transition_to_next": "",
            "visual_focus": "Hyesu's side profile as she stares into the darkness outside the window"
          }
        ],
        "flow_summary": "카메라는 혜수와 함께 경찰서 사무실 안으로 들어와 당직 책상 쪽으로 흐르듯 접근하고, 민숙의 번호가 뜬 휴대전화로 시선을 압축한다. 이어 책상 주변을 돌아 혜수의 옆얼굴과 창밖 어둠을 같은 방향으로 바라보며 불길한 예감을 따라간다.",
        "scene_index": 16,
        "shot_assignments": [
          {
            "deviation_note": "Frame the phone screen as the sharp foreground subject, with Kim detective's face held slightly deeper in the same axis to emphasize the demand for action.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Settle the lateral track into a near-static close profile hold, allowing Hyesu's narrowed eyes and tightened mouth to dominate while the dark window remains in her sightline.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Outside the rooftop room, just below the parapet at human chest height, about 12 feet from the weathered exterior wall, angled slightly upward in the blue dawn light",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow dolly-in toward the lit rooftop room wall, lowering the background scale until the parapet becomes the dominant foreground line.",
            "visual_focus": "the weathered rooftop room exterior, the lit window glow, and the quiet parapet edge"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Outside the parapet at low eye level with the wall, about 4 feet from the edge, lens pointed slightly upward toward the point where the black cat's head emerges",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera continues forward until the cat fills the frame, then tracks laterally along the parapet to follow its movement toward the inside of the rooftop area.",
            "visual_focus": "the black cat suddenly peeking over the old rooftop wall, its yellow eyes catching the dawn light"
          },
          {
            "camera_motion": "track",
            "camera_position": "Parallel to the parapet on the exterior side, at the cat's body height and about 3 feet away, moving sideways along the wall line",
            "stage_index": 3,
            "stage_label": "follow_through",
            "transition_to_next": "",
            "visual_focus": "the black cat preparing to cross the rooftop wall and look down inside"
          }
        ],
        "flow_summary": "카메라는 푸른 새벽의 옥탑방 외벽을 멀리서 조용히 잡은 뒤, 담벼락 쪽으로 천천히 다가가 고개를 내미는 검은 고양이의 눈빛에 시선을 모은다. 이후 고양이의 움직임을 따라 담을 따라 옆으로 흐르며 다음 행동으로 이어질 수 있게 설계한다.",
        "scene_index": 17,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter on the cat's head and the old exterior wall so the glowing yellow eyes become the visual center against the blue dawn atmosphere.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the main bedroom, low seated height beside the bed, about six feet from Su-ri-young, angled toward her profile and the dim room beyond.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins to track after Su-ri-young as she wakes and moves out of the bedroom, carrying the line of sight toward the closed room door.",
            "visual_focus": "Su-ri-young waking in the bedroom and sensing the empty house."
          },
          {
            "camera_motion": "track",
            "camera_position": "In the hallway outside Su-ri-young's room, eye level, four to five feet behind and slightly to her side as she approaches the closed door and enters the unusually clean room.",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As the phone rings, the camera leaves the window area with a sharp handheld turn and cuts closer to Su-ri-young's hand and face.",
            "visual_focus": "The closed door, the clean room interior, the window, and Su-ri-young's cautious inspection."
          },
          {
            "camera_motion": "handheld",
            "camera_position": "At chest height, about eighteen inches in front of Su-ri-young, slightly above her open palm, angled down toward the lit phone while still holding her startled face in the upper frame.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "After the call, the camera follows her restless movement out of the room and cuts into the bathroom at the sink line.",
            "visual_focus": "Su-ri-young's alarmed face and the glowing phone resting in her palm."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the bathroom, eye level just behind the sink, centered on the wet mirror so the reflected bathroom wall fills the rear of the composition.",
            "stage_index": 4,
            "stage_label": "hallucination_reveal",
            "transition_to_next": "When Su-ri-young turns toward the real wall, the camera pans with the motion, then tracks out behind her into the dining area.",
            "visual_focus": "The red circle appearing on the bathroom wall through the mirror reflection."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At tabletop height in the dining area, less than one foot from the wooden picture frame, lens aligned squarely with the photograph inside the frame.",
            "stage_index": 5,
            "stage_label": "distorted_photo_close_observation",
            "transition_to_next": "",
            "visual_focus": "The mother's smiling face in the framed photograph as it seems to warp and melt."
          }
        ],
        "flow_summary": "카메라는 잠에서 깬 수리영을 안방에서 복도와 자신의 방, 욕실, 식탁까지 따라가며 집 안을 불안하게 훑는다. 이동은 점점 넓은 공간 탐색에서 손안의 휴대전화, 거울 속 붉은 원, 액자 사진 같은 섬뜩한 디테일 클로즈업으로 수축된다.",
        "scene_index": 18,
        "shot_assignments": [
          {
            "deviation_note": "Frame slightly tighter than the stage base so the lit phone dominates the lower foreground while Su-ri-young's shocked eyes remain visible above it.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold the mirror surface as the main plane of focus; the actual bathroom wall is not shown directly, only through the reflection with water droplets on the glass.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 14,
            "stage_index": 4
          },
          {
            "deviation_note": "Push into an extreme close-up of the photograph, excluding Su-ri-young so the distortion of the mother's face becomes the entire visual event.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 16,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Outside the mart entrance at waist height, three-quarter side-rear distance from Suriyeong, then moving through the automatic doors into the front aisle",
            "stage_index": 1,
            "stage_label": "establishing_search",
            "transition_to_next": "The camera continues forward with Suriyeong, turning into the aisle where the male employee is found near the shelves.",
            "visual_focus": "Suriyeong entering the quiet mart and scanning the aisles"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside the mart aisle at shoulder height, parallel to the shelf line, about 4 feet from Suriyeong as she approaches the male employee from the side",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As Suriyeong stops near the male employee, the camera leaves the lateral track and pushes closer toward her eyeline for the confrontation.",
            "visual_focus": "Suriyeong stepping toward the male employee between the shelves"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the same aisle at eye level, close frontal three-quarter distance from Suriyeong, with the male employee just off her eyeline",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "After the mention of CCTV, the scene makes a logical cut from the aisle to the mart exterior where the possible camera angle is checked.",
            "visual_focus": "Suriyeong's fixed expression as she questions the male employee"
          },
          {
            "camera_motion": "static",
            "camera_position": "Outside the mart wall at Suriyeong's eye height, angled upward from near the exterior walkway toward the mounted surveillance camera",
            "stage_index": 4,
            "stage_label": "reveal_pov",
            "transition_to_next": "",
            "visual_focus": "The round CCTV camera fixed high on the mart exterior wall"
          }
        ],
        "flow_summary": "카메라는 마트 밖에서 수리영을 따라 안으로 들어가 진열대 사이를 이동하며 남자 직원에게 접근하고, 대화가 압축될수록 수리영의 얼굴 가까이 들어간다. CCTV 단서가 나오면 논리적 컷으로 마트 밖 시선 위치로 이동해 외벽의 카메라를 올려다본다.",
        "scene_index": 19,
        "shot_assignments": [
          {
            "deviation_note": "Keep Suriyeong in side profile and catch the suspended mid-step as she closes the last distance to the male employee.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten from the stage's close three-quarter framing into a face close-up, minimizing the male employee to off-screen presence through her eyeline.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame as Suriyeong's POV, excluding her body and holding the CCTV camera centered against the exterior wall.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "At desk height, just behind and slightly to the right of the security team employee, about three feet from the monitor, angled downward toward the screen",
            "stage_index": 1,
            "stage_label": "monitor_approach",
            "transition_to_next": "The push-in ends almost flush with the monitor, then the camera eases backward and slides left along the desk edge to re-include the people watching it.",
            "visual_focus": "the dark, indistinct CCTV playback on the monitor"
          },
          {
            "camera_motion": "track",
            "camera_position": "Along the front edge of the desk at seated eye level, between the monitor and the observers, about four feet from Hyesu and the security team employee",
            "stage_index": 2,
            "stage_label": "shared_scrutiny",
            "transition_to_next": "Continuing the same lateral move, the camera slips past Hyesu's shoulder line and opens the background space where Suriyoung is standing.",
            "visual_focus": "Hyesu and the security team employee studying the monitor"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Slightly behind and to the side of Hyesu, chest height, at close distance from Suriyoung standing in the background",
            "stage_index": 3,
            "stage_label": "anxious_reaction",
            "transition_to_next": "After holding on Suriyoung's anxiety, the camera pans and tracks back toward Hyesu, turning from the background reaction to the desk-side exchange.",
            "visual_focus": "Suriyoung's clenched hands, bitten lip, and anxious face"
          },
          {
            "camera_motion": "track",
            "camera_position": "At Hyesu's front three-quarter side, chest height, medium close distance, aimed across her toward the security team employee",
            "stage_index": 4,
            "stage_label": "request_exchange",
            "transition_to_next": "",
            "visual_focus": "Hyesu's upper body and her paused outstretched hand toward the security team employee"
          }
        ],
        "flow_summary": "카메라는 먼저 모니터 속 어두운 CCTV 화면으로 깊게 밀고 들어가 식별 불가능한 단서를 강조한 뒤, 책상 가장자리를 따라 빠져나오며 인물들의 긴장을 차례로 포착한다. 이어 수리영의 불안한 반응을 지나 혜수가 자료를 요청하는 손짓으로 흐름이 마무리된다.",
        "scene_index": 20,
        "shot_assignments": [
          {
            "deviation_note": "Tighten beyond the stage default into a close-up so the CCTV image fills the frame and only a minimal monitor border remains visible.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 1
          },
          {
            "deviation_note": "Begin low on the tightly clasped hands, then complete the tilt to include Suriyoung biting her lip in the same anxious close observation.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame Hyesu from the upper body down to the extended hand, holding the hand's pause as the focus of the exchange.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Eye-level at the office entrance, about 18 feet from Hyesu's desk, looking past the departing detectives into the main police office.",
            "stage_index": 1,
            "stage_label": "establishing_departure",
            "transition_to_next": "The camera tracks forward through the cleared aisle as the room empties, settling toward Hyesu's desk where Suriyeong is left alone.",
            "visual_focus": "the emptying office and Suriyeong isolated at Hyesu's desk"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Eye-level in the central aisle, about 8 feet from Hyesu's desk, facing Suriyeong seated beside the cluttered work surface.",
            "stage_index": 2,
            "stage_label": "approach_isolation",
            "transition_to_next": "The camera continues inward, then lowers and tilts down over the edge of the desk to enter the surface details.",
            "visual_focus": "Suriyeong's stillness and the disordered desk in front of her"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low over Hyesu's desk, roughly 2 feet above the tabletop and within close range of the scattered enlarged photographs.",
            "stage_index": 3,
            "stage_label": "close_observation_photos",
            "transition_to_next": "From the tabletop, the camera tilts and rises toward Suriyeong's eyeline, carrying the shock from the photographs into her face.",
            "visual_focus": "the scattered enlarged crime scene photographs on the desk"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tight eye-level position directly across the desk from Suriyeong, about 3 feet from her face.",
            "stage_index": 4,
            "stage_label": "reaction_shock",
            "transition_to_next": "As the monitor sound draws her attention, the camera pans and tracks with her gaze toward the neighboring workstation.",
            "visual_focus": "Suriyeong's frozen reaction after seeing the photographs"
          },
          {
            "camera_motion": "track",
            "camera_position": "At Suriyeong's eye height beside the neighboring workstation, moving into her point of view about 1 foot from Detective Kim's monitor.",
            "stage_index": 5,
            "stage_label": "reveal_monitor",
            "transition_to_next": "",
            "visual_focus": "the monitor screen showing the sea map, coordinates, and red location pin"
          }
        ],
        "flow_summary": "카메라는 형사들이 빠져나간 사무실 입구에서 수리영이 홀로 남은 책상으로 천천히 접근한 뒤, 책상 위 사진으로 내려앉고 다시 수리영의 얼굴로 올라온다. 이후 알림음에 반응한 수리영의 시선을 따라 옆 모니터로 이동해 위치추적 결과를 POV에 가깝게 드러낸다.",
        "scene_index": 21,
        "shot_assignments": [
          {
            "deviation_note": "Frame as a tighter tabletop close-up than the stage default, excluding Suriyeong and emphasizing the scattered arrangement.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold the dolly-in at the moment her eyes widen and her mouth opens, keeping the background soft.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 4
          },
          {
            "deviation_note": "Shift fully into Suriyeong's POV, flattening the angle to the screen so the coordinates and red pin are readable.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 16,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Outside the police station, at standing chest height about 5 meters in front of the parked bicycle, framing Suriyeong full body with the bicycle and the station exterior behind her",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a lateral track toward the road side as Suriyeong commits her weight onto the pedals, tightening the angle from full body to a more kinetic side view.",
            "visual_focus": "Suriyeong placing her foot on the bicycle pedal and preparing to ride away"
          },
          {
            "camera_motion": "track",
            "camera_position": "Outside the police station along the curb, at handlebar height and 2 meters to Suriyeong's side, moving parallel to the bicycle as it starts forward toward the road",
            "stage_index": 2,
            "stage_label": "departure",
            "transition_to_next": "A hard cut jumps from the forward motion of the bicycle to the interior of the PC room, using the urgency of her departure to bridge the change of location.",
            "visual_focus": "Suriyeong leaning into the bicycle and aiming toward the road"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside a PC room, directly across the monitor from Suriyeong at seated eye level, close enough for the monitor glow to shape her face while the screen edge remains near the foreground",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "The camera tilts and settles downward toward the desk surface and the monitor area, following her attention from her face to the map work in front of her.",
            "visual_focus": "Suriyeong's serious frontal expression reflected in the monitor light"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Inside the PC room at desk height, close to the keyboard and monitor, angled slightly over Suriyeong's hands as the action shifts to maps, printouts, and the backpack on the desk",
            "stage_index": 4,
            "stage_label": "task_detail",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's hands organizing printed maps and packing them away"
          }
        ],
        "flow_summary": "카메라는 경찰서 밖에서 자전거에 오르는 수리영을 전신으로 붙잡은 뒤, 출발하는 움직임을 따라가다가 PC방 내부로 논리적 컷을 건넌다. 이후 모니터 앞의 정면 얼굴에서 책상 위 지도 작업으로 시선이 내려가며, 그녀의 결심과 준비 과정을 하나의 긴박한 이동감으로 연결한다.",
        "scene_index": 22,
        "shot_assignments": [
          {
            "deviation_note": "",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Hold the framing slightly tighter than the stage default so the monitor glow dominates her face while still keeping the camera directly frontal.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide upward-facing camera on the rain-soaked coastal roadside, lens aimed high into the dark storm clouds, no visible horizon",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "After the lightning flash, the camera tilts down from the sky toward the coastal road, letting the storm become the environment around the rider.",
            "visual_focus": "lightning cutting across heavy storm clouds"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "High roadside position above the coastal road, descending gaze from the clouded sky to the rain-lashed pavement and the moving bicycle line",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As the bicycle rushes through the rain, the camera movement resolves downward and forward into a road-level tracking position beside and slightly ahead of Suriyoung.",
            "visual_focus": "the coastal road under heavy rain and Suriyoung pushing forward on the bicycle"
          },
          {
            "camera_motion": "track",
            "camera_position": "Road-level tracking camera just ahead and slightly to the front-left of Suriyoung, near eye height, about two feet from her face as she rides through the rain",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's fixed, determined face staring through the rain"
          }
        ],
        "flow_summary": "카메라는 먼저 먹구름과 번개를 올려다보는 정지 구도에서 시작해, 비가 쏟아지는 해안 도로로 시선을 내리며 수리영의 질주를 따라붙는다. 이후 카메라는 자전거와 함께 전진하며 수리영의 굳은 얼굴 가까이로 압축되어 절박한 집중을 포착한다.",
        "scene_index": 23,
        "shot_assignments": [
          {
            "deviation_note": "Keep the frame completely locked on the storm clouds so the lightning flash becomes the visual trigger for the following descent.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten from the tracking position into a close-up, allowing rain streaming across her face and her unblinking stare to dominate the frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the rooftop room entry area at chest height, about two meters in front of the doorway, facing back toward Suriyoung as she stands frozen at the threshold with the disturbed living room spreading behind the frame edges",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow track past her shoulder into the living room, letting her fixed stare pull the movement forward.",
            "visual_focus": "Suriyoung's rigid upper body and her alarmed attention toward the ransacked living room"
          },
          {
            "camera_motion": "track",
            "camera_position": "Chest-height inside the living room, moving along the line of overturned chairs, scattered household items, and muddy footprints toward the open bedroom door",
            "stage_index": 2,
            "stage_label": "investigation_path",
            "transition_to_next": "The track narrows toward the open bedroom doorway and eases into a more frontal angle on the marked wall beyond.",
            "visual_focus": "The trail of intrusion across the living room leading toward Suriyoung's room"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Just outside Suriyoung's bedroom doorway at eye height, aligned toward the far wall where the red circle is visible",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "The dolly continues through the doorway and tightens until the wall mark and the pinned photograph fill the frame.",
            "visual_focus": "The red circle on the bedroom wall and the old photograph fixed at its center"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the bedroom, very close to the wall at eye height, lens nearly parallel to the surface and centered on the photograph pinned into the red circle",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "A hard cut jumps from the wall-mounted photograph to Suriyoung's eye-line, placing the camera where her gaze lands after she removes and raises the photo.",
            "visual_focus": "The blood-stained old photograph stuck in the middle of the red circle"
          },
          {
            "camera_motion": "cut",
            "camera_position": "At Suriyoung's eye level in a tight POV position, only a short distance from the photograph held in front of her face",
            "stage_index": 5,
            "stage_label": "pov_recognition",
            "transition_to_next": "",
            "visual_focus": "The aged photograph image of two girls seated beneath a round roof ornament in front of a rural restaurant"
          }
        ],
        "flow_summary": "카메라는 현관에 멈춰 선 수리영의 굳은 몸에서 시작해, 어질러진 거실의 침입 흔적을 따라 방 안의 붉은 원과 사진으로 서서히 빨려 들어간다. 사진을 벽에서 떼는 순간에는 시선 위치로 논리적 컷을 두어, 수리영이 손에 든 낡은 사진의 내용과 기억의 충격으로 이동한다.",
        "scene_index": 24,
        "shot_assignments": [
          {
            "deviation_note": "Frame slightly favors Suriyoung's upper torso while still keeping the disturbed living room implied around her gaze line.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 1
          },
          {
            "deviation_note": "Push in to a tighter macro-like close-up, reducing the bedroom wall to the red circle edge and the pinned blood-stained photograph.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 4
          },
          {
            "deviation_note": "Switches fully into Suriyoung's POV; the physical room drops out so the old photograph image dominates the frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the outer edge of the empty harbor, waist height, set back from the wet rocks and pier, facing the fog-covered open water from a distant frontal angle",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera holds its axis toward the sea, then tightens the same frontal line of sight as movement begins to appear inside the fog.",
            "visual_focus": "the deserted harbor, fog rolling over the water, and Suriyeong isolated near the rocks"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Near the end of the pier at eye height, centered on the harbor mouth, several meters back from the waterline, looking straight into the fog",
            "stage_index": 2,
            "stage_label": "reveal",
            "transition_to_next": "As the boat comes close enough to dock, the camera cuts from the frontal sea view to the pier-side position beside the hull.",
            "visual_focus": "a small boat slowly emerging from the fog toward the camera"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "On the pier beside the boat, chest height but slightly below Suriyeong's eyeline, close to the hull and angled upward toward Inwoo's position on deck",
            "stage_index": 3,
            "stage_label": "approach_dialogue",
            "transition_to_next": "The camera shifts backward along the pier, keeping the boat on one side and opening enough space to include Suriyeong's body as she prepares to board.",
            "visual_focus": "Suriyeong looking up at Inwoo with urgency while he remains above her near the mooring line"
          },
          {
            "camera_motion": "track",
            "camera_position": "Parallel to the boat at dock level, full-body distance from Suriyeong, slightly forward of her boarding path and looking diagonally across the pier toward the gunwale",
            "stage_index": 4,
            "stage_label": "boarding_transition",
            "transition_to_next": "",
            "visual_focus": "Suriyeong crossing from the pier toward the boat, with the foggy sea held behind the action"
          }
        ],
        "flow_summary": "카메라는 텅 빈 포구에서 안개 낀 바다를 정면으로 바라보다가, 안개 속에서 배가 드러나는 순간 같은 축으로 끌려 들어간다. 이후 선착장 옆으로 위치를 옮겨 수리영과 인우의 높이 차이를 따라가고, 마지막에는 수리영이 배에 오르는 동선을 옆에서 추적한다.",
        "scene_index": 25,
        "shot_assignments": [
          {
            "deviation_note": "Use a longer lens and keep the boat centered so it appears flattened and ghostlike inside the fog, while the camera's forward movement remains very slow.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten from the stage's pier-side position into a closer low-angle framing on Suriyeong's face, allowing Inwoo's higher position to be implied by her upward gaze.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 3
          },
          {
            "deviation_note": "Widen to full-body distance and lower slightly so one foot on the gunwale and the other on the pier are both clearly visible in the same frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 12,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the dim rooftop room, at Hyesu's eye level, about 3 feet directly in front of her, close enough for the phone pressed to her ear to dominate the foreground edge",
            "stage_index": 1,
            "stage_label": "close_observation",
            "transition_to_next": "The camera begins a slow lateral track to Hyesu's side, keeping her tension in frame while opening the space beside her.",
            "visual_focus": "Hyesu's tense frontal face and the phone held tightly to her ear"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside Hyesu at shoulder height, about 4 feet from the adjacent standing position, angled across her toward the other person in the room",
            "stage_index": 2,
            "stage_label": "reaction",
            "transition_to_next": "The camera continues drifting past the two figures and subtly withdraws toward the center of the room, allowing the empty air and silence to take over the frame.",
            "visual_focus": "Kim Detective's skeptical reaction near Hyesu and the uneasy pause between them"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Near the center of the rooftop room, at eye level, about 7 to 8 feet from Hyesu, looking across the darkening interior toward the entrance area",
            "stage_index": 3,
            "stage_label": "withdraw",
            "transition_to_next": "The rattling sound from the entrance motivates the camera to pan and finish its attention on the door without cutting.",
            "visual_focus": "Hyesu left in the dim room, the surrounding emptiness, and the direction of the entrance sound"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Inside the room facing the entrance, chest height, about 6 feet from the old front door, squared enough to see it half-open in the frame",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "The old front door pushed half-open by the wind, rattling in the bleak dusk"
          }
        ],
        "flow_summary": "카메라는 혜수의 긴장된 얼굴에서 시작해 옆의 반응과 방 안의 공허를 거쳐, 바람 소리가 나는 현관문으로 시선을 옮긴다. 인물의 불안이 공간의 황량함으로 번져가는 방향으로 한 번의 느린 이동처럼 설계한다.",
        "scene_index": 26,
        "shot_assignments": [
          {
            "deviation_note": "Hold slightly tighter than the stage default so Hyesu's face and the phone pressed to her ear fill most of the frame.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Let the pan settle into a more static composition at the end, emphasizing the half-open door and its movement in the wind.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide exterior position off the starboard bow, low above the waterline, far enough to frame the small fishing boat isolated in the open sea at sunset",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "Hard cut from the distant sea view onto the deck, landing closer to the characters while preserving the boat's orientation on the water.",
            "visual_focus": "the old small fishing boat floating alone in the middle of the sea"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "On the open deck at seated eye level, about three meters from Suriyoung and Inwoo, angled slightly across the deck toward the map between them",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera continues pushing inward and lowers its attention from the shared map and photograph toward Inwoo's face as the photograph becomes the pressure point of the conversation.",
            "visual_focus": "Suriyoung presenting the map and photograph to Inwoo on the deck"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Directly in front of Inwoo at close range, just above the photograph line, at face height and less than one meter away",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "As Inwoo breaks from the confrontation, the camera releases the frontal hold and shifts into a rough lateral follow toward the wheelhouse.",
            "visual_focus": "Inwoo's startled face as he looks down at the photograph"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Moving across the deck behind and slightly to the side of Inwoo at shoulder height, keeping the wheelhouse door ahead in frame",
            "stage_index": 4,
            "stage_label": "pursuit_transition",
            "transition_to_next": "The camera follows the rush to the wheelhouse, then slips just inside the doorway and pivots back toward the entrance as Suriyoung catches up.",
            "visual_focus": "Inwoo abruptly heading for the wheelhouse while Suriyoung follows"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Just inside the wheelhouse doorway at chest height, about one meter back from the threshold, facing outward toward the deck and the door frame",
            "stage_index": 5,
            "stage_label": "blockade",
            "transition_to_next": "",
            "visual_focus": "Suriyoung forcing one shoulder through the doorway and reaching forward to stop Inwoo"
          }
        ],
        "flow_summary": "카메라는 먼저 바다 위에 고립된 어선을 멀리서 확인한 뒤, 갑판 위 대화로 절단되어 점점 인우의 얼굴과 사진에 압박하듯 접근한다. 인우가 조타실로 뛰는 순간부터는 흔들리는 추적 동선으로 바뀌어, 조타실 안쪽에서 수리영이 문턱을 막아서는 지점에 도착한다.",
        "scene_index": 27,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame especially wide and still, emphasizing the boat's isolation before cutting into the deck action.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Let the push-in settle into a nearly frontal close framing; keep the photograph just below the eye line so Inwoo's widened eyes and tightened mouth dominate.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame slightly tighter on Suriyoung's upper body than the stage default, using the door frame as a hard edge around her shoulder and outstretched hands.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the wheelhouse, low at helm height, about 2 feet from the wooden wheel and just off Inwoo's side, angled to include the cramped space between Inwoo and Suriyoung",
            "stage_index": 1,
            "stage_label": "establishing_tension",
            "transition_to_next": "The camera tracks upward and around Inwoo's shoulder, closing the distance to Suriyoung as the argument intensifies.",
            "visual_focus": "Inwoo's grip near the helm and Suriyoung pressing into his space"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Tight beside Inwoo's shoulder at Suriyoung's eye level, less than 2 feet from Suriyoung's face, looking slightly upward as she leans forward",
            "stage_index": 2,
            "stage_label": "confrontation_close",
            "transition_to_next": "The camera follows Suriyoung's gesture downward, tilting and lowering toward the old photograph as her anger turns into explanation.",
            "visual_focus": "Suriyoung's distorted, furious face aimed at Inwoo"
          },
          {
            "camera_motion": "static",
            "camera_position": "Close above the photograph at chest-to-console height, within inches of Suriyoung's hand, looking straight down with a slight diagonal angle",
            "stage_index": 3,
            "stage_label": "evidence_close_observation",
            "transition_to_next": "The camera lifts from the photograph and pans up toward Inwoo, carrying the meaning of the girl's face into his reaction.",
            "visual_focus": "Suriyoung's finger pointing to the girl's face in the old photograph"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At Inwoo's eye level, about 3 feet in front of him, with the wheelhouse wall and circular marks falling behind his head in shallow depth",
            "stage_index": 4,
            "stage_label": "recognition_reaction",
            "transition_to_next": "A logical cut shifts into Suriyoung's subjective eyeline, preserving the direction of her stare toward the wall.",
            "visual_focus": "Inwoo's shocked face as the circular shapes behind him begin to matter"
          },
          {
            "camera_motion": "static",
            "camera_position": "From Suriyoung's POV at standing eye level, about 6 feet from the wheelhouse wall, facing the surface squarely without visible camera shake",
            "stage_index": 5,
            "stage_label": "subjective_reveal",
            "transition_to_next": "The fixed POV begins to feel mentally suspended, then gives way to a handheld drop as Suriyoung loses consciousness.",
            "visual_focus": "Many overlapping red circle patterns scattered across the wheelhouse wall"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Close beside Suriyoung at upper-body height, drifting downward toward Inwoo's shoulder as she collapses into him",
            "stage_index": 6,
            "stage_label": "collapse_aftermath",
            "transition_to_next": "",
            "visual_focus": "Suriyoung falling onto Inwoo while Inwoo holds a cold, distant stare"
          }
        ],
        "flow_summary": "카메라는 조타실의 좁은 공간에서 인우와 수리영의 충돌을 따라 어깨 너머로 접근한 뒤, 사진으로 내려갔다가 인우의 반응을 거쳐 수리영의 주관 시점으로 벽의 붉은 원들을 드러낸다. 마지막에는 그 주관적 응시가 무너지며 수리영의 실신으로 흐름이 내려앉는다.",
        "scene_index": 28,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default, cropping out most of Inwoo so Suriyoung's clenched mouth and anger dominate the frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold the camera completely still and keep the fingertip and the girl's face as the only sharp elements.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Remove all visible characters and make the composition unnaturally still, as if Suriyoung's perception has frozen on the red circles.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide aerial position above open water, high and far from the horizon line, facing the low setting sun across the sea",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward track over the golden water, lowering slightly as the horizon haze grows larger in frame.",
            "visual_focus": "the red setting sun, golden reflection on the sea surface, and the distant horizontal haze band"
          },
          {
            "camera_motion": "track",
            "camera_position": "Mid-high position over the sea surface, still far from the fog bank but aligned directly toward it, lens axis level with the horizon",
            "stage_index": 2,
            "stage_label": "approach_reveal",
            "transition_to_next": "The forward movement continues into a closer lateral angle where the small fishing boat can be seen entering the fog curtain.",
            "visual_focus": "the dense, murky fog band rising like a massive wall in the middle of the sea"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low side position near the waterline, parallel to the small fishing boat at medium distance, just outside the edge of the fog",
            "stage_index": 3,
            "stage_label": "threshold",
            "transition_to_next": "",
            "visual_focus": "the bow of the small fishing boat becoming half-buried inside the dark fog curtain"
          }
        ],
        "flow_summary": "카메라는 해질 무렵의 넓은 바다 위 높은 전경에서 출발해 황금빛 수면을 따라 안개 띠를 향해 서서히 전진한다. 거대한 장벽처럼 선 안개를 정면으로 드러낸 뒤, 그 경계 가까이 낮아지며 배가 안개 속으로 들어가는 문턱까지 이어진다.",
        "scene_index": 29,
        "shot_assignments": [
          {
            "deviation_note": "Frame the fog band with maximum horizontal dominance, reducing the sun and open water to supporting elements so the haze reads as a towering barrier.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          }
        ]
      }
    ]
  },
  "step_id": "scene_camera_flow",
  "run_id": "eaf8f65d-339f-446b-a0c6-f946acd66f28",
  "resolved_model": "gpt",
  "updated_at": "2026-05-09T10:50:03.349199+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}