diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneFragment.kt
new file mode 100644
index 0000000000000000000000000000000000000000..4c6ddaa7d8b92a557c33ca491eb82a26e68be719
--- /dev/null
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneFragment.kt
@@ -0,0 +1,70 @@
+package de.rki.coronawarnapp.ui.submission.submissiondone
+
+import android.os.Bundle
+import android.view.View
+import android.view.accessibility.AccessibilityEvent
+import androidx.core.view.isVisible
+import androidx.fragment.app.Fragment
+import androidx.navigation.fragment.navArgs
+import de.rki.coronawarnapp.R
+import de.rki.coronawarnapp.coronatest.type.CoronaTest
+import de.rki.coronawarnapp.databinding.FragmentSubmissionDoneBinding
+import de.rki.coronawarnapp.ui.submission.viewmodel.SubmissionNavigationEvents
+import de.rki.coronawarnapp.util.ContextExtensions.getDrawableCompat
+import de.rki.coronawarnapp.util.di.AutoInject
+import de.rki.coronawarnapp.util.ui.doNavigate
+import de.rki.coronawarnapp.util.ui.observe2
+import de.rki.coronawarnapp.util.ui.viewBindingLazy
+import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactoryProvider
+import de.rki.coronawarnapp.util.viewmodel.cwaViewModelsAssisted
+import javax.inject.Inject
+
+class SubmissionDoneFragment : Fragment(R.layout.fragment_submission_done), AutoInject {
+
+    private val args by navArgs<SubmissionDoneFragmentArgs>()
+
+    @Inject lateinit var viewModelFactory: CWAViewModelFactoryProvider.Factory
+    private val viewModel: SubmissionDoneViewModel by cwaViewModelsAssisted(
+        factoryProducer = { viewModelFactory },
+        constructorCall = { factory, _ ->
+            factory as SubmissionDoneViewModel.Factory
+            factory.create(args.testType)
+        }
+    )
+
+    private val binding: FragmentSubmissionDoneBinding by viewBindingLazy()
+
+    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
+        super.onViewCreated(view, savedInstanceState)
+        binding.apply {
+
+            toolbar.apply {
+                navigationIcon = context.getDrawableCompat(R.drawable.ic_close)
+                navigationContentDescription = getString(R.string.accessibility_close)
+                setNavigationOnClickListener { viewModel.onFinishButtonClick() }
+            }
+
+            submissionDoneButtonDone.setOnClickListener {
+                viewModel.onFinishButtonClick()
+            }
+
+            submissionDoneContent.submissionDoneContent.submissionDonePcrValidation.root.isVisible =
+                (viewModel.testType == CoronaTest.Type.RAPID_ANTIGEN)
+        }
+
+        viewModel.routeToScreen.observe2(this) {
+            when (it) {
+                SubmissionNavigationEvents.NavigateToMainActivity -> {
+                    doNavigate(
+                        SubmissionDoneFragmentDirections.actionSubmissionDoneFragmentToMainFragment()
+                    )
+                }
+            }
+        }
+    }
+
+    override fun onResume() {
+        super.onResume()
+        binding.submissionDoneContainer.sendAccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT)
+    }
+}
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneModule.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneModule.kt
new file mode 100644
index 0000000000000000000000000000000000000000..ab24c4f9b677414eac42da432ec194c4e230a9d1
--- /dev/null
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneModule.kt
@@ -0,0 +1,18 @@
+package de.rki.coronawarnapp.ui.submission.submissiondone
+
+import dagger.Binds
+import dagger.Module
+import dagger.multibindings.IntoMap
+import de.rki.coronawarnapp.util.viewmodel.CWAViewModel
+import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactory
+import de.rki.coronawarnapp.util.viewmodel.CWAViewModelKey
+
+@Module
+abstract class SubmissionDoneModule {
+    @Binds
+    @IntoMap
+    @CWAViewModelKey(SubmissionDoneViewModel::class)
+    abstract fun submissionDoneFragmentVM(
+        factory: SubmissionDoneViewModel.Factory
+    ): CWAViewModelFactory<out CWAViewModel>
+}
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneViewModel.kt
new file mode 100644
index 0000000000000000000000000000000000000000..0f72b0df369c5c45fb88c7abe005905b7aa8d77e
--- /dev/null
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/submissiondone/SubmissionDoneViewModel.kt
@@ -0,0 +1,26 @@
+package de.rki.coronawarnapp.ui.submission.submissiondone
+
+import dagger.assisted.Assisted
+import dagger.assisted.AssistedFactory
+import dagger.assisted.AssistedInject
+import de.rki.coronawarnapp.coronatest.type.CoronaTest
+import de.rki.coronawarnapp.ui.submission.viewmodel.SubmissionNavigationEvents
+import de.rki.coronawarnapp.util.ui.SingleLiveEvent
+import de.rki.coronawarnapp.util.viewmodel.CWAViewModel
+import de.rki.coronawarnapp.util.viewmodel.CWAViewModelFactory
+
+class SubmissionDoneViewModel @AssistedInject constructor(
+    @Assisted val testType: CoronaTest.Type
+
+) : CWAViewModel() {
+    val routeToScreen: SingleLiveEvent<SubmissionNavigationEvents> = SingleLiveEvent()
+
+    fun onFinishButtonClick() {
+        routeToScreen.postValue(SubmissionNavigationEvents.NavigateToMainActivity)
+    }
+
+    @AssistedFactory
+    interface Factory : CWAViewModelFactory<SubmissionDoneViewModel> {
+        fun create(testType: CoronaTest.Type): SubmissionDoneViewModel
+    }
+}
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/symptoms/calendar/SubmissionSymptomCalendarViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/symptoms/calendar/SubmissionSymptomCalendarViewModel.kt
index 935aec8842c0cb099cbd5279fea6baeae78cb432..9d7816702666e20a29c0cfcbdeca2d60a9f62a88 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/symptoms/calendar/SubmissionSymptomCalendarViewModel.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/symptoms/calendar/SubmissionSymptomCalendarViewModel.kt
@@ -117,7 +117,8 @@ class SubmissionSymptomCalendarViewModel @AssistedInject constructor(
                 Timber.i("Hide uploading progress and navigate to HomeFragment")
                 mediatorShowUploadDialog.postValue(false)
                 routeToScreen.postValue(
-                    SubmissionSymptomCalendarFragmentDirections.actionSubmissionSymptomCalendarFragmentToMainFragment()
+                    SubmissionSymptomCalendarFragmentDirections
+                        .actionSubmissionSymptomCalendarFragmentToSubmissionDoneFragment(testType)
                 )
             }
         }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/symptoms/introduction/SubmissionSymptomIntroductionViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/symptoms/introduction/SubmissionSymptomIntroductionViewModel.kt
