diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index 47c99d9..76f5cba 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -3107,6 +3107,125 @@ function template_process_maintenance_page(&$variables) {
 }
 
 /**
+ * Process variables for install-page.tpl.php.
+ *
+ * The variables array generated here is a mirror of
+ * template_preprocess_page(). This preprocessor will run its course when
+ * theme_maintenance_page() is invoked. An alternate template file of
+ * maintenance-page--offline.tpl.php can be used when the database is offline to
+ * hide errors and completely replace the content.
+ *
+ * The $variables array contains the following arguments:
+ * - $content
+ *
+ * @see install-page.tpl.php
+ */
+function template_preprocess_install_page(&$variables) {
+  global $theme;
+  $language_interface = language(LANGUAGE_TYPE_INTERFACE);
+  // Retrieve the theme data to list all available regions.
+  $theme_data = list_themes();
+  $regions = $theme_data[$theme]->info['regions'];
+
+  // Add favicon
+  if (theme_get_setting('toggle_favicon')) {
+    $favicon = theme_get_setting('favicon');
+    $type = theme_get_setting('favicon_mimetype');
+    drupal_add_html_head_link(array('rel' => 'shortcut icon', 'href' => drupal_strip_dangerous_protocols($favicon), 'type' => $type));
+  }
+
+  // Get all region content set with drupal_add_region_content().
+  foreach (array_keys($regions) as $region) {
+    // Assign region to a region variable.
+    $region_content = drupal_get_region_content($region);
+    isset($variables[$region]) ? $variables[$region] .= $region_content : $variables[$region] = $region_content;
+  }
+
+  // Setup layout variable.
+  $variables['layout'] = 'none';
+  if (!empty($variables['sidebar_first'])) {
+    $variables['layout'] = 'first';
+  }
+  if (!empty($variables['sidebar_second'])) {
+    $variables['layout'] = ($variables['layout'] == 'first') ? 'both' : 'second';
+  }
+
+  $site_config = config('system.site');
+  $site_name = $site_config->get('name');
+  $site_slogan = $site_config->get('slogan');
+
+  // Construct page title
+  if (drupal_get_title()) {
+    $head_title = array(
+      'title' => strip_tags(drupal_get_title()),
+      'name' => check_plain($site_name),
+    );
+  }
+  else {
+    $head_title = array('name' => check_plain($site_name));
+    if ($site_slogan) {
+      $head_title['slogan'] = strip_tags(filter_xss_admin($site_slogan));
+    }
+  }
+
+  $variables['head_title_array']  = $head_title;
+  $variables['head_title']        = implode(' | ', $head_title);
+  $variables['base_path']         = base_path();
+  $variables['front_page']        = url();
+  $variables['breadcrumb']        = '';
+  $variables['feed_icons']        = '';
+  $variables['help']              = '';
+  $variables['language']          = $language_interface;
+  $variables['language']->dir     = $language_interface->direction ? 'rtl' : 'ltr';
+  $variables['logo']              = theme_get_setting('logo');
+  $variables['messages']          = $variables['show_messages'] ? theme('status_messages') : '';
+  $variables['main_menu']         = array();
+  $variables['secondary_menu']    = array();
+  $variables['site_name']         = (theme_get_setting('toggle_name') ? check_plain($site_name) : '');
+  $variables['site_slogan']       = (theme_get_setting('toggle_slogan') ? filter_xss_admin($site_slogan) : '');
+  $variables['tabs']              = '';
+  $variables['title']             = drupal_get_title();
+
+  // Compile a list of classes that are going to be applied to the body element.
+  $variables['attributes']['class'][] = 'in-maintenance';
+  if (isset($variables['db_is_active']) && !$variables['db_is_active']) {
+    $variables['attributes']['class'][] = 'db-offline';
+  }
+  if ($variables['layout'] == 'both') {
+    $variables['attributes']['class'][] = 'two-sidebars';
+  }
+  elseif ($variables['layout'] == 'none') {
+    $variables['attributes']['class'][] = 'no-sidebars';
+  }
+  else {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-' . $variables['layout'];
+  }
+
+  // Dead databases will show error messages so supplying this template will
+  // allow themers to override the page and the content completely.
+  if (isset($variables['db_is_active']) && !$variables['db_is_active']) {
+    $variables['theme_hook_suggestion'] = 'maintenance_page__offline';
+  }
+}
+
+/**
+ * Theme process function for theme_maintenance_field().
+ *
+ * The variables array generated here is a mirror of template_process_html().
+ * This processor will run its course when theme_maintenance_page() is invoked.
+ *
+ * @see maintenance-page.tpl.php
+ * @see template_process_html()
+ */
+function template_process_install_page(&$variables) {
+  $variables['head']    = drupal_get_html_head();
+  $variables['css']     = drupal_add_css();
+  $variables['styles']  = drupal_get_css();
+  $variables['scripts'] = drupal_get_js();
+}
+
+/**
  * Preprocess variables for region.tpl.php
  *
  * Prepares the values passed to the theme_region function to be passed into a
@@ -3216,7 +3335,8 @@ function drupal_common_theme() {
       'template' => 'maintenance-page',
     ),
     'install_page' => array(
-      'variables' => array('content' => NULL),
+      'variables' => array('content' => NULL, 'show_messages' => TRUE),
+      'template' => 'install-page',
     ),
     'task_list' => array(
       'variables' => array('items' => NULL, 'active' => NULL),
diff --git a/core/includes/theme.maintenance.inc b/core/includes/theme.maintenance.inc
index 578d354..489be60 100644
--- a/core/includes/theme.maintenance.inc
+++ b/core/includes/theme.maintenance.inc
@@ -148,7 +148,6 @@ function theme_task_list($variables) {
 /**
  * Returns HTML for the installation page.
  *
- * Note: this function is not themeable.
  *
  * @param $variables
  *   An associative array containing:
@@ -156,7 +155,7 @@ function theme_task_list($variables) {
  */
 function theme_install_page($variables) {
   drupal_add_http_header('Content-Type', 'text/html; charset=utf-8');
-  return theme('maintenance_page', $variables);
+  drupal_add_css('/core/themes/seven/install.css');
 }
 
 /**
diff --git a/core/modules/system/templates/install-page.tpl.php b/core/modules/system/templates/install-page.tpl.php
new file mode 100644
index 0000000..b609975d
--- /dev/null
+++ b/core/modules/system/templates/install-page.tpl.php
@@ -0,0 +1,88 @@
+<?php
+
+/**
+ * @file
+ * Default theme implementation to display a single Drupal page while offline.
+ *
+ * All the available variables are mirrored in html.tpl.php and page.tpl.php.
+ * Some may be blank but they are provided for consistency.
+ *
+ * @see template_preprocess()
+ * @see template_preprocess_maintenance_page()
+ *
+ * @ingroup themeable
+ */
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php print $language->langcode ?>" lang="<?php print $language->langcode ?>" dir="<?php print $language->dir ?>">
+
+<head>
+  <title><?php print $head_title; ?></title>
+  <?php print $head; ?>
+  <?php print $styles; ?>
+  <?php print $scripts; ?>
+</head>
+<body class="<?php print $attributes['class']; ?>">
+  <div id="page">
+    <div id="header">
+      <div id="logo-title">
+        <div id="name-and-slogan">
+          <?php if (!empty($site_name)): ?>
+            <h1 id="site-name">
+              <a href="<?php print $base_path ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+            </h1>
+          <?php endif; ?>
+
+          <?php if (!empty($site_slogan)): ?>
+            <div id="site-slogan"><?php print $site_slogan; ?></div>
+          <?php endif; ?>
+        </div> <!-- /name-and-slogan -->
+      </div> <!-- /logo-title -->
+
+      <?php if (!empty($header)): ?>
+        <div id="header-region">
+          <?php print $header; ?>
+        </div>
+      <?php endif; ?>
+
+    </div> <!-- /header -->
+
+    <div id="container" class="clearfix">
+
+      <?php if (!empty($sidebar_first)): ?>
+        <div id="sidebar-first" class="column sidebar">
+          <?php print $sidebar_first; ?>
+        </div> <!-- /sidebar-first -->
+      <?php endif; ?>
+
+      <div id="main" class="column"><div id="main-squeeze">
+
+        <div id="content">
+          <?php if (!empty($title)): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
+          <?php if (!empty($messages)): print $messages; endif; ?>
+          <div id="content-content" class="clearfix">
+            <?php print $content; ?>
+          </div> <!-- /content-content -->
+        </div> <!-- /content -->
+
+      </div></div> <!-- /main-squeeze /main -->
+
+      <?php if (!empty($sidebar_second)): ?>
+        <div id="sidebar-second" class="column sidebar">
+          <?php print $sidebar_second; ?>
+        </div> <!-- /sidebar-second -->
+      <?php endif; ?>
+
+    </div> <!-- /container -->
+
+    <div id="footer-wrapper">
+      <div id="footer">
+        <?php if (!empty($footer)): print $footer; endif; ?>
+      </div> <!-- /footer -->
+    </div> <!-- /footer-wrapper -->
+
+  </div> <!-- /page -->
+
+</body>
+</html>
diff --git a/core/themes/seven/images/gradient.png b/core/themes/seven/images/gradient.png
new file mode 100644
index 0000000..0704e92
--- /dev/null
+++ b/core/themes/seven/images/gradient.png
@@ -0,0 +1,6 @@
+PNG
+
+   IHDR        28/   sRGB    bKGD      	pHYs        tIME
+2:6  IDATX10CpfN`Ftcރ4->""+G#\cV`bB̿Yz>+_06CjL>Sg'$	/3
+̗M9K!ِLp6gcHp/E/[(U/V*ϾZ.̬/B/h4Fh4F? iє.(L'͛Ȥak \߱;z_H
+oPƓHiZ7d"Vf9| \t	?4    IENDB`
\ No newline at end of file
diff --git a/core/themes/seven/images/install-logo.png b/core/themes/seven/images/install-logo.png
new file mode 100644
index 0000000..055017c
--- /dev/null
+++ b/core/themes/seven/images/install-logo.png
@@ -0,0 +1,63 @@
+PNG
+
+   IHDR      5      iCCPICC Profile  X	Yy8U߻_pdv!<g+xeh"D"JDET4$]}<{yg] xPQl DbFwO
+~ [ehoo dF]'@ }"  / v>|b:Tl`߸rF` R  ga!c`1
+z~T x} G.""r@,R}J,	6	
+&u	'1:NsC`iG^cGc1<pc\!a|h'7bv7B';BGʝWllJ7gSUnѮEoCZ퟾&fj@nlPg4[y1V
+[DӰ,ڙa1h.6ܐgSM6lm.f
+  `ɟ'iP"A8ֿ_SطgQ싿2X 	$ 5/FOx`41[~{8<5S`?C2:	hZc)g3I/{6t3o[}GPd*Њ /baEE8R4ӂ/CG-[\G/myfhqC>yq`?"bbXƑQ!\-(4?9*X{78 ,:ZSeA* -., W& K wbql t(Q@ S`3 ^pq<RA&8
+p\ GxF$ W aF"#
+!x >HBCbH:r9!gr@"2|FVQhŁ@IQ(C5ډJBerQrT	ՁzE}@-	ͅFˣ5h;':MGrt='Q,zÐ1<ىI`00M.fˌbXwl6-Vab|~p\8IP.\w7[<xY.O3'u$
+'!<wklZvykAKp&R	zB75aIiS^BLwƘVD1q;1K&" .233K00{2020faBfQ`dgR22*jŚZzuM͘ʖVvmmD&)Hy]4;]ݔݟ=68M%Jr7y!aqCyNv͜	Ŝ휣\h.	.Kp<FAM7l:~en>n lgܫ<S0#<<ü^^xӼݼ|||~|||/Q2+N
+4!8#D
+)I1S
+)]ya~aX3D$E\DDDE	bBb[vՊg?!+,!)&%,1--i)$Y+ZYJ_jTSit)G2(5`b~Yl)rX-r4r!y||BB^şJjJJJٕӔ[?Ȩ<UeV5SݣڢYvsӛնeuPP׫hihhirhkhقbeϖ-+ZZ1ZZôkOHTRuQ|FoDJ)э-k'2Ad<4e7u1-211257W3e~kamqbRϲrJ*٪˚hd]dFƆnӺj뱭mmivݰN8{b)GeݎNd'oN__Hĺtnwq]v3q;6~߃#ģY年tmնgn!#a]/^pvoVoeyT;j9uҷw| ݀uN	.1)
+Y-][wo`FcѺ"#"GFeFy|<ݚ^DnဇܾX}cqzqq]/'h	}2%%݅巫scɆgRߔ={2L5{. M)hڗtfd3Jcx@?T:Xp{_νCʇ
+>S;}wvxsGIGz)JONĞ-)l9)vEEϊJK,?5pt}@ղg4KT***]+{j:XV=z\WFMyyڙu.\h?p"{%K֍5/_Rr|5	iJlonmhy|Zgv
+׫ۄۊ9nndXtsVԭَNWo?rzm}Ǭva;wjݽvO^}M}j}W=PaSFˣ-Z<1?IS˧>{<2|hs/_,{jka7oFGL:}57a"zdT;w5*m3f3o{?!lGǒ9+>ͻO.?,,Vs~ik׵o<έh[^CGO럯#ףt꯳ >Q |q G X~F@ĮN&<LbymL.DfWGVO6R0;EڴgO?K%EXTWYg+
+Jc*6j8kכ3p4jm`\咵Mq;C	)W'}[;xWVVU8'b&J|ջ^]/6&/10Q.i.d䎔='Fg(f.d첃99=rcӎ'Ĝ/=ZdY]"w4ҩg.V=kQPQvmͽj.׻4_Dq+-WK6^lehv=ntttަuwt/<|n=F}RX,=|'AOi1-?{1U##{Dz6N L||1u]tLfC>ic>g,|1\長oƿO/ъ9L6W`dxCb!1{Xj	H?Ɋ^\}h`3ÂB\>Q>RV2O*UTOnW׈bv)ӗ60l4Z13M7k3n1cgC*h+ih,"?yx>ֺ̎^ۼ|X}f]e~]	ACCo#i'#Q6;%2r̡ؠ8x/	vm۽9<rsOT4t}O3[;mP-'gDGvL?rSpDYaIjQh	dT҃e3*_QU^vηH-v&1l"vwmm5naީq[w{>{ѓǃϟ|/^{⛯+oq	ĩw/fHm?}1')}~%կTW}
+)sS-[R-y.bs()0O,ñӔuS(^GV8(J¶"b%eds.)PV6S	V\@}VEJB_gn^~i<0wS3	sFinV1f66[VR.:q-rsvgqH\V=hЎ!ޖ>O5w_LJB`CPDLtHU%l8(FG؉y=ZlBZB|}BXdxR))\sS,ޛǊxBz{F>LOYgp~jCֹ\cyue=XM~qRȉēfEEcpL>estiSYrʋgZ3p6.yDaKX]jRjlqFjwSJI讼ޕ{;=߿@ӠA2/_o<<%?>,~"|6\=rsd{NJq}Ko,> pPj 9}Ep	fSxavE8Fܻ@&qA#|0JBdO(<j+*uu-DGa&܋04L	f+llN~5t{I@*ZI3F0^b\&2	LLL8"ϼ1K+5#52=d3*g:ץMqX,Vy3w	j	RE"Eŭ$$QNj%;)*j))+˨HoTUWT"%-#+e`e(8ϤtlB*ۺ懭QqGMCp3t+u_n!UP#};_5N:@3^(iRn=oR/g28=Sy(k'N^/+ﮬ*<|lgEF+Ml+-N.jO{o<.x;XB"Y޾WMk[,Y-G\c 4? 7l'I @%!EBH4BFQj(wnAͣFItz#qd|F0o~p7xv|	~P0ϨɘG&.3(b!&s%zYY#X߱Hsd<$"NVmr&pë?[YPXpAR$#b/(.U|TdTtLl\iJzV{*#Kjr֚^[bku{LTiUlvtsv2)-+{;0<Qi5FO틏MMz{Ԗ}Y=9ƹ#l^ȟZ*m?UxVjl×j._hkYhVuc߭N.;/o|	e/^1=?a196>mq|[_eVjڃj?	Ii2s?b<b	3BY0ԇ̣8Q:(!TjMB`11X88v8^o,J>:75B.aɔDL&~feiH5(&/)TnW%^y!NF*RJ)
+z6C3҈~S*n'6RӈҼE?`hk<hjggag9hghKtvqvrtyxo*Ʒ-t=$*L2|V7v$s,}v#&`RKJ.9ۑcO<\v*4L@Yjj֋ojmjcmYߑp[ܼ=xr21+Z~y$MhX&Ouk.I~A?V?6m!Œ/vK_w,|۱[mwc?\t*Y!UǑ0xlq0W_Ҽz3n/Y>  iTXtXML:com.adobe.xmp     <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="XMP Core 5.1.2">
+   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+      <rdf:Description rdf:about=""
+            xmlns:exif="http://ns.adobe.com/exif/1.0/">
+         <exif:PixelXDimension>132</exif:PixelXDimension>
+         <exif:PixelYDimension>53</exif:PixelYDimension>
+      </rdf:Description>
+   </rdf:RDF>
+</x:xmpmeta>
+ǸY  IDATx	_U}[͚d2di&(KiE*TEmOK=mhE+=(xD			ld2!d}oo?a2؞po}0R\J:ApYnwW]oi\)[b6[OerK5x81}Rs_ⅽ_1΃Vo5E~q/<'	*|q˲^o1?<<jx	߼yO?=66%(6mڱcS=}z܀[6{'xbttT$Qgˋ~6밳薸]=yJtS(l-<*R<NyH\A J}<oN-Іt{nݪy\WM'U/o=SPh2`ttnܪ`O7
+}'DܹN&&0Nd[8ٵ ٽ{RYx1]QQhѢZ4GVق̙CG:6mܹs0IO\YYS9%14σ5|L&|/첺:GnTjjjq*jjj\
+A-Ypٳ@B%088pEewzJbh }Ś9si߶m8r-)v+ Yfg:"_uU?_|bҶfg\|'yg/S?%14(*94bk@7ntuEu]QS)GtOi:c_odG&6@ShD`Bl#y+ p@Km_WIXF	GǸS΢saT.]l2,<OQqFM	ݙvl&3#jq[ebh|5Z~^<e]b2A ƋŉK0Ř]v͚5s0SO=EKؽވ1IQДF?xizu;/YK.m-ϩЍ>z d^ BQ=-t-_~1)ĭV)<BǨa9Lgk}M݂kqr>Ĵ׍6dVPg BK޹~nqFvCl}v^ͫƩ%#|G񠘁QP"^hXӦr1 G X 1`#18j7biB/_~g#"t#1VZE+W$2ǤcK:::k@16~5uq~<k|hX D̤Tb@%&SLtLt3`EBK3-WЌ4-T\y&~]ǉVWذF MZ#HZhד諾2Ez6GwuՍ4pMKPVcda]ɁG`s6
+^d&c5VTsBEw}N8a+LOktPa4Z<EJ4RhJ܁'9˕I#9WʫoTP\X a;p֟hK]jzoa."F2]S9``CGkyk	,Fe	.W|Sd7Ո^ f\Ӱ/#N]øANE
+}OUa`03B<&qkj߷vgٚ*`븠P+&Bg}0é0?nSQL?4C;ة<3oC
+2d53?cRS*ϘI4ٵJKݕ癣/i/]6mg^h٢4z?Ͼo¿'Haƌz׻nFuڷo0grw[1[g)op@ʁ '} d*WW-fxZ 4OǑOh<P6-6(r-wqǛ8)!	|_%l׾FlD;I
+"34d>,CUxg0%+]<D,Ԉo{-W4LBn9/BԉiVUUrA>F~o6q5 wcĂ#no^è^z	2PgWMW*1pl,(6eU=Y2S~AYD/*V#C鈛ZxJ oXz*E@18iZB3S<lQ?V%6]K{#AY=DQ(S@.i-I7+ږ
+JyκN#-{ϰJ|V	/~wm7ڵko^}^{-!>" e
+e\24C)?׍*(ֻ82dǆ:>e}#ig!^~	%8c%2Ja6-*)3aaFuWY h=_FBLZA"(*%,qCs$MR0s$7.)}(&RJXC]$򽄓ɩf&g"I)(a	15Bc8&%|97L3$s/YSB9\*9!#10)>N>R~Yw.GQp`Á/ܮc*Uٚ>sՊQ"3+ʩ2n9ؾc{!_jjYAѻ{gkXUfitOΝXH' 䁁u+/&TΟ.83 DGڳi[(VCUgl]1#@2CW	|DBqvr_NXC[8ress5\3
+ҡi+#=8^ inc|ሚTS^N\JH	=AUtKo@Sfps\8+9@3y_&/}#{{
+ƳGƗjotTfռGӰO-ʯVeui>޲Ԩ2{˱{m>ا܄JWKͫϟY׽eqSe	m#")1}杏x`OKo^V%4!;Qce?WΝf0!lW8=s.XӘn!4uUnib+-w˺5.@ 6(!euWΪR>) -V&a&P̋=wO"TiPVr0?Z(edɌbلȢxi4
+\@&R	mՙL$ۊ}޷u^1oYHʁ0ջcخ`%$
+am	{oxe4A
+GxKV3n7l+8 =c9ַ4
+ȸz_~昼aRb7ZU'*/\
+*L+"k,.CP *q,<4䐝a3
+H>;ta-"'ብ!`O:G,mHh0Mh!
+ gZqҷY<aX5R˟>Z`{;**̐ o~}mТӸ9;>"qb~|O}MEӃ[oЇ>N7)8blioK̐bfRyv(=cRmI-g
+=067>{ACmx龂7fTA=Ize
+xޱ#EptV:Gd~",26ɟTl\=(g?Mle@Fo~}nFϨ
+/X23]~m{kQVw(^<cں^dN,dPݾ/}};ޱn:m0p+ŉ?<i&;1ghc-*2RhtVe A8_	SapaUev*#e-n޲V
+Xޢu!EDHkH
+3>ЕWHV5fr8λwu+N#X]7&g{:#RčVnG.Zz+Qa_o}dK.<.PԳTxܨ,K,^6Wܤ/ 97{z9?>jS:,!o;sm>s⿾."674fV]bGFPQ\4s=GG(3<c?њӦWje6NO~ϹA{rp>0f{T
+O/W,lLdGCP[;7S_uP
+3oԅo&JThCM;+do/q3ذO4Imd]Ypqp/2ضh5P;Oӷ,Q)#ȘMK6=_D)rؐ[zNfPTW{ӒJ>-|?;c\{əRQ
+0}x4TzY.$әI9#A-46W_{|{3{{J0$QK'CDq瞻ɾL)L)zNH08<*ѐ#NgRnAD=MHo80!qI~d/3Dh2W%LU,jLk9E3D򋧛ӳ"ż}]_ԆL̓لR/ᦻ3SPN<d=aYBg>	BPWl_:'|᧾UC9%*l񟨯R>	YXie/L a:\`W\xx	A4d@pGFX*DX$4H[x$K2;$wfUF"t;aPM _g%k$Ke|I@r3eL);wK>}nF<EkA4\pO}" )j}rOumK)&T)m传/hZCS k]T&9-QRD%J(vKY2^LQ0߫iN|䶃=E(F?AY"dHp?2!A6T&hP<6%VSFM<x5AdECxI)OU
+$-WCxRb@z0#>na^;:UR'ڊ׋c#Om"ZFjA5y4V
+;<Rf~>䈐kϘṾ}_%Qt1<CO}CϮO%i$\?9ΦIR)p)gî-%JeqSblr@'+ȕBS(fmF˛}EcTe}*ms?wUC-jL^b6X*23_9e઄(R&ρUV4ȤQM|mkGgGhu[cѿӯRh-^߶tj<'9+{;ss,-"|㭚\Xlt*	] 	^^b)N"A߲u}{$	dm.q/ɨG.X\KM$^@7UI^n]hMSĽ[Պ:)d<gP?B	6컛4*;<sot3vCԤU8J7Cm*}*wmzcVM*N; :N4+U!A$sE *#yl'v+m7كۍA?$TK}r?]3	hJ->T(nM|m+#qfUXci(N!^qQ܃uɒ+9 hdM3%U}=m>S.?u7Iغ,VcJV$:0wWdޚ3HL]x=0$<$ VV1 _W6l?=,ieWӖn5L=k>n^-xU8XĤo7W%M-eMў 3TE4;p{ys߻vM,ĖR"9Msm(X[o?.s@JSS׫W\tʱH^9LWuݪě^Ƅ`5/&"+yǮm#GwÌr)Ya`XCGFeNgT{4]i6 :Ar$]Tn7sFC+iƃef|iU_xcko4m?'CFUxg:`1At/3ʷ6W;wvуcf_ϩJ^Jj|líǞD̖>v٢okQYFaEiN\v&ogdE].Mn!
+d;poc]9U7{/?r
+MAG_-/;qЈni:,q-GǕJFnD'A6NՑ|	ɦΨt*$C-ePX%:JFVeUH!M{Kn))BTy?i91Ps/4ȱÌ^GH$pww]vYƯus>e#f	U3k55čJ5l&
+3d|ӟ-41#~-Etb!S :Ȁ\D{Ag"lT$Q7KoB\8s"$h 1>䓭X3pB8y1pbI֌"F5N(a){4!yqtqOkI+5+	PVᤉyBV!vG!W[KRˮPXK*Pbh
+X"48PP	=gG#W]6^F	@L"\H%KB>Ϋ9ww_}aDO.h:Mb_.k%p UJz.Xn/25Il| :rѢ;/TyK$#ҨC6,.8H(*1 =K
+`D N hao( .o@%AL"Q
+x$PynXLx[򍂘d6ne@v 9
+@лTz"pi2hJ#؋z(k%fELy^>>^db&Ry.:[_+_ǒ\ؙpC2P6=T8QK|9^-3ǈx%&;|D:+_#b/clHD#0|"⸈S>."1+e;nzGb">I!O8S/T}    IENDB`
\ No newline at end of file
diff --git a/core/themes/seven/style.css b/core/themes/seven/style.css
index 52db095..c8692bf 100644
--- a/core/themes/seven/style.css
+++ b/core/themes/seven/style.css
@@ -963,19 +963,18 @@ ol.task-list {
   margin-left: 0; /* LTR */
   list-style-type: none;
   list-style-image: none;
+  padding-left: 0;
 }
 ol.task-list li {
-  padding: 0.5em 1em 0.5em 20px; /* LTR */
-  color: #adadad;
+  padding: 0.5em 1em 0.5em 50px; /* LTR */
+  color: #1a1a1a;
 }
 ol.task-list li.active {
-  background: transparent url(images/task-item.png) no-repeat 3px 50%; /* LTR */
-  padding: 0.5em 1em 0.5em 20px; /* LTR */
-  color: #000;
+  background: #ebeae4; /* LTR */
+  font-weight: normal;
 }
 ol.task-list li.done {
-  background: transparent url(images/task-check.png) no-repeat 0 50%;
-  color: green;
+  color: #adadad;
 }
 body.in-maintenance #branding .step-indicator {
   display: none;
