diff --git a/core/tests/Drupal/Tests/Core/Extension/ThemeHandlerTest.php b/core/tests/Drupal/Tests/Core/Extension/ThemeHandlerTest.php
index 3d89abe..43985b2 100644
--- a/core/tests/Drupal/Tests/Core/Extension/ThemeHandlerTest.php
+++ b/core/tests/Drupal/Tests/Core/Extension/ThemeHandlerTest.php
@@ -174,8 +174,9 @@ public function testRebuildThemeData() {
 
     // Ensure that the css paths are set with the proper prefix.
     $this->assertEquals(array(
-      'screen' => array(
+      'all' => array(
         'css/base/elements.css' => DRUPAL_ROOT . '/core/themes/seven/css/base/elements.css',
+        'css/base/print.css' => DRUPAL_ROOT . '/core/themes/seven/css/base/print.css',
         'css/components/admin-list.css' => DRUPAL_ROOT . '/core/themes/seven/css/components/admin-list.css',
         'css/components/admin-options.css' => DRUPAL_ROOT . '/core/themes/seven/css/components/admin-options.css',
         'css/components/admin-panel.css' => DRUPAL_ROOT . '/core/themes/seven/css/components/admin-panel.css',
diff --git a/core/themes/seven/css/base/print.css b/core/themes/seven/css/base/print.css
new file mode 100644
index 0000000..87ab06e
--- /dev/null
+++ b/core/themes/seven/css/base/print.css
@@ -0,0 +1,83 @@
+@media print {
+  * {
+    background-color: transparent !important;
+    color: #000 !important; /* Black prints faster: h5bp.com/s */
+    box-shadow: none !important;
+    text-shadow: none !important;
+  }
+  body {
+    padding-top: 0;
+  }
+  a,
+  a:visited {
+    text-decoration: underline;
+  }
+  pre,
+  blockquote {
+    border: 1px solid #999;
+    page-break-inside: avoid;
+  }
+  thead {
+    display: table-header-group; /* h5bp.com/t */
+  }
+  tr,
+  img {
+    page-break-inside: avoid;
+  }
+  img {
+    max-width: 100% !important;
+  }
+  p,
+  h2,
+  h3 {
+    orphans: 3;
+    widows: 3;
+  }
+  h2,
+  h3 {
+    page-break-after: avoid;
+  }
+  a,
+  .link {
+    color: #000;
+    text-decoration: underline;
+  }
+  .button, .button--primary {
+    background: none !important;
+  }
+  #toolbar-administration {
+    display: none !important;
+  }
+  .messages {
+    border-width: 1px;
+    border-left-color: #999;
+  }
+  .is-collapse-enabled .tabs {
+    max-height: 999em;
+  }
+  .is-horizontal .tabs__tab {
+    margin: 0 4px !important;
+    border-radius: 4px 4px 0 0 !important;
+  }
+  .dropbutton-multiple .dropbutton .secondary-action {
+    display: block;
+  }
+  .js .dropbutton-widget,
+  .js td .dropbutton-widget /* Splitbuttons */ {
+    position: relative;
+  }
+  .js .dropbutton .dropbutton-toggle {
+    display: none;
+  }
+  .js .dropbutton-multiple .dropbutton-widget {
+    background: none;
+    border-radius: 4px;
+  }
+  input.form-autocomplete, input.form-text, input.form-tel, input.form-email, input.form-url, input.form-search, input.form-number, input.form-color, input.form-file, textarea.form-textarea, select.form-select {
+    -webkit-appearance: none;
+    border-width: 1px;
+  }
+  .admin-dblog .icon {
+    -webkit-print-color-adjust:exact;
+  }
+}
diff --git a/core/themes/seven/seven.info.yml b/core/themes/seven/seven.info.yml
index 2357e5e..ef1a1fb 100644
--- a/core/themes/seven/seven.info.yml
+++ b/core/themes/seven/seven.info.yml
@@ -8,8 +8,9 @@ package: Core
 version: VERSION
 core: 8.x
 stylesheets:
-  screen:
+  all:
     - css/base/elements.css
+    - css/base/print.css
     - css/components/admin-list.css
     - css/components/admin-options.css
     - css/components/admin-panel.css
