/**
 * Code for checkboxes
 */
.checkbox {
  position: relative;
  width: 1rem;
  height: 1rem;
  margin-right: .75rem;
  cursor: pointer;
  appearance: none;
  outline: 0;
  /**
   * Iterate over map and autogenerate helper classes.
  * See "https://codepen.io/fxm90/pen/zGjjrJ" for an example
  */ }
  .checkbox:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    border: 2px solid #b3adad;
    transition: all 0.3s ease-in-out; }
  .checkbox:checked:before {
    height: 50%;
    transform: rotate(-45deg);
    border-top-style: none;
    border-right-style: none; }
  .checkbox--red:checked:before {
    border-color: #f44336; }
  .checkbox--pink:checked:before {
    border-color: #e91e63; }
  .checkbox--purple:checked:before {
    border-color: #9c27b0; }
  .checkbox--deep-purple:checked:before {
    border-color: #673ab7; }
  .checkbox--indigo:checked:before {
    border-color: #3f51b5; }
  .checkbox--blue:checked:before {
    border-color: #2196f3; }
  .checkbox--light-blue:checked:before {
    border-color: #03a9f4; }
  .checkbox--cyan:checked:before {
    border-color: #00bcd4; }
  .checkbox--teal:checked:before {
    border-color: #009688; }
  .checkbox--green:checked:before {
    border-color: #4caf50; }
  .checkbox--light-green:checked:before {
    border-color: #8bc34a; }
  .checkbox--lime:checked:before {
    border-color: #cddc39; }
  .checkbox--yellow:checked:before {
    border-color: #ffeb3b; }
  .checkbox--amber:checked:before {
    border-color: #ffc107; }
  .checkbox--orange:checked:before {
    border-color: #ff9800; }
  .checkbox--deep-orange:checked:before {
    border-color: #ff5722; }
  .checkbox--blue-grey:checked:before {
    border-color: #607d8b; }

.radio {
  margin: 0.5rem; }
  .radio input[type="radio"] {
    position: absolute;
    opacity: 0; }
    .radio input[type="radio"] + .radio-label {
      cursor: pointer; }
      .radio input[type="radio"] + .radio-label:before {
        content: '';
        background: #f4f4f4;
        border-radius: 100%;
        border: 1px solid #b4b4b4;
        display: inline-block;
        width: 1.4em;
        height: 1.4em;
        position: relative;
        margin-right: 1em;
        vertical-align: top;
        cursor: pointer;
        text-align: center;
        transition: all 250ms ease; }
    .radio input[type="radio"]:checked + .radio-label:before {
      background-color: #3197EE;
      box-shadow: inset 0 0 0 4px #f4f4f4; }
    .radio input[type="radio"]:focus + .radio-label:before {
      outline: none;
      border-color: #3197EE; }
    .radio input[type="radio"]:disabled + .radio-label:before {
      box-shadow: inset 0 0 0 4px #f4f4f4;
      border-color: #b4b4b4;
      background: #b4b4b4; }
    .radio input[type="radio"] + .radio-label:empty:before {
      margin-right: 0; }

/* ==========  Select Field Variables ========== */
/* ==========  Select Field ========== */
/* Style Select Field */
select {
  font-family: inherit;
  background-color: transparent;
  width: 100%;
  padding: .5rem 0 .6rem;
  font-size: 16px;
  color: #495057;
  border: none;
  border-bottom: 1px solid #bdbdbd;
  font-weight: 400;
  cursor: pointer;
  margin-top: .2rem; }
  select.valid {
    border-bottom: 1px solid #00C851;
    box-shadow: 0 1px 0 0 #00C851; }
  select.invalid, select.error {
    border-bottom: 1px solid #F44336;
    box-shadow: 0 1px 0 0 #F44336; }

/* Remove focus */
select:focus {
  outline: none; }

/* Hide label */
.mdl-selectfield label {
  display: none; }

/* Use custom arrow */
.mdl-selectfield select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none; }

.mdl-selectfield {
  font-family: 'Roboto','Helvetica','Arial',sans-serif;
  position: relative; }
  .mdl-selectfield:after {
    position: absolute;
    top: 0.75em;
    right: 0.5em;
    /* Styling the down arrow */
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: .25em solid transparent;
    border-right: .25em solid transparent;
    border-top: 0.375em solid #bdbdbd;
    pointer-events: none; }

.mdl-selectfield + label {
  position: absolute;
  top: -14px;
  font-size: .8rem;
  display: inline-block;
  -ms-touch-action: manipulation;
  touch-action: manipulation; }

.md-form.hide {
  display: none; }

/*# sourceMappingURL=form.css.map */