@@ -994,6 +993,52 @@ body.in-maintenance #branding .step-indicator {
     float: right;
   }
 }
+/* Installation theming */
+body.install-page {
+  background-color: rgb(86, 179, 230);
+  background-image: url(/core/themes/seven/images/gradient.png);
+  background-repeat: repeat-x;
+  padding-top: 10%;
+}
+@media all and (min-width: 768px) {
+  body.install-page #page {
+    border: 4px solid #ebeae4;
+    border-radius: 1px;
+    width: 60%;
+    max-width: 600px;
+    box-shadow: 0 4px 23px 5px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0, 0, 0, 0.15);
+    padding-right: 2em;
+  }
+  body.install-page #content {
+    box-sizing: border-box;
+    padding-left: 30px;
+    width: 65%;
+  }
+  body.install-page #sidebar-first {
+    width: 35%;
+  }
+}
+body.install-page #site-name {
+  background: url(/core/themes/seven/images/install-logo.png) no-repeat;
+  text-indent: 400%;
+  height: 53px;
+  margin: 0.25em 0 0.25em 50px;
+}
+body.install-page #page-title {
+  display: none;
+}
+@media all and (max-width: 768px) {
+body.install-page #site-name {
+  margin-left: 0;
+}
+ body.install-page {
+   padding: 0;
+ }
+ body.install-page #page {
+   width: auto;
+   padding: 0 40px;
+ }
+}
 
 /* Overlay theming */
 .overlay #branding {
