{
  "status": "completed",
  "completed_count": 29,
  "applicable_count": 29,
  "failed_count": 0,
  "data": {
    "scenes": [
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Very low on the dark forest floor, about 10 centimeters above the dirt, a few meters behind the fleeing Korean man along his escape path",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins to creep forward along the ground, leaving the fallen shoe area and tracking toward the wounded leg as the man stumbles ahead.",
            "visual_focus": "the disturbed dirt, crushed undergrowth, and the abandoned single shoe marking the trail of escape"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low at thigh height, close beside the Korean man's moving leg, roughly 30 centimeters from the wound and angled slightly upward through the brush",
            "stage_index": 2,
            "stage_label": "wound_observation",
            "transition_to_next": "Continuing the same forward momentum, the camera rises from the leg line toward the man's torso and face, tightening the sense of panic without breaking spatial continuity.",
            "visual_focus": "the large bite mark on the man's thigh with fresh blood beading at the skin"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "At the Korean man's eye level, less than one meter in front of him, retreating backward through the forest as he runs toward camera",
            "stage_index": 3,
            "stage_label": "fear_close_observation",
            "transition_to_next": "The camera wavers with his movement, then snaps laterally toward the forest edge as something rushes into his space from off-screen.",
            "visual_focus": "the man's terrified face, wide eyes, and panicked breathing"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Beside the man at shoulder height, about one meter away, angled across his profile toward the dark trees at the side of the path",
            "stage_index": 4,
            "stage_label": "attack_reveal",
            "transition_to_next": "",
            "visual_focus": "the indistinct black figure lunging through the air toward the man"
          }
        ],
        "flow_summary": "카메라는 숲속 바닥의 흔적에서 출발해 도망치는 남자의 다리 상처로 낮게 접근한 뒤, 같은 움직임을 타고 얼굴까지 치고 올라가 공포를 밀착한다. 마지막에는 남자의 시선과 몸의 흔들림을 따라 옆으로 급히 돌아, 숲에서 덮쳐오는 검은 인영을 드러내는 흐름이다.",
        "scene_index": 1,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the framing to an extreme close-up of the thigh wound so the bite mark and blood drops dominate the frame while the forest becomes a dark blur.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold slightly steadier for a brief terrified close-up, keeping the background unstable enough to imply he is still fleeing.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the mouth of the dim back alley, eye level, about 8 meters from the utility pole, looking straight down the narrow passage",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward push toward the figures pressed against the utility pole.",
            "visual_focus": "the man and woman entangled under the weak streetlight beside the utility pole"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Mid-alley at eye level, closing from 5 meters to 2 meters from the couple, centered on the upper bodies",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera continues forward, then subtly shifts its angle toward the man's face.",
            "visual_focus": "the tightening contact between the man and the woman as the breathing intensifies"
          },
          {
            "camera_motion": "track",
            "camera_position": "Close beside the utility pole, shoulder height, about 1 meter from the couple, moving from frontal view to their side",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "As the woman's strength gives out, the camera follows the downward motion with a controlled tilt.",
            "visual_focus": "the man's face, his red eyes, and his mouth at the woman's neck"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low three-quarter angle near the utility pole, waist height descending toward knee height, about 2 meters from the woman",
            "stage_index": 4,
            "stage_label": "collapse_reveal",
            "transition_to_next": "",
            "visual_focus": "the woman’s full body hanging limp toward the ground, with the wound on her neck visible"
          }
        ],
        "flow_summary": "카메라는 어두운 골목 입구에서 전봇대에 밀착한 두 사람을 바라보다가 천천히 접근하고, 남자의 얼굴과 목덜미 쪽으로 측면 이동한다. 마지막에는 여자가 힘없이 무너지는 움직임을 따라 아래로 기울며 전신의 축 늘어진 상태를 드러낸다.",
        "scene_index": 2,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame slightly wider at the end of the tilt so the woman’s entire body remains visible while her neck wound stays readable.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide eye-level position outside the police line, about 10 meters from the clustered investigators in the wooded crime scene",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow lateral track along the police line, using the line as a foreground guide toward the denser group of officers.",
            "visual_focus": "the taped-off forest crime scene, crouching police officers, and the body recovery activity"
          },
          {
            "camera_motion": "track",
            "camera_position": "Eye-level tracking position just inside the edge of the investigation perimeter, moving parallel to the line of officers at medium distance",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera threads visually through the officers and narrows its angle toward the commanding figure standing among them.",
            "visual_focus": "the group of Korean police officers surrounding the active investigation area"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Medium-close eye-level position within the group of officers, about 2 meters from Hyesu, framed from the upper body up",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Hyesu standing rigidly among the Korean police officers, staring forward with a hard, focused expression"
          }
        ],
        "flow_summary": "카메라는 폴리스 라인이 둘러진 숲속 현장을 뉴스 화면처럼 넓게 포착한 뒤, 경찰들 사이를 따라 이동하며 사건을 지휘하는 혜수에게 시선을 압축한다. 최종적으로 혜수의 굳은 상체와 날카로운 응시를 중거리 클로즈로 붙잡아 현장의 긴장감을 고정한다.",
        "scene_index": 3,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame steadier than the preceding approach so her rigid upper body and forward stare read as the command center of the scene.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "crane",
            "camera_position": "High above the outskirts, slightly off-center over a cluster of old low-rise villas, looking down at a steep oblique angle from far distance",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera slowly descends and drifts forward toward one weathered rooftop, tightening the spatial attention without cutting.",
            "visual_focus": "the gray urban edge, scattered rooftops, and the cloudy sky pressing over the neighborhood"
          },
          {
            "camera_motion": "static",
            "camera_position": "Elevated above the old villa rooftop, about three to four stories higher than the roofline, held at a wide downward angle that includes the rooftop room and surrounding roof surface",
            "stage_index": 2,
            "stage_label": "settled_overlook",
            "transition_to_next": "",
            "visual_focus": "the rooftop room on the old villa under the overcast sky"
          }
        ],
        "flow_summary": "카메라는 인천 변두리의 흐린 하늘 아래를 높은 부감으로 훑듯 내려오며, 오래된 빌라 옥상 위 옥탑방으로 시선을 좁힌다. 마지막에는 옥탑방을 내려다보는 정적인 전경에 머물러 지역 전체의 불안한 공기를 강조한다.",
        "scene_index": 4,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame wider than the final stage default so the cloudy sky and the full rooftop context remain visible as an establishing composition.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low counter height inside the compact kitchen area, about 0.7 meters from the sink and small window, looking diagonally across the faucet, herbs, stove, and into the living space",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera tracks gently away from the counter line toward the living area, letting the kitchen details fall behind as the mother becomes the dominant subject.",
            "visual_focus": "sunlit sink details, simmering pot, and the mother held in the background near the television"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Chest height in the living room, about 1.5 meters in front of the mother, slightly off to the television side, facing her upper body in a tight three-quarter angle",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera pans with the mother's sudden movement toward the remote and the doorway, then the sequence makes a hard cut forward in time to the entryway while keeping the mother-daughter axis consistent.",
            "visual_focus": "the mother's tense upper body and dark expression as she stares at the television"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye-level at the apartment entryway, about 1.2 meters from the mother and Su-ri-yeong, angled inward from the side so both bodies can compress into one intimate frame",
            "stage_index": 3,
            "stage_label": "warm_reaction",
            "transition_to_next": "The camera lowers and pushes in along the mother's arm line, shifting attention from the shared smile to the wrist detail.",
            "visual_focus": "Su-ri-yeong leaning her face against her mother's shoulder and smiling brightly"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Macro close position beside the mother's forearm, about 20 centimeters from the wrist, slightly above wrist height and looking down at a shallow angle",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the small red circular mark on the mother's wrist"
          }
        ],
        "flow_summary": "카메라는 싱크대와 끓는 냄비가 있는 생활 공간에서 시작해 TV를 바라보는 민숙에게 서서히 접근하고, 이후 시간 점프를 통해 현관 쪽의 따뜻한 모녀 순간으로 이동한다. 마지막에는 그 친밀한 움직임을 따라 손목으로 밀착해, 무심히 지나칠 수 있는 붉은 표식을 또렷하게 드러낸다.",
        "scene_index": 5,
        "shot_assignments": [
          {
            "deviation_note": "Frame excludes kitchen foreground details and holds tighter on the mother's rigid upper body and troubled face.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Slightly tighter than the stage default, cropping to upper bodies to emphasize Su-ri-yeong's bright expression against the mother's softer reaction.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 3
          },
          {
            "deviation_note": "Shifts from the shared two-person focus to a very shallow macro focus on the wrist mark, allowing the background bodies to fall away completely.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "On the seaward side of the coastal road, mounted low on a moving vehicle about 1.2 meters high and 8 meters ahead of the bicycle, looking back along the sunlit road",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera vehicle eases sideways and slows until it matches the bicycle speed, shifting from a frontal road view into a parallel side-tracking position.",
            "visual_focus": "Suriyeong riding her bicycle against the open coastal road and bright daylight"
          },
          {
            "camera_motion": "track",
            "camera_position": "Parallel to Suriyeong on the ocean side of the road, about 1.4 meters high and 4 meters away, holding a full-body side profile as the bicycle moves forward",
            "stage_index": 2,
            "stage_label": "parallel_observation",
            "transition_to_next": "The camera continues tracking with her, then drifts slightly ahead while panning back to keep her face and movement alive as the offscreen barking enters the scene.",
            "visual_focus": "Suriyeong pedaling, smiling, hair moving in the wind, earphones in place"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Slightly ahead of the bicycle on the same side of the road, about 1.5 meters high and 5 meters from Suriyeong, angled back toward her path",
            "stage_index": 3,
            "stage_label": "sound_reaction_space",
            "transition_to_next": "",
            "visual_focus": "Suriyeong within the coastal road space as the offscreen dog barking pulls attention beyond the frame"
          }
        ],
        "flow_summary": "카메라는 해안가 도로의 넓은 분위기에서 출발해 수리영의 자전거 속도와 나란히 붙으며 활기찬 전신 움직임을 포착한다. 이후 살짝 앞서 나가며 개 짖는 소리가 들어오는 방향의 여백을 남겨 다음 반응 가능성을 만든다.",
        "scene_index": 6,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame a touch wider than the stage default to include the full bicycle posture, the lowered knee, and the wind-swept hair in one clean full-body composition.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Low and tight in front of the kennel gate, about dog-head height and less than one foot from the Rottweiler's muzzle and raised forelegs",
            "stage_index": 1,
            "stage_label": "confrontation",
            "transition_to_next": "The camera follows the dog's eyeline, tracking backward and slightly upward from the snarling muzzle toward Suri-young's face on the opposite side of the space.",
            "visual_focus": "The Rottweiler baring its teeth, bracing on its hind legs, and threatening forward"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Eye-level directly in front of Suri-young, just beyond the dog's line, close enough to hold her face in a frontal frame",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As the dog's energy softens, the camera slides laterally past the dog's shoulder and drops toward the rear hip where the veterinarian is working.",
            "visual_focus": "Suri-young's unwavering stare fixed on the aggressive dog"
          },
          {
            "camera_motion": "static",
            "camera_position": "Very low and tight beside the Rottweiler's hindquarters, at hand height, close to the veterinarian's working hand",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "After the injection lands, the camera lifts and dollies back from the dog to open the aisle and reveal Suri-young looking toward the other caged dogs.",
            "visual_focus": "The veterinarian's hand holding the syringe in the dog's rear hip"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Eye-level in the shelter aisle, several feet from Suri-young and the row of cages, angled to include her profile and the confined dogs",
            "stage_index": 4,
            "stage_label": "reaction_withdraw",
            "transition_to_next": "A practical cut carries the movement from the cage aisle to the grooming area as Suri-young is called to work.",
            "visual_focus": "Suri-young reacting to the many dogs still waiting in the shelter"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Close beside the grooming station at hand level, within one to two feet of the dog being handled",
            "stage_index": 5,
            "stage_label": "work_transition",
            "transition_to_next": "",
            "visual_focus": "Suri-young beginning the care work on the shelter dogs"
          }
        ],
        "flow_summary": "카메라는 로트와일러의 위협적인 얼굴에서 시작해 그 시선을 따라 수리영의 정면으로 이동하고, 개가 순해지는 순간 몸 뒤편으로 미끄러져 수의사의 주사를 드러낸다. 이후 보호원 통로로 물러나 남은 개들과 수리영의 부담을 넓히고, 작업 공간으로 이어진다.",
        "scene_index": 7,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame tighter than the stage baseline so the teeth, lifted forepaws, and hind-leg tension dominate the image.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Settle the dolly-in into a locked frontal close-up at the end of the move, emphasizing her widened eyes rather than the dog.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Crop out most of the veterinarian and dog body, isolating the hand, syringe, and injection point in a still close-up.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At street curb level, shoulder height, about 6 meters in front of Suriyoung, moving backward through the neon-lit market street toward the large mart entrance",
            "stage_index": 1,
            "stage_label": "establishing_approach",
            "transition_to_next": "The camera keeps retreating with Suriyoung until the bicycle reaches the mart entrance, then pivots slightly toward the doorway as she dismounts.",
            "visual_focus": "Suriyoung riding through the crowded port-side commercial street"
          },
          {
            "camera_motion": "track",
            "camera_position": "Just outside and then just inside the mart entrance, shoulder height, 3 meters ahead of Suriyoung, facing her as she enters and searches the aisles",
            "stage_index": 2,
            "stage_label": "entry_search",
            "transition_to_next": "The camera backs into the aisle and lets Suriyoung drift past frame center toward the female employee near the shelves.",
            "visual_focus": "Suriyoung scanning the mart interior for her mother"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Inside the mart aisle, shoulder height, 2 meters from Suriyoung and the female employee, slightly off to Suriyoung's front-left side",
            "stage_index": 3,
            "stage_label": "questioning",
            "transition_to_next": "As the male employee arrives with boxes, the camera pans from the female employee toward him, then settles back on Suriyoung's eyeline.",
            "visual_focus": "Suriyoung asking the female employee where her mother is"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the mart aisle, eye level, starting 1.5 meters from Suriyoung and pushing to a tight distance directly in front of her face, with the male employee positioned off her eyeline",
            "stage_index": 4,
            "stage_label": "shock_close_observation",
            "transition_to_next": "Cut on Suriyoung's frozen reaction as she turns to leave, jumping from the aisle to the exterior curb outside the mart.",
            "visual_focus": "Suriyoung absorbing the male employee's comment about her mother speaking to someone outside"
          },
          {
            "camera_motion": "static",
            "camera_position": "On the roadside just outside the mart, eye level, about 1.2 meters directly in front of Suriyoung, facing her squarely with the street behind the camera",
            "stage_index": 5,
            "stage_label": "outside_reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyoung calling on her smartphone and waiting for an answer"
          }
        ],
        "flow_summary": "카메라는 번화가에서 자전거를 타고 마트로 들어오는 수리영을 따라가며, 내부 동선 속에서 엄마의 행방을 묻는 흐름을 유지한다. 남자 직원의 말에 수리영의 얼굴로 밀착한 뒤, 컷으로 마트 밖 정면 구도로 넘어가 연락이 닿지 않는 불안을 고정해 담는다.",
        "scene_index": 8,
        "shot_assignments": [
          {
            "deviation_note": "Tighten beyond the stage default into an intense facial close-up; keep the male employee off-screen and preserve Suriyoung's startled eyeline toward him.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          },
          {
            "deviation_note": "Hold a square frontal composition and let the phone at her ear dominate the gesture; keep the background as the roadside outside the mart without shifting position.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "pan",
            "camera_position": "On the seaward shoulder of the dark coastal road, at waist height, several meters away from the bicycle path, holding a wide lateral view of the road line and shoreline darkness",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyeong rides into the frame, the camera finishes the pan with her motion and begins moving parallel to the bicycle along the road shoulder.",
            "visual_focus": "Suriyeong entering the coastal road frame on her bicycle against the night shoreline"
          },
          {
            "camera_motion": "track",
            "camera_position": "Parallel to Suriyeong on the road shoulder, at about saddle height, one to two meters from the bicycle, maintaining a clean side full-body profile",
            "stage_index": 2,
            "stage_label": "parallel_pursuit",
            "transition_to_next": "The tracking move gradually accelerates a half-step forward from her side toward a front-side angle, tightening attention onto her urgency and direction of travel.",
            "visual_focus": "Suriyeong pedaling hard, gripping the handlebars, hair blown back by the coastal wind"
          },
          {
            "camera_motion": "track",
            "camera_position": "Slightly ahead of the bicycle at chest height, angled back toward Suriyeong from the front-side of the road, keeping close distance while moving with her speed",
            "stage_index": 3,
            "stage_label": "urgent_drive_forward",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's determined gaze fixed down the dark road ahead"
          }
        ],
        "flow_summary": "카메라는 밤 해안도로의 어둠 속에서 수리영이 프레임에 들어오는 순간을 받아낸 뒤, 자전거와 나란히 달리며 그녀의 속도와 긴박함을 따라간다. 이후 살짝 앞쪽으로 이동해 집으로 향하는 방향성과 결심을 강조한다.",
        "scene_index": 9,
        "shot_assignments": [
          {
            "deviation_note": "Hold the side full-body profile clearly at the midpoint of the parallel track, timing the frame to the downward pedal stroke and firm grip on the handlebars.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low to the rooftop floor, about ankle height, moving from the drying platform area toward the rooftop room entrance, several meters from the door",
            "stage_index": 1,
            "stage_label": "establishing_approach",
            "transition_to_next": "The camera continues its low track past the wind-blown dried leaves and follows the path of the approaching feet until the rusted metal door fills the frame.",
            "visual_focus": "wind-blown dried leaves, the rooftop surface, and the stranger's approach toward the door"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Very close to the rusted metal door at hand height, lens nearly parallel to the door seam and within inches of the crack",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on the paper trapped in the seam, the camera stays tight as the hand action forces the paper inward and the lock releases, then drifts with the opening gap.",
            "visual_focus": "a stiff paper flyer wedged tightly in the narrow crack of the rusted entrance door"
          },
          {
            "camera_motion": "track",
            "camera_position": "Just outside the rooftop room threshold, shoulder height, close to the opening door and angled slightly into the dark interior",
            "stage_index": 3,
            "stage_label": "threshold_entry",
            "transition_to_next": "As the man slips inside, the camera cannot follow directly; it makes a logical cut around the exterior wall to the window where the action is only visible as reflection.",
            "visual_focus": "the narrow opening of the door and the stranger entering through the threshold"
          },
          {
            "camera_motion": "static",
            "camera_position": "Outside the rooftop room window, eye level, set squarely in front of the glass at a medium distance so the reflected interior silhouettes dominate the pane",
            "stage_index": 4,
            "stage_label": "reflected_reveal",
            "transition_to_next": "",
            "visual_focus": "a huge reflected silhouette overlapping a smaller silhouette in the room"
          }
        ],
        "flow_summary": "카메라는 옥상 바닥의 낮은 시선에서 낯선 남자의 접근을 따라 철문 문틈까지 밀착해 들어간 뒤, 문이 열리는 순간 외부 창문 쪽으로 논리적 컷을 건넌다. 마지막에는 실내를 직접 보여주지 않고 창문 반사 속 실루엣으로 폭력의 순간을 고정해 목격한다.",
        "scene_index": 10,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame extremely tight so the door seam and trapped flyer become the only readable action before the lock release.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Keep the camera locked off; the menace comes from the stillness of the reflected silhouettes rather than any camera move.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At the lower rooftop stairwell, waist height, about two meters behind Suriyoung, angled upward along the narrow stairs",
            "stage_index": 1,
            "stage_label": "approach",
            "transition_to_next": "The camera follows her up the final steps, rising to eye level as she reaches the rooftop landing and suddenly stops.",
            "visual_focus": "Suriyoung hurrying up the stairs toward the rooftop"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "On the rooftop landing, eye level, less than half a meter in front-right of Suriyoung, tight enough to isolate her face",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "Without cutting, the camera slips around her side and passes behind her shoulder, opening the view toward the rooftop doorway.",
            "visual_focus": "Suriyoung's frozen face as she reacts to the foul smell"
          },
          {
            "camera_motion": "track",
            "camera_position": "On the rooftop floor, standing height, about two meters behind Suriyoung and centered on her back, looking past her toward the entrance",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "Suriyoung standing before the half-open rusty front door"
          }
        ],
        "flow_summary": "카메라는 수리영을 따라 계단을 올라 옥상 입구에 도달한 뒤, 냄새를 맡고 굳어버린 얼굴로 바짝 접근한다. 이어 그녀의 어깨 뒤로 돌아서며 시선을 넓혀, 반쯤 열린 현관 철문과 그 앞에 멈춘 수리영의 뒷모습을 드러낸다.",
        "scene_index": 11,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the frame into a close-up so her furrowed brow and the hand covering her nose and mouth dominate the image.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Settle the tracking move into a steadier rear composition, keeping both feet planted on the rooftop floor visible enough to show she has stopped.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At waist height just inside the rooftop room living area, about 3 meters behind and slightly to the right of Suriyeong, looking past her into the dim room.",
            "stage_index": 1,
            "stage_label": "establishing_search",
            "transition_to_next": "The camera tracks with Suriyeong past the living room objects and dining table, then narrows toward her bedroom doorway without breaking spatial continuity.",
            "visual_focus": "Suriyeong entering the silent living area and scanning for her mother."
          },
          {
            "camera_motion": "track",
            "camera_position": "Dropped to a very low floor-level position, about 20 centimeters above the bedroom floor just inside Suriyeong's room, angled downward and forward toward the curtain.",
            "stage_index": 2,
            "stage_label": "trace_to_curtain",
            "transition_to_next": "The low tracking move follows the bloody footprints to the curtain hem, then rises slightly and tilts up as the curtain is about to be pulled aside.",
            "visual_focus": "The dark blood pooled on the floor and the bloody footprints leading toward the curtain."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At shoulder height inside Suriyeong's room, roughly 1 meter from the curtain line, facing the space behind the curtain as it opens.",
            "stage_index": 3,
            "stage_label": "body_reveal",
            "transition_to_next": "The dolly-in resolves at the discovered body, then the camera eases sideways and lowers toward Suriyeong as she freezes and reaches for her phone.",
            "visual_focus": "Minsuk slumped behind the curtain, motionless and brutally wounded."
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Close beside Suriyeong at chest height near the body, within arm's length, angled between her shaking hands and Minsuk's still hand.",
            "stage_index": 4,
            "stage_label": "shock_and_call",
            "transition_to_next": "The camera leaves Suriyeong's phone line and creeps down toward Minsuk's clenched hand, compressing into an intimate detail angle.",
            "visual_focus": "Suriyeong trembling as she calls for help, with Minsuk's hand drawing attention in the foreground."
          },
          {
            "camera_motion": "static",
            "camera_position": "In an extreme close position about 15 centimeters above Minsuk's wrist and clenched hand, low beside the bed and angled steeply downward.",
            "stage_index": 5,
            "stage_label": "omen_detail",
            "transition_to_next": "After holding on the wrist mark, the camera tilts up from the hand area toward the wall above the bed as the supernatural sign appears.",
            "visual_focus": "The small red circular mark emerging clearly on Minsuk's wrist."
          },
          {
            "camera_motion": "tilt",
            "camera_position": "From the bedside close-detail position, rising in gaze from the body line to the wall above the bed while remaining inside Suriyeong's room.",
            "stage_index": 6,
            "stage_label": "supernatural_reveal",
            "transition_to_next": "",
            "visual_focus": "The red circular mark forming on the wall above the bed and Suriyeong's scream reacting to it."
          }
        ],
        "flow_summary": "카메라는 수리영의 수색을 따라 거실에서 방 안으로 낮게 미끄러져 들어가고, 바닥의 피 흔적을 따라 커튼 뒤 죽음의 발견으로 이어진다. 이후 충격에 흔들리는 수리영 곁에서 시선이 민숙의 손목 표식으로 좁혀졌다가, 벽에 번지는 붉은 원으로 위협이 확장된다.",
        "scene_index": 12,
        "shot_assignments": [
          {
            "deviation_note": "The lens tightens lower than the stage default to isolate the blood pool first, then lets the footprint line pull the frame toward the curtain.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "The dolly-in settles into a still, frontal tableau behind the opened curtain, holding Minsuk alone in frame for the reveal.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "The close detail shifts from the clenched hand to the wrist so the small red circular mark becomes the dominant point in the frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 13,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "At the base of the rooftop stairwell, shoulder height, three to four meters from the stair opening, angled upward toward the descending steps",
            "stage_index": 1,
            "stage_label": "panic_descent",
            "transition_to_next": "The camera backs away with Suryoung's movement, then pans right toward the police car as the siren pulls attention across the rooftop exterior.",
            "visual_focus": "Suryoung rushing down from the dark rooftop stairs"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Beside the open police car door at street-level rooftop access, eye height, full-body distance from Hyesu",
            "stage_index": 2,
            "stage_label": "arrival_reveal",
            "transition_to_next": "The camera leaves the car line and tracks forward toward Suryoung and Hyesu, tightening the space between the two women.",
            "visual_focus": "Hyesu standing beside the open police car door and noticing Suryoung"
          },
          {
            "camera_motion": "track",
            "camera_position": "Between the police car and the stairwell, chest height, moving in a shallow arc from Hyesu's side toward Suryoung's front",
            "stage_index": 3,
            "stage_label": "approach_to_confession",
            "transition_to_next": "The camera settles low in front of Suryoung, then cuts on her upward eyeline to Hyesu's reaction.",
            "visual_focus": "Suryoung frozen in shock as Hyesu reaches her"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low and close in front of Suryoung, slightly below her eye line, less than one meter from her face, aimed upward along her gaze",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "A direct eyeline cut reverses the viewpoint from Suryoung's close face to Hyesu's close reaction.",
            "visual_focus": "Suryoung's tear-covered face looking up at Hyesu"
          },
          {
            "camera_motion": "static",
            "camera_position": "At Suryoung's eye-line height, close to Hyesu from the front, less than one meter away",
            "stage_index": 5,
            "stage_label": "reaction",
            "transition_to_next": "The camera pulls out of the close reaction and swings toward the rooftop stairs as Hyesu and the junior detective move past.",
            "visual_focus": "Hyesu absorbing Suryoung's words in stunned silence"
          },
          {
            "camera_motion": "track",
            "camera_position": "Behind and slightly below Hyesu and the junior detective at the stair entrance, waist height, two meters back as they start upward",
            "stage_index": 6,
            "stage_label": "rush_upstairs",
            "transition_to_next": "",
            "visual_focus": "Hyesu and the junior detective running up toward the rooftop room"
          }
        ],
        "flow_summary": "카메라는 옥탑 계단에서 뛰쳐나오는 수리영의 패닉을 따라 물러나다가 경찰차 쪽으로 시선을 돌려 혜수의 등장을 포착한다. 이후 두 사람 사이로 접근해 수리영의 고백과 혜수의 충격을 연속된 시선 교환의 클로즈업으로 압축한 뒤, 다시 계단 방향으로 흐른다.",
        "scene_index": 13,
        "shot_assignments": [
          {
            "deviation_note": "Hold the full body a beat longer beside the open car door before Hyesu breaks toward Suryoung.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten from the stage's low close position into an intense facial close-up, keeping her gaze fixed upward toward Hyesu.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          },
          {
            "deviation_note": "Use the eyeline cut from Suryoung to land immediately on Hyesu's face, emphasizing widened eyes and restrained mouth without changing the emotional axis.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At the open front doorway, chest height, several feet back from the living area, looking inward through the entrance toward the empty room and the people checking the apartment",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera advances from the entrance into the apartment, following the movement toward Suryoung's room without breaking spatial continuity.",
            "visual_focus": "the empty living area and the adults searching with growing frustration"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside Suryoung's room, eye level, moving from the doorway to a close frontal position just in front of Suryoung",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on Suryoung's shock, the camera backs out and tracks with her as she rushes toward the dining table.",
            "visual_focus": "Suryoung realizing the clean room, vanished stains, closed curtain, and missing body do not match what she saw"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the dining table, slightly below eye level, close enough to catch Suryoung leaning over the empty tabletop while the others remain in the surrounding space",
            "stage_index": 3,
            "stage_label": "verification",
            "transition_to_next": "The camera pivots and slides toward Hyesu and the detective as the accusation and tension shift away from the table.",
            "visual_focus": "the empty dining table and Suryoung's attempt to prove the missing teacups existed"
          },
          {
            "camera_motion": "static",
            "camera_position": "Near Suryoung and Hyesu in the living area, shoulder height, close enough for an intimate detail of Hyesu's hand resting on Suryoung's shoulder",
            "stage_index": 4,
            "stage_label": "comfort_reaction",
            "transition_to_next": "As Hyesu tries to calm Suryoung, the camera leaves the close human contact and tracks back toward the doorway of Suryoung's room for a final silent look.",
            "visual_focus": "Hyesu physically comforting Suryoung after the detective's irritation"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low in the corner of Suryoung's room, a few feet from the floor, facing the backpack and doll left alone against the wall",
            "stage_index": 5,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the backpack and doll whose positions feel subtly changed"
          }
        ],
        "flow_summary": "카메라는 현관에서 시작해 집 안을 따라 수리영의 방과 식탁을 확인한 뒤, 혜수의 위로로 잠시 멈춘다. 마지막에는 다시 수리영의 방구석으로 조용히 물러나 백팩과 인형의 미묘한 변화를 응시하며 불안을 남긴다.",
        "scene_index": 14,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the lens into a frontal close-up so the clean room falls away and only Suryoung's pale, widened eyes dominate the frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 2
          },
          {
            "deviation_note": "Crop down from the shared two-person proximity to isolate Hyesu's hand on Suryoung's shoulder, keeping the comfort gesture as the only visual emphasis.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 4
          },
          {
            "deviation_note": "Hold completely still and let the frame feel empty, with no character entering, so the backpack and doll become the unsettling final evidence.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the seaward side of the bus stop bench, shoulder height, about 10 feet from the seated figures, angled slightly toward the dark road and coastline",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a low, quiet push toward the bench, dropping its attention from Suriyeong's blank profile to the space between the two women.",
            "visual_focus": "Suriyeong sitting numbly on the bench with the night coastline and bus stop around her"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low beside the bench at knee height, about 2 feet from Suriyeong's lap, looking diagonally across from Hyesu's side toward Suriyeong",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As Suriyeong reacts and rises, the camera lifts and pulls its axis off the lap, allowing her movement to lead the frame toward the road.",
            "visual_focus": "Hyesu's hand offering a cold canned drink over Suriyeong's lap"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the bench at waist-to-chest height, moving parallel to Suriyeong as she stands and launches toward the dark road, staying a few feet behind her first step",
            "stage_index": 3,
            "stage_label": "departure",
            "transition_to_next": "The camera slows and lets Suriyeong run ahead, then settles back near Hyesu so the distance between them opens inside one frame.",
            "visual_focus": "Suriyeong abruptly getting up and running away from the bus stop"
          },
          {
            "camera_motion": "static",
            "camera_position": "Near the bus stop, chest height, about 5 feet from Hyesu and slightly behind her front shoulder, aimed down the road where Suriyeong is receding into the distance",
            "stage_index": 4,
            "stage_label": "reaction_watch",
            "transition_to_next": "",
            "visual_focus": "Hyesu calling after Suriyeong in the foreground while Suriyeong runs away in the background"
          }
        ],
        "flow_summary": "카메라는 해안가 버스정류장 벤치 바깥에서 두 사람을 지켜보다가, 혜수가 건네는 캔 음료의 낮은 클로즈업으로 조용히 파고든다. 수리영이 갑자기 일어나 달려가면 카메라는 그녀의 출발을 따라가다 멈춰 혜수 곁에 남고, 멀어지는 수리영을 배경으로 혜수의 외침을 관찰한다.",
        "scene_index": 15,
        "shot_assignments": [
          {
            "deviation_note": "Tightens the stage into an insert: only Hyesu's hand, the cold can, and Suriyeong's lap dominate the frame, with the push-in nearly settling at the moment of offering.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Frames Hyesu's upper body large in the foreground with her mouth open in a shout, while Suriyeong remains smaller and farther down the road in the background.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the police office just beyond the doorway, chest height, about 10 feet from the desk, moving backward as Hyesu enters from the corridor side",
            "stage_index": 1,
            "stage_label": "establishing_entry",
            "transition_to_next": "The camera continues its backward track until the desk comes between Hyesu and the seated detective, then begins to pivot toward him.",
            "visual_focus": "Hyesu entering the office while holding a smartphone to her ear"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Near the front corner of the desk at seated eye level, about 5 feet from the detective and slightly off Hyesu's shoulder line",
            "stage_index": 2,
            "stage_label": "counterpart_observation",
            "transition_to_next": "As Hyesu lowers the phone and thrusts it forward, the camera pushes closer along the desk line toward the phone and the detective's face.",
            "visual_focus": "the detective seated at the desk looking up at Hyesu"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tight beside the desk at face height, less than 2 feet from Hyesu's extended hand, aligned so the lit smartphone screen sits in front of the detective's face",
            "stage_index": 3,
            "stage_label": "evidence_close_observation",
            "transition_to_next": "A hard cut jumps to the reverse side of the exchange, landing close on Hyesu's face to catch the fear she has been trying to hide.",
            "visual_focus": "Hyesu's hand presenting the lit smartphone screen in front of the detective"
          },
          {
            "camera_motion": "static",
            "camera_position": "Reverse angle on Hyesu, eye level, about 2 feet from her face, with the desk area implied just off camera",
            "stage_index": 4,
            "stage_label": "reaction_close_observation",
            "transition_to_next": "",
            "visual_focus": "Hyesu's tense face as her anxiety hardens into certainty"
          }
        ],
        "flow_summary": "카메라는 혜수가 경찰서 사무실로 들어오는 동선을 따라 책상 앞으로 이동한 뒤, 김형사 쪽으로 시선을 돌리고 혜수가 내미는 휴대폰 액정까지 밀착해 들어간다. 이후 논리적 컷으로 혜수의 얼굴 정면에 붙어, 불길한 예감이 굳어지는 반응을 포착한다.",
        "scene_index": 16,
        "shot_assignments": [
          {
            "deviation_note": "Frame especially tight so Hyesu's hand and the glowing smartphone screen dominate the foreground while the detective's face remains immediately behind it.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold the reverse close-up without movement, emphasizing Hyesu's widened eyes and tightly pressed lips.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide exterior position on the adjacent rooftop, chest-height, set back far enough to include the blue dawn sky, rooftop edges, and the lit rooftop room window",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "After holding the lit window in the dawn atmosphere, the camera begins a slow pan and slight lateral track toward the rooftop wall in response to the cat sound.",
            "visual_focus": "the lit rooftop room window within the quiet dawn rooftop environment"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Near the rooftop parapet at low standing height, angled along the wall line so the top of the wall cuts across the frame",
            "stage_index": 2,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "a black cat silhouette on the wall, with the lit rooftop room remaining as distant context"
          }
        ],
        "flow_summary": "카메라는 푸른 새벽빛 속 옥탑방 창문을 넓게 잡아 정적을 세운 뒤, 고양이 울음소리를 따라 담벼락 쪽으로 시선을 옮긴다. 선택된 샷은 이 연속 흐름의 출발점으로, 옥상과 불 켜진 창문을 먼저 관찰하는 설정 단계에 해당한다.",
        "scene_index": 17,
        "shot_assignments": [
          {
            "deviation_note": "Hold slightly longer on the lit window and surrounding blue dawn rooftop atmosphere before any movement toward the wall begins.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the main bedroom, low beside the mattress edge at Suriyeong's head level, starting about 6 feet away and moving to within 2 feet of her face",
            "stage_index": 1,
            "stage_label": "wake_observation",
            "transition_to_next": "As Suriyeong snaps awake and lifts her head, the camera finishes in a tight frontal proximity, then cuts to the hallway-facing side of her closed room door.",
            "visual_focus": "Suriyeong's sleeping posture shifting into sudden alarm"
          },
          {
            "camera_motion": "track",
            "camera_position": "Just outside Suriyeong's room door at shoulder height, close behind and slightly to her side, maintaining a cautious distance as she approaches the handle and enters",
            "stage_index": 2,
            "stage_label": "threshold_approach",
            "transition_to_next": "The camera follows her through the doorway toward the window, then arcs toward the cleared floor as the curtain is pulled open.",
            "visual_focus": "Suriyeong's hesitation at the closed door and her careful entry into the room"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Inside Suriyeong's room near the window, low over the empty floor and angled upward toward Suriyeong at close range",
            "stage_index": 3,
            "stage_label": "empty_floor_reveal",
            "transition_to_next": "After holding on her relief, the scene cuts away with the phone ring to a closer interior position near the table and then onward toward the bathroom.",
            "visual_focus": "The empty floor where a body was feared to be, then Suriyeong's relieved face above it"
          },
          {
            "camera_motion": "track",
            "camera_position": "Moving from the room interior toward the living area at chest height, then reorienting toward the bathroom entrance as Suriyeong exits with her bag and heads to wash her face",
            "stage_index": 4,
            "stage_label": "anxious_transition",
            "transition_to_next": "The camera lets Suriyeong pass out of frame and cuts into the bathroom mirror axis, already close to the sink.",
            "visual_focus": "Suriyeong's restless movement through the apartment after the phone call"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the bathroom, very close to the sink and mirror at eye level, aligned so the mirror reflection fills the frame and shows the wall behind Suriyeong",
            "stage_index": 5,
            "stage_label": "mirror_hallucination",
            "transition_to_next": "",
            "visual_focus": "The bathroom wall reflected in the mirror as a large red circular mark appears"
          }
        ],
        "flow_summary": "카메라는 안방 침대 곁의 낮은 위치에서 수리영의 각성을 밀착해 시작한 뒤, 방문과 창가를 따라 불안하게 이동하며 ‘없는 시신’을 확인하는 지점으로 이어진다. 이후 전화와 이동을 거쳐 욕실 거울 축으로 논리적 컷을 만들고, 반사된 벽면의 붉은 표식에 정지해 환각의 공포를 고정한다.",
        "scene_index": 18,
        "shot_assignments": [
          {
            "deviation_note": "Tighten to an extreme facial close-up at the end of the dolly, framing only her startled eyes, lifted chin, and tense expression.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "Hold the low angle from the empty floor slightly longer, then settle on her parted lips and relieved face while keeping the unseen floor implied below frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "Crop tighter than the stage default so the mirror reflection of the red circular mark dominates the frame, with Suriyeong largely excluded or only barely implied at the edge.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the supermarket entrance, eye level, several meters outside the doorway, wide distance from Suriyoung and the bicycle parking area.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyoung enters, the camera begins to track backward through the doorway and into the aisles, keeping her movement continuous.",
            "visual_focus": "the quiet early-morning supermarket entrance and Suriyoung arriving"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside the supermarket aisle, eye level, moving backward two to three meters ahead of Suriyoung between the shelves.",
            "stage_index": 2,
            "stage_label": "search_approach",
            "transition_to_next": "The camera arcs around the end of the aisle and settles beside Suriyoung as she stops in front of the male employee.",
            "visual_focus": "Suriyoung scanning beyond the shelves while searching for the male employee"
          },
          {
            "camera_motion": "static",
            "camera_position": "Beside Suriyoung at shoulder height, close side angle about one meter away, with the male employee positioned just beyond her eyeline.",
            "stage_index": 3,
            "stage_label": "confrontation",
            "transition_to_next": "Cut on the question about CCTV to the exterior wall, relocating the camera outside to check the security camera coverage.",
            "visual_focus": "Suriyoung beginning to speak to the male employee"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Outside the supermarket near the wall, low rear three-quarter position behind Suriyoung, angled upward toward the exterior security camera.",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "The camera tilts back down from the security camera and tracks in toward Suriyoung as she raises her smartphone to call.",
            "visual_focus": "the exterior security camera position above the wall and Suriyoung checking whether it could have recorded the moment"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Outside the supermarket, eye-level close distance directly in front of Suriyoung, the lens within arm's length.",
            "stage_index": 5,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's frozen face while holding a smartphone to her ear"
          }
        ],
        "flow_summary": "카메라는 마트 입구에서 수리영을 따라 진열대 사이로 들어가 남자 직원과의 대면 지점까지 좁혀간다. CCTV 가능성을 확인하는 순간 외부로 컷해 감시 카메라 위치를 훑고, 통화 중 굳어지는 수리영의 얼굴로 밀착한다.",
        "scene_index": 19,
        "shot_assignments": [
          {
            "deviation_note": "Slightly tighten the side angle so Suriyoung's mouth opening is the immediate point of attention, while the male employee remains implied through her eyeline.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Push the stage into a true facial close-up, keeping only the smartphone at her ear as contextual evidence of the call.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At seated eye level beside the security desk, three feet from the security staff, angled slightly past the dark monitor toward his upper body",
            "stage_index": 1,
            "stage_label": "close_observation",
            "transition_to_next": "The camera starts a slow lateral track along the desk edge, keeping the monitor glow in frame while shifting attention toward Hyesu beside him.",
            "visual_focus": "the security staff studying the dark CCTV monitor"
          },
          {
            "camera_motion": "track",
            "camera_position": "At chest height, sliding from the security staff's side toward Hyesu's side of the desk, about four feet from the seated workstation",
            "stage_index": 2,
            "stage_label": "shared_scrutiny",
            "transition_to_next": "The track continues past Hyesu's shoulder line and subtly opens the background, allowing the anxious figure behind her to enter the spatial field before the camera returns to Hyesu.",
            "visual_focus": "Hyesu watching the monitor beside the security staff"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Behind and slightly to the side of Hyesu at shoulder height, six feet from the monitor wall, with the desk and background compressed in the same office space",
            "stage_index": 3,
            "stage_label": "anxious_context",
            "transition_to_next": "The camera pans back from the background anxiety toward Hyesu, then moves closer to isolate her response to the security staff.",
            "visual_focus": "Suriyoung anxiously watching from behind Hyesu"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At Hyesu's eye level, close to her front-side angle, roughly two feet from her face, with the security staff just off her eyeline",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Hyesu turning toward the security staff to respond"
          }
        ],
        "flow_summary": "카메라는 어두운 CCTV 모니터 앞의 보안직원에서 시작해 책상 옆을 따라 혜수와 뒤편의 수리영까지 불안의 축을 훑는다. 이후 다시 혜수에게 다가가 보안직원의 말에 반응하는 얼굴을 클로즈업으로 수렴한다.",
        "scene_index": 20,
        "shot_assignments": [
          {
            "deviation_note": "Frame tightens to the security staff's upper body, holding his chin-propped posture against the dim monitor light.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "The dolly-in resolves into a tighter facial close-up as Hyesu turns her head toward the security staff with her mouth slightly open.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At the office entrance, standing height, several meters from the desks, looking inward along the aisle toward Hyesu's desk and the seated Suriyoung",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera advances down the aisle and lowers toward the surface of Hyesu's desk as the room empties around Suriyoung.",
            "visual_focus": "Suriyoung left alone at the desk within the busy police office"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low and close over Hyesu's desk, about 40 centimeters above the surface, angled downward from Suriyoung's side",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The lens tilts and rises from the photographs toward Suriyoung's face, keeping the desk edge as the spatial anchor.",
            "visual_focus": "Scattered enlarged crime-scene photographs on the desktop"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Seated eye-level close to Suriyoung across the desk, just beyond the line of the photographs",
            "stage_index": 3,
            "stage_label": "reaction",
            "transition_to_next": "The camera tracks laterally past the desk partition toward Kim detective's workstation as the alert sound pulls attention away from Suriyoung.",
            "visual_focus": "Suriyoung's shocked face fixed on the gruesome photograph"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside Kim detective's desk at monitor height, close enough to read the screen, angled slightly over the keyboard area",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "The camera eases back and pivots with Suriyoung as she checks the empty office and reaches toward the computer.",
            "visual_focus": "The monitor showing a sea map, coordinates, and the phone location result"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Tight beside the desk at waist height, hovering between the mouse, the paper, and Suriyoung's hands",
            "stage_index": 5,
            "stage_label": "secret_action",
            "transition_to_next": "The camera retreats with Suriyoung from the desk, swinging behind her as she turns toward the exit.",
            "visual_focus": "Suriyoung secretly using the computer and writing the coordinates on a small note"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Behind Suriyoung at shoulder height, several steps inside the office, facing the exit door with her back in the foreground",
            "stage_index": 6,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suriyoung standing toward the doorway while gripping the folded note in her pocket"
          }
        ],
        "flow_summary": "카메라는 사무실 입구에서 수리영을 따라 안쪽 책상으로 접근한 뒤, 책상 위 사진에서 얼굴 반응, 모니터, 손의 기록 행위로 시선을 좁혀간다. 마지막에는 책상에서 물러나 수리영의 뒤를 잡으며 출입문을 향한 탈출의 긴장으로 흐름을 마무리한다.",
        "scene_index": 21,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default, excluding Suriyoung and holding only the chaotic spread of enlarged photographs.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold on Suriyoung's face with a shallow depth of field, allowing the photograph edge to remain barely present at the bottom of frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Keep the folded note and clenched hand emphasized in the lower frame while her back and the exit door define the direction of escape.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 6
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide position outside the police station, about 1.5 meters high and 20 feet from the parked bicycle area, facing the curb and the open exit path",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "After holding the parked bicycle and exit path, the camera begins to slide toward the bicycle as Suriyoung moves into action.",
            "visual_focus": "the parked bicycle near the police station and the path Suriyoung will ride through"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low three-quarter front position near bicycle height, about 8 feet ahead of Suriyoung as she gets onto the bicycle and pushes off",
            "stage_index": 2,
            "stage_label": "launch",
            "transition_to_next": "The camera keeps rolling backward along the driveway, gaining a little distance until it becomes a centered frontal tracking view.",
            "visual_focus": "Suriyoung mounting the bicycle and driving the first pedal stroke forward"
          },
          {
            "camera_motion": "track",
            "camera_position": "Centered low frontal tracking position, about 1 meter high and 12 feet ahead of the moving bicycle, moving backward at matching speed",
            "stage_index": 3,
            "stage_label": "pursuit",
            "transition_to_next": "",
            "visual_focus": "Suriyoung riding hard toward camera in a full-body view"
          }
        ],
        "flow_summary": "카메라는 경찰서 밖 주차된 자전거를 바라보는 넓은 위치에서 시작해, 수리영이 자전거에 올라타는 순간 앞으로 끌려가듯 낮은 정면 추적 구도로 전환된다. 마지막에는 달리는 수리영의 전신을 정면에서 유지하며 속도감과 결의를 강조한다.",
        "scene_index": 22,
        "shot_assignments": [
          {
            "deviation_note": "Capture the exact mid-ride moment when one leg forcefully drives the pedal downward, with Suriyoung’s hair blown back and her gaze fixed straight ahead.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "crane",
            "camera_position": "High and wide above the empty coastal road, about 25 feet up and set back toward the shoreline, looking down the rain-lashed road under the storm clouds",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera descends and begins to move forward along the road axis, picking up the bicycle as it enters the frame through the heavy rain.",
            "visual_focus": "the stormy coastal road, lightning-lit clouds, and sheets of rain"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low and close beside the moving bicycle, around handlebar height and three feet off Suriyeong's front-left side, traveling parallel through the downpour",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "While maintaining speed beside the bicycle, the camera slides upward and slightly inward from the handlebar area toward Suriyeong's face.",
            "visual_focus": "Suriyeong fighting through the rain on the bicycle, with emphasis on her tense grip and forward drive"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tight front-left close range, just above handlebar height and less than two feet from Suriyeong's face, moving with the bicycle against the rain",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's wet face, clenched teeth, and desperate determination"
          }
        ],
        "flow_summary": "카메라는 폭풍이 몰아치는 해안도로의 넓은 전경에서 출발해, 빗속을 달리는 자전거 옆으로 붙어 이동한다. 손의 긴장을 지나 수리영의 얼굴까지 밀착하며, 엄마를 찾아야 한다는 절박함을 얼굴 클로즈업으로 압축한다.",
        "scene_index": 23,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default to isolate the wet face and clenched teeth, letting rain streak across the foreground.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the cluttered living room, shoulder height, about 10 feet behind Suri-young and angled toward the open bedroom doorway",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow track forward past the overturned furniture, following Suri-young's line of sight toward the bedroom wall.",
            "visual_focus": "the disturbed room, the open window, and the dark bedroom doorway beyond Suri-young"
          },
          {
            "camera_motion": "static",
            "camera_position": "At the bedroom threshold, eye level, about 7 feet from the wall and centered squarely on the marked surface",
            "stage_index": 2,
            "stage_label": "reveal",
            "transition_to_next": "The camera moves straight in along the axis of the red circle, narrowing attention from the whole wall mark to the object fixed at its center.",
            "visual_focus": "the huge red circular mark drawn across the middle of the bedroom wall"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Close to the bedroom wall, eye level, moving from about 3 feet away to within inches of the pinned paper photograph",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "As Suri-young reaches in and removes the photograph, the camera eases back and arcs with her movement toward the bed and then toward the exit path.",
            "visual_focus": "the old blood-stained paper photograph driven deep into the center of the red circle"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside Suri-young at upper-torso height, about 3 feet away, moving with her from the bedroom area toward the living room exit",
            "stage_index": 4,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suri-young's upper body, her hand gripping the photograph, and the backpack strap being set on her shoulder"
          }
        ],
        "flow_summary": "카메라는 난장판이 된 거실 뒤쪽에서 수리영의 시선을 따라 방 안 벽의 붉은 원으로 접근하고, 그 중심의 피 묻은 사진까지 밀고 들어간다. 이후 사진을 손에 쥔 수리영의 움직임에 붙어 방을 빠져나가는 방향으로 후퇴하며 불안한 탈출의 흐름을 만든다.",
        "scene_index": 24,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame perfectly still and frontal so the red circle reads as an ominous symbol before the photograph is emphasized.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten to a near-macro close-up, keeping the wall texture and the depth of the embedded photograph visible.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame only the upper body and hand; keep the background in motion enough to suggest she is being pulled toward leaving.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide position at the back of the empty harbor, eye level, about 30 meters from the wet rocks and shoreline, facing the fog-covered sea.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow track forward along the harbor edge toward the rocks where Suriyeong is waiting.",
            "visual_focus": "the empty foggy harbor, wet rocks, and invisible sea beyond the mist"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low three-quarter position beside the wet rocks, about 5 meters from Suriyeong, slightly below her eye line, angled across her body toward the sea.",
            "stage_index": 2,
            "stage_label": "waiting_observation",
            "transition_to_next": "The camera pans and shifts its axis away from Suriyeong toward the open water as a shape starts to form inside the fog.",
            "visual_focus": "Suriyeong waiting by the rocks, her phone, and the dense fog over the water"
          },
          {
            "camera_motion": "static",
            "camera_position": "At the harbor edge near water level, about 1.2 meters high and 20 to 25 meters from the approaching channel, looking directly into the fog.",
            "stage_index": 3,
            "stage_label": "boat_reveal",
            "transition_to_next": "As the boat nears the dock, the camera tracks laterally along the pier to meet it at the mooring point.",
            "visual_focus": "the bow of a small fishing boat cutting through the mist and water toward the harbor"
          },
          {
            "camera_motion": "track",
            "camera_position": "On the dock near the bow line, chest height, about 4 meters from the boat, holding a full-body distance on the man as he secures the rope.",
            "stage_index": 4,
            "stage_label": "encounter",
            "transition_to_next": "The camera follows the line of the rope and arcs past the boat toward Suriyeong, settling in front of her near the water before departure.",
            "visual_focus": "Inwoo standing on the boat with the mooring rope, with Suriyeong just outside the main axis of attention"
          },
          {
            "camera_motion": "static",
            "camera_position": "At the edge of the dock just in front of Suriyeong, chest height, about 1.5 meters away, backed toward the foggy sea so her gaze falls past the camera.",
            "stage_index": 5,
            "stage_label": "farewell_message",
            "transition_to_next": "",
            "visual_focus": "Suriyeong holding her smartphone close to her mouth while looking into the foggy sea"
          }
        ],
        "flow_summary": "카메라는 텅 빈 안개 낀 포구의 넓은 시야에서 시작해 수리영이 기다리는 갯바위와 바다 쪽으로 천천히 접근한다. 안개 속에서 배가 드러나는 순간을 붙잡은 뒤, 선착장으로 이동해 인우와 배를 확인하고 마지막에는 수리영의 정면으로 돌아와 음성메시지를 남기는 정서적 클로즈로 멈춘다.",
        "scene_index": 25,
        "shot_assignments": [
          {
            "deviation_note": "Hold the moment almost frozen, emphasizing the bow just breaking out of the fog and the water splitting around it.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "The tracking movement briefly settles into a clean full-body frame, keeping the rope visible in his hand and the boat edge as grounding lines.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          },
          {
            "deviation_note": "Tighten from the stage default to a frontal upper-body frame, with the smartphone pressed close to her mouth and her eyes fixed past camera toward the sea.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the dim rooftop room, chest-height, a few feet in front-left of Hyesu, close enough to hold her upper body while keeping the room behind her in shadow",
            "stage_index": 1,
            "stage_label": "tense_listening",
            "transition_to_next": "The camera holds its position as Hyesu begins to turn her head, letting her face rotate into a side profile toward Kim Detective.",
            "visual_focus": "Hyesu listening to the phone message in the dark room"
          },
          {
            "camera_motion": "pan",
            "camera_position": "At Hyesu's side, eye-level and close, slightly behind the line of her cheek so her profile leads the frame toward Kim Detective off-screen",
            "stage_index": 2,
            "stage_label": "reaction_to_question",
            "transition_to_next": "The camera continues the pan past Hyesu's sightline and drifts toward the room entrance, following the implied sound of the rattling door.",
            "visual_focus": "Hyesu's side profile as she turns toward Kim Detective with suspicion and fear"
          },
          {
            "camera_motion": "static",
            "camera_position": "Near the interior threshold of the rooftop room, eye-level, several feet from the open entrance, squared off to the door where it rests against the wall",
            "stage_index": 3,
            "stage_label": "empty_door_reveal",
            "transition_to_next": "",
            "visual_focus": "the open entrance door touching the wall, rattling in the wind"
          }
        ],
        "flow_summary": "카메라는 혜수의 불안한 청취 위치에서 그녀의 시선 방향으로 회전해 김형사를 의식하게 만든 뒤, 바람 소리를 따라 현관문으로 흘러간다. 마지막에는 인물에서 빠져나와 열린 문을 정지 구도로 붙잡으며 방 안의 황량함을 남긴다.",
        "scene_index": 26,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter on Hyesu's side face, with Kim Detective kept off-screen or only implied by her eyeline.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "The movement has fully settled; no characters are included, emphasizing the stillness of the door against the wall despite the rattling sound.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "On the open deck near the stern rail, eye-level, about 4 meters from the seated pair, angled forward across the deck with the sunset sea behind the small fishing boat.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a controlled dolly forward along the deck toward the space between Suriyeong's outstretched hand and Inwoo's seated position.",
            "visual_focus": "Suriyeong offering the paper map to Inwoo on the deck, with the surrounding sea and dusk light framing their isolation."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low chest-height beside Inwoo on the deck, within arm's reach of Suriyeong's hands, using a tight forward angle that compresses the space between the offered objects and Inwoo's face.",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After the old photograph fills the foreground, the camera pivots and releases into a lateral track toward the wheelhouse as Inwoo reacts and moves away.",
            "visual_focus": "Suriyeong's hand pushing the old paper photograph into Inwoo's line of sight, emphasizing the pressure of the question."
          },
          {
            "camera_motion": "track",
            "camera_position": "Shoulder-height on the narrow deck path between the seated area and the wheelhouse, moving parallel to the boat's centerline while keeping the wheelhouse door ahead.",
            "stage_index": 3,
            "stage_label": "pursuit_transition",
            "transition_to_next": "The tracking move arrives at the wheelhouse entrance and settles into a locked position as Suriyeong steps into Inwoo's path.",
            "visual_focus": "Inwoo's sudden break toward the wheelhouse and Suriyeong following to intercept him."
          },
          {
            "camera_motion": "static",
            "camera_position": "At the wheelhouse entrance, eye-level, about 2 meters from the threshold, facing outward toward the deck so the doorway becomes a hard boundary between Inwoo and Suriyeong.",
            "stage_index": 4,
            "stage_label": "confrontation_block",
            "transition_to_next": "",
            "visual_focus": "Suriyeong blocking Inwoo at the wheelhouse entrance with both arms spread, stopping him from turning the boat around."
          }
        ],
        "flow_summary": "카메라는 해질 무렵 갑판의 넓은 정지 구도에서 시작해 지도와 사진이 오가는 손끝까지 전진한 뒤, 인우의 돌발적인 움직임을 따라 조타실 쪽으로 이동한다. 마지막에는 조타실 입구에 멈춰 서서 수리영이 인우를 가로막는 장면을 정면의 경계 구도로 고정한다.",
        "scene_index": 27,
        "shot_assignments": [
          {
            "deviation_note": "Hold the wide composition slightly longer than the later stages to register the boat, the open sea, and the map being offered before the camera starts its approach.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten the lens and place the photograph closer to the lens than Inwoo's face so the sudden thrust of the image feels intrusive.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Lock off completely after the tracking move, using the doorway as a rigid frame around Suriyeong's blocking posture.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Inside the cramped wheelhouse, at chest height near the central console, about two meters from Suriyoung and Inwoo, angled slightly toward Suriyoung from Inwoo's side of the room",
            "stage_index": 1,
            "stage_label": "confrontation_establishing",
            "transition_to_next": "The camera slips downward and forward between them, following the emotional pressure toward the photograph in Suriyoung's hand.",
            "visual_focus": "Suriyoung confronting Inwoo in the tight wheelhouse space"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low and close over the console level, within arm's length of Suriyoung's hands, lens angled down toward the paper photograph",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on the photograph, the camera tilts and rises back toward Inwoo's face as the name lands on him.",
            "visual_focus": "Suriyoung's finger pressing onto the child's face in the photograph"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Mid-close height in front of Inwoo, slightly below his eye line, with the wheelhouse wall and circular shapes falling behind him",
            "stage_index": 3,
            "stage_label": "recognition_reaction",
            "transition_to_next": "A sharp logical cut enters Suriyoung's unstable point of view from near Inwoo's front, keeping his back and the wall in the same spatial axis.",
            "visual_focus": "Inwoo turning pale as recognition spreads across his face"
          },
          {
            "camera_motion": "static",
            "camera_position": "Suriyoung's eye-level point of view, a few feet in front of Inwoo, looking past his back toward the wheelhouse wall",
            "stage_index": 4,
            "stage_label": "hallucinated_reveal",
            "transition_to_next": "The static point of view breaks as Suriyoung loses balance; the camera drops and swings into a closer handheld position beside Inwoo's shoulder.",
            "visual_focus": "A vivid red circular mark appearing on the wall behind Inwoo like a hallucination"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Tight upper-body distance beside Inwoo's shoulder, slightly below eye level, close enough to catch Suriyoung's weight collapsing against him",
            "stage_index": 5,
            "stage_label": "collapse_and_threat",
            "transition_to_next": "",
            "visual_focus": "Inwoo holding the unconscious Suriyoung against his shoulder while glaring into the empty space ahead"
          }
        ],
        "flow_summary": "카메라는 조타실 안의 대치에서 출발해 사진으로 낮게 파고든 뒤, 인우의 반응을 거쳐 수리영의 흐려지는 시점으로 붉은 원형 표식을 드러낸다. 마지막에는 균형을 잃은 수리영을 따라 흔들리며 인우의 어깨 곁으로 붙어, 붕괴와 위협을 한 프레임에 묶는다.",
        "scene_index": 28,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default so the fingertip pressure and the child's face fill almost the entire image.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "The frame locks completely still and treats the red circular mark as a subjective apparition rather than a physical object.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          },
          {
            "deviation_note": "Held a beat longer on Inwoo's upper body, emphasizing his sharp gaze while Suriyoung remains limp against him.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide water-level position far out on the open sea, about 80 meters from the small fishing boat, facing the sunset across the golden reflection on the water",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow lateral track over the water, closing the distance while keeping the boat and the dark fog band in the same forward direction.",
            "visual_focus": "the small fishing boat floating against the sunset-lit sea and the distant fog band"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low water-level position about 25 meters off the boat's side, moving parallel to the boat as it advances toward the dense gray fog wall",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera continues tracking closer along the boat's side, drifting slightly forward until the bow lines up with the edge of the fog.",
            "visual_focus": "the boat approaching the massive fog wall rising from the sea surface"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low side position about 8 meters from the bow, slightly ahead of the boat's midpoint and nearly parallel to the hull at water height",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "the bow of the small fishing boat becoming half-submerged inside the dense fog barrier"
          }
        ],
        "flow_summary": "카메라는 노을이 깔린 바다의 넓은 거리에서 시작해, 배와 나란히 수면 가까이 이동하며 짙은 안개 장벽으로 접근한다. 마지막에는 뱃머리 옆까지 붙어 안개 속으로 반쯤 사라지는 순간을 따라간다.",
        "scene_index": 29,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter on the bow so it is half-buried in the fog wall, preserving a clean side profile of the small fishing boat.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      }
    ]
  },
  "step_id": "scene_camera_flow",
  "run_id": "8b4b1aec-7b99-400b-a66b-6a0f123c8ce7",
  "resolved_model": "gpt",
  "updated_at": "2026-04-30T14:14:41.851118+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50"
}