index 307fc779e1b29e44565b8e5cfb24b67bb8bb32c5..4bacd588ac13a17b0e50c46c20a14feed475dda0 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/symptoms/introduction/SubmissionSymptomIntroductionViewModel.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/symptoms/introduction/SubmissionSymptomIntroductionViewModel.kt
@@ -67,6 +67,11 @@ class SubmissionSymptomIntroductionViewModel @AssistedInject constructor(
                         )
                     }
                     doSubmit()
+
+                    navigation.postValue(
+                        SubmissionSymptomIntroductionFragmentDirections
+                            .actionSubmissionSymptomIntroductionFragmentToSubmissionDoneFragment(testType)
+                    )
                 }
                 Symptoms.Indication.NO_INFORMATION -> {
                     submissionRepository.currentSymptoms.update {
@@ -76,6 +81,11 @@ class SubmissionSymptomIntroductionViewModel @AssistedInject constructor(
                         )
                     }
                     doSubmit()
+
+                    navigation.postValue(
+                        SubmissionSymptomIntroductionFragmentDirections
+                            .actionSubmissionSymptomIntroductionFragmentToSubmissionDoneFragment(testType)
+                    )
                 }
             }
         }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/viewmodel/SubmissionFragmentModule.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/viewmodel/SubmissionFragmentModule.kt