@@ -1761,6 +1806,137 @@ details.fieldset-no-legend {
 }
 
 /**
+ * Nicking the button styling from Seventy Eight
+ */
+
+/**
+ * 1. Enable z-index on buttons.
+ * 2. Normalize 'box-sizing' so we can set width without worrying about
+ *    borders and padding.
+ * 3. Normalize 'line-height'; can’t be changed from 'normal' in Firefox 4+.
+ * 4. Allows full range of styling in Webkit and Gecko.
+ */
+.form-actions .button {
+  display: inline-block;
+  position: relative;  /* 1 */
+  -webkit-box-sizing: border-box;  /* 2 */
+  -moz-box-sizing:    border-box;  /* " */
+  box-sizing:         border-box;  /* " */
+  text-align: center;
+  line-height: normal;  /* 3 */
+  cursor: pointer;
+  -webkit-appearance: none;  /* 4 */
+  -moz-appearance:    none;  /* " */
+}
+
+/* Prevent focus ring being covered by next siblings. */
+.form-actions .button:focus {
+  z-index: 10;
+}
+
+/* ==========================================================================
+   Skin
+   ========================================================================== */
+
+.form-actions .button {
+  padding: 0.2em 1.5em 0.25em;
+  border: 1px solid #a6a6a6;
+  border-radius: 20em;
+  background-color: #f2f1eb;
+  background-image: -webkit-linear-gradient(top, #f6f6f3, #e7e7df);
+  background-image:    -moz-linear-gradient(top, #f6f6f3, #e7e7df);
+  background-image:      -o-linear-gradient(top, #f6f6f3, #e7e7df);
+  background-image:   linear-gradient(to bottom, #f6f6f3, #e7e7df);
+  color: #262626;
+  text-decoration: none;
+  text-shadow: 0 1px hsla(0, 0%, 100%, 0.6);
+  font-weight: 600;
+  font-size: 0.938em;
+  -webkit-transition: all 0.1s;
+  -moz-transition:    all 0.1s;
+  -o-transition:      all 0.1s;
+  transition:         all 0.1s;
+  -webkit-font-smoothing: antialiased;  /* prevent fat text in webkit */
+}
+.form-actions .button:focus,
+.form-actions .button:hover {
+  background-color: #f9f8f6;
+  background-image: -webkit-linear-gradient(top, #ffffff, #e9e9dd);
+  background-image:    -moz-linear-gradient(top, #ffffff, #e9e9dd);
+  background-image:      -o-linear-gradient(top, #ffffff, #e9e9dd);
+  background-image:   linear-gradient(to bottom, #ffffff, #e9e9dd);
+  color: #1a1a1a;
+  text-decoration: none;
+}
+.form-actions .button:focus {
+  border-color: #40b6ff;
+}
+.form-actions .button:hover {
+  box-shadow: 0 1px 2px hsla(0, 0%, 0%, 0.2);
+}
+.form-actions .button:active,
+.form-actions .button.is-active {
+  background-color: #dfdfd9;
+  background-image: -webkit-linear-gradient(top, #d4d4cd, #ecebe5);
+  background-image:    -moz-linear-gradient(top, #d4d4cd, #ecebe5);
+  background-image:      -o-linear-gradient(top, #d4d4cd, #ecebe5);
+  background-image:   linear-gradient(to bottom, #d4d4cd, #ecebe5);
+  box-shadow: inset 0 1px 3px hsla(0, 0%, 0%, 0.2);
+  -webkit-transition: none;
+  -moz-transition:    none;
+  -o-transition:      none;
+  transition:         none;
+}
+
+.form-actions .button {
+  border-color: #1e5c90;
+  background-image: -webkit-linear-gradient(top, #007bc6, #0071b8);
+  background-image:    -moz-linear-gradient(top, #007bc6, #0071b8);
+  background-image:      -o-linear-gradient(top, #007bc6, #0071b8);
+  background-image:   linear-gradient(to bottom, #007bc6, #0071b8);
+  color: #fff;
+  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
+}
+.form-actions .button:focus,
+.form-actions .button:hover {
+  background-color: #2369a6;
+  background-image: -webkit-linear-gradient(top, #0c97ed, #1f86c7);
+  background-image:    -moz-linear-gradient(top, #0c97ed, #1f86c7);
+  background-image:      -o-linear-gradient(top, #0c97ed, #1f86c7);
+  background-image:   linear-gradient(to bottom, #0c97ed, #1f86c7);
+  color: #fff;
+}
+.form-actions .button:focus {
+  border-color: #0087db;
+}
+.form-actions .button:active,
+.form-actions .button.is-active {
+  background-image: -webkit-linear-gradient(top, #08639b, #0071b8);
+  background-image:    -moz-linear-gradient(top, #08639b, #0071b8);
+  background-image:      -o-linear-gradient(top, #08639b, #0071b8);
+  background-image:   linear-gradient(to bottom, #08639b, #0071b8);
+  border-color: #144b78;
+}
+
+.form-actions .button-danger {
+  color: #c72100;
+  text-decoration: underline;
+}
+.form-actions .button-danger:focus,
+.form-actions .button-danger:hover,
+.form-actions .button-danger:active {
+  color: #ff2a00;
+}
+.form-actions .button-danger:disabled,
+.form-actions .button-danger.is-disabled {
+ color: #737373;
+ cursor: default;
+ text-decoration: none;
+ -webkit-font-smoothing: antialiased;
+}
+
+
+/**
  * Form edit action theming
  */
 .js .form-actions .dropbutton-widget {
