{
  "status": "completed",
  "completed_count": 30,
  "applicable_count": 30,
  "failed_count": 0,
  "data": {
    "scenes": [
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low shoulder-height camera moving parallel to the man, about 12 feet to his left through dense undergrowth, keeping a full-body profile distance",
            "stage_index": 1,
            "stage_label": "pursuit_tracking",
            "transition_to_next": "The camera keeps pace, then arcs slightly ahead of the man and begins to push closer as his run falters.",
            "visual_focus": "the fleeing man forcing through the brush, his uneven stride, bare foot, bleeding thigh wound, and the foliage whipping past him"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Chest-height camera just ahead and slightly to the front-left of the man, closing from medium distance toward his face as he stumbles forward",
            "stage_index": 2,
            "stage_label": "fear_close_observation",
            "transition_to_next": "At the moment he freezes, the camera snaps its attention past him with a violent handheld shift, opening space behind and above his shoulder for the incoming attacker.",
            "visual_focus": "the man’s terrified face and broken momentum as he senses something approaching"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Close three-quarter front position at chest height, about 6 feet from the man, tilted slightly upward to catch the black silhouette descending into him",
            "stage_index": 3,
            "stage_label": "attack_impact",
            "transition_to_next": "",
            "visual_focus": "the black silhouette crashing into the man’s upper body and driving him backward at the instant of impact"
          }
        ],
        "flow_summary": "카메라는 숲속에서 도망치는 남자의 옆을 낮게 따라붙다가, 그가 공포에 굳는 순간 앞으로 파고들며 긴장을 좁힌다. 이어 시선이 급격히 흔들려 열린 공간을 만들고, 공중에서 덮쳐오는 검은 인영과 남자의 충돌을 같은 추격 동선의 끝에서 포착한다.",
        "scene_index": 1,
        "shot_assignments": [
          {
            "deviation_note": "Frame slightly wider within the tracking move to hold the full body mid-stride, emphasizing the lifted foot, missing shoe, and blood trailing from the thigh wound.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Use a sharper upward tilt within the handheld impact to include the airborne silhouette’s weight coming down onto the man’s upper body as he bends backward from the hit.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "At the mouth of the dark back alley, chest height, about 8 meters from the utility pole, looking down the alley toward the two figures under the dim streetlight",
            "stage_index": 1,
            "stage_label": "establishing_approach",
            "transition_to_next": "The dolly-in continues straight toward the utility pole, narrowing from the alley space to the upper bodies of the man and the woman.",
            "visual_focus": "the man and woman tangled together beside the utility pole in the dim alley"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye-level, about 1 meter in front of the man near the utility pole, lens aligned squarely with his face as he lifts his head",
            "stage_index": 2,
            "stage_label": "close_reveal",
            "transition_to_next": "After the frontal hold, the camera slides around the pair to their side, keeping the man close while revealing the woman's neck area in profile.",
            "visual_focus": "the man's face and his red glowing eyes"
          },
          {
            "camera_motion": "track",
            "camera_position": "Tight side angle at shoulder height, less than 1 meter from the pair, positioned beside the utility pole and looking across the woman's neck toward the man's mouth",
            "stage_index": 3,
            "stage_label": "side_observation",
            "transition_to_next": "The camera retreats and lowers slightly from the side angle, opening the frame downward as the woman's body begins to lose strength.",
            "visual_focus": "the man's bite at the woman's neck and the violent contact between them"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Three-quarter side position at waist-to-chest height, about 3 to 4 meters from the utility pole, wide enough to include the woman's full body as she collapses toward the ground",
            "stage_index": 4,
            "stage_label": "collapse_reveal",
            "transition_to_next": "",
            "visual_focus": "the woman's body folding and falling helplessly toward the alley floor"
          }
        ],
        "flow_summary": "카메라는 어두운 뒷골목 입구에서 전봇대 옆의 두 사람에게 서서히 다가가며, 남자의 얼굴 정면 클로즈업에서 붉은 눈을 드러낸다. 이후 옆으로 돌아 물어뜯는 행위를 스치듯 확인하고 뒤로 빠지며 여자가 무너지는 전신을 포착한다.",
        "scene_index": 2,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the frame to a frontal face close-up and center the man's red glowing eyes at the instant he raises his head.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Widen slightly within the retreating move so the woman's full body is visible in the middle of the fall, with the alley floor included beneath her.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At eye level just outside the police line, 25 feet from the active forest scene, looking inward through foreground tape and scattered personnel",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera slips laterally along the line, then pushes through an open gap toward the ground activity without changing screen direction.",
            "visual_focus": "the cordoned forest crime scene and police activity in the background"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low waist height, 6 feet from the ground-level recovery area, angled downward toward hands working near the body bag",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera continues forward past the recovery area, rising slightly and panning right to pick up the group of detectives beyond it.",
            "visual_focus": "the tense handling of evidence and the body bag at ground level"
          },
          {
            "camera_motion": "track",
            "camera_position": "Chest height within the perimeter, 8 feet in front of the detective group, slightly off-center to Hyesu's pointing side",
            "stage_index": 3,
            "stage_label": "command_focus",
            "transition_to_next": "",
            "visual_focus": "Hyesu standing at the center of the detectives, her rigid expression and extended pointing hand directing attention to a spot in the scene"
          }
        ],
        "flow_summary": "카메라는 폴리스 라인 바깥에서 현장의 규모를 잡은 뒤, 낮게 파고들어 수거 작업을 스치고 형사 무리 쪽으로 상승하며 이동한다. 마지막에는 지휘의 중심에 선 혜수의 상체와 손짓에 시선을 고정해 사건 현장의 긴장을 수렴시킨다.",
        "scene_index": 3,
        "shot_assignments": [
          {
            "deviation_note": "Frame slightly tighter than the stage default, holding Hyesu from upper torso upward while keeping her extended finger inside the frame as the directional anchor.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "crane",
            "camera_position": "Very high aerial position above an outer-city residential district, about 120 meters up, looking down at a cluster of aging low-rise villas and narrow rooftops",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera slowly descends and drifts forward, tightening its overhead angle toward one old villa with a rooftop room.",
            "visual_focus": "the wider outskirts neighborhood and the aged villa cluster"
          },
          {
            "camera_motion": "static",
            "camera_position": "High overhead position about 45 meters above the old villa, centered over the rooftop room with enough surrounding buildings visible to keep the area readable",
            "stage_index": 2,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the exterior of the old rooftop room on the worn villa roof"
          }
        ],
        "flow_summary": "카메라는 도시 변두리 주거지를 높은 부감으로 훑으며 시작해, 낡은 빌라 옥탑방 위로 천천히 내려와 정착한다. 뉴스 음성의 불안감을 받쳐주도록 공간 전체의 고립감에서 특정 옥탑방의 전경으로 시선을 좁힌다.",
        "scene_index": 4,
        "shot_assignments": [
          {
            "deviation_note": "Frame remains wide enough to show the surrounding old neighborhood while keeping the rooftop room as the central anchor.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the compact living-kitchen, chest height near the sink and small window, about 2.5 meters from Minsuk, angled across the counter line toward the living room TV area.",
            "stage_index": 1,
            "stage_label": "establishing_tension",
            "transition_to_next": "The camera continues its lateral track toward the dining area and pans toward the bedroom door as Suriyeong enters, keeping Minsuk in the same spatial axis.",
            "visual_focus": "Minsuk standing rigidly in the living room while watching the TV, with the kitchen activity held in the near foreground."
          },
          {
            "camera_motion": "pan",
            "camera_position": "At the edge of the small dining table, seated eye level, roughly 1.5 meters from Minsuk and Suriyeong, facing across the table toward the bedroom side of the room.",
            "stage_index": 2,
            "stage_label": "domestic_exchange",
            "transition_to_next": "After the table conversation finishes, the scene makes a clear scripted cut to the entrance area for the departure beat.",
            "visual_focus": "Minsuk and Suriyeong facing each other through the ordinary breakfast exchange."
          },
          {
            "camera_motion": "static",
            "camera_position": "In the narrow entrance area, shoulder height, side-on to Minsuk and Suriyeong, about 1 meter away, lens parallel to the wall to compress their closeness.",
            "stage_index": 3,
            "stage_label": "intimate_pause",
            "transition_to_next": "The camera lowers and pushes inward along Minsuk's arm, shifting attention from their faces and shoulders to her exposed inner wrist.",
            "visual_focus": "Suriyeong leaning close to Minsuk for a brief affectionate pause."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Very close to Minsuk's inner wrist, waist height, about 20 centimeters away, angled slightly downward from Suriyeong's side of the entrance.",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "The small circular mark on Minsuk's inner wrist."
          }
        ],
        "flow_summary": "카메라는 옥탑방의 주방과 거실을 가로지르며 민숙의 불안한 정지 상태를 포착한 뒤, 식탁 대화를 거쳐 현관으로 논리적 컷 이동한다. 마지막에는 모녀의 가까운 순간에서 민숙의 손목으로 시선을 낮추며 표식을 조용히 드러낸다.",
        "scene_index": 5,
        "shot_assignments": [
          {
            "deviation_note": "The tracking movement settles into a held upper-body framing so Minsuk's stillness dominates the end of the stage.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 1
          },
          {
            "deviation_note": "Frame slightly tighter than the stage default, favoring a side profile of the contact at Minsuk's shoulder.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 3
          },
          {
            "deviation_note": "Focus isolates the circular mark; surrounding skin and background fall softly out of focus.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 12,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low roadside position about 8 meters from the coastal road, lens at bicycle-wheel height, looking across the road toward the sea beyond",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera accelerates into a parallel tracking move as Suriyoung rides into frame, rising slightly to match her full-body profile.",
            "visual_focus": "the open coastal road, the passing bicycle, and the sea air around Suriyoung"
          },
          {
            "camera_motion": "track",
            "camera_position": "Parallel to Suriyoung on the ocean side of the road, about 4 meters away, camera at chest height, maintaining a side-on full-body distance",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera keeps pace, then subtly eases ahead and pans back to hold her expression as the road continues forward.",
            "visual_focus": "Suriyoung pedaling with earphones in, her bright expression, and her hair blown backward by motion"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Slightly ahead of Suriyoung on the same roadside track, camera at chest height, angled back toward her path",
            "stage_index": 3,
            "stage_label": "reaction_transition",
            "transition_to_next": "",
            "visual_focus": "Suriyoung continuing forward as the offscreen dog bark begins to pull attention beyond the frame"
          }
        ],
        "flow_summary": "카메라는 해안가 도로의 낮은 위치에서 수리영의 진입을 받아낸 뒤, 자전거와 나란히 달리며 밝고 활기찬 측면 전신을 따라간다. 마지막에는 그녀보다 살짝 앞서며 시선을 유지해, 이어지는 개 짖는 소리 쪽으로 긴장을 열어둔다.",
        "scene_index": 6,
        "shot_assignments": [
          {
            "deviation_note": "Maintain a clean side full-body profile and allow extra space behind her hair so the wind-blown movement reads clearly.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "At dog-pen floor level, about 6 feet from the rottweiler, on its side profile in the kennel aisle, slightly below the dog's shoulder height",
            "stage_index": 1,
            "stage_label": "tense_establishing",
            "transition_to_next": "The camera steadies and slides forward from the rottweiler's side toward the line of sight between the dog and Suriyoung.",
            "visual_focus": "the agitated rottweiler at the front of the pen"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At Suriyoung's chest height, 4 feet in front of her, aligned with her direct gaze toward the dog",
            "stage_index": 2,
            "stage_label": "stare_down",
            "transition_to_next": "As the dog's aggression breaks, the camera tilts and lowers back toward the pen floor to follow the rottweiler's body settling down.",
            "visual_focus": "Suriyoung holding a calm, unblinking stare"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low three-quarter angle inside the kennel aisle, about 5 feet from the rottweiler, wide enough to hold the dog's full body on the floor",
            "stage_index": 3,
            "stage_label": "submission",
            "transition_to_next": "After the injection beat, the camera tracks away from the dog along the kennel row and rises to Suriyoung's eye level, reorienting toward her front.",
            "visual_focus": "the rottweiler now calm and lowered to the ground"
          },
          {
            "camera_motion": "track",
            "camera_position": "Eye-level frontal position in the kennel aisle, about 4 feet from Suriyoung, with the caged dogs arranged along the sides of her sightline",
            "stage_index": 4,
            "stage_label": "reaction_to_workload",
            "transition_to_next": "The camera continues drifting with Suriyoung as she prepares to call and then answer the helper's request, keeping the shelter aisle continuous.",
            "visual_focus": "Suriyoung looking toward the dogs in the cages with restrained concern"
          },
          {
            "camera_motion": "track",
            "camera_position": "Shoulder-height moving position beside Suriyoung in the grooming area, close enough for hand work but still connected to the kennel aisle behind her",
            "stage_index": 5,
            "stage_label": "move_into_tasks",
            "transition_to_next": "",
            "visual_focus": "Suriyoung transitioning from the kennel row into the hands-on care of the dogs"
          }
        ],
        "flow_summary": "카메라는 사납게 날뛰는 로트와일러의 낮은 위치에서 시작해 수리영의 시선과 맞물린 뒤, 개가 얌전해지는 순간을 따라 바닥으로 내려간다. 이후 보호원 통로를 따라 수리영의 정면으로 이동하며 갇힌 개들을 바라보는 부담감과 이어지는 돌봄 작업으로 흐름을 연결한다.",
        "scene_index": 7,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame a touch wider and lower than the stage default so the entire subdued body and lowered tail read clearly in one composition.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Settle the tracking movement into a brief frontal hold; keep the caged dogs mostly as off-axis presence so her pressed-mouth expression dominates.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Street-level camera in the middle of the busy commercial road, slightly ahead and to the left of Suriyeong, low at bicycle-handlebar height, keeping a full-body distance as she rides through the dusk crowd.",
            "stage_index": 1,
            "stage_label": "establishing_approach",
            "transition_to_next": "The camera continues tracking backward with Suriyeong, allowing the supermarket entrance to grow larger behind her, then arcs toward the glass doors as she slows down.",
            "visual_focus": "Suriyeong riding her bicycle past neon signs, taxis, street stalls, and pedestrians."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Outside the supermarket entrance, shoulder height, positioned behind and slightly to the side of Suriyeong at about three meters as she stops near the glass doors.",
            "stage_index": 2,
            "stage_label": "threshold",
            "transition_to_next": "A motivated cut carries the camera across the threshold into the supermarket aisle, matching the direction of Suriyeong's movement inside.",
            "visual_focus": "Suriyeong arriving, stopping the bicycle, and entering the supermarket."
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the supermarket aisle, shoulder height, perpendicular to the shelf line, about two meters from Suriyeong and the female employee for a side-on two-shot.",
            "stage_index": 3,
            "stage_label": "inquiry",
            "transition_to_next": "The camera holds the aisle geography, then pans slightly toward the stocking area as another employee's comment pulls Suriyeong's attention off the two-shot.",
            "visual_focus": "Suriyeong asking the female employee where her mother is."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the same aisle, closer to Suriyeong at chest-to-face distance, angled just off her front as the shelf line compresses behind her.",
            "stage_index": 4,
            "stage_label": "confusion_reaction",
            "transition_to_next": "A hard cut jumps back outside to the supermarket entrance as Suriyeong exits and tries to contact her mother.",
            "visual_focus": "Suriyeong processing the confusing information about Minsuk leaving early and being seen outside."
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Outside the supermarket entrance, chest height, one to two meters in front of Suriyeong and slightly to her right, moving backward as she steps away from the doors.",
            "stage_index": 5,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suriyeong looking down at her phone with growing concern."
          }
        ],
        "flow_summary": "카메라는 번화가를 달리는 수리영을 거리 한가운데서 따라가며 마트 입구까지 끌고 들어간 뒤, 내부 진열대 앞 대화로 시선을 고정한다. 엄마의 행방이 엇갈렸다는 정보가 쌓이면 다시 입구 밖으로 끊어 나와, 전화를 확인하는 수리영의 불안으로 흐름을 마무리한다.",
        "scene_index": 8,
        "shot_assignments": [
          {
            "deviation_note": "Keep the framing wider than the stage default so her full body and bicycle movement remain visible amid the street lights and stalls.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Hold a clean lateral profile of both speakers, minimizing the surrounding aisle movement so the question about Minsuk lands clearly.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Tighten to an upper-body frame and let the handheld motion settle briefly on the phone screen before returning to her furrowed expression.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "pan",
            "camera_position": "Low roadside position on the landward edge of the coastal road, about 1 meter above ground and 10 meters from the approaching bicycle, with the dark sea held across the far background",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyeong enters the frame, the pan accelerates with her movement and the camera begins to match her speed, sliding into a parallel side track.",
            "visual_focus": "Suriyeong riding fast along the coastal road against the night sea"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low parallel tracking position beside the bicycle on the sea-facing side, about handlebar height and 2 to 3 meters away, maintaining a strong side profile with the ocean behind her",
            "stage_index": 2,
            "stage_label": "side_urgency",
            "transition_to_next": "The tracking camera gradually eases backward and pivots from a strict side profile toward a rear three-quarter angle as she continues down the road.",
            "visual_focus": "Suriyeong’s tense profile, hard pedaling, and wind-driven hair silhouetted against the dark sea"
          },
          {
            "camera_motion": "track",
            "camera_position": "Rear three-quarter tracking position slightly behind the bicycle, still low and close to the road surface, letting the coastal road stretch ahead into darkness",
            "stage_index": 3,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suriyeong pulling away along the night coastal road"
          }
        ],
        "flow_summary": "카메라는 해안도로 옆 낮은 위치에서 수리영의 접근을 받아낸 뒤, 자전거와 속도를 맞춰 바다를 배경으로 측면 추적한다. 이후 그녀가 계속 집으로 달려가는 방향을 살리며 뒤쪽 사선으로 물러나 긴박한 이동감을 이어간다.",
        "scene_index": 9,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default, timed to the instant her foot drives the pedal downward; the sea remains a dark negative-space backdrop while her profile and hair movement read as a sharp silhouette.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low on the rooftop floor beside the wooden platform, about 25 cm above ground, several meters from the rooftop room entrance, angled across the drying herbs toward the water tank and clothesline",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins tracking forward at ground level, following the direction of the windblown dry leaves toward the approaching feet.",
            "visual_focus": "dry herb leaves disturbed by the wind, the rooftop surface, and the distant iron door area"
          },
          {
            "camera_motion": "track",
            "camera_position": "Ankle-height on the rooftop floor, moving parallel to the stranger's feet from the open rooftop area toward the iron door entrance",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The track slows at the threshold and rises slightly toward the door seam as the hand works the paper flyer into the gap.",
            "visual_focus": "the stranger's shoes, the long shadow on the floor, and the paper flyer caught in the iron door gap"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Just outside the iron door at handle height, lens placed within a few inches of the door seam, facing directly into the narrow opening",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "Cut on the faint unlocking sound and the first movement of the door, jumping from the exterior gap to an interior angle aimed at the window reflection.",
            "visual_focus": "the thin opening of the iron door and the dark interior beyond it"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the room near the side wall at shoulder height, set back from the window and angled so the glass surface carries the action as a reflection rather than direct view",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the reflected silhouettes in the window, with a bent figure moving over another person and lowering its head toward the shoulder"
          }
        ],
        "flow_summary": "카메라는 옥상 바닥의 바람과 흔들리는 잎에서 시작해 낯선 남자의 발과 그림자를 따라 철문 앞까지 낮게 접근한다. 문틈을 응시하던 시선은 잠금이 풀리는 소리와 함께 실내 창문 반사로 논리적 컷되어, 직접 보이지 않는 습격을 실루엣으로 드러낸다.",
        "scene_index": 10,
        "shot_assignments": [
          {
            "deviation_note": "Hold the dolly movement at its final point so the slightly opened crack and the darkness inside become the entire composition.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame only the window reflection; keep the figures as distorted mid-action silhouettes without revealing the attack directly.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low on the dim courtyard floor near the rear of the building, about ankle height, angled upward toward the steep concrete stairwell leading to the rooftop room",
            "stage_index": 1,
            "stage_label": "approach",
            "transition_to_next": "The camera follows the upward line of the stairs and rises toward face height as Suri-young reaches the middle of the staircase.",
            "visual_focus": "the steep concrete stairs and Suri-young's urgent ascent"
          },
          {
            "camera_motion": "static",
            "camera_position": "Midway up the narrow concrete staircase, at Suri-young's face height, very close to her from the front-left side",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "A hard eyeline cut jumps from her reaction on the stairs to the rooftop landing, revealing what the smell leads toward.",
            "visual_focus": "Suri-young's face reacting to the sudden foul smell"
          },
          {
            "camera_motion": "static",
            "camera_position": "On the rooftop landing, several meters from the rooftop room entrance, at human eye level, facing the iron front door squarely in the darkness",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the half-open iron front door of the rooftop room, frozen in the dark"
          }
        ],
        "flow_summary": "카메라는 마당 뒤편에서 계단의 상승선을 따라 수리영의 급한 움직임을 좇다가, 계단 중간에서 악취를 맡은 얼굴에 멈춘다. 이후 그녀의 감각과 시선을 따라 옥상으로 논리적 컷을 넘어가, 어둠 속 반쯤 열린 현관 철문을 정적으로 드러낸다.",
        "scene_index": 11,
        "shot_assignments": [
          {
            "deviation_note": "The framing tightens into an intense close-up, minimizing the staircase background so the nose-wrinkling reaction dominates.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "The composition is held more rigidly and symmetrically than the approach stages, emphasizing the door's stillness and unease.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Shoulder-height just inside the rooftop room entrance, about 8 feet behind Suriyoung, facing from the living room toward the inner doors through dim practical light.",
            "stage_index": 1,
            "stage_label": "establishing_search",
            "transition_to_next": "The camera tracks behind Suriyoung from the living room toward the closed bedroom door, narrowing its angle from the room clues to the doorway.",
            "visual_focus": "Suriyoung entering, the quiet living room, the cooled pot, the glowing television, and the abandoned table setting"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low waist-height outside Suriyoung's bedroom doorway, about 3 feet back from the threshold, looking through the opened door gap down toward the floor.",
            "stage_index": 2,
            "stage_label": "threshold_reveal",
            "transition_to_next": "After holding on the blood, the camera resumes movement over the threshold and follows the direction of the bloody footprints toward the curtain.",
            "visual_focus": "The dark red pool of blood spread across the bedroom floor just beyond the open door"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Chest-height inside the bedroom, slightly behind and to the left of Suriyoung, 4 feet from her shoulder, angled toward the curtain and the corner beyond it.",
            "stage_index": 3,
            "stage_label": "approach_curtain_reveal",
            "transition_to_next": "As the curtain is pulled aside and the body is revealed, the camera pushes closer, then pivots sharply from the body back toward Suriyoung's face.",
            "visual_focus": "The bloody footprints leading to the curtain, Suriyoung's hand reaching forward, and the hidden body beyond the fabric"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Eye-level directly in front of Suriyoung at close distance, about 1 to 2 feet from her face, backing up slightly as she recoils.",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "The camera drops with Suriyoung's movement toward the floor, then shifts its attention along her gaze toward Minsuk's hand and the bed area.",
            "visual_focus": "Suriyoung's frozen, terrified face as the shock overtakes her"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low bedside height near Minsuk's hand and the edge of the bed, about 2 feet from the mattress, aimed upward toward the dark wall above the bed.",
            "stage_index": 5,
            "stage_label": "occult_reveal",
            "transition_to_next": "",
            "visual_focus": "The ominous red circular mark appearing on the dark wall above the bed"
          }
        ],
        "flow_summary": "카메라는 수리영의 수색 동선을 따라 거실에서 방문 앞, 방 안의 피와 커튼 쪽으로 점점 깊이 들어간다. 시신 발견 후에는 수리영의 얼굴로 급격히 당겨졌다가 바닥과 침대 쪽으로 낮아지며 마지막 붉은 원형 표식으로 시선을 들어 올린다.",
        "scene_index": 12,
        "shot_assignments": [
          {
            "deviation_note": "Hold the camera completely still at the doorway so the blood pool is discovered before any further movement into the room.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten from the stage's close distance into a more compressed facial close-up, keeping the background nearly lost in darkness.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 4
          },
          {
            "deviation_note": "End the tilt on a locked-off composition of the completed red circle, allowing the wall to become the sole focus.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 15,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At the mouth of the narrow rooftop-house alley, waist height, about 8 meters from the cement stairs, angled upward toward the stair landing and the street edge",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera tracks laterally along the alley toward the stopped police car, keeping the siren-lit stairs in peripheral view as the attention shifts to the arrival point.",
            "visual_focus": "Suriyoung emerging from the rooftop stairs under flashing siren light"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the police car at chest height, 2 meters from Hyesu, moving parallel to her as she steps out and fixes her gaze down the alley toward Suriyoung",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera follows Hyesu forward in a short forward track, closing the distance until it reaches the space between Hyesu and Suriyoung.",
            "visual_focus": "Hyesu registering Suriyoung standing blankly ahead"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low near Suriyoung's eye level, about 1 meter from her, looking slightly upward past her toward Hyesu's face just off the upper frame line",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "After Suriyoung's line, the camera cuts to Hyesu's reaction and then pivots toward the stair direction.",
            "visual_focus": "Suriyoung looking up at Hyesu while struggling to speak"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Shoulder height near Hyesu on the alley side, close enough for a reaction, then oriented toward the steep cement stairs behind Suriyoung",
            "stage_index": 4,
            "stage_label": "reaction_to_stairs",
            "transition_to_next": "",
            "visual_focus": "Hyesu's shock turning into movement as Hyesu and Kim detective head toward the rooftop stairs"
          }
        ],
        "flow_summary": "카메라는 사이렌 불빛이 번쩍이는 골목 입구에서 출발해 경찰차 쪽으로 이동하며 혜수의 시선을 따라 수리영에게 접근한다. 이후 두 사람 사이의 낮은 정적 위치에 멈춰 수리영의 고백을 붙잡고, 반응 후 계단 쪽으로 시선을 돌린다.",
        "scene_index": 13,
        "shot_assignments": [
          {
            "deviation_note": "The moving track briefly slows into a held upper-body framing, isolating Hyesu's stunned fixation before she fully rushes forward.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "The frame is tightened into a still, low close composition so Suriyoung's upward gaze dominates, with Hyesu implied by eyeline rather than fully shown.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the rooftop room entrance, eye level, medium distance from the living area, aligned slightly behind and to the side of Suryoung as she reacts toward the bedroom doorway",
            "stage_index": 1,
            "stage_label": "alert_entry",
            "transition_to_next": "The camera tracks after Suryoung as she rushes from the entrance area into her room, narrowing the angle through the bedroom doorway.",
            "visual_focus": "Suryoung turning toward her room, with the detective and Hyesu left behind in the living area"
          },
          {
            "camera_motion": "static",
            "camera_position": "Just inside Suryoung's bedroom doorway, eye level, wide distance, facing inward toward the bed, wall, curtain, and the unnaturally clean room",
            "stage_index": 2,
            "stage_label": "room_reveal",
            "transition_to_next": "After holding the clean room, the camera begins a slow push toward Suryoung near the curtain line, shifting attention from the empty space to her face.",
            "visual_focus": "The spotless bedroom interior with no blood mark, no body, and no visible disturbance"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the bedroom near the bed and curtain side, eye level, close distance, facing Suryoung frontally as she stares past the camera toward the empty curtain area",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "When Suryoung rushes out toward the dining table, the camera pulls off the frontal axis and tracks with her through the room opening into the living area.",
            "visual_focus": "Suryoung's pale, stunned face as she looks at the place where the body should have been"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the dining table in the living area, chest height, medium-close distance, perpendicular to Suryoung's body line",
            "stage_index": 4,
            "stage_label": "table_confirmation",
            "transition_to_next": "",
            "visual_focus": "Suryoung frozen at the empty dining table, pointing to where the teacups should have been"
          }
        ],
        "flow_summary": "카메라는 현관 쪽에서 수리영의 동선을 따라 방 안으로 진입해, 사라진 흔적이 남긴 빈 공간을 먼저 확인한 뒤 그녀의 얼굴로 압박하듯 다가간다. 이후 수리영이 식탁으로 뛰쳐나가는 흐름을 따라가며, 방의 부재가 거실의 부재로 확장되는 동선으로 마무리한다.",
        "scene_index": 14,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame slightly longer than the surrounding movement so the unnatural cleanliness of the room reads as evidence rather than simple emptiness.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten from the stage's close distance into a frontal upper-body emphasis, keeping the empty curtain direction implied by her eyeline.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "Settle at the end of the tracking move into a brief still side composition, framing Suryoung's pointing hand and the bare tabletop together.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the seaward side of the bus stop, chest-high and several meters from the bench, angled in profile so the dark ocean and misty shelter sit behind Suri-young.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow move along the bench line, closing the distance toward Suri-young as Hye-soo enters the bench area with the drink.",
            "visual_focus": "Suri-young sitting blankly on the bus stop bench against the night sea and damp fog"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low and close beside the bench, just forward of Suri-young’s knees, at hand height and within arm’s reach of the space between the two women.",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As Suri-young stands abruptly, the camera rises slightly and gives way, shifting its attention from the offered drink to her sudden movement away from the bench.",
            "visual_focus": "Hye-soo’s hand offering a drink can into Suri-young’s space"
          },
          {
            "camera_motion": "track",
            "camera_position": "Near the outer edge of the bus stop, shoulder-high and a few meters behind Suri-young as she turns from the bench toward the dark coastal road.",
            "stage_index": 3,
            "stage_label": "departure_follow",
            "transition_to_next": "The camera lets Suri-young pass out toward the road, then slows and pivots back toward the bus stop, keeping Hye-soo in the same spatial line behind her.",
            "visual_focus": "Suri-young breaking away from the bench and moving down the coastal road"
          },
          {
            "camera_motion": "pan",
            "camera_position": "On the coastal road beyond the bus stop, chest-high and several meters from Hye-soo, looking back toward her with Suri-young’s route stretching away behind the camera line.",
            "stage_index": 4,
            "stage_label": "reaction_watch",
            "transition_to_next": "",
            "visual_focus": "Hye-soo calling after Suri-young into the misty distance"
          }
        ],
        "flow_summary": "카메라는 밤바다 쪽에서 버스정류장 벤치의 수리영을 관찰하듯 시작해, 음료수를 건네는 손까지 조용히 파고든 뒤 수리영의 갑작스러운 이탈을 따라 도로 쪽으로 빠져나간다. 마지막에는 수리영을 쫓아가지 않고 길가에서 멈춰 혜수가 등 뒤로 외치는 순간을 서늘하게 바라본다.",
        "scene_index": 15,
        "shot_assignments": [
          {
            "deviation_note": "Hold the profile full-body framing wider than the later stages, allowing the bench, fog, and dark sea to dominate the negative space around Suri-young.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten into an insert-like close-up at hand height; the can and Hye-soo’s hand take priority while Suri-young remains only implied at the edge of frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Frame Hye-soo in an upper-body composition with her hands cupped near her mouth; keep Suri-young’s distance suggested by the direction of Hye-soo’s gaze rather than requiring a clear two-shot.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the dim police office just beyond the doorway, chest height, about six feet in front of Hyesu as she steps in and stops near the entrance line",
            "stage_index": 1,
            "stage_label": "establishing_entry",
            "transition_to_next": "The camera keeps moving inward with Hyesu, drifting past her front-left side toward the desk area where Kim detective is on duty.",
            "visual_focus": "Hyesu holding a phone to her ear, her tense face framed against the old office interior"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Mid-office aisle, eye level, positioned between the entrance and the desk, angled to include Hyesu in the foreground side and Kim detective deeper at the desk",
            "stage_index": 2,
            "stage_label": "office_axis",
            "transition_to_next": "As Hyesu lowers the phone and steps toward the desk, the camera shifts to her side line, tightening the distance to her hand and the desk.",
            "visual_focus": "The spatial relationship between Hyesu and Kim detective, with the unanswered call turning into an urgent request"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Beside Hyesu at eye level, three feet from her extended arm, looking laterally across her toward Kim detective seated by the desk",
            "stage_index": 3,
            "stage_label": "confrontation_push",
            "transition_to_next": "The camera continues along the line of the offered phone toward Kim detective, preparing to catch his upward reaction.",
            "visual_focus": "Hyesu abruptly presenting the phone screen toward Kim detective"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Near the desk at seated-head height, slightly over Kim detective's side, looking back toward Hyesu and then able to turn toward the window side of the office",
            "stage_index": 4,
            "stage_label": "reaction_and_dread",
            "transition_to_next": "",
            "visual_focus": "Kim detective taking in Hyesu's urgency, then Hyesu's uneasy attention shifting away into the dark office atmosphere"
          }
        ],
        "flow_summary": "카메라는 경찰서 사무실 입구에서 혜수와 함께 안쪽으로 들어와, 김형사가 있는 책상 방향으로 축을 잡은 뒤 혜수가 핸드폰을 내미는 순간까지 옆으로 밀착해 들어간다. 이후 그 시선의 흐름은 김형사의 반응과 혜수의 불길한 예감으로 이어지도록 책상 주변에 머문다.",
        "scene_index": 16,
        "shot_assignments": [
          {
            "deviation_note": "Frame as an upper-body medium shot, holding Hyesu tighter than the wider entry stage while keeping the old dark office readable around her.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Shift to a sharper side angle at the end of the push so the phone screen thrust cuts across the frame toward Kim detective.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low rooftop-level camera, about 30 cm above the concrete floor, set several meters from the rooftop room and angled across the blue dawn haze toward the lit window.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow lateral move, leaving the distant window as background and drifting toward the black cat at wall height.",
            "visual_focus": "the yellow-lit rooftop room window glowing through the dawn mist, with the black cat entering the edge of the frame"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low side-on position at the black cat's shoulder height, roughly one meter away, moving parallel to the cat along the rooftop wall with the lit window held in the background line of sight.",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera continues tracking with the cat, then lets the lens angle rise slightly toward the top of the concrete wall as the cat prepares to jump.",
            "visual_focus": "the black cat turning its head toward the faint yellow window light"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Very low and close beside the rough concrete wall, near the cat's takeoff point, looking upward along the wall edge toward the dawn sky.",
            "stage_index": 3,
            "stage_label": "exit_reveal",
            "transition_to_next": "",
            "visual_focus": "the black cat springing up and crossing over the wall"
          }
        ],
        "flow_summary": "카메라는 푸른 새벽 안개 속 옥탑방 창문을 멀리서 잡은 뒤, 낮은 높이로 고양이 곁을 따라붙으며 창문을 돌아보는 찰나를 포착한다. 이후 같은 동선이 담벼락 쪽으로 이어져 고양이가 넘어가는 움직임까지 자연스럽게 연결된다.",
        "scene_index": 17,
        "shot_assignments": [
          {
            "deviation_note": "Hold the side profile for a brief beat so the head turn toward the lit window reads clearly against the blue dawn haze.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Inside the main bedroom, low seated height near the foot of the bed, about 4 feet from Su-ri-young, facing her and the quiet doorway beyond her shoulder.",
            "stage_index": 1,
            "stage_label": "waking_suspicion",
            "transition_to_next": "The camera follows her line of sight with a slow handheld drift toward the bedroom exit, then cuts on her movement into the hall outside her own room.",
            "visual_focus": "Su-ri-young waking and listening for any sound in the apartment"
          },
          {
            "camera_motion": "static",
            "camera_position": "Just outside Su-ri-young's room, eye-level, about 5 feet from the threshold, looking straight through the opened door into the room.",
            "stage_index": 2,
            "stage_label": "room_reveal",
            "transition_to_next": "After holding the clean room, the camera tracks forward past the threshold and pivots toward the window as Su-ri-young moves inside.",
            "visual_focus": "the unnaturally clean, orderly room visible beyond the open doorway"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside Su-ri-young's room, eye-level, moving from the doorway toward the window and stopping a few feet behind her near the center of the room.",
            "stage_index": 3,
            "stage_label": "failed_confirmation",
            "transition_to_next": "The camera lets the phone interruption break the stillness, then cuts with her hurried exit to the bathroom mirror area.",
            "visual_focus": "the empty window area, the opened curtain, and Su-ri-young's relieved but unsettled reaction"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the bathroom, eye-level and about 3 feet from the mirror, aligned so the reflected rear wall occupies the center of the frame.",
            "stage_index": 4,
            "stage_label": "mirror_haunting",
            "transition_to_next": "On Su-ri-young's abrupt turn toward the real wall, the camera cuts and follows her rush out into the dining area.",
            "visual_focus": "the bathroom wall as seen in the mirror, where a red circular mark appears"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Beside the dining table at tabletop height, starting about 3 feet from the framed photograph and pushing in to an extreme close distance.",
            "stage_index": 5,
            "stage_label": "photo_hallucination",
            "transition_to_next": "",
            "visual_focus": "the framed photograph on the dining table, especially the mother's face as it grotesquely distorts"
          }
        ],
        "flow_summary": "카메라는 안방의 불안한 정적에서 출발해 수리영의 시선과 이동을 따라 방문, 창가, 욕실 거울, 식탁 사진으로 점점 좁혀 들어간다. 각 공간은 컷으로 연결되지만 모두 수리영이 확인하려는 대상 쪽으로 전진하는 하나의 압박감 있는 동선으로 설계된다.",
        "scene_index": 18,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame longer than Su-ri-young's movement, emphasizing the absence of blood or any body after the door opens.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten the composition within the mirror reflection so the red circular mark becomes the dominant graphic element and Su-ri-young is minimized or excluded.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 15,
            "stage_index": 4
          },
          {
            "deviation_note": "Complete the push-in at a closer tabletop angle, isolating the distorted mother's face and removing most surrounding dining table context.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 20,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "pan",
            "camera_position": "Inside the quiet mart entrance, eye level, about 5 meters from Suriyeong, facing inward toward the aisles.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera pans with Suriyeong as she moves away from the entrance, then begins following her into the aisles.",
            "visual_focus": "Suriyeong entering the sparse morning mart and scanning for the male employee."
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside the mart aisle, shoulder height, moving parallel to the shelf line at a medium distance from Suriyeong and the male employee.",
            "stage_index": 2,
            "stage_label": "inquiry",
            "transition_to_next": "A hard cut carries the search from the interior dialogue to the exterior wall where they check the possible CCTV angle.",
            "visual_focus": "Suriyeong questioning the male employee near the shelves."
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Outside the mart, shoulder height behind Suriyeong and the male employee, about 3 meters from the exterior wall, angled slightly upward.",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "After the CCTV position is confirmed, the camera tracks around Suriyeong into a tighter side-front position as she places the phone call.",
            "visual_focus": "Suriyeong and the male employee looking up toward the CCTV camera mounted high on the exterior wall."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Outside the mart, chest height, close side-front distance from Suriyeong, isolating her from the wall and parking area behind her.",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyeong holding the phone tight to her ear with a serious expression as she explains the situation to Hyesu."
          }
        ],
        "flow_summary": "카메라는 한산한 마트 안에서 수리영의 탐문을 따라가다가, 논리적 컷으로 마트 밖 CCTV 확인 지점으로 이동한다. 이후 외벽을 올려다보는 뒷모습에서 수리영의 전화 통화 상체 클로즈로 좁혀 들어가며 긴장을 집중시킨다.",
        "scene_index": 19,
        "shot_assignments": [
          {
            "deviation_note": "Frame from behind with extra headroom to include the upper exterior wall and the CCTV camera above their gaze.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Tighten to an upper-body frame, keeping the phone pressed close to her ear and minimizing the male employee’s presence.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At eye level near the back corner of the dark security office, about 10 feet from the desk, facing the glowing monitor with Hyesu, Suriyoung, and the security employee grouped around it",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward move along the desk line, narrowing the space between the group and the monitor while keeping the screen as the anchor point.",
            "visual_focus": "The monitor glow illuminating Hyesu, Suriyoung, and the security employee in the dim room"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At shoulder height beside the desk, about 4 feet from the monitor, angled across Hyesu toward the screen with Suriyoung held deeper in the background",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The push-in continues past Hyesu's shoulder toward the monitor surface, shifting attention from the people to the exact dark area on the CCTV image.",
            "visual_focus": "Hyesu leaning in to inspect the unclear CCTV footage while Suriyoung watches anxiously behind her"
          },
          {
            "camera_motion": "static",
            "camera_position": "Very close to the monitor at desk height, within inches of the screen, slightly off-axis to catch Hyesu's hand entering frame without reflections dominating",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Hyesu's finger indicating the unusually dark portion of the CCTV image on the monitor"
          }
        ],
        "flow_summary": "카메라는 어두운 총무과 뒤편에서 모니터 앞에 모인 세 사람을 먼저 잡은 뒤, 책상 라인을 따라 천천히 모니터 쪽으로 밀고 들어간다. 마지막에는 인물들의 불안을 화면 밖으로 밀어내고, 혜수의 손가락이 가리키는 식별 불가능한 어두운 부분에 시선을 고정한다.",
        "scene_index": 20,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame wider than the later path, allowing the monitor glow to define the room and the three figures without isolating any single face.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten into a near-macro close-up, cropping out faces and locking focus on the fingertip and the dark CCTV patch while the rest of the screen falls slightly soft.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At standing eye level near the police office entrance, about 15 feet from the main desks, moving inside along the central aisle.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera tracks past the front desks and follows the group deeper into the office, ending near Hyesu's desk as the room begins to clear.",
            "visual_focus": "Hyesu, Suriyoung, and the detective within the busy police office layout."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At seated eye level, 8 feet from Hyesu's desk, facing Suriyoung across the now-emptier office.",
            "stage_index": 2,
            "stage_label": "isolation",
            "transition_to_next": "As the detectives leave, the camera pushes closer over the edge of the desk, narrowing from Suriyoung alone in the room to the materials spread in front of her.",
            "visual_focus": "Suriyoung sitting alone at Hyesu's desk after the office empties."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tightening from desk height to Suriyoung's eye level, within 2 feet of her face across the scattered case photographs.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on Suriyoung's shock, the camera cuts across the room to the detective's empty workstation and monitor.",
            "visual_focus": "Suriyoung's reaction as the gruesome case photographs overwhelm her."
          },
          {
            "camera_motion": "cut",
            "camera_position": "At monitor height beside the detective's empty desk, about 3 feet from the screen, angled slightly over the keyboard toward the display.",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "The camera pivots and drops back toward the writing surface as Suriyoung moves from the monitor information to copying the coordinates.",
            "visual_focus": "The monitor showing the sea map and the last phone location coordinates."
          },
          {
            "camera_motion": "static",
            "camera_position": "Low tabletop close-up position beside the desk, less than 1 foot from the memo paper and pen tip.",
            "stage_index": 5,
            "stage_label": "evidence_capture",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's hand pressing the pen into the memo paper as she writes down the coordinates."
          }
        ],
        "flow_summary": "카메라는 경찰서 사무실 입구에서 안쪽 책상으로 따라 들어간 뒤, 사람들이 빠져나가며 수리영만 남는 순간부터 점점 책상 위 증거와 얼굴로 압축된다. 이후 모니터의 위치추적 결과로 한 번 시선을 건너뛰고, 다시 책상 표면으로 내려와 수리영이 좌표를 훔쳐 적는 손끝에 멈춘다.",
        "scene_index": 21,
        "shot_assignments": [
          {
            "deviation_note": "Hold slightly longer than the stage movement, letting the push-in settle into a locked close-up on her frozen, pale expression.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame tighter than the stage default so the pen pressure, memo texture, and coordinate marks dominate the image while the rest of the office falls out of focus.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At sidewalk level across from the police station forecourt, eye-height, wide full-body distance from the parked bicycle, facing slightly toward the building entrance and the curb",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyeong leans forward to start riding, the camera releases from the static wide position and begins tracking parallel to the bicycle along the curb line.",
            "visual_focus": "Suriyeong seated on the bicycle, one foot set on a pedal, with the police station exterior and overcast street atmosphere behind her"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low eye-height to waist-height on the street side of the bicycle, medium full-body distance, moving parallel with Suriyeong as she pushes off from the parked position",
            "stage_index": 2,
            "stage_label": "departure",
            "transition_to_next": "",
            "visual_focus": "Suriyeong driving the pedal down and the bicycle beginning to move away from the police station"
          }
        ],
        "flow_summary": "카메라는 흐린 경찰서 밖을 넓게 잡은 정지 지점에서 수리영이 자전거에 올라 출발하려는 순간을 포착한 뒤, 그녀의 출발 동선에 맞춰 측면으로 따라붙는 흐름으로 이어진다. 선택된 샷은 이 연속 이동의 출발점에 해당한다.",
        "scene_index": 22,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame wide enough to include Suriyeong's full body and the entire bicycle at the exact poised moment before the first strong pedal stroke.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the rear aisle of a dim PC room, eye-level height, several meters behind and slightly off to the side of Suri-young's station",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward move along the aisle toward Suri-young's monitor glow, narrowing the space around her.",
            "visual_focus": "the blue-lit rows of computer monitors and Suri-young seated in front of one screen"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Beside and slightly behind Suri-young at seated shoulder height, close enough to frame her upper body with the monitor beyond her eyeline",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera continues inward, then gently tilts down from her focused face and screen toward the desk surface and bag area.",
            "visual_focus": "Suri-young staring intensely at the nautical map on the monitor"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Close to the desk edge at seated torso height, angled downward toward Suri-young's hands and the open backpack",
            "stage_index": 3,
            "stage_label": "task_detail",
            "transition_to_next": "",
            "visual_focus": "printed maps being gathered and pushed toward the open backpack"
          }
        ],
        "flow_summary": "카메라는 어두운 PC방 뒤쪽에서 수리영의 자리로 천천히 접근해, 모니터의 해상 지도를 응시하는 상체에 밀착한다. 이후 시선은 자연스럽게 아래로 내려가 지도와 백팩 쪽 작업으로 이어지는 흐름을 만든다.",
        "scene_index": 23,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter on Suri-young's upper body and keep the nautical map readable as a blue glow rather than cutting away to the hands.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "On the rain-lashed coastal road, about 3 meters ahead and slightly left of the moving bicycle, chest height, tracking backward at the same speed",
            "stage_index": 1,
            "stage_label": "establishing_track",
            "transition_to_next": "The camera keeps tracking backward, then drifts inward from the front-left angle toward Suri-young's face while rising to eye level.",
            "visual_focus": "Suri-young pushing forward on the bicycle through heavy rain, with the dark coastal road and storm clouds behind her"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Front-left of the bicycle, roughly 1 meter from Suri-young, at eye level, moving closer along her line of travel",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As thunder builds, the camera completes the push-in and locks into a tight front-facing position just before the lightning flash.",
            "visual_focus": "Suri-young's rain-soaked face and intense forward gaze, with streaks of rain crossing the frame"
          },
          {
            "camera_motion": "track",
            "camera_position": "Directly in front of Suri-young, slightly below eye level, about 40 centimeters from her face, tracking backward in perfect sync with the bicycle",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suri-young's determined face in tight close-up, suddenly illuminated by lightning against the storm rain"
          }
        ],
        "flow_summary": "카메라는 해안가 도로 위를 달리는 수리영의 자전거 앞에서 함께 후진 추적하다가, 점점 얼굴 쪽으로 파고들어 폭우와 천둥 속 결심을 압축한다. 마지막에는 번개 빛이 터지는 순간의 클로즈업으로 이동이 응축된다.",
        "scene_index": 24,
        "shot_assignments": [
          {
            "deviation_note": "",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the rooftop room near the front doorway, chest-height, wide distance, facing across the ransacked living room toward the open window and the bedroom doorway beyond",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward track through the disturbed living room, using the line of fallen chairs and scattered objects to lead toward the bedroom doorway.",
            "visual_focus": "the disordered living room, open window, fallen chairs, and the dark bedroom entrance"
          },
          {
            "camera_motion": "track",
            "camera_position": "Mid-living room at shoulder height, moving between the overturned chairs and spilled household items, angled slightly toward the open bedroom",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The track continues across the bedroom threshold and tightens toward the marked wall without breaking spatial continuity.",
            "visual_focus": "the open bedroom doorway and the red circular mark becoming clearer on the wall inside"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the bedroom, eye-level, very close to the torn wall, lens nearly perpendicular to the red circular mark",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "After holding on the pinned photograph, the camera eases back and pivots toward the bed as Suriyoung pulls the photograph free and sinks down.",
            "visual_focus": "the blood-stained old black-and-white photograph pinned at the center of the red circle"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Beside the bed at seated eye level, medium-close distance, angled from the marked wall back toward the room interior",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "The camera withdraws with Suriyoung's movement, tracking backward from the bedroom into the living room and toward the front door.",
            "visual_focus": "Suriyoung on the edge of the bed, the photograph in her hand, and the disordered room around her"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside the rooftop room behind Suriyoung, slightly below eye level, several feet back, aligned with the path to the front door",
            "stage_index": 5,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's back as she moves toward the open front door, gripping the crumpled photograph while leaving the room"
          }
        ],
        "flow_summary": "카메라는 난장판이 된 옥탑방 입구에서 시작해 거실을 가로질러 수리영의 방 벽에 박힌 사진으로 빨려 들어가듯 접근한다. 이후 사진을 떼어낸 충격의 여운을 따라 침대 쪽으로 물러났다가, 수리영이 사진을 쥔 채 현관 밖으로 나가는 동선을 뒤에서 추적한다.",
        "scene_index": 25,
        "shot_assignments": [
          {
            "deviation_note": "Hold the end of the dolly as a locked close-up so the red circle, blood stain, and aged photograph dominate the frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame slightly wider than the stage default to include the front-door threshold and the instant one foot crosses outside, while keeping the clenched photograph readable near her side.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the far end of the empty harbor, low chest height, about 25 meters from the shoreline rocks, looking across the wet quay toward the fog-covered sea",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward move across the quay, narrowing the distance to the rocks and the waterline as Suriyeong prepares to move.",
            "visual_focus": "Suriyeong crouched on the shoreline rocks within the vast blue-gray fog and empty harbor"
          },
          {
            "camera_motion": "track",
            "camera_position": "Waist height on the slick quay, several meters behind and slightly to the side of Suriyeong, moving parallel to the shoreline rocks",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera follows Suriyeong's line of sight, panning toward the water as the outline of a fishing boat pushes through the fog, then continues toward the dock edge.",
            "visual_focus": "Suriyeong rising from the rocks and orienting herself toward the approaching shape in the fog"
          },
          {
            "camera_motion": "pan",
            "camera_position": "At the dock edge near the waterline, slightly low, 8 meters from the old fishing boat as it comes alongside through the mist",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "As the boat settles, the camera tracks along the pier toward the hull and lifts its angle slightly to convert the full-body reveal into a tighter side view of Inwoo above Suriyeong.",
            "visual_focus": "Inwoo standing on the fishing boat deck, holding a thick mooring rope as the fog parts around him"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Beside the boat hull on the pier, just below deck height, about 2 meters from Inwoo, angled sideways along the edge of the deck",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Inwoo's side face and downward gaze toward Suriyeong below him"
          }
        ],
        "flow_summary": "카메라는 텅 빈 안개 낀 포구를 멀리서 바라보다가 수리영의 움직임을 따라 물가로 접근하고, 안개 속에서 배와 인우가 드러나는 방향으로 시선을 전환한다. 이후 부두 가장자리까지 다가가 인우의 전신을 확인한 뒤, 그의 차갑게 내려다보는 얼굴로 압축된다.",
        "scene_index": 26,
        "shot_assignments": [
          {
            "deviation_note": "Hold a wide full-body composition so the empty harbor and dense fog dominate around Suriyeong on the rocks.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Frame wider than the stage default to keep Inwoo's full body, the thick rope, and the boat deck visible through the fog.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Tighten to a side facial view, keeping the camera slightly below Inwoo so his downward, detached look toward Suriyeong is emphasized.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the rooftop room living area, chest height, about 2.5 meters in front of Hyesu, facing across the disordered room toward her upper body",
            "stage_index": 1,
            "stage_label": "establishing_approach",
            "transition_to_next": "The camera continues its forward move and begins a slight arc toward Hyesu's side as her attention shifts toward Detective Kim.",
            "visual_focus": "Hyesu holding a phone to her ear, frozen in concern amid the messy living room"
          },
          {
            "camera_motion": "track",
            "camera_position": "At Hyesu's near side, chest height, about 1.5 meters from her, angled so her profile leads the frame toward the room beyond",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The side track carries the eyeline across the room, reorienting the lens from Hyesu toward Detective Kim without breaking the spatial continuity.",
            "visual_focus": "Hyesu turning her head sharply toward Detective Kim"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Near the center of the rooftop room, eye level, roughly 2 meters from Detective Kim, with Hyesu now off to the edge of the spatial axis",
            "stage_index": 3,
            "stage_label": "reaction",
            "transition_to_next": "After holding on Detective Kim's response, the camera pans away from him toward the rattling entrance as the sound draws attention across the room.",
            "visual_focus": "Detective Kim standing askew and answering with dismissive concern"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Deeper inside the rooftop room, eye level, looking past the living area toward the half-open metal entrance door",
            "stage_index": 4,
            "stage_label": "reveal_withdraw",
            "transition_to_next": "",
            "visual_focus": "The half-open metal door rattling in the evening wind, leaving the room in a bleak stillness"
          }
        ],
        "flow_summary": "카메라는 난장판이 된 거실 안에서 혜수에게 천천히 다가가며 불안을 붙잡고, 그녀의 시선을 따라 김형사 쪽으로 흐른 뒤 바람 소리가 나는 현관문으로 시선을 옮긴다. 인물의 긴장과 공간의 황량함이 하나의 실내 이동 안에서 이어진다.",
        "scene_index": 27,
        "shot_assignments": [
          {
            "deviation_note": "Frame tightens slightly from the wider room approach to hold Hyesu's upper body and phone, while still retaining enough background disorder to read the rooftop room's chaos.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "On the open deck near the starboard rail, chest height, medium distance from the seated man and the standing woman, angled slightly toward the bow with the sea behind them",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow push across the deck toward the man as the photograph is presented, narrowing the space between them.",
            "visual_focus": "the woman offering the map and photograph to the man on the deck"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "On the deck directly in front of the man, eye level, moving from a tight medium distance into close range",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As the man suddenly breaks away, the camera releases the close framing and swings with his movement toward the wheelhouse.",
            "visual_focus": "the man's face as he recognizes the photograph and fails to hide his panic"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Moving across the deck at shoulder height, slightly behind and to the side of the man as he rushes toward the wheelhouse",
            "stage_index": 3,
            "stage_label": "pursuit",
            "transition_to_next": "At the wheelhouse threshold, cut across the doorway to a frontal position inside the entrance, facing back toward the woman as she blocks him.",
            "visual_focus": "the man's abrupt turn and urgent movement toward the wheelhouse"
          },
          {
            "camera_motion": "static",
            "camera_position": "Just inside the narrow wheelhouse entrance, chest height, close frontal distance to the doorway, looking outward toward the deck",
            "stage_index": 4,
            "stage_label": "blockade",
            "transition_to_next": "",
            "visual_focus": "the woman standing squarely in the doorway with both arms extended to block passage"
          }
        ],
        "flow_summary": "카메라는 갑판의 대화 거리에서 시작해 사진을 본 인우의 얼굴로 점점 압축되고, 그의 돌발적인 이동을 따라 조타실 쪽으로 흔들리며 이동한다. 마지막에는 조타실 문 안쪽으로 컷해, 수리영이 입구를 막아서는 정면을 단단히 붙잡는다.",
        "scene_index": 28,
        "shot_assignments": [
          {
            "deviation_note": "Tighten from the stage's close range into an extreme facial close-up, holding only the widened eyes and shocked expression at the peak of recognition.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 2
          },
          {
            "deviation_note": "Center the frame symmetrically on the doorway and use a slightly wider view than the stage default so both outstretched arms and the cramped entrance are visible.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Very close to the held photograph at chest height, slightly over Suriyeong's right side, lens only a few inches from the paper surface",
            "stage_index": 1,
            "stage_label": "close_observation",
            "transition_to_next": "The camera lifts off the photograph and tracks upward along Suriyeong's pointing hand toward Inwoo's frozen reaction near the helm.",
            "visual_focus": "Suriyeong's finger indicating the young girl's face in the old black-and-white photograph"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside the narrow wheelhouse between Suriyeong and Inwoo, at upper-chest height, moving from the photograph line toward Inwoo near the helm",
            "stage_index": 2,
            "stage_label": "reaction_bridge",
            "transition_to_next": "The camera continues past Inwoo's shoulder and pivots toward the wall behind him, following Suriyeong's disturbed eyeline.",
            "visual_focus": "Inwoo's shocked stillness and Suriyeong's line of sight beyond him"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Just behind and slightly to the side of Inwoo's shoulder, eye level, facing the amber-lit wall of the wheelhouse",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "After holding on the wall, the camera tracks back toward the two bodies, sliding around Inwoo's shoulder as Suriyeong loses strength and falls into him.",
            "visual_focus": "The wheelhouse wall covered with vivid, unsettling red circular marks"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tight beside Inwoo's shoulder at face height, angled slightly downward from Suriyeong's collapsed side toward Inwoo's face",
            "stage_index": 4,
            "stage_label": "cold_reaction",
            "transition_to_next": "",
            "visual_focus": "Inwoo looking down coldly at Suriyeong collapsed against his shoulder"
          }
        ],
        "flow_summary": "카메라는 사진 속 단서에서 출발해 수리영의 시선과 인우의 반응을 따라 조타실 벽의 붉은 원형 표식들을 드러낸다. 이후 다시 두 사람에게 되돌아와, 쓰러진 수리영을 내려다보는 인우의 서늘한 얼굴로 압박감을 좁혀간다.",
        "scene_index": 29,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame almost motionless so the finger and the girl's face become the scene's visual anchor before the camera rises away.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 1
          },
          {
            "deviation_note": "Settle into a dead-still composition at the end of the pan, letting the red circular marks fill the entire wall without showing the characters.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 3
          },
          {
            "deviation_note": "Push slightly closer than the stage base position so Inwoo's eyes dominate the frame while Suriyeong remains implied against his shoulder.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Very wide position low above the open sea, about 1 meter over the water and far behind the old fishing boat's route, facing the sunset horizon across the reflective surface",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward glide over the water, leaving the sunset reflection behind and aligning toward the darker band of fog ahead.",
            "visual_focus": "the golden sunset reflection stretching across the dark blue sea"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low over the water on the boat's forward path, several dozen meters from the fog bank, moving toward the gray-blue fog wall at sea level",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As the boat nears the fog boundary, the camera tracks laterally to the side of its course, settling into a profile view of the bow and the fog wall.",
            "visual_focus": "the dense fog bank rising like a barrier in the middle of the sea"
          },
          {
            "camera_motion": "track",
            "camera_position": "At waterline height, about 10 meters off the side of the old fishing boat, parallel to its movement and level with the bow as it reaches the fog boundary",
            "stage_index": 3,
            "stage_label": "threshold_crossing",
            "transition_to_next": "The camera keeps pace briefly, then allows the boat to move ahead into the fog while the frame becomes increasingly swallowed by mist.",
            "visual_focus": "the bow of the old fishing boat breaking halfway through the dense fog boundary"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Low and slightly behind the boat's path, just outside the fog boundary, with the vessel receding into the thick mist ahead",
            "stage_index": 4,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "the fading silhouette of the old fishing boat disappearing into the fog"
          }
        ],
        "flow_summary": "카메라는 해질녘 바다의 넓은 정적에서 출발해 안개 장벽을 향해 낮게 전진하고, 배가 경계면을 통과하는 순간에는 측면으로 붙어 함께 흐른다. 이후 배를 먼저 안개 속으로 보내며 뒤로 물러나, 형체가 사라지는 정적으로 마무리한다.",
        "scene_index": 30,
        "shot_assignments": [
          {
            "deviation_note": "Frame the bow exactly at the fog boundary so the hull is split between clear sea air and dense mist, emphasizing the instant of partial entry from a strict side profile.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      }
    ]
  },
  "step_id": "scene_camera_flow",
  "run_id": "9d45f3b0-4460-43a3-9287-69cbb8e808e8",
  "resolved_model": "gpt",
  "updated_at": "2026-07-02T03:50:14.344246+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}