diff --git a/src/demo-app/stepper/stepper-demo.html b/src/demo-app/stepper/stepper-demo.html
index 89d64a58574f..e1205208640e 100644
--- a/src/demo-app/stepper/stepper-demo.html
+++ b/src/demo-app/stepper/stepper-demo.html
@@ -1,3 +1,113 @@
+
Vertical Stepper Demo
+
+
+ Fill out your name
+
+
+ This field is required
+
+
+
+
+ This field is required
+
+
+
+
+
+
+
+
+ Fill out your phone number
+
+
+
+ This field is required
+
+
+
+
+
+
+
+
+
+ Fill out your address
+
+
+
+ This field is required
+
+
+
+
+
+
+
+
+ Confirm your information
+ Everything seems correct.
+
+
+
+
+
+
+Horizontal Stepper Demo
+
+
+ Fill out your name
+
+
+ This field is required
+
+
+
+
+ This field is required
+
+
+
+
+
+
+
+
+ Fill out your phone number
+
+
+
+ This field is required
+
+
+
+
+
+
+
+
+
+ Fill out your address
+
+
+
+ This field is required
+
+
+
+
+
+
+
+
+ Confirm your information
+ Everything seems correct.
+
+
+
+
+
+
Horizontal Stepper Demo
diff --git a/src/lib/core/theming/_all-theme.scss b/src/lib/core/theming/_all-theme.scss
index 4f808fca5ef1..a2ed3f9459ba 100644
--- a/src/lib/core/theming/_all-theme.scss
+++ b/src/lib/core/theming/_all-theme.scss
@@ -23,6 +23,7 @@
@import '../../sidenav/sidenav-theme';
@import '../../slide-toggle/slide-toggle-theme';
@import '../../slider/slider-theme';
+@import '../../stepper/stepper-theme';
@import '../../tabs/tabs-theme';
@import '../../toolbar/toolbar-theme';
@import '../../tooltip/tooltip-theme';
@@ -57,6 +58,7 @@
@include mat-sidenav-theme($theme);
@include mat-slide-toggle-theme($theme);
@include mat-slider-theme($theme);
+ @include mat-stepper-theme($theme);
@include mat-tabs-theme($theme);
@include mat-toolbar-theme($theme);
@include mat-tooltip-theme($theme);
diff --git a/src/lib/stepper/_stepper-theme.scss b/src/lib/stepper/_stepper-theme.scss
new file mode 100644
index 000000000000..a55c82c7abbf
--- /dev/null
+++ b/src/lib/stepper/_stepper-theme.scss
@@ -0,0 +1,43 @@
+@import '../core/theming/palette';
+@import '../core/theming/theming';
+@import '../core/typography/_typography-utils.scss';
+
+@mixin mat-stepper-theme($theme) {
+ $foreground: map-get($theme, foreground);
+ $background: map-get($theme, background);
+ $primary: map-get($theme, primary);
+
+ .mat-horizontal-stepper-header, .mat-vertical-stepper-header {
+
+ .mat-stepper-label {
+ color: mat-color($foreground, text);
+ }
+
+ .mat-stepper-index {
+ background-color: mat-color($primary);
+ color: mat-color($primary, default-contrast);
+ }
+
+ &[aria-selected='false'] {
+ .mat-stepper-label {
+ color: mat-color($foreground, disabled-text);
+ }
+
+ .mat-stepper-index {
+ background-color: mat-color($foreground, disabled-text);
+ }
+ }
+ }
+
+ .mat-stepper-horizontal, .mat-stepper-vertical {
+ background-color: mat-color($background, card);
+ }
+
+ .vertical-content-container {
+ border-left-color: mat-color($foreground, divider);
+ }
+
+ .connector-line {
+ border-top-color: mat-color($foreground, divider);
+ }
+}
diff --git a/src/lib/stepper/stepper-horizontal.html b/src/lib/stepper/stepper-horizontal.html
index e69836b862f1..5937fd04551b 100644
--- a/src/lib/stepper/stepper-horizontal.html
+++ b/src/lib/stepper/stepper-horizontal.html
@@ -1,28 +1,32 @@
-