index 93186ab86ac5b3655f3b99668d21d719adbaa0d8..40b436ea56a0bf12eb637bcd3797854b2aa9d07e 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/viewmodel/SubmissionFragmentModule.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/submission/viewmodel/SubmissionFragmentModule.kt
@@ -16,6 +16,8 @@ import de.rki.coronawarnapp.ui.submission.resultavailable.SubmissionTestResultAv
 import de.rki.coronawarnapp.ui.submission.resultavailable.SubmissionTestResultAvailableModule
 import de.rki.coronawarnapp.ui.submission.resultready.SubmissionResultReadyFragment
 import de.rki.coronawarnapp.ui.submission.resultready.SubmissionResultReadyModule
+import de.rki.coronawarnapp.ui.submission.submissiondone.SubmissionDoneFragment
+import de.rki.coronawarnapp.ui.submission.submissiondone.SubmissionDoneModule
 import de.rki.coronawarnapp.ui.submission.symptoms.calendar.SubmissionSymptomCalendarFragment
 import de.rki.coronawarnapp.ui.submission.symptoms.calendar.SubmissionSymptomCalendarModule
 import de.rki.coronawarnapp.ui.submission.symptoms.introduction.SubmissionSymptomIntroductionFragment
@@ -86,6 +88,9 @@ internal abstract class SubmissionFragmentModule {
     @ContributesAndroidInjector(modules = [SubmissionTestResultAvailableModule::class])
     abstract fun submissionTestResultAvailableScreen(): SubmissionTestResultAvailableFragment
 
+    @ContributesAndroidInjector(modules = [SubmissionDoneModule::class])
+    abstract fun submissionDoneScreen(): SubmissionDoneFragment
+
     @ContributesAndroidInjector(modules = [SubmissionTestResultConsentGivenModule::class])
     abstract fun submissionTestResultConsentGivenScreen(): SubmissionTestResultConsentGivenFragment
 
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_done.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_done.xml
index 5265e288aeb2b577b1f2910f5733633e77e5079a..25844017a9edf419fd46c3b30e697558c7e78cab 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_submission_done.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_done.xml
@@ -11,15 +11,14 @@
         android:fillViewport="true"
         tools:context=".ui.submission.fragment.SubmissionDoneFragment">
 
-        <include
-            android:id="@+id/submission_done_header"
-            layout="@layout/include_header"
+        <androidx.appcompat.widget.Toolbar
+            android:id="@+id/toolbar"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            app:icon="@{@drawable/ic_close}"
             app:layout_constraintEnd_toEndOf="parent"
             app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent" />
+            app:layout_constraintTop_toTopOf="parent"
+            app:title="@string/submission_done_title" />
 
         <include
             android:id="@+id/submission_done_content"
@@ -29,7 +28,7 @@
             app:layout_constraintBottom_toBottomOf="@id/guideline_action"
             app:layout_constraintEnd_toEndOf="parent"
             app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toBottomOf="@+id/submission_done_header" />
+            app:layout_constraintTop_toBottomOf="@id/toolbar"/>
 
         <Button
             android:id="@+id/submission_done_button_done"
@@ -41,7 +40,7 @@
             app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintEnd_toEndOf="@id/guideline_end"
             app:layout_constraintStart_toStartOf="@id/guideline_start"
-            app:layout_constraintTop_toBottomOf="@+id/guideline_action" />
+            app:layout_constraintTop_toBottomOf="@id/guideline_action" />
 
         <androidx.constraintlayout.widget.Guideline
             android:id="@+id/guideline_action"
diff --git a/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result_consent_given.xml b/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result_consent_given.xml
index d000dfd81b3f6a4e4c2f52382680e89d979fcf8d..ec8026435bfdd6dcd1480f0b5e06bad91682af00 100644
--- a/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result_consent_given.xml
+++ b/Corona-Warn-App/src/main/res/layout/fragment_submission_test_result_consent_given.xml
@@ -13,10 +13,10 @@
 
     <androidx.constraintlayout.widget.ConstraintLayout
         android:id="@+id/submission_test_result_container"
-        android:contentDescription="@string/submission_test_result_headline"
-        android:accessibilityLiveRegion="assertive"
         android:layout_width="match_parent"
-        android:layout_height="match_parent">
+        android:layout_height="match_parent"
+        android:accessibilityLiveRegion="assertive"
+        android:contentDescription="@string/submission_test_result_headline">
 
         <include
             android:id="@+id/submission_test_result_consent_given_header"
@@ -30,14 +30,15 @@
             app:title="@{@string/submission_test_result_consent_given_heading}" />
 
         <ScrollView
+            android:id="@+id/scroll_view"
             android:layout_width="0dp"
             android:layout_height="0dp"
-            app:layout_constraintEnd_toEndOf="@+id/guideline_end"
-            app:layout_constraintStart_toStartOf="@+id/guideline_start"
+            android:layout_marginBottom="12dp"
             android:fillViewport="true"
-            app:layout_constraintTop_toBottomOf="@+id/submission_test_result_consent_given_header"
-            app:layout_constraintBottom_toTopOf="@+id/include_submission_test_result_consent_given_buttons"
-            app:layout_constraintVertical_bias="1.0">
+            app:layout_constraintBottom_toTopOf="@id/submission_test_result_button_consent_given_continue"
+            app:layout_constraintEnd_toEndOf="@id/guideline_end"
+            app:layout_constraintStart_toStartOf="@id/guideline_start"
+            app:layout_constraintTop_toBottomOf="@id/submission_test_result_consent_given_header">
 
             <androidx.constraintlayout.widget.ConstraintLayout
                 android:layout_width="match_parent"
@@ -65,7 +66,7 @@
                     android:text="@string/submission_test_result_consent_given_subtitle"
                     app:layout_constraintEnd_toEndOf="parent"
                     app:layout_constraintStart_toStartOf="parent"
-                    app:layout_constraintTop_toBottomOf="@+id/submission_test_result_section" />
+                    app:layout_constraintTop_toBottomOf="@id/submission_test_result_section" />
 
                 <TextView
                     android:id="@+id/submission_test_result_consent_given_body"
@@ -77,39 +78,32 @@
                     android:text="@string/submission_test_result_consent_given_body"
                     app:layout_constraintEnd_toEndOf="parent"
                     app:layout_constraintStart_toStartOf="parent"
-                    app:layout_constraintTop_toBottomOf="@+id/submission_test_result_consent_given_subtitle" />
+                    app:layout_constraintTop_toBottomOf="@id/submission_test_result_consent_given_subtitle" />
             </androidx.constraintlayout.widget.ConstraintLayout>
         </ScrollView>
 
-        <androidx.constraintlayout.widget.Barrier
-            android:id="@+id/include_submission_test_result_consent_given_buttons"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            app:barrierAllowsGoneWidgets="false"
-            app:barrierDirection="top"
-            app:constraint_referenced_ids="submission_test_result_button_consent_given_continue" />
-
         <Button
             android:id="@+id/submission_test_result_button_consent_given_continue"
             style="@style/buttonPrimary"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
+            android:layout_marginTop="24dp"
+            android:layout_marginBottom="18dp"
             android:text="@string/submission_test_result_positive_continue_button_with_symptoms"
-            app:layout_constraintBottom_toTopOf="@+id/submission_test_result_button__consent_given_continue_without_symptoms"
-            app:layout_constraintEnd_toStartOf="@+id/guideline_end"
-            app:layout_constraintStart_toStartOf="@id/guideline_start"
-            app:layout_constraintTop_toBottomOf="@+id/guideline_action_large" />
+            app:layout_constraintBottom_toTopOf="@id/submission_test_result_button_consent_given_continue_without_symptoms"
+            app:layout_constraintEnd_toStartOf="@id/guideline_end"
+            app:layout_constraintStart_toStartOf="@id/guideline_start" />
 
         <Button
             android:id="@+id/submission_test_result_button_consent_given_continue_without_symptoms"
             style="@style/buttonPrimary"
             android:layout_width="0dp"
             android:layout_height="wrap_content"
+            android:layout_marginBottom="18dp"
             android:text="@string/submission_test_result_consent_given_breakup_button"
             app:layout_constraintBottom_toBottomOf="parent"
-            app:layout_constraintEnd_toStartOf="@+id/guideline_end"
-            app:layout_constraintStart_toStartOf="@id/guideline_start"
-            app:layout_constraintTop_toBottomOf="@+id/submission_test_result_button_consent_given_continue" />
+            app:layout_constraintEnd_toStartOf="@id/guideline_end"
+            app:layout_constraintStart_toStartOf="@id/guideline_start" />
 
         <include layout="@layout/merge_guidelines_side" />
 
diff --git a/Corona-Warn-App/src/main/res/layout/include_submission_done_content.xml b/Corona-Warn-App/src/main/res/layout/include_submission_done_content.xml
index e37bf7a9566126cd425bf08e256483529d9f45fa..62d33f58f92e99de14b143adfd3eddace2f9a8ce 100644
--- a/Corona-Warn-App/src/main/res/layout/include_submission_done_content.xml
+++ b/Corona-Warn-App/src/main/res/layout/include_submission_done_content.xml
@@ -68,8 +68,8 @@
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_marginTop="@dimen/spacing_normal"
-            app:body="@{@string/submission_done_share_keys}"
-            app:icon="@{@drawable/ic_share_keys}"
+            app:body="@{@string/submission_done_isolate}"
+            app:icon="@{@drawable/ic_risk_details_home}"
             app:layout_constraintEnd_toEndOf="@id/guideline_end"
             app:layout_constraintStart_toStartOf="@id/guideline_start"
             app:layout_constraintTop_toBottomOf="@id/submission_done_contagious" />
diff --git a/Corona-Warn-App/src/main/res/navigation/nav_graph.xml b/Corona-Warn-App/src/main/res/navigation/nav_graph.xml
index b25a75044a413fc1b9a8421b28ecc62ccf797ab7..bfa756731ac7755907337488500703bb9deb018a 100644
--- a/Corona-Warn-App/src/main/res/navigation/nav_graph.xml
+++ b/Corona-Warn-App/src/main/res/navigation/nav_graph.xml
@@ -436,6 +436,11 @@
             app:destination="@id/mainFragment"
             app:popUpTo="@id/nav_graph"
             app:popUpToInclusive="true" />
+        <action
+            android:id="@+id/action_submissionSymptomIntroductionFragment_to_submissionDoneFragment"
+            app:destination="@id/submissionDoneFragment"
+            app:popUpTo="@id/mainFragment"
+            app:popUpToInclusive="false"/>
     </fragment>
     <fragment
         android:id="@+id/submissionSymptomCalendarFragment"
@@ -458,6 +463,11 @@
             app:destination="@id/mainFragment"
             app:popUpTo="@id/nav_graph"
             app:popUpToInclusive="true" />
+        <action
+            android:id="@+id/action_submissionSymptomCalendarFragment_to_submissionDoneFragment"
+            app:destination="@id/submissionDoneFragment"
+            app:popUpTo="@id/mainFragment"
+            app:popUpToInclusive="false"/>
     </fragment>
     <fragment
         android:id="@+id/submissionConsentFragment"
@@ -764,4 +774,18 @@
             android:name="testType"
             app:argType="de.rki.coronawarnapp.coronatest.type.CoronaTest$Type" />
     </fragment>
+    <fragment
+        android:id="@+id/submissionDoneFragment"
+        android:name="de.rki.coronawarnapp.ui.submission.submissiondone.SubmissionDoneFragment"
+        android:label="SubmissionDoneFragment"
+        tools:layout="@layout/fragment_submission_done">
+        <action
+            android:id="@+id/action_submissionDoneFragment_to_mainFragment"
+            app:destination="@id/mainFragment"
+            app:popUpTo="@id/nav_graph"
+            app:popUpToInclusive="true"/>
+        <argument
+            android:name="testType"
+            app:argType="de.rki.coronawarnapp.coronatest.type.CoronaTest$Type"/>
+    </fragment>
 </navigation>