input.valid:not([type]), input.valid:not([type]):focus,
input.valid[type=text]:not(.browser-default),
input.valid[type=text]:not(.browser-default):focus,
input.valid[type=password]:not(.browser-default),
input.valid[type=password]:not(.browser-default):focus,
input.valid[type=email]:not(.browser-default),
input.valid[type=email]:not(.browser-default):focus,
input.valid[type=url]:not(.browser-default),
input.valid[type=url]:not(.browser-default):focus,
input.valid[type=time]:not(.browser-default),
input.valid[type=time]:not(.browser-default):focus,
input.valid[type=date]:not(.browser-default),
input.valid[type=date]:not(.browser-default):focus,
input.valid[type=datetime]:not(.browser-default),
input.valid[type=datetime]:not(.browser-default):focus,
input.valid[type=datetime-local]:not(.browser-default),
input.valid[type=datetime-local]:not(.browser-default):focus,
input.valid[type=tel]:not(.browser-default),
input.valid[type=tel]:not(.browser-default):focus,
input.valid[type=number]:not(.browser-default),
input.valid[type=number]:not(.browser-default):focus,
input.valid[type=search]:not(.browser-default),
input.valid[type=search]:not(.browser-default):focus,
textarea.materialize-textarea.valid,
textarea.materialize-textarea.valid:focus, .select-wrapper.valid > input.select-dropdown {
  border-bottom: 1px solid #4CAF50;
  -webkit-box-shadow: 0 1px 0 0 #4CAF50;
          box-shadow: 0 1px 0 0 #4CAF50;
}

input.invalid:not([type]), input.invalid:not([type]):focus,
input.invalid[type=text]:not(.browser-default),
input.invalid[type=text]:not(.browser-default):focus,
input.invalid[type=password]:not(.browser-default),
input.invalid[type=password]:not(.browser-default):focus,
input.invalid[type=email]:not(.browser-default),
input.invalid[type=email]:not(.browser-default):focus,
input.invalid[type=url]:not(.browser-default),
input.invalid[type=url]:not(.browser-default):focus,
input.invalid[type=time]:not(.browser-default),
input.invalid[type=time]:not(.browser-default):focus,
input.invalid[type=date]:not(.browser-default),
input.invalid[type=date]:not(.browser-default):focus,
input.invalid[type=datetime]:not(.browser-default),
input.invalid[type=datetime]:not(.browser-default):focus,
input.invalid[type=datetime-local]:not(.browser-default),
input.invalid[type=datetime-local]:not(.browser-default):focus,
input.invalid[type=tel]:not(.browser-default),
input.invalid[type=tel]:not(.browser-default):focus,
input.invalid[type=number]:not(.browser-default),
input.invalid[type=number]:not(.browser-default):focus,
input.invalid[type=search]:not(.browser-default),
input.invalid[type=search]:not(.browser-default):focus,
textarea.materialize-textarea.invalid,
textarea.materialize-textarea.invalid:focus, .select-wrapper.invalid > input.select-dropdown,
.select-wrapper.invalid > input.select-dropdown:focus {
  border-bottom: 1px solid #F44336;
  -webkit-box-shadow: 0 1px 0 0 #F44336;
          box-shadow: 0 1px 0 0 #F44336;
}

input:not([type]).valid ~ .helper-text[data-success],
input:not([type]):focus.valid ~ .helper-text[data-success],
input:not([type]).invalid ~ .helper-text[data-error],
input:not([type]):focus.invalid ~ .helper-text[data-error],
input[type=text]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=text]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=text]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=text]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=password]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=password]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=password]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=password]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=email]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=email]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=email]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=email]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=url]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=url]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=url]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=url]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=time]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=time]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=time]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=time]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=date]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=date]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=date]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=date]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=datetime]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=datetime]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=datetime]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=datetime]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=datetime-local]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=datetime-local]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=datetime-local]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=datetime-local]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=tel]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=tel]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=tel]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=tel]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=number]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=number]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=number]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=number]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
input[type=search]:not(.browser-default).valid ~ .helper-text[data-success],
input[type=search]:not(.browser-default):focus.valid ~ .helper-text[data-success],
input[type=search]:not(.browser-default).invalid ~ .helper-text[data-error],
input[type=search]:not(.browser-default):focus.invalid ~ .helper-text[data-error],
textarea.materialize-textarea.valid ~ .helper-text[data-success],
textarea.materialize-textarea:focus.valid ~ .helper-text[data-success],
textarea.materialize-textarea.invalid ~ .helper-text[data-error],
textarea.materialize-textarea:focus.invalid ~ .helper-text[data-error], .select-wrapper.valid .helper-text[data-success],
.select-wrapper.invalid ~ .helper-text[data-error] {
  color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  pointer-events: none;
}

