{
  "status": "completed",
  "completed_count": 30,
  "applicable_count": 30,
  "failed_count": 0,
  "data": {
    "scenes": [
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low handheld-height position inside dense undergrowth, about 10 feet behind and slightly to the injured man's left, moving parallel to his stumbling run at thigh-to-torso level",
            "stage_index": 1,
            "stage_label": "pursuit",
            "transition_to_next": "The camera accelerates with the man, then swings forward and downward as he loses balance, using the fall to carry the lens toward ground level.",
            "visual_focus": "the injured Korean man forcing his way through the bushes, with emphasis on his wounded leg and panicked forward motion"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Ground-level position near the fallen man's side, roughly 3 feet from his torso, lens angled up through the brush toward the open space above him",
            "stage_index": 2,
            "stage_label": "attack_reveal",
            "transition_to_next": "As the dark human-shaped silhouette drops into frame, the camera snaps its tilt down with the impact and settles beside the bodies.",
            "visual_focus": "the dark human-shaped silhouette crossing the air above the fallen Korean man"
          },
          {
            "camera_motion": "static",
            "camera_position": "Very low ground-level position beside the fallen man, about 4 feet from the bodies, slightly off to the man's shoulder side, looking across his torso toward the weight pressing down on him",
            "stage_index": 3,
            "stage_label": "impact_hold",
            "transition_to_next": "",
            "visual_focus": "the dark silhouette pinning the fallen Korean man to the forest floor"
          }
        ],
        "flow_summary": "카메라는 숲속을 달아나는 남자를 낮은 위치에서 따라가다가, 그의 추락과 함께 지면으로 떨어지듯 접근한다. 이후 위에서 덮쳐오는 검은 실루엣을 따라 시선을 꺾고, 충돌 직후 남자의 몸을 짓누른 정지 순간에 고정된다.",
        "scene_index": 1,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame a beat longer than the moving attack to emphasize the sudden stillness after impact.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Across the narrow alley at chest height, about 5 meters from a utility pole, looking sideways through dim streetlight toward two figures pressed together near the pole",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera leaves the wide side view and begins a slow push along the alley wall toward the figures, lowering the background into darkness as the bodies fill the frame.",
            "visual_focus": "the Korean man and Korean woman locked together beside the utility pole"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Very close to the pair at shoulder height, positioned just off the woman's back and slightly to the man's front side, within arm's length of the neck and face",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After the bite reaches its peak, the camera tilts and drifts downward with the woman's collapse, letting the man's face leave the top of frame.",
            "visual_focus": "the Korean man's red eyes, open mouth, and teeth sunk into the Korean woman's nape"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Beside the utility pole at waist height, close to the ground and angled downward toward the alley floor near the man's standing feet",
            "stage_index": 3,
            "stage_label": "aftermath",
            "transition_to_next": "",
            "visual_focus": "the Korean woman falling motionless to the pavement while the Korean man remains standing nearby"
          }
        ],
        "flow_summary": "카메라는 어두운 뒷골목의 측면 관찰 지점에서 시작해 전봇대 옆 두 사람에게 천천히 파고들고, 목덜미를 무는 순간의 클로즈업을 정점으로 삼는다. 이후 여자가 쓰러지는 방향으로 시선이 아래로 떨어지며 사건의 여운을 남긴다.",
        "scene_index": 2,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the frame so the red eyes, open mouth, teeth, and the woman's nape dominate the composition; keep the background alley nearly abstract and dark.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Behind the police line at eye level, wide distance from the center of the crime scene, looking inward from the public perimeter",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a controlled forward move along the edge of the police line, leaving the stretcher activity in the background and seeking the command cluster deeper in the scene.",
            "visual_focus": "police officers securing the crime scene and the stretcher being handled inside the cordoned area"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Moving from the perimeter toward the middle of the scene at eye level, passing beside investigators and stopping short of the group of detectives",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The dolly-in slows and settles into a tighter frontal angle on the detective group, isolating Hyesu within the crowd without cutting away.",
            "visual_focus": "the group of Korean detectives gathered at the center of the investigation"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye-level medium-close distance in front of Hyesu, slightly below her eyeline, framed through the surrounding detectives in the middle of the crime scene",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Hyesu standing still among the detectives, staring sharply ahead"
          }
        ],
        "flow_summary": "카메라는 폴리스 라인 바깥의 사건 현장 전경에서 출발해 수사 인력 사이로 천천히 진입하고, 형사들 무리 속 혜수에게 시선을 모아 멈춘다. 뉴스 화면의 관찰자적 거리감은 유지하되, 마지막에는 혜수의 지휘자적 존재감이 중심이 되도록 좁혀간다.",
        "scene_index": 3,
        "shot_assignments": [
          {
            "deviation_note": "Frame Hyesu from the upper torso up, compressing the surrounding detectives slightly so her sharp forward gaze becomes the dominant point of attention.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "crane",
            "camera_position": "Very high aerial position above the gray outskirts of Incheon, looking down at a cluster of old low-rise villas from a distant, elevated angle",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera continues a slow descending crane move, drifting toward the old villa rooftop without cutting.",
            "visual_focus": "the overcast neighborhood and the old rooftop room visible among surrounding buildings"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "High but closer above the old villa, angled downward toward the rooftop room at a measured distance",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "",
            "visual_focus": "the worn rooftop room and its isolated placement within the bleak residential area"
          }
        ],
        "flow_summary": "카메라는 흐린 인천 변두리를 높은 부감으로 내려다보며 시작해, 낡은 빌라 옥탑방 쪽으로 천천히 내려앉고 다가간다. 전체 이동은 지역의 불안한 분위기에서 특정 옥탑방으로 시선을 좁혀가는 흐름이다.",
        "scene_index": 4,
        "shot_assignments": [
          {
            "deviation_note": "The frame stays wide enough to preserve the bleak daytime outskirts while keeping the old rooftop room clearly readable below.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide position near the small living-room window, eye level, looking diagonally across the compact room toward the kitchen counter and television area",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera pans off the kitchen area as the daughter enters, then begins a slow lateral track toward the dining table.",
            "visual_focus": "Min-sook in the kitchen-living space, the boiling pot, running water, and the television glow"
          },
          {
            "camera_motion": "track",
            "camera_position": "Medium distance along the side of the dining table, seated eye height, parallel to the line between Min-sook and Su-ryeong",
            "stage_index": 2,
            "stage_label": "table_approach",
            "transition_to_next": "The camera continues sliding to the side of the table and eases closer as Su-ryeong leans forward toward Min-sook.",
            "visual_focus": "Min-sook and Su-ryeong facing each other during their morning exchange"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Side angle at the dining table, slightly behind Su-ryeong's shoulder line, about three feet from both women at seated chest height",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "The camera tilts and drifts downward from the intimate side angle, following Min-sook's arm toward her wrist.",
            "visual_focus": "Su-ryeong leaning in close to Min-sook's shoulder and pausing there"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Tight close-up position just above the tabletop beside Min-sook's forearm, very close to the wrist, angled slightly downward",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "The clear round mark on Min-sook's wrist"
          }
        ],
        "flow_summary": "카메라는 옥탑방의 주방과 거실을 넓게 잡은 뒤 식탁으로 옆으로 미끄러지듯 접근하고, 모녀의 대화가 가까워질수록 신체 거리 안으로 들어간다. 수리영이 민숙에게 다가간 순간 카메라는 시선을 아래로 떨어뜨려 손목의 둥근 표식을 드러낸다.",
        "scene_index": 5,
        "shot_assignments": [
          {
            "deviation_note": "Hold the side angle a little longer than the stage default so Su-ryeong's paused, scent-taking gesture reads clearly.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Tighten the framing to exclude the faces and isolate only Min-sook's wrist and the round mark.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "On the seaward shoulder of the coastal road, about 8 meters from Suriyoung, camera at waist height on a moving vehicle, angled three-quarters toward the road and shoreline.",
            "stage_index": 1,
            "stage_label": "establishing_track",
            "transition_to_next": "The camera accelerates gently to match the bicycle speed, sliding closer along the same side of the road while lowering the angle into a cleaner full-body profile.",
            "visual_focus": "Suriyoung riding along the coastal road with the ocean environment passing behind her"
          },
          {
            "camera_motion": "track",
            "camera_position": "Parallel to Suriyoung on the road side, about 3 meters away, camera at chest height, maintaining a full-body side profile of the bicycle and rider.",
            "stage_index": 2,
            "stage_label": "active_observation",
            "transition_to_next": "The camera drifts slightly forward of the bicycle and begins to arc toward her front side, preparing to catch her expression and the direction of the distant bark.",
            "visual_focus": "Suriyoung pedaling steadily, earphones in, hair blown backward, bright expression visible in motion"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Slightly ahead and to the side of Suriyoung, about 4 meters away, camera at chest height, still moving with her but rotating its gaze from her face toward the open road ahead.",
            "stage_index": 3,
            "stage_label": "sound_reaction_space",
            "transition_to_next": "",
            "visual_focus": "Suriyoung continuing forward as the coastal road ahead opens into the source direction of the barking sound"
          }
        ],
        "flow_summary": "카메라는 해안가 도로의 넓은 분위기에서 출발해 수리영의 자전거 속도에 맞춰 옆으로 붙으며 활기찬 주행감을 이어간다. 이후 살짝 앞으로 빠져나가며 개 짖는 소리가 들려오는 전방 공간을 열어 둔다.",
        "scene_index": 6,
        "shot_assignments": [
          {
            "deviation_note": "Hold the timing at the instant one pedal reaches the bottom of the stroke, keeping a full-body frame while allowing her bright face and windblown hair to remain readable.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Low inside the shelter aisle, about three feet from the kennel front and slightly below the Rottweiler's head height, angled upward through the open working space",
            "stage_index": 1,
            "stage_label": "establishing_threat",
            "transition_to_next": "The camera steadies, then pushes forward along the dog's eyeline toward Suri-young, letting the aggressive movement resolve into her still stare.",
            "visual_focus": "the snarling Rottweiler lunging and barking in the shelter aisle"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Eye-level close position directly in front of Suri-young, about two feet from her face, aligned with the Rottweiler's point of confrontation",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As the dog's energy drops, the camera tracks down and around from Suri-young's face toward the Rottweiler's rear flank, following the practical action rather than cutting away.",
            "visual_focus": "Suri-young's intense fixed gaze holding the Rottweiler still"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low beside the now-prone Rottweiler, at hip height to the dog and within arm's reach of the middle-aged Korean male doctor's hands",
            "stage_index": 3,
            "stage_label": "procedure_reveal",
            "transition_to_next": "After the injection lands, the camera eases back along the dog's body toward the wider shelter aisle, opening the space for the doctor's comment and the waiting dogs.",
            "visual_focus": "the doctor's needle entering the calm Rottweiler's hindquarter"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Mid-height in the shelter aisle, several feet back from Suri-young, the doctor, and the kennel row, with room to see the surrounding dogs and work area",
            "stage_index": 4,
            "stage_label": "withdraw_to_workload",
            "transition_to_next": "",
            "visual_focus": "Suri-young taking in the remaining dogs and the busy shelter tasks ahead"
          }
        ],
        "flow_summary": "카메라는 난동 부리는 로트와일러의 낮고 불안정한 시점에서 시작해, 수리영의 눈빛으로 밀착 진입한 뒤 개의 기세가 누그러지는 순간 몸통을 따라 의사의 주사 행위로 이동한다. 이후 다시 보호원 통로로 물러나며 수리영에게 쌓이는 다음 일거리의 공간감을 열어준다.",
        "scene_index": 7,
        "shot_assignments": [
          {
            "deviation_note": "Hold the dolly at its tightest point so her face appears locked in place, emphasizing the frozen confrontation.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Frame slightly tighter on the doctor's hand and needle than the stage default, keeping the Rottweiler's calm body as contextual foreground.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Street-level, slightly behind and to the left of Suriyeong, at chest height, moving through the crowded neon-lit shopping street toward the large market entrance",
            "stage_index": 1,
            "stage_label": "approach",
            "transition_to_next": "The camera follows Suriyeong to the storefront, then cuts on her movement as she enters through the market doors.",
            "visual_focus": "Suriyeong riding through traffic and street vendors toward the market"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the market aisle, about two meters in front of Suriyeong at chest-to-eye height, backing up as she approaches and then tightening when she stops near the female employee",
            "stage_index": 2,
            "stage_label": "interior_search",
            "transition_to_next": "As the conversation is interrupted, the camera pans off Suriyeong and the female employee toward the source of the male employee's voice.",
            "visual_focus": "Suriyeong facing the female employee while asking where her mother is"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Same aisle position, eye height, pivoting from Suriyeong and the female employee toward the nearby shelf area where the male employee is standing with boxes",
            "stage_index": 3,
            "stage_label": "information_reveal",
            "transition_to_next": "After the uncertain answer, the camera cuts ahead to outside the market, matching Suriyeong's exit and urgency.",
            "visual_focus": "The male employee turning toward Suriyeong as he mentions seeing Minsook outside with someone"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Outside the market entrance, very close to Suriyeong at eye height, slightly front-right of her face, compressing the background of the busy street behind her",
            "stage_index": 4,
            "stage_label": "exterior_reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyeong looking down at her phone screen as worry settles on her face"
          }
        ],
        "flow_summary": "카메라는 번화가에서 마트로 향하는 수리영의 이동을 따라가다가, 마트 내부에서 엄마의 행방을 묻는 대화의 축을 중심으로 좁혀진다. 이후 남자 직원의 말로 불안이 커진 순간을 지나, 마트 밖에서 연락이 닿지 않는 수리영의 얼굴로 밀착한다.",
        "scene_index": 8,
        "shot_assignments": [
          {
            "deviation_note": "The dolly-in nearly stops for a held upper-body framing, keeping the female employee just opposite Suriyeong rather than widening to the full aisle.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "The camera finishes closer than the stage default, framing primarily Suriyeong's furrowed face while allowing the phone screen direction to motivate her downward gaze.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide roadside position on the coastal road at night, camera at chest height, set several meters inland from the road with the dark sea stretching behind the lane",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyoung rides into the frame and approaches the roadside camera, the camera begins moving and accelerates into a parallel side track.",
            "visual_focus": "Suriyoung entering the coastal road frame on her bicycle, with the dark night sea as background"
          },
          {
            "camera_motion": "track",
            "camera_position": "Parallel side-tracking position beside the bicycle, low-to-mid height near the rider's torso, about two to three meters from Suriyoung, moving at the same speed along the coastal road",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera gradually eases slightly forward and widens the distance, letting the side profile stretch into a more open moving view down the road.",
            "visual_focus": "Suriyoung leaning forward and driving the pedals hard, her hair blown backward by the wind against the night sea"
          },
          {
            "camera_motion": "track",
            "camera_position": "Slightly ahead and farther out from the roadside, camera at shoulder height, angled back toward Suriyoung as she continues along the coast",
            "stage_index": 3,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suriyoung continuing her urgent ride home along the coastal road"
          }
        ],
        "flow_summary": "카메라는 해안도로 옆의 정적인 밤바다 배경에서 수리영의 진입을 기다린 뒤, 그녀가 지나치는 순간 나란히 속도를 맞춰 측면으로 붙는다. 이후 조금 앞서 빠지며 그녀의 다급한 주행을 길 위로 흘려보내는 연속 이동으로 마무리된다.",
        "scene_index": 9,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the side profile to catch the instant of her forceful downward pedal stroke and forward-leaning body, keeping the night sea visible behind her.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low on the rooftop floor beside the drying platform, about 20 cm above ground, looking across windblown dried leaves toward the rooftop room entrance in the distance",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a low track with the drifting leaves, letting the motion lead toward the approaching shoes near the entrance.",
            "visual_focus": "windblown dried herb leaves crossing the empty rooftop foreground"
          },
          {
            "camera_motion": "track",
            "camera_position": "Ankle-height tracking position moving laterally and slightly forward across the rooftop, staying close to the ground as the stranger approaches the metal door",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera continues forward with the feet until the shoes stop at the door, then rises and tightens toward the door crack and hand.",
            "visual_focus": "the stranger's shoes stopping in front of the rooftop room door"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tight close-up position at the handle-side door jamb, about chest height, only a few centimeters from the metal door surface and the narrow crack",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "After the lock sound and the door begins to give, a hard cut relocates the camera to the exterior window surface to catch the reflected violence inside.",
            "visual_focus": "the stranger's fingers pressing a paper flyer into the door crack"
          },
          {
            "camera_motion": "static",
            "camera_position": "Outside the closed window, close to the glass at a slight oblique angle, eye-level with the reflected interior shadows",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the large reflected silhouette of the stranger bearing down toward Minsuk's shoulder"
          }
        ],
        "flow_summary": "카메라는 옥탑방 옥상 바닥의 바람과 낙엽 같은 움직임에서 출발해 낯선 남자의 발을 따라 현관문까지 낮게 접근한 뒤, 문틈의 침입 행위를 극단적으로 좁혀 관찰한다. 잠금이 풀리는 순간 창문 바깥으로 논리적 컷을 감행해, 실내의 폭력을 직접 보여주지 않고 유리 표면의 거대한 그림자로 드러낸다.",
        "scene_index": 10,
        "shot_assignments": [
          {
            "deviation_note": "Use an even tighter crop than the stage default so the half-inserted flyer and the paused fingertip dominate the frame; keep the man's face completely excluded.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold the glass reflection as a flat shadow image, emphasizing the exaggerated scale of the stranger's silhouette and Minsuk's compressed shoulder area rather than the real interior space.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low shoulder-height position in the shadowed rear corner of the villa courtyard, several meters from the stair entrance, angled slightly upward toward the rooftop stairwell access",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera leaves the quiet courtyard axis with a cut to the stairwell, compressing the movement from the parked bicycle toward Suriyeong's climb.",
            "visual_focus": "the still courtyard corner, the parked bicycle, and the stairwell leading upward"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Tight stairwell landing position at chest height, moving just ahead of Suriyeong as she rushes upward, close enough to catch her sudden halt",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The handheld movement slows as Suriyeong stops at the smell, then cuts upward to the rooftop threshold she is about to face.",
            "visual_focus": "Suriyeong's urgent climb and her abrupt physical reaction to the foul smell"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye-level position on the rooftop landing, about two meters from the rooftop room entrance, squared off to the half-open metal front door",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "A tense reverse cut pivots the viewpoint from the unmoving door to Suriyeong's face, keeping the open gap as the source of her gaze.",
            "visual_focus": "the half-open metal front door frozen in place"
          },
          {
            "camera_motion": "static",
            "camera_position": "Close frontal position at Suriyeong's eye level on the rooftop landing, less than one meter from her face, with the doorway kept just off her eyeline",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's widened eyes and frozen expression as she stares into the open doorway"
          }
        ],
        "flow_summary": "카메라는 마당의 정적에서 계단의 급박한 상승을 따라가다 냄새를 감지한 순간 멈추고, 옥상 현관의 반쯤 열린 철문으로 시선을 고정한다. 이후 문에서 수리영의 얼굴로 역방향 컷을 가져가며, 열린 문틈을 바라보는 긴장을 클로즈업으로 응축한다.",
        "scene_index": 11,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame longer than the previous moving stages, emphasizing the door's stillness and the unnatural pause.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Tighten from the stage's close position into an extreme emotional close-up, allowing only her eyes and rigid expression to dominate the frame.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At shoulder height just inside the rooftop room entrance, several meters from the living area, moving slowly behind and slightly to the side of Suriyoung as she enters.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera continues forward with Suriyoung, then narrows its angle toward the interior doorway as she moves deeper into the apartment.",
            "visual_focus": "Suriyoung searching the dim living room, the cooled pot, the active television glow, and the weak standing lamp light."
          },
          {
            "camera_motion": "pan",
            "camera_position": "At shoulder height in the narrow interior passage between the living room and the rooms, close enough to frame doorways and tabletop details without entering fully.",
            "stage_index": 2,
            "stage_label": "search",
            "transition_to_next": "After observing the empty main room and the disturbed teacups, the camera pivots with Suriyoung and tracks toward the door of her room.",
            "visual_focus": "The empty room, the dining table, and the two teacups, one overturned."
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside Suriyoung's room at chest height, starting near the half-open door and advancing along the line of bloody footprints toward the window curtain.",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "As the curtain is pulled aside, the camera completes its move at the window area, then drops its attention downward toward Minsuk's body and hands.",
            "visual_focus": "The blood on the floor, the footprints leading to the curtain, and Minsuk seated behind it with her head lowered."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low beside Minsuk at knee-to-floor height, very close to her lowered arm and hand, angled slightly upward from the side of the body.",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "The camera pushes closer to the hand and photo, passes the wrist as the mark changes color, then redirects upward toward the bed wall.",
            "visual_focus": "Minsuk's slack bloodied hand gripping a crumpled photograph, with the wrist area nearby."
          },
          {
            "camera_motion": "tilt",
            "camera_position": "From a low position near the bed and window side, rising in gaze from Minsuk's hand level to the wall above the bed, close enough to fill the frame with the wall surface.",
            "stage_index": 5,
            "stage_label": "supernatural_reveal",
            "transition_to_next": "",
            "visual_focus": "The large red circular mark forming on the wall above the bed like a fresh brushstroke."
          }
        ],
        "flow_summary": "카메라는 거실에서 시작해 수리영의 수색 동선을 따라 방 안으로 계속 밀고 들어가며, 핏자국과 커튼을 거쳐 민숙의 시신을 드러낸다. 이후 시선은 시신의 손에 쥔 사진으로 낮게 파고들었다가, 손목의 이상 변화에서 침대 위 벽면의 붉은 원형 표식으로 치솟는다.",
        "scene_index": 12,
        "shot_assignments": [
          {
            "deviation_note": "The tracking movement settles into a brief, horrified hold as the curtain reveal completes, allowing Minsuk's seated body to dominate the frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 3
          },
          {
            "deviation_note": "Tightens from the stage's low side position into an extreme close-up on the crumpled photograph clenched in Minsuk's limp hand.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 12,
            "stage_index": 4
          },
          {
            "deviation_note": "The tilt finishes in a locked wall composition, isolating the red circular mark above the bed without showing the rest of the room.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 14,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "On the narrow rooftop exterior landing, waist height, about 12 feet from the iron stair run, angled slightly upward toward the doorway and upper steps",
            "stage_index": 1,
            "stage_label": "panic_emergence",
            "transition_to_next": "The camera backs down the stair axis ahead of 수리영, keeping her unstable descent in frame as the siren sound pulls the movement toward street level.",
            "visual_focus": "수리영 bursting out and stumbling on the iron stairs"
          },
          {
            "camera_motion": "track",
            "camera_position": "Moving backward down the exterior stairs and lower landing, chest height, staying just ahead of 수리영 as the building facade and stair rails slide past on both sides",
            "stage_index": 2,
            "stage_label": "descent",
            "transition_to_next": "At the bottom of the stairs, the camera swings off the stair line toward the building front, letting the flashing police lights and arriving car enter the visual field.",
            "visual_focus": "수리영 descending in shock, losing direction as she reaches the ground"
          },
          {
            "camera_motion": "pan",
            "camera_position": "At ground level near the building entrance, eye height, positioned between the stair base and the curb, with enough distance to see both 수리영 and 혜수 entering the space",
            "stage_index": 3,
            "stage_label": "arrival_reaction",
            "transition_to_next": "The camera follows 혜수’s run toward 수리영, then compresses the distance into a closer side angle for their exchange.",
            "visual_focus": "혜수 noticing 수리영 under the police lights and moving toward her"
          },
          {
            "camera_motion": "static",
            "camera_position": "Ground level beside 수리영 and 혜수, slightly lower than 혜수’s eye line and close enough for a tight side profile, about 3 feet from 수리영",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "After 수리영 speaks, the camera shifts its attention upward to 혜수’s shocked reaction, then releases the space toward the stair direction.",
            "visual_focus": "수리영 looking up at 혜수 and beginning to say what she saw"
          },
          {
            "camera_motion": "track",
            "camera_position": "Behind and slightly below 혜수 and 김형사 at the foot of the exterior stairs, shoulder height, aligned with their path upward",
            "stage_index": 5,
            "stage_label": "urgent_return",
            "transition_to_next": "",
            "visual_focus": "혜수 and 김형사 rushing back up toward the rooftop room"
          }
        ],
        "flow_summary": "카메라는 옥탑 철제 계단에서 비명을 지르는 수리영을 따라 아래로 흔들리듯 내려오고, 건물 앞 경찰차 불빛 속에서 혜수의 도착과 수리영의 고백으로 시선을 좁힌다. 이후 충격을 받은 혜수의 움직임을 따라 다시 계단 쪽으로 방향을 돌리는 하나의 하강-접근-재상승 흐름이다.",
        "scene_index": 13,
        "shot_assignments": [
          {
            "deviation_note": "Hold a wider full-body framing on the upper stair run so 수리영’s lifted foot and near-misstep are clearly visible before the camera begins to retreat downward.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Lower the lens slightly toward 수리영’s side profile so her upward gaze to 혜수 dominates the frame while 혜수’s face remains the emotional target above her.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the bedroom doorway at standing eye level, slightly behind the threshold, wide enough to include the bed, the clean floor, and the intact curtain in one quiet frame",
            "stage_index": 1,
            "stage_label": "empty_room_establishing",
            "transition_to_next": "The camera leaves the doorway with a slow forward move, crossing into the room and narrowing from the empty evidence to Suriyoung's frozen reaction near the curtain.",
            "visual_focus": "the unusually clean bedroom, especially the bed, floor, and curtain where traces should have been"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the bedroom at close range, slightly below Suriyoung's eye level and angled from the curtain side toward her face",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "A hard cut follows Suriyoung's rush out of the bedroom to the dining area, shifting the investigation from the vanished body to the missing teacups.",
            "visual_focus": "Suriyoung's pale, stunned face against the empty curtain area"
          },
          {
            "camera_motion": "cut",
            "camera_position": "Above and beside the dining table at chest height, close enough to isolate the clean tabletop and then widen to include the surrounding argument",
            "stage_index": 3,
            "stage_label": "evidence_absence_at_table",
            "transition_to_next": "After the confrontation and Hyesu's attempt to calm Suriyoung, the camera cuts back into the bedroom and lowers its attention toward the quiet corner details.",
            "visual_focus": "the clean dining table and the confused confrontation around it"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low in one corner of Suriyoung's bedroom, near floor level and close to the small objects, looking diagonally across the backpack and doll rather than toward the people",
            "stage_index": 4,
            "stage_label": "quiet_reveal",
            "transition_to_next": "",
            "visual_focus": "the backpack and doll placed at subtly altered angles"
          }
        ],
        "flow_summary": "카메라는 방문 앞에서 사라진 증거의 공백을 넓게 확인한 뒤, 방 안으로 밀고 들어가 수리영의 얼굴에 붙는다. 이후 식탁 쪽으로 논리적 컷을 거쳐 다시 방 한구석으로 돌아와, 사람들의 말보다 더 불길한 백팩과 인형의 미세한 변화를 조용히 드러낸다.",
        "scene_index": 14,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame unnaturally still so the cleanliness feels suspicious rather than reassuring.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten the lens and let the empty curtain remain only as soft background context behind her shock.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 2
          },
          {
            "deviation_note": "Shift the static corner framing into a tighter still-life close-up, emphasizing the slight directional mismatch of the backpack and doll.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 12,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At bench-side height, about 2 meters from the coastal bus stop bench, positioned in profile with the dark sea and horizon line behind 수리영",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a low lateral track along the bench line as 혜수 approaches from off-frame, narrowing attention from the sea to 수리영's face area.",
            "visual_focus": "수리영 sitting motionless on the bench, staring toward the night horizon"
          },
          {
            "camera_motion": "track",
            "camera_position": "Close to the front edge of the bench at chest height, slightly below 혜수's hand line, less than 1 meter from 수리영",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As 수리영 reacts and rises, the camera tilts and shifts backward to keep her movement connected to the bench space.",
            "visual_focus": "혜수's hand and canned drink held close in front of 수리영's face, with 수리영's blank reaction behind it"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Just beside the bench at standing height, backing away from 수리영's path as she gets up and turns to leave",
            "stage_index": 3,
            "stage_label": "reaction_transition",
            "transition_to_next": "A hard cut relocates the viewpoint to a distant roadside observation angle, turning the scene from intimate proximity into a watched-from-afar perspective.",
            "visual_focus": "수리영 abruptly leaving the bench while 혜수 remains near the bus stop"
          },
          {
            "camera_motion": "static",
            "camera_position": "Far across the roadside near dark foreground branches, at shoulder height with a long-lens view back toward the bus stop and coastal path",
            "stage_index": 4,
            "stage_label": "withdraw_reveal",
            "transition_to_next": "",
            "visual_focus": "수리영 running away into the distance while 혜수 calls after her from near the bench"
          }
        ],
        "flow_summary": "카메라는 밤바다를 등진 벤치 옆에서 수리영의 멍한 정지를 관찰하다가, 혜수가 음료수를 내미는 가까운 거리로 미끄러져 들어간다. 수리영이 뛰쳐나가는 순간 시선은 멀리 떨어진 관찰 위치로 절단되어, 두 사람을 누군가 지켜보는 듯한 거리감으로 마무리된다.",
        "scene_index": 15,
        "shot_assignments": [
          {
            "deviation_note": "측면 구도를 유지하되 수평선과 벤치가 함께 읽히도록 프레임을 넓게 잡는다.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "캔 음료수가 수리영의 얼굴 바로 앞에서 멈춘 순간에 초점을 당기고, 혜수는 상체와 팔 중심으로만 압축한다.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "수리영은 작고 멀리, 혜수는 전경 상체로 배치해 외침과 이탈 방향이 한 프레임에 걸리게 한다.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At the police office entrance, standing height, medium-wide distance, moving just ahead of Hyesu as she enters from the doorway toward the duty desk",
            "stage_index": 1,
            "stage_label": "establishing_entrance",
            "transition_to_next": "The camera tracks backward with Hyesu, then subtly pans right to align the duty desk and Detective Kim in the same axis.",
            "visual_focus": "Hyesu entering while trying to reach Minsuk by phone"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Beside the front corner of the duty desk at seated eye level, medium distance from Detective Kim, angled slightly upward from his side toward Hyesu",
            "stage_index": 2,
            "stage_label": "desk_contact",
            "transition_to_next": "As Hyesu raises her phone, the camera pushes closer across the desk line, following the phone into Detective Kim's face space.",
            "visual_focus": "Detective Kim looking up from the desk toward Hyesu"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tight at the desk edge, just off the line between Hyesu's extended hand and Detective Kim's face, near eye level, close enough for the phone screen to dominate the foreground",
            "stage_index": 3,
            "stage_label": "phone_demand",
            "transition_to_next": "The camera slides laterally along the desk from the phone foreground toward Hyesu's side, keeping the tension across the desk continuous.",
            "visual_focus": "Hyesu's phone held close in front of Detective Kim's face, with Detective Kim behind it"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low standing height over the desk surface, close-medium distance from Hyesu, angled across the desk so her forward lean cuts toward Detective Kim's seated position",
            "stage_index": 4,
            "stage_label": "confrontation_close",
            "transition_to_next": "",
            "visual_focus": "Hyesu leaning over the desk and locking a sharp stare toward Detective Kim"
          }
        ],
        "flow_summary": "카메라는 경찰서 사무실 입구에서 혜수를 따라 들어와 당직 책상 앞까지 이동한 뒤, 휴대폰을 밀어붙이는 손끝을 따라 책상 위 긴장선으로 좁혀 들어간다. 이후 같은 책상 축을 따라 혜수 쪽으로 미끄러지며, 그녀의 단호한 압박을 가까이서 붙잡는다.",
        "scene_index": 16,
        "shot_assignments": [
          {
            "deviation_note": "휴대폰 액정이 김형사의 얼굴 바로 앞에서 멈춘 순간을 위해 초점을 휴대폰 번호에 우선 두고, 김형사의 얼굴은 얕은 심도로 뒤에 걸린다.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "혜수가 상체를 책상 위로 더 깊게 굽히는 순간에 맞춰 카메라를 약간 낮춰, 굳게 다문 입과 날카로운 시선이 책상 너머로 압박감 있게 보이도록 한다.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "On the neighboring rooftop edge at eye level, about 6 meters from the rooftop room facade, looking across the bluish dawn exterior toward the illuminated window and surrounding cement walls.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow lateral track along the rooftop edge, lowering its attention from the lit window toward the cement wall where movement is heard.",
            "visual_focus": "the quiet rooftop room exterior in dawn light, with the lit window as the visual anchor"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low beside the cement wall at roughly cat height, about 2 meters from the wall, angled three-quarter toward the rooftop room so the blue dawn and the lit room remain in the background.",
            "stage_index": 2,
            "stage_label": "approach_action",
            "transition_to_next": "As the cat springs off the wall, the camera continues the track and starts to pivot into the direction of the jump, preparing a side-on view toward the window.",
            "visual_focus": "the black cat launching from the cement wall into the air, its eyes catching the dawn light"
          },
          {
            "camera_motion": "pan",
            "camera_position": "At wall height on the side of the jump path, parallel to the cat's airborne trajectory, with the illuminated rooftop room window beyond the cat's line of sight.",
            "stage_index": 3,
            "stage_label": "gaze_reveal",
            "transition_to_next": "",
            "visual_focus": "the airborne black cat's fixed gaze toward the lit rooftop room window"
          }
        ],
        "flow_summary": "카메라는 동틀 무렵의 옥탑방 외부와 켜진 창문을 먼저 붙잡은 뒤, 담장 쪽으로 낮게 이동해 검은 고양이의 도약 순간을 따라간다. 고양이가 허공으로 뛰어오르면 카메라는 그 궤적을 따라 창문을 향한 시선까지 이어준다.",
        "scene_index": 17,
        "shot_assignments": [
          {
            "deviation_note": "The moving track is held as a suspended instant at the peak of the leap, emphasizing the cat's four paws stretched into the air and its sharp eyes against the bluish dawn.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the master bedroom, low seated height near the foot-left corner of the bed, about two meters from the bed edge, facing slightly upward toward the seated figure against the morning window light",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyeong reacts and leaves the bed, the camera releases from the static hold and cuts to a following position outside the room, preserving her movement direction into the hallway.",
            "visual_focus": "Suriyeong curled at the bed edge in the bright but uneasy bedroom"
          },
          {
            "camera_motion": "track",
            "camera_position": "Shoulder height just behind and slightly to the side of Suriyeong as she moves from the hallway toward her own closed room, then across the room toward the window and back toward the phone and backpack area",
            "stage_index": 2,
            "stage_label": "search_path",
            "transition_to_next": "The following track ends on her exit movement; a motivated cut carries the same forward momentum into the bathroom sink position.",
            "visual_focus": "Suriyeong checking the closed room, the clean floor near the window, the ringing phone, and the backpack"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the bathroom, at sink height and very close to the mirror plane, placed just off Suriyeong's shoulder line so the mirror shows her reflection and the tile wall behind her",
            "stage_index": 3,
            "stage_label": "mirror_reveal",
            "transition_to_next": "When she snaps her head toward the wall and bolts out, the image cuts from the mirror axis to a lower living-room table angle, making the panic feel continuous through her rush.",
            "visual_focus": "The mirror reflection of Suriyeong with the tile wall behind her where the red circular mark appears"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "In the living room beside the dining table, low tabletop height, starting about one meter from the framed family photo and pushing closer until the frame dominates the lens",
            "stage_index": 4,
            "stage_label": "hallucination_close_observation",
            "transition_to_next": "",
            "visual_focus": "The framed photo on the table, especially the mother's smiling face as it seems to melt"
          }
        ],
        "flow_summary": "카메라는 침대 가장자리의 정적인 불안에서 시작해 수리영의 동선을 따라 방과 욕실을 거쳐 거실 식탁 위 액자로 점점 좁혀 들어간다. 공간 이동은 수리영의 반응과 도주 동작에 맞춘 컷으로 이어지며, 최종적으로 환영의 클로즈업에 갇히는 흐름이다.",
        "scene_index": 18,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage base, holding only the upper body with the bowed head and knees emphasized at the bed edge.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Use the mirror as the primary image plane; keep Suriyeong partially foregrounded by reflection while the red circular mark sits over her shoulder on the reflected tile wall.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 12,
            "stage_index": 3
          },
          {
            "deviation_note": "Push in to an extreme close-up of the framed image so the mother's distorted, melting face fills the frame and the surrounding table falls away.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 15,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Outside the mart entrance, waist-high wide position across the small parking area, far enough to include the doorway and bicycle area in one frontal view",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins to track forward with Suriyoung as she leaves the bicycle area and moves toward the entrance.",
            "visual_focus": "Suriyoung arriving at the quiet mart entrance"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside the mart, eye-level position moving parallel to the aisles at a medium distance from Suriyoung",
            "stage_index": 2,
            "stage_label": "search",
            "transition_to_next": "The tracking movement slows and settles beside the aisle as Suriyoung finds the male employee.",
            "visual_focus": "Suriyoung scanning the aisles for the male employee"
          },
          {
            "camera_motion": "static",
            "camera_position": "Beside a mart aisle at chest height, medium distance, angled slightly across Suriyoung and the male employee during their conversation",
            "stage_index": 3,
            "stage_label": "inquiry",
            "transition_to_next": "A hard cut relocates the camera from the interior aisle to the exterior awning area where the CCTV position can be checked.",
            "visual_focus": "Suriyoung questioning the male employee about what he saw and whether CCTV might have recorded it"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Outside under the mart awning, frontal medium position slightly below Suriyoung's eye line, about two meters away, aimed upward toward her face and the CCTV above",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "The camera tilts and settles down from the CCTV sightline toward Suriyoung, tightening the attention onto her as she stops to make a call.",
            "visual_focus": "Suriyoung looking up at the CCTV camera mounted under the eaves"
          },
          {
            "camera_motion": "static",
            "camera_position": "Outside the mart, chest-height medium-close position directly in front of Suriyoung, close enough to isolate her upper body while keeping the exterior stillness around her",
            "stage_index": 5,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyoung holding a phone to her ear with a tense, fixed expression"
          }
        ],
        "flow_summary": "카메라는 한산한 마트 입구에서 수리영을 따라 내부로 들어가 남자 직원과의 확인 대화에 머문 뒤, 컷으로 마트 밖 처마 아래 CCTV 위치로 이동한다. 이후 CCTV를 올려다보는 시선에서 수리영의 전화 통화 반응으로 내려앉으며 장면의 긴장을 좁혀 간다.",
        "scene_index": 19,
        "shot_assignments": [
          {
            "deviation_note": "The framing holds Suriyoung frontally while allowing the CCTV above the awning to dominate her upward gaze; the tilt is minimal and ends on her fixed look.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          },
          {
            "deviation_note": "Tighten from the stage's medium-close default to a firmer upper-body crop, emphasizing the phone pressed to her ear and her hardened expression.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the cramped office doorway, eye level, medium-wide distance, slightly behind and to the side of the group looking inward toward the desk",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow dolly forward along the narrow gap toward the desk and monitor, compressing the three figures into the screen glow.",
            "visual_focus": "the security employee and Hyesu leaning toward the monitor, with Suriyoung standing close behind them"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Halfway between the doorway and the desk, eye level, tight medium distance over the shoulders of the front figures",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "Continuing the same forward movement, the camera subtly tracks past the monitor line and shifts its attention from the screen area to Suriyoung's face behind the others.",
            "visual_focus": "the monitor area and the tense attention of the people gathered around it"
          },
          {
            "camera_motion": "track",
            "camera_position": "Close to Suriyoung at eye level, just off the monitor side, tight close-up distance with the monitor glow coming from the front-left",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's face as anxiety gathers in her eyes under the monitor light"
          }
        ],
        "flow_summary": "카메라는 비좁은 총무과 입구 쪽의 단체 구도에서 시작해 모니터를 향해 천천히 파고든 뒤, 화면보다 그 뒤에 선 수리영의 불안한 얼굴로 시선을 옮긴다. 공간의 답답함과 CCTV의 불확실성이 점점 수리영의 긴장으로 수렴되는 흐름이다.",
        "scene_index": 20,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame slightly wider than the stage default so the cramped office, monitor, security employee, Hyesu, and Suriyoung are all readable in one composition.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten into a still close-up at the end of the track, letting the monitor light define Suriyoung's face while excluding most of the desk and other figures.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide eye-level position just inside the police office entrance, facing inward across the desks toward the main work area",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "After the paperwork exchange and the detectives' exit, the camera begins a slow track deeper into the office, following the emptying space toward Hyesu's desk.",
            "visual_focus": "Hyesu entering with Suryoung, Kim detective at the desks, and the busy police office around them"
          },
          {
            "camera_motion": "track",
            "camera_position": "Eye-level tracking position moving from the entrance aisle to the side of Hyesu's desk, about two meters from Suryoung",
            "stage_index": 2,
            "stage_label": "approach_to_desk",
            "transition_to_next": "The camera eases closer over the desk edge, lowering its attention from the room to the photographs and then rising toward Suryoung's reaction.",
            "visual_focus": "Suryoung left alone beside the desk, the scattered investigation photographs becoming her point of attention"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tight desk-side position slightly below Suryoung's eye line, close to her face as she looks downward at the photographs",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "The camera holds the shock, then pans and tracks across her eyeline toward the computer monitor that alerts her.",
            "visual_focus": "Suryoung's face as the contents of the photographs overwhelm her"
          },
          {
            "camera_motion": "track",
            "camera_position": "Close lateral position sliding from Suryoung's face toward the computer station and desktop, at seated-head height",
            "stage_index": 4,
            "stage_label": "reveal_information",
            "transition_to_next": "After the location result and the note-taking, the camera follows Suryoung's hand from the desk down toward her pocket, then arcs to her side.",
            "visual_focus": "The monitor result, the mouse, the note paper, and Suryoung's urgent attempt to record the coordinates"
          },
          {
            "camera_motion": "track",
            "camera_position": "Medium-close side position beside Suryoung near the desk, angled toward the office entrance sightline, at chest-to-eye height",
            "stage_index": 5,
            "stage_label": "guarded_withdraw",
            "transition_to_next": "",
            "visual_focus": "Suryoung hiding the note and watching the office entrance before leaving"
          }
        ],
        "flow_summary": "카메라는 경찰서 입구의 넓은 관찰 위치에서 시작해 사람들이 빠져나간 빈 사무실 안쪽으로 천천히 들어가며, 수리영의 시선이 책상 사진에서 모니터와 메모, 마지막으로 출구 경계로 이동하는 흐름을 따라간다. 충격의 얼굴 클로즈업은 책상 쪽으로 밀착한 지점에서, 경계하는 측면은 메모를 숨긴 뒤 출구 방향으로 몸을 틀어보는 마지막 아크 지점에서 파생된다.",
        "scene_index": 21,
        "shot_assignments": [
          {
            "deviation_note": "Tighten into an extreme facial close-up and let the dolly-in settle as her eyes widen and her mouth opens over the photographs below frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Let the tracking move come to a near-still side profile; keep her hand in the pocket within frame while the composition opens slightly toward the office entrance she is watching.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Outside the police station, curbside at chest height, about 8 meters from the parked bicycle, set perpendicular to the building frontage for a clean side view of the entrance area",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyoung begins to put weight on the pedal, the camera releases from the static hold and starts moving parallel to her path, matching the bicycle's acceleration.",
            "visual_focus": "Suriyoung preparing to ride away on the bicycle in front of the police station under the overcast sky"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low side-tracking position beside the road, around waist height, 3 to 4 meters from Suriyoung, moving parallel to the bicycle as it gains speed away from the police station",
            "stage_index": 2,
            "stage_label": "dynamic_departure",
            "transition_to_next": "The camera continues tracking until Suriyoung pulls slightly ahead, then eases its speed to let her forward motion dominate the frame.",
            "visual_focus": "Suriyoung leaning forward and driving the bicycle pedals with force"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Same curbside track line but slowing to a near-stop, camera still at waist height as Suriyoung moves farther along the street",
            "stage_index": 3,
            "stage_label": "release",
            "transition_to_next": "",
            "visual_focus": "Suriyoung riding away from the police station, her movement carrying the scene forward"
          }
        ],
        "flow_summary": "카메라는 경찰서 앞에 멈춰 선 자전거와 수리영을 측면에서 잡고 시작해, 그녀가 페달에 체중을 싣는 순간 옆으로 나란히 달리며 속도를 따라간다. 마지막에는 카메라가 살짝 늦춰지며 수리영의 전진하는 힘을 화면 안에 남긴다.",
        "scene_index": 22,
        "shot_assignments": [
          {
            "deviation_note": "Emphasize a dynamic side profile with the overcast sky held in the upper background; keep Suriyoung's forward-bent torso and bent knee prominent as she powers into motion.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Eye-level close-up position at the computer desk, about 2 feet from Suri-young, facing her frontally with the monitor just below the lens axis",
            "stage_index": 1,
            "stage_label": "close_observation",
            "transition_to_next": "The camera releases from the locked close-up with a slow downward tilt and slight rightward slide, following her attention from her face toward the desk and printer area.",
            "visual_focus": "Suri-young's tense face lit by the blue monitor glow"
          },
          {
            "camera_motion": "track",
            "camera_position": "Desk-height side position beside the monitor, about 1.5 feet from Suri-young's hands, angled toward the printer output tray",
            "stage_index": 2,
            "stage_label": "task_detail",
            "transition_to_next": "The camera continues the same low lateral movement away from the printer, dropping slightly toward the open backpack near the workstation.",
            "visual_focus": "her hand pausing on the edge of a map sheet emerging from the printer"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low close position near the chair and floor line, about 1 foot from the open backpack, looking down into it from the desk side",
            "stage_index": 3,
            "stage_label": "concealment",
            "transition_to_next": "",
            "visual_focus": "folded map papers being pushed into the open backpack"
          }
        ],
        "flow_summary": "카메라는 어두운 PC방 책상 앞에서 모니터 빛을 받은 수리영의 얼굴에 고정되어 시작한 뒤, 그녀의 시선을 따라 손과 프린터, 백팩 쪽으로 낮고 조용하게 흘러간다. 얼굴의 긴장감에서 출발해 지도와 가방으로 이어지는 행동의 목적성을 하나의 연속된 이동으로 따라간다.",
        "scene_index": 23,
        "shot_assignments": [
          {
            "deviation_note": "Use a tighter frame than the stage baseline, excluding most of the monitor body while keeping its blue light as the dominant illumination on her face.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "tilt",
            "camera_position": "High above the coastal road at roughly 6 meters, angled up toward the dark storm clouds and open shoreline, with the road only barely entering the lower edge of frame",
            "stage_index": 1,
            "stage_label": "establishing_storm",
            "transition_to_next": "The camera tilts and lowers its gaze from the lightning-filled clouds down toward the rain-lashed road, finding the direction of Suri-young's movement without a spatial jump.",
            "visual_focus": "storm clouds, lightning, and heavy rain over the coastal road"
          },
          {
            "camera_motion": "track",
            "camera_position": "On the wet road shoulder at waist height, about 4 meters from Suri-young's front-left side, moving parallel to her bicycle at matching speed with a full-body field of view",
            "stage_index": 2,
            "stage_label": "pursuit_observation",
            "transition_to_next": "The tracking move continues for a beat, then the camera gradually eases its speed so Suri-young begins to pull ahead into the rain.",
            "visual_focus": "Suri-young riding through the downpour, gripping the bicycle handlebars and driving the pedal forward"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Still on the road shoulder at waist height, now falling slightly behind Suri-young by 6 to 8 meters as the rain curtain thickens between camera and rider",
            "stage_index": 3,
            "stage_label": "withdraw_into_rain",
            "transition_to_next": "",
            "visual_focus": "Suri-young receding along the rain-soaked coastal road"
          }
        ],
        "flow_summary": "카메라는 먹구름과 번개가 뒤덮은 해안가 하늘에서 빗속 도로로 시선을 내려 수리영의 질주를 포착한다. 이후 자전거와 나란히 달리며 절박한 움직임을 따라가다가, 속도를 늦춰 그녀가 소나기 속으로 앞서 나가게 둔다.",
        "scene_index": 24,
        "shot_assignments": [
          {
            "deviation_note": "Hold a slightly wider full-body framing at the mid-pedal instant so the bent knee, clenched handlebars, wet hair, and rain scattering against her movement remain visible in one continuous tracking view.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Inside the front entrance at chest height, wide distance from the living room, angled slightly toward the open window and the scattered furniture",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a cautious handheld track through the disturbed living room toward the open bedroom doorway.",
            "visual_focus": "the ransacked living room, open window, and fallen chairs"
          },
          {
            "camera_motion": "track",
            "camera_position": "At the bedroom threshold, eye level, medium distance, looking past the doorframe into the room",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera crosses the threshold and tightens its path directly toward the marked wall.",
            "visual_focus": "the bedroom wall coming into view beyond the open door"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the bedroom, eye level, moving from medium distance to a close frontal position two feet from the wall",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "After the wall reveal, a logical cut shifts the viewpoint lower and closer inside the room for the aftermath of the discovery.",
            "visual_focus": "the red circular mark on the wall with a blood-stained old photograph pinned at its center"
          },
          {
            "camera_motion": "cut",
            "camera_position": "Beside the bed at seated height, close distance, angled three-quarters toward the mattress and the nearby wall",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "The camera retreats with the emotional beat, backing out from the bedroom toward the living room and reorienting toward the front door.",
            "visual_focus": "Suriyoung processing the photograph in the disordered bedroom"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Near the open front door at waist height, full-body distance, facing back into the room along Suriyoung's exit path",
            "stage_index": 5,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suriyoung moving toward the open front door while gripping the crumpled photograph"
          }
        ],
        "flow_summary": "카메라는 엉망이 된 거실 입구에서 시작해 수리영의 방 안 벽면으로 조심스럽게 파고들며 붉은 원과 피 묻은 사진을 발견한다. 이후 충격의 여운을 따라 방에서 물러나 현관 쪽으로 후퇴하며, 사진을 쥔 수리영의 퇴장을 받아낸다.",
        "scene_index": 25,
        "shot_assignments": [
          {
            "deviation_note": "Hold the dolly-in at its end point as a still, square-on wall view so the circular mark and pinned photograph dominate the frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Widen slightly from the stage default to include her entire body, the lifted foot before stepping out, the backpack, the open door, and the clenched photograph in one readable frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Very wide at the landward edge of the harbor, tripod height around 1.6 meters, far from the waterline, facing across the empty wet pier into the fog-covered sea at sunset.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera leaves the locked wide view and tracks forward along the wet pier toward the rocks where Suriyeong is sitting, keeping the foggy sea ahead as the spatial anchor.",
            "visual_focus": "the cold empty harbor, dense sea fog, wet pier, and invisible boats beyond the waterline"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low beside the shore rocks at about 0.4 meters high, within arm's reach of Suriyeong, angled down toward the rock surface and her phone.",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "From the phone close-up, the camera tilts and pans back up toward Suriyeong's line of sight, then reorients outward to the fog where a boat begins to emerge.",
            "visual_focus": "Suriyeong's phone on the rock with Hyesu's missed call notification"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Near Suriyeong on the rocks at seated shoulder height, looking past her toward the sea through the fog.",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "As the boat nears the pier, the camera tracks laterally off the rocks and follows Suriyeong's movement toward the mooring point.",
            "visual_focus": "the vague silhouette of a small boat appearing through the dense fog"
          },
          {
            "camera_motion": "track",
            "camera_position": "On the pier beside the mooring post at about 1.2 meters high, moving parallel with Suriyeong as she approaches the boat and Inwoo securing the rope.",
            "stage_index": 4,
            "stage_label": "approach",
            "transition_to_next": "The tracking move settles into a tighter side angle beside the boat, stopping as Suriyeong addresses Inwoo.",
            "visual_focus": "Suriyeong approaching the boat while Inwoo fixes the mooring rope"
          },
          {
            "camera_motion": "static",
            "camera_position": "Tight side position beside the boat, about 1.25 meters high and 1.5 meters from the two characters, slightly below Inwoo's eye line so Suriyeong must look upward within the frame.",
            "stage_index": 5,
            "stage_label": "confrontation",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's desperate upward gaze toward Inwoo's side profile"
          }
        ],
        "flow_summary": "카메라는 텅 빈 안개 낀 포구의 넓은 정경에서 시작해 갯바위의 수리영과 휴대폰으로 낮게 접근한 뒤, 그녀의 시선을 따라 바다와 배의 등장을 포착한다. 이후 포구의 계류 지점까지 수리영을 따라가 인우와 마주 선 긴장된 측면 구도로 멈춘다.",
        "scene_index": 26,
        "shot_assignments": [
          {
            "deviation_note": "",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Frame tighter than the stage default so the phone screen fills the image and the missed calls from Hyesu are legible; Suriyeong is excluded or only implied by proximity.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold the camera completely still and favor Suriyeong's eyes while keeping Inwoo's side profile as the vertical presence she looks up to.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the rooftop room near the entry side, eye level, several meters from the center of the living area, looking across the disordered room toward Hyesu",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow dolly forward through the living area, narrowing from the room's disorder toward Hyesu at the center.",
            "visual_focus": "the disturbed rooftop room interior with Hyesu standing in the middle holding a phone"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At Hyesu's front-left side, eye level, moving from medium distance into close distance in the middle of the living area",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on Hyesu's anxiety, the camera tracks slightly sideways and pans toward Detective Kim to catch his response.",
            "visual_focus": "Hyesu's anxious face and the phone at her ear"
          },
          {
            "camera_motion": "track",
            "camera_position": "A few steps to the side of Hyesu, chest height, angled toward Detective Kim standing nearby in the same room",
            "stage_index": 3,
            "stage_label": "reaction",
            "transition_to_next": "The camera lets Detective Kim's line finish, then pans and drifts past him toward the rattling entrance door.",
            "visual_focus": "Detective Kim's restrained, dismissive reaction"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Inside the living area facing the entrance, eye level, at medium distance from the open metal door",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the open entrance metal door shifting in the wind and the bleak emptiness of the room"
          }
        ],
        "flow_summary": "카메라는 난장판이 된 옥탑방 내부를 입구 쪽에서 바라보다가 거실 한가운데의 혜수에게 천천히 다가가 불안한 얼굴에 밀착한다. 이후 같은 공간 안에서 김형사의 반응을 거쳐 바람에 덜커덩거리는 현관문으로 시선을 흘려보내며 황량함을 드러낸다.",
        "scene_index": 27,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default, holding an extreme close-up on Hyesu's face while keeping only a minimal hint of the phone at her ear and the chaotic room behind her.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Exterior port side of the small fishing boat, far off at water level, about 40 meters away, with the horizon low in frame at sunset",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "Cut across the waterline onto the boat deck, reducing distance from the vessel to the seated figures while preserving the same sunset direction.",
            "visual_focus": "the small fishing boat floating alone on the red evening sea"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "On the open deck, waist height, several meters from Suriyoung and Inwoo, angled slightly from the side so the deck floor and the offered map remain visible",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "Continue the inward move past the map and photograph line, tightening toward Inwoo as the photograph enters his eyeline.",
            "visual_focus": "Suriyoung presenting the map and photograph toward Inwoo on the deck"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "On the deck at Inwoo's eye level, close enough for a tight facial frame, slightly off his front-left side with Suriyoung just outside the main frame edge",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "When Inwoo turns away and bolts, the camera breaks from the close position into a fast tracking move toward the wheelhouse.",
            "visual_focus": "Inwoo's shocked reaction as he recognizes the photograph"
          },
          {
            "camera_motion": "track",
            "camera_position": "Moving along the deck at shoulder height, following the line from Inwoo's starting position toward the wheelhouse door, keeping the narrow deck path compressed",
            "stage_index": 4,
            "stage_label": "pursuit_transition",
            "transition_to_next": "Track through the wheelhouse entrance and stop abruptly inside as Suriyoung catches up and blocks Inwoo at the wheel.",
            "visual_focus": "Inwoo rushing toward the wheelhouse with Suriyoung following close behind"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the dark wheelhouse, chest height, just behind and slightly to the side of the helm, facing back toward Inwoo and the doorway at a short distance",
            "stage_index": 5,
            "stage_label": "blockade",
            "transition_to_next": "",
            "visual_focus": "Suriyoung standing between Inwoo and the wheel, arms spread to stop him"
          }
        ],
        "flow_summary": "카메라는 노을 속 바다 위 어선을 먼 측면 정경으로 잡은 뒤 갑판 안쪽으로 진입해 지도와 사진을 둘러싼 압박을 따라 인우의 얼굴까지 좁혀 들어간다. 인우가 조타실로 달려가는 순간 이동은 빠른 추적으로 전환되고, 어두운 조타실 안에서 수리영이 조타기를 막아서는 정지 구도로 멈춘다.",
        "scene_index": 28,
        "shot_assignments": [
          {
            "deviation_note": "Hold the boat in a clean side silhouette with minimal deck detail, emphasizing isolation before cutting closer.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten to a more compressed facial close-up and let the background fall soft, isolating Inwoo's panic at the exact moment he sees the photograph.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Freeze the movement into a locked-off composition, placing Suriyoung's outstretched arms across Inwoo's chest line and the wheel just beyond her.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "At chest height, about 6 feet in front of the helm, slightly off-center between Suriyoung and Inwoo, close enough to catch their locked upper bodies in a tense two-shot.",
            "stage_index": 1,
            "stage_label": "establishing_confrontation",
            "transition_to_next": "The camera begins a tight clockwise track around the helm, closing the distance while keeping both bodies in frame as the argument escalates.",
            "visual_focus": "Suriyoung and Inwoo physically confronting each other in front of the helm"
          },
          {
            "camera_motion": "track",
            "camera_position": "At shoulder height, 3 to 4 feet from the pair, now angled from Inwoo's side of the helm so the camera can travel between their faces and the object being discussed.",
            "stage_index": 2,
            "stage_label": "approach_interrogation",
            "transition_to_next": "As Inwoo absorbs the name, the camera slips farther behind his near shoulder and raises its sightline past him toward the wheelhouse wall.",
            "visual_focus": "The tightening exchange between Suriyoung and Inwoo, with attention shifting from accusation to the implication of the photograph"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Behind and slightly above Inwoo's shoulder at eye level, about 2 feet from him, aimed across his shoulder toward the inner wall of the wheelhouse.",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "The camera pans back from the wall toward the pair, then follows Suriyoung's weakening body as she collapses into Inwoo's shoulder.",
            "visual_focus": "The wheelhouse wall filled with disturbing red circular spiral marks beyond Inwoo"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Very close at eye level on Inwoo's front three-quarter side, less than 2 feet away, with Suriyoung's collapsed weight still leaning into his shoulder at the edge of frame.",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Inwoo's cold, distant face as Suriyoung lies unconscious against him"
          }
        ],
        "flow_summary": "카메라는 조타기 앞의 몸싸움에서 시작해 두 사람 주위를 압박하듯 돌며 가까워지고, 인우의 어깨 너머로 조타실 벽의 붉은 원형 표식을 드러낸다. 이후 다시 인물 쪽으로 돌아와 쓰러진 수리영을 받은 인우의 차가운 얼굴로 밀착하며 씬을 끝낸다.",
        "scene_index": 29,
        "shot_assignments": [
          {
            "deviation_note": "Frame the two upper bodies tightly enough that the shoulder-to-shoulder shove dominates the foreground while the helm remains readable behind them.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Hold Inwoo's shoulder as a dark foreground edge and let the red spiral-like circular marks overwhelm the wall beyond him.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 3
          },
          {
            "deviation_note": "Compress the frame into a close-up so Suriyoung's collapsed presence is felt against Inwoo's shoulder while his eyes remain the sharp focal point.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "High wide position above the calm sea, about 6 meters over the water and far off the boat’s path, facing the low sunset across the surface",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera lowers toward water level and begins moving forward along the boat’s course, aligning with the direction of the approaching fog bank.",
            "visual_focus": "the golden sunset reflection stretching across the open sea and the distant small fishing boat"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low waterline position several meters in front of the fishing boat’s bow, moving backward at the boat’s speed and looking past the bow toward the horizon",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera slides laterally toward the boat’s side as the bow nears the fog wall, keeping the fog boundary continuous in frame.",
            "visual_focus": "the massive dark fog wall looming ahead like an edge of the world"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low side position near the fishing boat’s forward quarter, close to the water surface and parallel to the hull",
            "stage_index": 3,
            "stage_label": "threshold",
            "transition_to_next": "The camera lets the boat move ahead into the mist, then slows and eases backward as visibility collapses around the vessel.",
            "visual_focus": "the bow beginning to disappear into the dense sea fog"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Distant wide position behind the boat’s path, slightly above water level, retreating into open negative space as the fog fills the frame",
            "stage_index": 4,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "the empty sea and the faint silhouette of the small fishing boat being swallowed by thick fog"
          }
        ],
        "flow_summary": "카메라는 해질녘의 넓은 바다에서 시작해 어선의 진행 방향으로 낮아지고, 뱃머리 앞의 거대한 안개 벽까지 함께 다가간다. 이후 배가 안개 속으로 들어가는 순간을 옆에서 스치듯 따라간 뒤, 뒤로 물러나며 실루엣만 남은 텅 빈 바다로 씬을 닫는다.",
        "scene_index": 30,
        "shot_assignments": [
          {
            "deviation_note": "Frame the fog wall as dominant and oppressive, allowing only the forward presence of the bow area to imply the boat’s approach.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold the retreat longer until the boat is reduced to a barely readable silhouette inside the mist, with the surrounding sea emphasized as empty space.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      }
    ]
  },
  "step_id": "scene_camera_flow",
  "run_id": "2da8b058-9ad2-4381-becc-2b2a5d406310",
  "resolved_model": "gpt",
  "updated_at": "2026-06-29T10:07:45.730633+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}