- generic [active] [ref=e1]:
  - checkbox "Toggle sidebar ⌘B" [checked=mixed] [ref=e2]
  - navigation [ref=e3]:
    - list [ref=e4]:
      - generic "Toggle sidebar ⌘B" [ref=e5]
      - listitem [ref=e6]:
        - link "Roomfit v2 — Spec Map" [ref=e7] [cursor=pointer]:
          - /url: ./
    - generic [ref=e8]:
      - searchbox "Search" [ref=e9]
      - text: ⌘K
    - list [ref=e11]:
      - listitem [ref=e12]:
        - link "개요" [ref=e13] [cursor=pointer]:
          - /url: ./
      - listitem [ref=e14]:
        - link "화면" [ref=e15] [cursor=pointer]:
          - /url: ./screens
      - listitem [ref=e16]:
        - link "Use case" [ref=e17] [cursor=pointer]:
          - /url: ./use-cases
      - listitem [ref=e18]:
        - link "시나리오" [ref=e19] [cursor=pointer]:
          - /url: ./scenarios
      - listitem [ref=e20]:
        - link "데이터 흐름" [ref=e21] [cursor=pointer]:
          - /url: ./data-flow
  - generic [ref=e22]:
    - banner [ref=e23]: Roomfit v2 Spec — 자동 추출 + 수동 보강
    - complementary [ref=e24]:
      - navigation [ref=e25]:
        - generic [ref=e26]: Contents
        - list [ref=e27]:
          - listitem [ref=e28]:
            - link "화면별 의존성" [ref=e29] [cursor=pointer]:
              - /url: "#-1"
          - listitem [ref=e30]:
            - link "화면 → provider → use case 그래프" [ref=e31] [cursor=pointer]:
              - /url: "#provider-use-case"
    - main [ref=e32]:
      - heading "화면" [level=1] [ref=e33]:
        - link "화면" [ref=e34] [cursor=pointer]:
          - /url: "#"
      - paragraph [ref=e35]: 폰에서 보고 있는 화면 ↔ 코드 클래스 매칭. 각 행 클릭하면 의존 provider / component / 시나리오까지.
      - generic [ref=e36]:
        - generic [ref=e37]:
          - generic [ref=e38]: App
          - generic [ref=e39]:
            - generic [ref=e40]:
              - radio "all" [checked] [ref=e41]
              - text: all
            - generic [ref=e42]:
              - radio "b2c" [ref=e43]
              - text: b2c
            - generic [ref=e44]:
              - radio "b2b" [ref=e45]
              - text: b2b
        - generic [ref=e46]:
          - generic [ref=e47]: dev 화면 포함
          - checkbox "dev 화면 포함" [ref=e48]
        - generic [ref=e50]:
          - searchbox "Search" [ref=e51]
          - status [ref=e52]: 0 results
      - table [ref=e77]:
        - rowgroup [ref=e78]:
          - row "app feature Screen class 한 줄 path" [ref=e79]:
            - columnheader [ref=e80]:
              - checkbox [ref=e81]
            - columnheader "app": app
            - columnheader "feature": feature
            - columnheader "Screen class" [ref=e82]: Screen class
            - columnheader "한 줄" [ref=e83]: 한 줄
            - columnheader "path" [ref=e84]: path
        - rowgroup [ref=e85]:
          - row "b2c dev_remote ScanScreen BLE 디바이스 스캔 / 페어링 apps/b2c/lib/features/dev_remote/presentation/screens/scan_screen.dart" [ref=e86]:
            - cell [ref=e87]:
              - checkbox [ref=e88]
            - cell "b2c"
            - cell "dev_remote"
            - cell "ScanScreen" [ref=e89]
            - cell "BLE 디바이스 스캔 / 페어링" [ref=e90]
            - cell "apps/b2c/lib/features/dev_remote/presentation/screens/scan_screen.dart" [ref=e91]
          - row "b2c dev_remote RemoteScreen 디바이스 원격 제어 (개발자용) apps/b2c/lib/features/dev_remote/presentation/screens/remote_screen.dart" [ref=e92]:
            - cell [ref=e93]:
              - checkbox [ref=e94]
            - cell "b2c"
            - cell "dev_remote"
            - cell "RemoteScreen" [ref=e95]
            - cell "디바이스 원격 제어 (개발자용)" [ref=e96]
            - cell "apps/b2c/lib/features/dev_remote/presentation/screens/remote_screen.dart" [ref=e97]
          - row "b2c auth LoginScreen 로그인 / 인증 apps/b2c/lib/features/auth/presentation/screens/login_screen.dart" [ref=e98]:
            - cell [ref=e99]:
              - checkbox [ref=e100]
            - cell "b2c"
            - cell "auth"
            - cell "LoginScreen" [ref=e101]
            - cell "로그인 / 인증" [ref=e102]
            - cell "apps/b2c/lib/features/auth/presentation/screens/login_screen.dart" [ref=e103]
          - row "b2c exercise DevLabScreen 운동 동작 실험실 — RepDetector / VBT 튜닝 apps/b2c/lib/features/exercise/presentation/screens/dev_lab_screen.dart" [ref=e104]:
            - cell [ref=e105]:
              - checkbox [ref=e106]
            - cell "b2c"
            - cell "exercise"
            - cell "DevLabScreen" [ref=e107]
            - cell "운동 동작 실험실 — RepDetector / VBT 튜닝" [ref=e108]
            - cell "apps/b2c/lib/features/exercise/presentation/screens/dev_lab_screen.dart" [ref=e109]
          - row "b2c exercise WorkoutScreen 운동 화면 (legacy?, 검토 필요) apps/b2c/lib/features/exercise/presentation/screens/workout_screen.dart" [ref=e110]:
            - cell [ref=e111]:
              - checkbox [ref=e112]
            - cell "b2c"
            - cell "exercise"
            - cell "WorkoutScreen" [ref=e113]
            - cell "운동 화면 (legacy?, 검토 필요)" [ref=e114]
            - cell "apps/b2c/lib/features/exercise/presentation/screens/workout_screen.dart" [ref=e115]
          - row "b2c workout WorkoutLiveScreen 세트 진행 중 — 실시간 렙/속도/파워 + control bar apps/b2c/lib/features/workout/presentation/screens/workout_live_screen.dart" [ref=e116]:
            - cell [ref=e117]:
              - checkbox [ref=e118]
            - cell "b2c"
            - cell "workout"
            - cell "WorkoutLiveScreen" [ref=e119]
            - cell "세트 진행 중 — 실시간 렙/속도/파워 + control bar" [ref=e120]
            - cell "apps/b2c/lib/features/workout/presentation/screens/workout_live_screen.dart" [ref=e121]
          - row "b2c workout SetSummaryScreen 한 세트 종료 직후 메트릭 요약 apps/b2c/lib/features/workout/presentation/screens/set_summary_screen.dart" [ref=e122]:
            - cell [ref=e123]:
              - checkbox [ref=e124]
            - cell "b2c"
            - cell "workout"
            - cell "SetSummaryScreen" [ref=e125]
            - cell "한 세트 종료 직후 메트릭 요약" [ref=e126]
            - cell "apps/b2c/lib/features/workout/presentation/screens/set_summary_screen.dart" [ref=e127]
          - row "b2c workout ExerciseSelectScreen 운동 종목 + 그립 선택 apps/b2c/lib/features/workout/presentation/screens/exercise_select_screen.dart" [ref=e128]:
            - cell [ref=e129]:
              - checkbox [ref=e130]
            - cell "b2c"
            - cell "workout"
            - cell "ExerciseSelectScreen" [ref=e131]
            - cell "운동 종목 + 그립 선택" [ref=e132]
            - cell "apps/b2c/lib/features/workout/presentation/screens/exercise_select_screen.dart" [ref=e133]
          - row "b2c workout WorkoutFlowScreen 세트 ↔ 휴식 ↔ 완료 플로우 코디네이터 apps/b2c/lib/features/workout/presentation/screens/workout_flow_screen.dart" [ref=e134]:
            - cell [ref=e135]:
              - checkbox [ref=e136]
            - cell "b2c"
            - cell "workout"
            - cell "WorkoutFlowScreen" [ref=e137]
            - cell "세트 ↔ 휴식 ↔ 완료 플로우 코디네이터" [ref=e138]
            - cell "apps/b2c/lib/features/workout/presentation/screens/workout_flow_screen.dart" [ref=e139]
          - row "b2c workout HistoryScreen 운동 히스토리 (로그인 필요) apps/b2c/lib/features/workout/presentation/screens/history_screen.dart" [ref=e140]:
            - cell [ref=e141]:
              - checkbox [ref=e142]
            - cell "b2c"
            - cell "workout"
            - cell "HistoryScreen" [ref=e143]
            - cell "운동 히스토리 (로그인 필요)" [ref=e144]
            - cell "apps/b2c/lib/features/workout/presentation/screens/history_screen.dart" [ref=e145]
          - row "b2c workout SessionSummaryScreen 세션 종료 — 전체 세트 결산 / 피드백 apps/b2c/lib/features/workout/presentation/screens/session_summary_screen.dart" [ref=e146]:
            - cell [ref=e147]:
              - checkbox [ref=e148]
            - cell "b2c"
            - cell "workout"
            - cell "SessionSummaryScreen" [ref=e149]
            - cell "세션 종료 — 전체 세트 결산 / 피드백" [ref=e150]
            - cell "apps/b2c/lib/features/workout/presentation/screens/session_summary_screen.dart" [ref=e151]
          - row "b2b dev_remote ScanScreen BLE 디바이스 스캔 apps/b2b/lib/features/dev_remote/presentation/screens/scan_screen.dart" [ref=e152]:
            - cell [ref=e153]:
              - checkbox [ref=e154]
            - cell "b2b"
            - cell "dev_remote"
            - cell "ScanScreen" [ref=e155]
            - cell "BLE 디바이스 스캔" [ref=e156]
            - cell "apps/b2b/lib/features/dev_remote/presentation/screens/scan_screen.dart" [ref=e157]
          - row "b2b auth LoginScreen 로그인 apps/b2b/lib/features/auth/presentation/screens/login_screen.dart" [ref=e158]:
            - cell [ref=e159]:
              - checkbox [ref=e160]
            - cell "b2b"
            - cell "auth"
            - cell "LoginScreen" [ref=e161]
            - cell "로그인" [ref=e162]
            - cell "apps/b2b/lib/features/auth/presentation/screens/login_screen.dart" [ref=e163]
          - row "b2b shop OwnerDashboardScreen Owner 대시보드 — shop 운영 메인 apps/b2b/lib/features/shop/presentation/screens/owner_dashboard_screen.dart" [ref=e164]:
            - cell [ref=e165]:
              - checkbox [ref=e166]
            - cell "b2b"
            - cell "shop"
            - cell "OwnerDashboardScreen" [ref=e167]
            - cell "Owner 대시보드 — shop 운영 메인" [ref=e168]
            - cell "apps/b2b/lib/features/shop/presentation/screens/owner_dashboard_screen.dart" [ref=e169]
          - row "b2b shop CreateShopScreen shop 신규 생성 (Owner) apps/b2b/lib/features/shop/presentation/screens/create_shop_screen.dart" [ref=e170]:
            - cell [ref=e171]:
              - checkbox [ref=e172]
            - cell "b2b"
            - cell "shop"
            - cell "CreateShopScreen" [ref=e173]
            - cell "shop 신규 생성 (Owner)" [ref=e174]
            - cell "apps/b2b/lib/features/shop/presentation/screens/create_shop_screen.dart" [ref=e175]
          - row "b2b shop InviteMemberScreen 멤버 초대 — shadow account 발행 apps/b2b/lib/features/shop/presentation/screens/invite_member_screen.dart" [ref=e176]:
            - cell [ref=e177]:
              - checkbox [ref=e178]
            - cell "b2b"
            - cell "shop"
            - cell "InviteMemberScreen" [ref=e179]
            - cell "멤버 초대 — shadow account 발행" [ref=e180]
            - cell "apps/b2b/lib/features/shop/presentation/screens/invite_member_screen.dart" [ref=e181]
          - row "b2b workout SetSummaryScreen supervised 한 세트 종료 요약 apps/b2b/lib/features/workout/presentation/screens/set_summary_screen.dart" [ref=e182]:
            - cell [ref=e183]:
              - checkbox [ref=e184]
            - cell "b2b"
            - cell "workout"
            - cell "SetSummaryScreen" [ref=e185]
            - cell "supervised 한 세트 종료 요약" [ref=e186]
            - cell "apps/b2b/lib/features/workout/presentation/screens/set_summary_screen.dart" [ref=e187]
          - row "b2b workout SupervisedWorkoutScreen supervised 세션 진입 (멤버 선택부터) apps/b2b/lib/features/workout/presentation/screens/supervised_workout_screen.dart" [ref=e188]:
            - cell [ref=e189]:
              - checkbox [ref=e190]
            - cell "b2b"
            - cell "workout"
            - cell "SupervisedWorkoutScreen" [ref=e191]
            - cell "supervised 세션 진입 (멤버 선택부터)" [ref=e192]
            - cell "apps/b2b/lib/features/workout/presentation/screens/supervised_workout_screen.dart" [ref=e193]
          - row "b2b workout ExerciseSelectScreen 운동 종목 선택 (트레이너 시점) apps/b2b/lib/features/workout/presentation/screens/exercise_select_screen.dart" [ref=e194]:
            - cell [ref=e195]:
              - checkbox [ref=e196]
            - cell "b2b"
            - cell "workout"
            - cell "ExerciseSelectScreen" [ref=e197]
            - cell "운동 종목 선택 (트레이너 시점)" [ref=e198]
            - cell "apps/b2b/lib/features/workout/presentation/screens/exercise_select_screen.dart" [ref=e199]
          - row "b2b workout SessionConsoleScreen 세트 사이 콘솔 — 세트 시작/끝/기록 컨트롤 apps/b2b/lib/features/workout/presentation/screens/session_console_screen.dart" [ref=e200]:
            - cell [ref=e201]:
              - checkbox [ref=e202]
            - cell "b2b"
            - cell "workout"
            - cell "SessionConsoleScreen" [ref=e203]
            - cell "세트 사이 콘솔 — 세트 시작/끝/기록 컨트롤" [ref=e204]
            - cell "apps/b2b/lib/features/workout/presentation/screens/session_console_screen.dart" [ref=e205]
          - row "b2b workout MemberDetailScreen 멤버 상세 — 프로필 / 히스토리 apps/b2b/lib/features/workout/presentation/screens/member_detail_screen.dart" [ref=e206]:
            - cell [ref=e207]:
              - checkbox [ref=e208]
            - cell "b2b"
            - cell "workout"
            - cell "MemberDetailScreen" [ref=e209]
            - cell "멤버 상세 — 프로필 / 히스토리" [ref=e210]
            - cell "apps/b2b/lib/features/workout/presentation/screens/member_detail_screen.dart" [ref=e211]
          - row "b2b workout SessionSummaryScreen supervised 세션 종료 요약 apps/b2b/lib/features/workout/presentation/screens/session_summary_screen.dart" [ref=e212]:
            - cell [ref=e213]:
              - checkbox [ref=e214]
            - cell "b2b"
            - cell "workout"
            - cell "SessionSummaryScreen" [ref=e215]
            - cell "supervised 세션 종료 요약" [ref=e216]
            - cell "apps/b2b/lib/features/workout/presentation/screens/session_summary_screen.dart" [ref=e217]
          - row "b2b workout LiveWorkoutScreen supervised 세트 진행 중 (트레이너 라이브 모니터) apps/b2b/lib/features/workout/presentation/screens/live_workout_screen.dart" [ref=e218]:
            - cell [ref=e219]:
              - checkbox [ref=e220]
            - cell "b2b"
            - cell "workout"
            - cell "LiveWorkoutScreen" [ref=e221]
            - cell "supervised 세트 진행 중 (트레이너 라이브 모니터)" [ref=e222]
            - cell "apps/b2b/lib/features/workout/presentation/screens/live_workout_screen.dart" [ref=e223]
          - row "b2b workout LiveWorkoutFlowScreen supervised 라이브 플로우 코디네이터 apps/b2b/lib/features/workout/presentation/screens/live_workout_flow_screen.dart" [ref=e224]:
            - cell [ref=e225]:
              - checkbox [ref=e226]
            - cell "b2b"
            - cell "workout"
            - cell "LiveWorkoutFlowScreen" [ref=e227]
            - cell "supervised 라이브 플로우 코디네이터" [ref=e228]
            - cell "apps/b2b/lib/features/workout/presentation/screens/live_workout_flow_screen.dart" [ref=e229]
      - heading "화면별 의존성" [level=2] [ref=e53]:
        - link "화면별 의존성" [ref=e54] [cursor=pointer]:
          - /url: "#-1"
      - paragraph [ref=e55]: "화면 하나 골라서 그 화면이 watch하는 provider, 사용하는 component, 등장하는 시나리오를 한눈에:"
      - generic [ref=e231]:
        - generic [ref=e232]: 화면 선택
        - combobox "화면 선택" [ref=e233]:
          - option "dev_remote.ScanScreen" [selected]
          - option "dev_remote.RemoteScreen"
          - option "auth.LoginScreen"
          - option "exercise.DevLabScreen"
          - option "exercise.WorkoutScreen"
          - option "workout.WorkoutLiveScreen"
          - option "workout.SetSummaryScreen"
          - option "workout.ExerciseSelectScreen"
          - option "workout.WorkoutFlowScreen"
          - option "workout.HistoryScreen"
          - option "workout.SessionSummaryScreen"
          - option "dev_remote.ScanScreen"
          - option "auth.LoginScreen"
          - option "shop.OwnerDashboardScreen"
          - option "shop.CreateShopScreen"
          - option "shop.InviteMemberScreen"
          - option "workout.SetSummaryScreen"
          - option "workout.SupervisedWorkoutScreen"
          - option "workout.ExerciseSelectScreen"
          - option "workout.SessionConsoleScreen"
          - option "workout.MemberDetailScreen"
          - option "workout.SessionSummaryScreen"
          - option "workout.LiveWorkoutScreen"
          - option "workout.LiveWorkoutFlowScreen"
      - generic [ref=e56]:
        - heading "ScanScreen" [level=3] [ref=e234]
        - generic [ref=e59]: b2c · apps/b2c/lib/features/dev_remote/presentation/screens/scan_screen.dart
        - paragraph [ref=e62]: BLE 디바이스 스캔 / 페어링
      - table [ref=e237]:
        - rowgroup [ref=e238]:
          - row "kind name type path" [ref=e239]:
            - columnheader [ref=e240]:
              - checkbox [ref=e241]
            - columnheader "kind" [ref=e242]: kind
            - columnheader "name" [ref=e243]: name
            - columnheader "type" [ref=e244]: type
            - columnheader "path" [ref=e245]: path
        - rowgroup [ref=e246]:
          - row "provider bleAvailableViewProvider stream apps/b2c/lib/features/dev_remote/domain/providers/scan_providers.dart" [ref=e247]:
            - cell [ref=e248]:
              - checkbox [ref=e249]
            - cell "provider" [ref=e250]
            - cell "bleAvailableViewProvider" [ref=e251]
            - cell "stream" [ref=e252]
            - cell "apps/b2c/lib/features/dev_remote/domain/providers/scan_providers.dart" [ref=e253]
          - row "provider scanResultsViewProvider stream apps/b2c/lib/features/dev_remote/domain/providers/scan_providers.dart" [ref=e254]:
            - cell [ref=e255]:
              - checkbox [ref=e256]
            - cell "provider" [ref=e257]
            - cell "scanResultsViewProvider" [ref=e258]
            - cell "stream" [ref=e259]
            - cell "apps/b2c/lib/features/dev_remote/domain/providers/scan_providers.dart" [ref=e260]
      - heading "화면 → provider → use case 그래프" [level=2] [ref=e64]:
        - link "화면 → provider → use case 그래프" [ref=e65] [cursor=pointer]:
          - /url: "#provider-use-case"
      - paragraph [ref=e66]: "선택한 화면이 어떤 use case까지 도달하는지:"
      - document [ref=e263]:
        - generic [ref=e269]:
          - paragraph [ref=e276]: ScanScreen
          - paragraph [ref=e285]: scanResultsViewProvider
          - paragraph [ref=e294]: bleAvailableViewProvider
    - contentinfo [ref=e67]:
      - navigation [ref=e68]:
        - link "Previous page Roomfit v2 — Spec Map" [ref=e69] [cursor=pointer]:
          - /url: ./
          - text: Previous page
          - generic [ref=e70]: Roomfit v2 — Spec Map
        - link "Next page Use case" [ref=e71] [cursor=pointer]:
          - /url: ./use-cases
          - text: Next page
          - generic [ref=e72]: Use case
      - generic [ref=e73]:
        - text: "Source: /Volumes/WorkSSD/Projects/RoomfitV2 · build via"
        - code [ref=e74]: make extract && npm run build