input:not([type]).valid ~ .helper-text:after,
input:not([type]):focus.valid ~ .helper-text:after,
input[type=text]:not(.browser-default).valid ~ .helper-text:after,
input[type=text]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=password]:not(.browser-default).valid ~ .helper-text:after,
input[type=password]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=email]:not(.browser-default).valid ~ .helper-text:after,
input[type=email]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=url]:not(.browser-default).valid ~ .helper-text:after,
input[type=url]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=time]:not(.browser-default).valid ~ .helper-text:after,
input[type=time]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=date]:not(.browser-default).valid ~ .helper-text:after,
input[type=date]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=datetime]:not(.browser-default).valid ~ .helper-text:after,
input[type=datetime]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default).valid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=tel]:not(.browser-default).valid ~ .helper-text:after,
input[type=tel]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=number]:not(.browser-default).valid ~ .helper-text:after,
input[type=number]:not(.browser-default):focus.valid ~ .helper-text:after,
input[type=search]:not(.browser-default).valid ~ .helper-text:after,
input[type=search]:not(.browser-default):focus.valid ~ .helper-text:after,
textarea.materialize-textarea.valid ~ .helper-text:after,
textarea.materialize-textarea:focus.valid ~ .helper-text:after, .select-wrapper.valid ~ .helper-text:after {
  content: attr(data-success);
  color: #4CAF50;
}

input:not([type]).invalid ~ .helper-text:after,
input:not([type]):focus.invalid ~ .helper-text:after,
input[type=text]:not(.browser-default).invalid ~ .helper-text:after,
input[type=text]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=password]:not(.browser-default).invalid ~ .helper-text:after,
input[type=password]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=email]:not(.browser-default).invalid ~ .helper-text:after,
input[type=email]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=url]:not(.browser-default).invalid ~ .helper-text:after,
input[type=url]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=time]:not(.browser-default).invalid ~ .helper-text:after,
input[type=time]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=date]:not(.browser-default).invalid ~ .helper-text:after,
input[type=date]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=datetime]:not(.browser-default).invalid ~ .helper-text:after,
input[type=datetime]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default).invalid ~ .helper-text:after,
input[type=datetime-local]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=tel]:not(.browser-default).invalid ~ .helper-text:after,
input[type=tel]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=number]:not(.browser-default).invalid ~ .helper-text:after,
input[type=number]:not(.browser-default):focus.invalid ~ .helper-text:after,
input[type=search]:not(.browser-default).invalid ~ .helper-text:after,
input[type=search]:not(.browser-default):focus.invalid ~ .helper-text:after,
textarea.materialize-textarea.invalid ~ .helper-text:after,
textarea.materialize-textarea:focus.invalid ~ .helper-text:after, .select-wrapper.invalid ~ .helper-text:after {
  content: attr(data-error);
  color: #F44336;
}

input:not([type]) + label:after,
input[type=text]:not(.browser-default) + label:after,
input[type=password]:not(.browser-default) + label:after,
input[type=email]:not(.browser-default) + label:after,
input[type=url]:not(.browser-default) + label:after,
input[type=time]:not(.browser-default) + label:after,
input[type=date]:not(.browser-default) + label:after,
input[type=datetime]:not(.browser-default) + label:after,
input[type=datetime-local]:not(.browser-default) + label:after,
input[type=tel]:not(.browser-default) + label:after,
input[type=number]:not(.browser-default) + label:after,
input[type=search]:not(.browser-default) + label:after,
textarea.materialize-textarea + label:after, .select-wrapper + label:after {
  display: block;
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  opacity: 0;
  -webkit-transition: .2s opacity ease-out, .2s color ease-out;
  transition: .2s opacity ease-out, .2s color ease-out;
}

.select-wrapper {
    position: relative;
  }

  
.select-wrapper.valid + label,
.select-wrapper.invalid + label {
  width: 100%;
  pointer-events: none;
}

.select-wrapper input.select-dropdown {
  position: relative;
  cursor: pointer;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #9e9e9e;
  outline: none;
  height: 3rem;
  line-height: 3rem;
  width: 100%;
  font-size: 16px;
  margin: 0 0 8px 0;
  padding: 0;
  display: block;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  z-index: 1;
}

.select-wrapper input.select-dropdown:focus {
  border-bottom: 1px solid #26a69a;
}

