diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/ContentModerationTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/ContentModerationTest.php
index dd21529b76ebe726633f99167fc73dae6d862c43..e2e65b294d7a11fb61f49210d87bd2d54c8add2b 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/ContentModerationTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/ContentModerationTest.php
@@ -38,7 +38,7 @@ class ContentModerationTest extends WebDriverTestBase {
   /**
    * {@inheritdoc}
    */
-  protected $defaultTheme = 'classy';
+  protected $defaultTheme = 'stark';
 
   /**
    * User with the 'administer media' permission.
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/EntityReferenceWidgetTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/EntityReferenceWidgetTest.php
index e7d5423fd3f0896c63b137daaff16c81d2883aca..10375a9c0b584c891dfe6a6b53c2298100737932 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/EntityReferenceWidgetTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/EntityReferenceWidgetTest.php
@@ -19,6 +19,19 @@ class EntityReferenceWidgetTest extends MediaLibraryTestBase {
    */
   protected static $modules = ['field_ui'];
 
+  /**
+   * The theme to install as the default for testing.
+   *
+   * @var string
+   *
+   * @todo This test's reliance on classes in order to assert the order of
+   *   field items makes Stark a bad fit as a base theme. Change the default
+   *   theme to Starterkit once it is stable.
+   *
+   *  @see https://www.drupal.org/project/drupal/issues/3281695
+   */
+  protected $defaultTheme = 'classy';
+
   /**
    * Test media items.
    *
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/FieldUiIntegrationTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/FieldUiIntegrationTest.php
index 68220b48b8bd5fadb48034186ee09d664a0cc25f..72bd066fdda4531cc6064f71d07ff14f9c02f914 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/FieldUiIntegrationTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/FieldUiIntegrationTest.php
@@ -14,6 +14,11 @@ class FieldUiIntegrationTest extends MediaLibraryTestBase {
    */
   protected static $modules = ['field_ui'];
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * {@inheritdoc}
    */
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/MediaLibraryTestBase.php b/core/modules/media_library/tests/src/FunctionalJavascript/MediaLibraryTestBase.php
index 8ec4b3b5a9cb754760de0718a632aeca78497c64..1b63a63c74cb3da935dab9b8148de40aa2eb8b11 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/MediaLibraryTestBase.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/MediaLibraryTestBase.php
@@ -18,7 +18,7 @@ abstract class MediaLibraryTestBase extends WebDriverTestBase {
   /**
    * {@inheritdoc}
    */
-  protected $defaultTheme = 'classy';
+  protected $defaultTheme = 'stark';
 
   /**
    * Create media items.
@@ -333,7 +333,6 @@ protected function assertMediaAdded($index = 0) {
     $assert_session->elementNotExists('css', '[data-drupal-selector$="preview"]', $fields);
     $assert_session->buttonNotExists('Remove', $fields);
     $assert_session->elementNotExists('css', '[data-drupal-selector$="filename"]', $fields);
-    $assert_session->elementNotExists('css', '.file-size', $fields);
   }
 
   /**
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/MediaOverviewTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/MediaOverviewTest.php
index e3eaab22e18e517f2991dadbf862a8616032e079..88e6cecb18c56e7e2973daf04f2fa7d26ebc1d9a 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/MediaOverviewTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/MediaOverviewTest.php
@@ -14,6 +14,11 @@ class MediaOverviewTest extends MediaLibraryTestBase {
    */
   protected static $modules = ['block'];
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * {@inheritdoc}
    */
@@ -64,7 +69,7 @@ public function testAdministrationPage() {
     $assert_session->linkExists('Table');
 
     // We should see the table view and a link to add media.
-    $assert_session->elementExists('css', '.view-media .views-table');
+    $assert_session->elementExists('css', '[data-drupal-selector="views-form-media-media-page-list"] table');
     $assert_session->linkExists('Add media');
 
     // Go to the grid display for the rest of the test.
@@ -78,8 +83,12 @@ public function testAdministrationPage() {
     $assert_session->pageTextContains('Dog');
     $assert_session->pageTextContains('Turtle');
 
-    // Verify that the media name does not contain a link.
-    $assert_session->elementNotExists('css', '.media-library-item__name a');
+    // Verify that the media name does not contain a link. The selector is
+    // tricky, so start by asserting ".js-media-library-item-preview + div"
+    // can select a div containing a media name.
+    $assert_session->elementExists('css', '.js-media-library-item-preview + div:contains("Dog")');
+    $assert_session->elementExists('css', '.js-media-library-item-preview + div:contains("Turtle")');
+    $assert_session->elementNotExists('css', '.js-media-library-item-preview + div a');
     // Verify that there are links to edit and delete media items.
     $assert_session->linkExists('Edit Dog');
     $assert_session->linkExists('Delete Turtle');
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/TranslationsTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/TranslationsTest.php
index 0aa581b42feb60e6807f8250221c79b31883b848..4b14a2345f50bf462e97f05eab23955317dbac7d 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/TranslationsTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/TranslationsTest.php
@@ -37,7 +37,7 @@ class TranslationsTest extends WebDriverTestBase {
   /**
    * {@inheritdoc}
    */
-  protected $defaultTheme = 'classy';
+  protected $defaultTheme = 'stark';
 
   /**
    * {@inheritdoc}
@@ -127,7 +127,7 @@ public function testMediaLibraryTranslations() {
     // regardless of the interface language.
     $this->drupalGet('nl/admin/content/media-grid');
     $assert_session->elementsCount('css', '.js-media-library-item', 6);
-    $media_items = $page->findAll('css', '.media-library-item__name');
+    $media_items = $page->findAll('css', '.js-media-library-item-preview + div');
     $media_names = [];
     foreach ($media_items as $media_item) {
       $media_names[] = $media_item->getText();
@@ -138,7 +138,7 @@ public function testMediaLibraryTranslations() {
 
     $this->drupalGet('es/admin/content/media-grid');
     $assert_session->elementsCount('css', '.js-media-library-item', 6);
-    $media_items = $page->findAll('css', '.media-library-item__name');
+    $media_items = $page->findAll('css', '.js-media-library-item-preview + div');
     $media_names = [];
     foreach ($media_items as $media_item) {
       $media_names[] = $media_item->getText();
@@ -153,7 +153,7 @@ public function testMediaLibraryTranslations() {
     $assert_session->elementExists('css', '.js-media-library-open-button[name^="field_media"]')->click();
     $assert_session->waitForText('Add or select media');
     $assert_session->elementsCount('css', '.js-media-library-item', 4);
-    $media_items = $page->findAll('css', '.media-library-item__name');
+    $media_items = $page->findAll('css', '.js-media-library-item-preview + div');
     $media_names = [];
     foreach ($media_items as $media_item) {
       $media_names[] = $media_item->getText();
@@ -166,7 +166,7 @@ public function testMediaLibraryTranslations() {
     $assert_session->elementExists('css', '.js-media-library-open-button[name^="field_media"]')->click();
     $assert_session->waitForText('Add or select media');
     $assert_session->elementsCount('css', '.js-media-library-item', 4);
-    $media_items = $page->findAll('css', '.media-library-item__name');
+    $media_items = $page->findAll('css', '.js-media-library-item-preview + div');
     $media_names = [];
     foreach ($media_items as $media_item) {
       $media_names[] = $media_item->getText();
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/ViewsUiIntegrationTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/ViewsUiIntegrationTest.php
index 0e2eab677c04c2bb32e672daeb1f0b35ca357b9c..f66795fb9fb3d68c1e45fbbf4189fc73fcf0d6ae 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/ViewsUiIntegrationTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/ViewsUiIntegrationTest.php
@@ -14,6 +14,11 @@ class ViewsUiIntegrationTest extends MediaLibraryTestBase {
    */
   protected static $modules = ['views_ui'];
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * {@inheritdoc}
    */
@@ -51,8 +56,8 @@ public function testViewsAdmin() {
     $this->waitForElementsCount('css', '.js-media-library-item', 8);
 
     // Assert that filtering works in live preview.
-    $page->find('css', '.js-media-library-view .view-filters')->fillField('name', 'snake');
-    $page->find('css', '.js-media-library-view .view-filters')->pressButton('Apply filters');
+    $page->find('css', '.js-media-library-view')->fillField('name', 'snake');
+    $page->find('css', '.js-media-library-view')->pressButton('Apply filters');
     $this->waitForElementsCount('css', '.js-media-library-item', 1);
 
     // Test the same routine but in the view for the table widget.
@@ -60,8 +65,8 @@ public function testViewsAdmin() {
     $this->waitForElementsCount('css', '.js-media-library-item', 8);
 
     // Assert that filtering works in live preview.
-    $page->find('css', '.js-media-library-view .view-filters')->fillField('name', 'snake');
-    $page->find('css', '.js-media-library-view .view-filters')->pressButton('Apply filters');
+    $page->find('css', '.js-media-library-view')->fillField('name', 'snake');
+    $page->find('css', '.js-media-library-view')->pressButton('Apply filters');
     $this->waitForElementsCount('css', '.js-media-library-item', 1);
 
     // We cannot test clicking the 'Insert selected' button in either view
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetAccessTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetAccessTest.php
index 0abb57271d6dafb32b0fcb39b92e772e0f36e67b..c7a96e635baa5c5b0bc9757edd5957af66201cb3 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetAccessTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetAccessTest.php
@@ -14,6 +14,11 @@
  */
 class WidgetAccessTest extends MediaLibraryTestBase {
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * Tests that the widget access works as expected.
    */
@@ -80,11 +85,11 @@ public function testWidgetAccess() {
       'view media',
     ]);
     $this->drupalGet('admin/content/media-widget', $url_options);
-    $assert_session->elementExists('css', '.view-media-library');
+    $assert_session->elementExists('css', '.js-media-library-view');
     $this->drupalGet('admin/content/media-widget-table', $url_options);
-    $assert_session->elementExists('css', '.view-media-library');
+    $assert_session->elementExists('css', '.js-media-library-view');
     $this->drupalGet('media-library', $url_options);
-    $assert_session->elementExists('css', '.view-media-library');
+    $assert_session->elementExists('css', '.js-media-library-view');
     // Assert the user does not have access to the media add form if the user
     // does not have the 'create media' permission.
     $assert_session->fieldNotExists('files[upload][]');
@@ -104,7 +109,7 @@ public function testWidgetAccess() {
       'create media',
     ]);
     $this->drupalGet('media-library', $url_options);
-    $assert_session->elementExists('css', '.view-media-library');
+    $assert_session->elementExists('css', '.js-media-library-view');
     $assert_session->fieldExists('Add files');
 
     // Assert the media library can not be accessed if the required state
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetAnonymousTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetAnonymousTest.php
index 1a6ab1925b679c38d65c2f05f542953182cdfce2..73442e0e21d74f463f73822b5178e9170a61fae3 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetAnonymousTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetAnonymousTest.php
@@ -12,6 +12,11 @@
  */
 class WidgetAnonymousTest extends MediaLibraryTestBase {
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * {@inheritdoc}
    */
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOEmbedTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOEmbedTest.php
index 945b63f9ec8d9d23b08e3272d9da7d507ac7a965..5a793631988789b01bd5033c7f2ecfbfd3bf65de 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOEmbedTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOEmbedTest.php
@@ -20,6 +20,11 @@ class WidgetOEmbedTest extends MediaLibraryTestBase {
    */
   protected static $modules = ['media_test_oembed'];
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * {@inheritdoc}
    */
@@ -77,6 +82,10 @@ public function testWidgetOEmbed() {
     // consistently match their label's "for" attribute.
     $assert_session->assertWaitOnAjaxRequest();
     $this->waitForText('The media item has been created but has not yet been saved.');
+    // There is no other selected media and this is not the advanced ui.
+    // Assert that the Additional selected media element does not appear.
+    $assert_session->pageTextNotContains('Additional selected media');
+    $assert_session->elementNotExists('css', '[data-drupal-selector="edit-selection"]');
     // Assert the name field contains the remote video title.
     $assert_session->fieldValueEquals('Name', $youtube_title);
     $this->pressSaveButton();
@@ -137,7 +146,9 @@ public function testWidgetOEmbed() {
     $assert_session->assertWaitOnAjaxRequest();
     $this->waitForText('The media item has been created but has not yet been saved.');
     $page->fillField('Name', 'Custom video title');
-    $assert_session->elementNotExists('css', '.media-library-add-form__selected-media');
+    // The non-advanced ui should not show the Additional selected media.
+    $assert_session->pageTextNotContains('Additional selected media');
+    $assert_session->elementNotExists('css', '[data-drupal-selector="edit-selection"]');
     $this->pressSaveButton();
 
     // Load the created media item.
@@ -258,6 +269,9 @@ public function testWidgetOEmbedAdvancedUi() {
     // consistently match their label's "for" attribute.
     $assert_session->assertWaitOnAjaxRequest();
     $this->waitForText('The media item has been created but has not yet been saved.');
+    // Assert that Additional selected media does not appear.
+    $assert_session->pageTextNotContains('Additional selected media');
+    $assert_session->elementNotExists('css', '[data-drupal-selector="edit-selection"]');
     // Assert the name field contains the remote video title.
     $assert_session->fieldValueEquals('Name', $youtube_title);
     $this->saveAnd('select');
@@ -317,6 +331,9 @@ public function testWidgetOEmbedAdvancedUi() {
     // consistently match their label's "for" attribute.
     $assert_session->assertWaitOnAjaxRequest();
     $this->waitForText('The media item has been created but has not yet been saved.');
+    // The advanced ui should show the Additional selected media.
+    $assert_session->pageTextContains('Additional selected media');
+    $assert_session->elementExists('css', '[data-drupal-selector="edit-selection"]');
     $page->fillField('Name', 'Custom video title');
     $assert_session->checkboxChecked("Select $youtube_title", $this->getSelectionArea());
     $this->saveAnd('select');
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetUploadTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetUploadTest.php
index bb12a63ef21baa107914e5d4884f28544f3c83f8..bcb20e93c2a16671074cf5dff929b1c16317f6fb 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetUploadTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetUploadTest.php
@@ -17,6 +17,11 @@ class WidgetUploadTest extends MediaLibraryTestBase {
 
   use TestFileCreationTrait;
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * Tests that uploads in the Media library's widget works as expected.
    */
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetViewsTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetViewsTest.php
index 838e0d33272c1b20789fc20dbb000b61456b1d10..82bde406b2a8a948a3c2fbdcd348e82102c25a41 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetViewsTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetViewsTest.php
@@ -9,6 +9,11 @@
  */
 class WidgetViewsTest extends MediaLibraryTestBase {
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * {@inheritdoc}
    */
@@ -79,13 +84,18 @@ public function testWidgetViews() {
     $assert_session->buttonNotExists('Apply filters', $button_pane);
 
     // Assert the pager works as expected.
-    $assert_session->elementTextContains('css', '.js-media-library-view .pager__item.is-active', 'Page 1');
+    // An active pager item is not linked and contains "Page #" as text.
+    $assert_session->elementTextContains('css', '.js-media-library-view .js-pager__items > li:nth-of-type(1)', 'Page 1');
+    $assert_session->elementNotExists('css', '.js-media-library-view .js-pager__items > li:nth-of-type(1) a');
+    $assert_session->elementExists('css', '.js-media-library-view .js-pager__items > li:nth-of-type(2) a');
     $this->assertCount(24, $this->getCheckboxes());
     $page->clickLink('Next page');
-    $this->waitForElementTextContains('.js-media-library-view .pager__item.is-active', 'Page 2');
+    $this->waitForElementTextContains('.js-media-library-view .js-pager__items > li:nth-of-type(2)', 'Page 2');
+    $assert_session->elementExists('css', '.js-media-library-view .js-pager__items > li:nth-of-type(1) a');
+    $assert_session->elementNotExists('css', '.js-media-library-view .js-pager__items > li:nth-of-type(2) a');
     $this->assertCount(1, $this->getCheckboxes());
     $page->clickLink('Previous page');
-    $this->waitForElementTextContains('.js-media-library-view .pager__item.is-active', 'Page 1');
+    $this->waitForElementTextContains('.js-media-library-view .js-pager__items > li:nth-of-type(1)', 'Page 1');
     $this->assertCount(24, $this->getCheckboxes());
 
     $this->switchToMediaLibraryTable();
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetWithoutTypesTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetWithoutTypesTest.php
index c43f22c7cdb1f492908fcd531cb2be942d33d120..616455db03ed98f97424e7db16ff2887d3f6ba8e 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetWithoutTypesTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetWithoutTypesTest.php
@@ -17,6 +17,11 @@ class WidgetWithoutTypesTest extends MediaLibraryTestBase {
    */
   protected static $modules = ['field_ui'];
 
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
   /**
    * Tests that the widget works as expected when media types are deleted.
    */