html {
  height: 100%;
}

body {
  min-height: 100%;
}

form {
  width: 100%;
  margin: 20px auto;
}

label {
  width: 100%;
}

/** Start Progess Tracker **/
ol.progress-track {
  display: table;
  list-style-type: none;
  margin: 0;
  padding: 0;
  table-layout: fixed;
  width: 100%;
}

ol.progress-track li {
  display: table-cell;
  line-height: 3em;
  position: relative;
  text-align: center;
}

ol.progress-track li .icon-wrap {
  border-radius: 50%;
  top: -1.5em;
  color: #fff;
  display: block;
  height: 2.5em;
  margin: 0 auto -2em;
  left: 0;
  right: 0;
  position: absolute;
  width: 2.5em;
}

ol.progress-track li .icon-check-mark,
ol.progress-track li .icon-down-arrow {
  height: 25px;
  width: 15px;
  display: inline-block;
  fill: currentColor;
}

ol.progress-track li .progress-text {
  position: relative;
  top: 10px;
}

ol.progress-track li.progress-done {
  border-top: 7px solid #87ba51;
  transition: border-color 1s ease-in-out;
  -webkit-transition: border-color 1s ease-in-out;
  -moz-transition: border-color 1s ease-in-out;
}

ol.progress-track li.progress-done .icon-down-arrow {
  display: none;
}

ol.progress-track li.progress-done.progress-current .icon-wrap {
  background-color: #0070c0;
}

ol.progress-track li.progress-done.progress-current .icon-wrap .icon-check-mark {
  display: none;
}

ol.progress-track li.progress-done.progress-current .icon-wrap .icon-down-arrow {
  display: block;
}

ol.progress-track li.progress-done .icon-wrap {
  background-color: #4a6a28;
  border: 5px solid #87ba51;
}

ol.progress-track li.progress-todo {
  border-top: 7px solid #DDD;
  color: black;
}

ol.progress-track li.progress-todo .icon-wrap {
  background-color: #FFF;
  border: 5px solid #DDD;
  border-radius: 50%;
  bottom: 1.5em;
  color: #fff;
  display: block;
  height: 2.5em;
  margin: 0 auto -2em;
  position: relative;
  width: 2.5em;
}

ol.progress-track li.progress-todo .icon-wrap .icon-check-mark,
ol.progress-track li.progress-todo .icon-wrap .icon-down-arrow {
  display: none;
}

/** End Progess Tracker **/
.info-label {
  height: 35px;
  position: relative;
  color: #8798AB;
  display: block;
  margin-top: 30px;
  margin-bottom: 20px;
}

label > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-weight: 300;
  line-height: 32px;
  color: #8798AB;
  border-bottom: 1px solid #d6dbe0;
  transition: border-bottom-color 200ms ease-in-out;
  cursor: text;
  pointer-events: none;
}

label > span span {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 19px;
  transform-origin: 0% 50%;
  transition: transform 200ms ease-in-out;
  cursor: text;
}

label .field.is-focused + span span,
label .field:not(.is-empty) + span span {
  transform: scale(0.68) translateY(-36px);
  cursor: default;
}

label .field.is-focused + span {
  border-bottom-color: #0084ff;
}

.field {
  background: transparent;
  font-weight: 300;
  border: 0;
  color: black;
  outline: none;
  cursor: text;
  display: block;
  width: 100%;
  line-height: 32px;
  padding-bottom: 3px;
  transition: opacity 200ms ease-in-out;
}

.field::-webkit-input-placeholder {
  color: #8898AA;
}

.field::-moz-placeholder {
  color: #8898AA;
}

/* IE doesn't show placeholders when empty+focused */
.field:-ms-input-placeholder {
  color: #424770;
}

.field.is-empty:not(.is-focused) {
  opacity: 0;
}

.payment {
  display: block;
  background: #0084ff;
  color: white;
  border-radius: 2px;
  border: 0;
  margin-top: 5px;
  font-size: 19px;
  font-weight: 400;
  width: 100%;
  height: 47px;
  line-height: 45px;
  outline: none;
}

button:focus {
  background: #0084ff;
}

button:active {
  background: #0084ff;
}

.outcome {
  float: left;
  width: 100%;
  padding-top: 8px;
  min-height: 20px;
  text-align: center;
}

.success, .error {
  display: none;
  font-size: 15px;
}

.success.visible, .error.visible {
  display: inline;
}

.error {
  color: #E4584C;
}

.success {
  color: #34D08C;
}

.success .token {
  font-weight: 500;
  font-size: 15px;
}

label input[type="radio"] ~ i.fa.fa-dot-circle-o {
  display: none;
}

label input[type="radio"] ~ i.fa.fa-dot-circle-o {
  display: none;
}

label input[type="radio"]:checked ~ i.fa.fa-circle-o {
  display: none;
}

label:hover input[type="radio"] ~ i.fa {
  color: #0084ff;
}

div[data-toggle="buttons"] label.active {
  color: #0084ff;
}

div[data-toggle="buttons"] label:hover {
  color: #0084ff;
}

div[data-toggle="buttons"] label:active, div[data-toggle="buttons"] label.active {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.faded-grey {
  color: #8898AA;
}

.option-break {
  margin: 0;
  color: #d6dbe0;
  background-color: #d6dbe0;
}

.empty-padding {
  padding-top: 25px;
}

.large-empty-padding {
  padding-top: 40px;
}

.x-large-empty-padding {
  padding-top: 30px;
}

float-right {
  float: right;
}

float-left {
  float: left;
}

.review-break {
  margin-top: 10px;
  height: 1px;
  color: #d6dbe0;
  background-color: #d6dbe0;
}

.label.label-default {
  margin-right: 15px;
}

#scrollview-row {
  height: 70px;
}

#scrollview-container thead {
  display: none;
}

.lesson-avatar {
  width: 63px;
  height: 53px;
  border: 1px solid #e7eaec;
  border-radius: 4px;
}

.form-control.input-sm {
  height: 45px;
}

.middle-box {
  max-width: 400px;
  z-index: 100;
  margin: 0 auto;
  padding-top: 40px;
}

.lockscreen.middle-box {
  width: 200px;
  padding-top: 110px;
}

.loginscreen.middle-box {
  width: 300px;
}

.loginColumns {
  max-width: 800px;
  margin: 0 auto;
  padding: 100px 20px 20px 20px;
}

.passwordBox {
  max-width: 460px;
  margin: 0 auto;
  padding: 100px 20px 20px 20px;
}

.logo-name {
  color: #c9a4a4;
  font-size: 180px;
  font-weight: 800;
  letter-spacing: -10px;
  margin-bottom: 0;
}

.middle-box h1 {
  font-size: 170px;
}

.wrapper .middle-box {
  margin-top: 140px;
}

.lock-word {
  z-index: 10;
  position: absolute;
  top: 110px;
  left: 50%;
  margin-left: -470px;
}

.lock-word span {
  font-size: 100px;
  font-weight: 600;
  color: #e9e9e9;
  display: inline-block;
}

.lock-word .first-word {
  margin-right: 160px;
}

.hidden {
  display: none;
  visibility: hidden;
}

.product-details {
  padding: 1em;
}

.select-field {
  position: absolute;
  top: 8px;
  left: -8px;
}
