<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/player_root"
    android:background="@android:color/black"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:keepScreenOn="true">
    <androidx.media3.ui.PlayerView
        android:id="@+id/player_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:show_buffering="never"
        app:surface_type="surface_view"
        app:use_controller="false"/>
    <androidx.media3.ui.SubtitleView
        android:id="@+id/custom_subtitle_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
    <include
        android:id="@+id/player_controls"
        layout="@layout/layout_player_controls"/>
    <FrameLayout
        android:layout_gravity="top"
        android:id="@+id/adjustment_bar_container"
        android:visibility="gone"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:elevation="20dp"/>
    <TextView
        android:textSize="36sp"
        android:textStyle="bold"
        android:textColor="@android:color/white"
        android:layout_gravity="center"
        android:id="@+id/skip_indicator"
        android:background="@drawable/skip_indicator_background"
        android:visibility="gone"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:alpha="0"
        android:elevation="10dp"
        android:paddingHorizontal="32dp"
        android:paddingVertical="16dp"/>
    <ImageView
        android:layout_gravity="center"
        android:id="@+id/buffering_indicator"
        android:visibility="gone"
        android:layout_width="64dp"
        android:layout_height="64dp"
        android:src="@drawable/spinner_dots"
        android:contentDescription="@null"
        android:elevation="5dp"/>
    <FrameLayout
        android:id="@+id/pause_overlay"
        android:visibility="gone"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:elevation="4dp">
        <View
            android:layout_gravity="bottom"
            android:background="@drawable/gradient_player_bottom"
            android:layout_width="match_parent"
            android:layout_height="280dp"/>
        <ImageView
            android:layout_gravity="start|bottom"
            android:id="@+id/pause_logo"
            android:layout_width="300dp"
            android:layout_height="120dp"
            android:layout_marginBottom="140dp"
            android:scaleType="fitStart"
            android:contentDescription="@null"
            android:layout_marginStart="48dp"/>
        <TextView
            android:textSize="32sp"
            android:textStyle="bold"
            android:textColor="@android:color/white"
            android:ellipsize="end"
            android:layout_gravity="start|bottom"
            android:id="@+id/pause_title"
            android:visibility="gone"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="160dp"
            android:maxWidth="500dp"
            android:maxLines="2"
            android:shadowColor="#000000"
            android:shadowDx="0"
            android:shadowDy="2"
            android:shadowRadius="8"
            android:layout_marginStart="48dp"/>
    </FrameLayout>
    <FrameLayout
        android:id="@+id/loading_overlay"
        android:background="@android:color/black"
        android:visibility="visible"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <ImageView
            android:id="@+id/loading_backdrop"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="centerCrop"
            android:alpha="0.4"/>
        <LinearLayout
            android:gravity="center"
            android:layout_gravity="center"
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <ImageView
                android:id="@+id/loading_logo"
                android:layout_width="400dp"
                android:layout_height="200dp"
                android:scaleType="fitCenter"
                android:alpha="0"/>
            <TextView
                android:textSize="18sp"
                android:textColor="@android:color/white"
                android:id="@+id/loading_text"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="24dp"
                android:text="@string/msg_loading"
                android:alpha="0.8"/>
            <ImageView
                android:id="@+id/loading_spinner"
                android:layout_width="48dp"
                android:layout_height="48dp"
                android:layout_marginTop="16dp"
                android:src="@drawable/spinner_dots"
                android:contentDescription="@null"/>
        </LinearLayout>
    </FrameLayout>
    <FrameLayout
        android:id="@+id/error_overlay"
        android:background="@android:color/black"
        android:visibility="gone"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <LinearLayout
            android:gravity="center"
            android:layout_gravity="center"
            android:orientation="vertical"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <ImageView
                android:layout_width="64dp"
                android:layout_height="64dp"
                android:src="@drawable/ic_error"
                android:tint="#ff6b6b"
                android:contentDescription="@string/cd_error"/>
            <TextView
                android:textSize="18sp"
                android:textColor="#ffffff"
                android:gravity="center"
                android:id="@+id/error_message"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="16dp"
                android:text="@string/msg_video_load_failed"
                android:lineSpacingExtra="6dp"
                android:layout_marginStart="32dp"
                android:layout_marginEnd="32dp"/>
            <TextView
                android:textSize="14sp"
                android:textColor="#888888"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="32dp"
                android:text="@string/msg_select_different_source"/>
        </LinearLayout>
    </FrameLayout>
    <include layout="@layout/layout_skip_intro_button"/>
    <androidx.cardview.widget.CardView
        android:layout_gravity="end|bottom"
        android:id="@+id/next_episode_overlay"
        android:visibility="gone"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="24dp"
        android:elevation="15dp"
        app:cardBackgroundColor="#e6212121"
        app:cardCornerRadius="12dp">
        <LinearLayout
            android:gravity="center_vertical"
            android:orientation="horizontal"
            android:padding="12dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <ImageView
                android:id="@+id/next_episode_thumbnail"
                android:background="#333333"
                android:layout_width="160dp"
                android:layout_height="90dp"
                android:scaleType="centerCrop"/>
            <LinearLayout
                android:gravity="start"
                android:orientation="vertical"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginStart="12dp">
                <TextView
                    android:textSize="12sp"
                    android:textColor="#aaaaaa"
                    android:id="@+id/next_episode_label"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/label_up_next"/>
                <TextView
                    android:textSize="14sp"
                    android:textStyle="bold"
                    android:textColor="@android:color/white"
                    android:ellipsize="end"
                    android:id="@+id/next_episode_title"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="2dp"
                    android:maxWidth="200dp"
                    android:maxLines="2"/>
                <TextView
                    android:textSize="12sp"
                    android:textColor="#aaaaaa"
                    android:id="@+id/next_episode_countdown"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="4dp"
                    android:text="@string/msg_playing_countdown"/>
                <LinearLayout
                    android:orientation="horizontal"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="8dp">
                    <Button
                        android:textSize="12sp"
                        android:textColor="@android:color/white"
                        android:id="@+id/btn_cancel_next"
                        android:background="@drawable/bg_button_secondary"
                        android:focusable="true"
                        android:focusableInTouchMode="false"
                        android:nextFocusLeft="@+id/btn_cancel_next"
                        android:nextFocusRight="@+id/btn_play_next"
                        android:nextFocusUp="@+id/btn_cancel_next"
                        android:nextFocusDown="@+id/btn_cancel_next"
                        android:layout_width="wrap_content"
                        android:layout_height="36dp"
                        android:minWidth="0dp"
                        android:text="@string/action_cancel"
                        android:paddingHorizontal="16dp"/>
                    <Button
                        android:textSize="12sp"
                        android:textColor="@android:color/black"
                        android:id="@+id/btn_play_next"
                        android:background="@drawable/bg_button_primary"
                        android:focusable="true"
                        android:focusableInTouchMode="false"
                        android:nextFocusLeft="@+id/btn_cancel_next"
                        android:nextFocusRight="@+id/btn_play_next"
                        android:nextFocusUp="@+id/btn_play_next"
                        android:nextFocusDown="@+id/btn_play_next"
                        android:layout_width="wrap_content"
                        android:layout_height="36dp"
                        android:minWidth="0dp"
                        android:text="@string/action_play_now"
                        android:layout_marginStart="8dp"
                        android:paddingHorizontal="16dp"/>
                </LinearLayout>
            </LinearLayout>
        </LinearLayout>
    </androidx.cardview.widget.CardView>
</FrameLayout>
