diff --git a/src/frontend/src/features/layout/components/LayoutWrapper.tsx b/src/frontend/src/features/layout/components/LayoutWrapper.tsx
deleted file mode 100644
index 7e012a1b..00000000
--- a/src/frontend/src/features/layout/components/LayoutWrapper.tsx
+++ /dev/null
@@ -1,24 +0,0 @@
-import { styled } from '@/styled-system/jsx'
-import { cva } from '@/styled-system/css'
-
-export const LayoutWrapper = styled(
- 'div',
- cva({
- base: {
- position: 'relative',
- display: 'flex',
- width: '100%',
- transition: 'height .5s cubic-bezier(0.4,0,0.2,1) 5ms',
- },
- variants: {
- areSubtitlesOpen: {
- true: {
- height: 'calc(100% - 12rem)',
- },
- false: {
- height: '100%',
- },
- },
- },
- })
-)
diff --git a/src/frontend/src/features/layout/components/RoomContentArea.tsx b/src/frontend/src/features/layout/components/RoomContentArea.tsx
new file mode 100644
index 00000000..bc60ccb8
--- /dev/null
+++ b/src/frontend/src/features/layout/components/RoomContentArea.tsx
@@ -0,0 +1,72 @@
+// RoomContentArea.tsx
+
+import React from 'react'
+import { styled } from '@/styled-system/jsx'
+import { cva } from '@/styled-system/css'
+import { useSubtitles } from '@/features/subtitle/hooks/useSubtitles'
+import { useSidePanel } from '@/features/rooms/livekit/hooks/useSidePanel'
+import {Subtitles} from "@/features/subtitle/component/Subtitles";
+import {MainNotificationToast} from "@/features/notifications/MainNotificationToast";
+
+
+const RoomViewport = styled(
+ 'div',
+ cva({
+ base: {
+ position: 'absolute',
+ maxHeight: '100%',
+ transition: 'inset .5s cubic-bezier(0.4,0,0.2,1) 5ms',
+ },
+ variants: {
+ isSidePanelOpen: {
+ true: {
+ inset: `var(--lk-grid-gap) calc(358px + 3rem) calc(80px + var(--lk-grid-gap)) 16px`,
+ },
+ false: {
+ inset: `var(--lk-grid-gap) var(--lk-grid-gap) calc(80px + var(--lk-grid-gap))`,
+ },
+ },
+ },
+ })
+)
+
+const TrackAreaContainer = styled(
+ 'div',
+ cva({
+ base: {
+ position: 'relative',
+ display: 'flex',
+ width: '100%',
+ transition: 'height .5s cubic-bezier(0.4,0,0.2,1) 5ms',
+ },
+ variants: {
+ areSubtitlesOpen: {
+ true: {
+ height: 'calc(100% - 12rem)',
+ },
+ false: {
+ height: '100%',
+ },
+ },
+ },
+ })
+)
+
+interface RoomContentAreaProps {
+ children: React.ReactNode
+}
+
+export function RoomContentArea({ children }: RoomContentAreaProps) {
+ const { isSidePanelOpen } = useSidePanel()
+ const { areSubtitlesOpen } = useSubtitles()
+
+ return (
+