.select-wrapper .caret {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  z-index: 0;
  fill: rgba(0, 0, 0, 0.87);
}

.select-wrapper + label {
  position: absolute;
  top: -26px;
  font-size: 0.8rem;
}

select:disabled {
  color: rgba(0, 0, 0, 0.42);
}

.select-wrapper.disabled + label {
  color: rgba(0, 0, 0, 0.42);
}

.select-wrapper.disabled .caret {
  fill: rgba(0, 0, 0, 0.42);
}

.select-wrapper input.select-dropdown:disabled {
  color: rgba(0, 0, 0, 0.42);
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.select-wrapper i {
  color: rgba(0, 0, 0, 0.3);
}

.prefix ~ .select-wrapper {
    margin-left: 3rem;
    width: 92%;
    width: calc(100% - 3rem);
  }

  .input-field.inline input,
.input-field.inline .select-dropdown {
  margin-bottom: 1rem;
}

.select-dropdown li.disabled,
.select-dropdown li.disabled > span,
.select-dropdown li.optgroup {
  color: rgba(0, 0, 0, 0.3);
  background-color: transparent;
}

body.keyboard-focused .select-dropdown.dropdown-content li:focus {
  background-color: rgba(0, 0, 0, 0.08);
}

.select-dropdown.dropdown-content li:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.select-dropdown.dropdown-content li.selected {
  background-color: rgba(0, 0, 0, 0.03);
}

.select-dropdown li img {
    height: 40px;
    width: 40px;
    margin: 5px 15px;
    float: right;
  }
  
  .select-dropdown li.optgroup {
    border-top: 1px solid #eee;
  }
  
  .select-dropdown li.optgroup.selected > span {
    color: rgba(0, 0, 0, 0.7);
  }
  
  .select-dropdown li.optgroup > span {
    color: rgba(0, 0, 0, 0.4);
  }
  
  .select-dropdown li.optgroup ~ li.optgroup-option {
    padding-left: 1rem;
  }

  .dropdown-trigger {
    cursor: pointer;
  }

  .z-depth-1, nav, .card-panel, .card, .toast, .btn, .btn-large, .btn-small, .btn-floating, .dropdown-content, .collapsible, .sidenav {
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  }

  
.dropdown-content {
    background-color: #fff;
    margin: 0;
    display: none;
    min-width: 100px;
    overflow-y: auto;
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 9999;
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  
  .dropdown-content:focus {
    outline: 0;
  }
  
  .dropdown-content li {
    clear: both;
    color: rgba(0, 0, 0, 0.87);
    cursor: pointer;
    min-height: 50px;
    line-height: 1.5rem;
    width: 100%;
    text-align: left;
  }
  
  .dropdown-content li:hover, .dropdown-content li.active {
    background-color: #eee;
  }
  
  .dropdown-content li:focus {
    outline: none;
  }
  
  .dropdown-content li.divider {
    min-height: 0;
    height: 1px;
  }
  
  .dropdown-content li > a, .dropdown-content li > span {
    font-size: 16px;
    color: #26a69a;
    display: block;
    line-height: 22px;
    padding: 14px 16px;
  }
  
  .dropdown-content li > span > label {
    top: 1px;
    left: 0;
    height: 18px;
  }
  
  .dropdown-content li > a > i {
    height: inherit;
    line-height: inherit;
    float: left;
    margin: 0 24px 0 0;
    width: 24px;
  }
  
  body.keyboard-focused .dropdown-content li:focus {
    background-color: #dadada;
  }
  
  .input-field.col .dropdown-content [type="checkbox"] + label {
    top: 1px;
    left: 0;
    height: 18px;
    -webkit-transform: none;
            transform: none;
  }

  
body.keyboard-focused .select-dropdown.dropdown-content li:focus {
    background-color: rgba(0, 0, 0, 0.08);
  }
  
  .select-dropdown.dropdown-content li:hover {
    background-color: rgba(0, 0, 0, 0.08);
  }
  
  .select-dropdown.dropdown-content li.selected {
    background-color: rgba(0, 0, 0, 0.03);
  }

  .datepicker-controls .select-wrapper .caret {
    display: none;
  }

  ul:not(.browser-default) {
    padding-left: 0;
    list-style-type: none;
  }
  
  ul:not(.browser-default) > li {
    list-style-type: none;
  }

  /* Checkboxes
   ========================================================================== */
/* Remove default checkbox */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

[type="checkbox"] {
  /* checkbox aspect */
}

[type="checkbox"] + span:not(.lever) {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

[type="checkbox"] + span:not(.lever):before,
[type="checkbox"]:not(.filled-in) + span:not(.lever):after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  z-index: 0;
  border: 2px solid #5a5a5a;
  border-radius: 1px;
  margin-top: 3px;
  -webkit-transition: .2s;
  transition: .2s;
}

[type="checkbox"]:not(.filled-in) + span:not(.lever):after {
  border: 0;
  -webkit-transform: scale(0);
          transform: scale(0);
}

[type="checkbox"]:not(:checked):disabled + span:not(.lever):before {
  border: none;
  background-color: rgba(0, 0, 0, 0.42);
}

[type="checkbox"].tabbed:focus + span:not(.lever):after {
  -webkit-transform: scale(1);
          transform: scale(1);
  border: 0;
  border-radius: 50%;
  -webkit-box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
  background-color: rgba(0, 0, 0, 0.1);
}

[type="checkbox"]:checked + span:not(.lever):before {
  top: -4px;
  left: -5px;
  width: 12px;
  height: 22px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid #26a69a;
  border-bottom: 2px solid #26a69a;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform-origin: 100% 100%;
          transform-origin: 100% 100%;
}

[type="checkbox"]:checked:disabled + span:before {
  border-right: 2px solid rgba(0, 0, 0, 0.42);
  border-bottom: 2px solid rgba(0, 0, 0, 0.42);
}

/* Select Field
   ========================================================================== */
   select {
    display: none;
  }
  
  select.browser-default {
    display: block;
  }
  
  select {
    background-color: rgba(255, 255, 255, 0.9);
    width: 100%;
    padding: 5px;
    border: 1px solid #f2f2f2;
    border-radius: 2px;
    height: 3rem;
  }
  
  .select-label {
    position: absolute;
  }
  
  .select-wrapper {
    position: relative;
  }
  
  .select-wrapper.valid + label,
  .select-wrapper.invalid + label {
    width: 100%;
    pointer-events: none;
  }
  
  .select-wrapper input.select-dropdown {
    position: relative;
    cursor: pointer;
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #9e9e9e;
    outline: none;
    height: 3rem;
    line-height: 3rem;
    width: 100%;
    font-size: 16px;
    margin: 0 0 8px 0;
    padding: 0;
    display: block;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    z-index: 1;
  }
  
  .select-wrapper input.select-dropdown:focus {
    border-bottom: 1px solid #26a69a;
  }
  
  .select-wrapper .caret {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    z-index: 0;
    fill: rgba(0, 0, 0, 0.87);
  }
  
  .select-wrapper + label {
    position: absolute;
    top: -26px;
    font-size: 0.8rem;
  }
  
  select:disabled {
    color: rgba(0, 0, 0, 0.42);
  }
  
  .select-wrapper.disabled + label {
    color: rgba(0, 0, 0, 0.42);
  }
  
  .select-wrapper.disabled .caret {
    fill: rgba(0, 0, 0, 0.42);
  }
  
  .select-wrapper input.select-dropdown:disabled {
    color: rgba(0, 0, 0, 0.42);
    cursor: default;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
  }
  
  .select-wrapper i {
    color: rgba(0, 0, 0, 0.3);
  }
  
  .select-dropdown li.disabled,
  .select-dropdown li.disabled > span,
  .select-dropdown li.optgroup {
    color: rgba(0, 0, 0, 0.3);
    background-color: transparent;
  }
  
  body.keyboard-focused .select-dropdown.dropdown-content li:focus {
    background-color: rgba(0, 0, 0, 0.08);
  }
  
  .select-dropdown.dropdown-content li:hover {
    background-color: rgba(0, 0, 0, 0.08);
  }
  
  .select-dropdown.dropdown-content li.selected {
    background-color: rgba(0, 0, 0, 0.03);
  }
  
  .prefix ~ .select-wrapper {
    margin-left: 3rem;
    width: 92%;
    width: calc(100% - 3rem);
  }
  
  .prefix ~ label {
    margin-left: 3rem;
  }
  
  .select-dropdown li img {
    height: 40px;
    width: 40px;
    margin: 5px 15px;
    float: right;
  }
  
  .select-dropdown li.optgroup {
    border-top: 1px solid #eee;
  }
  
  .select-dropdown li.optgroup.selected > span {
    color: rgba(0, 0, 0, 0.7);
  }
  
  .select-dropdown li.optgroup > span {
    color: rgba(0, 0, 0, 0.4);
  }
  
  .select-dropdown li.optgroup ~ li.optgroup-option {
    padding-left: 1rem;
  }