
/* ========================================================================
  input materialize
 ========================================================================== */
 input[type="radio"], .radio input[type="radio"], .radio-inline input[type="radio"] {
    background-color: transparent;
    border: medium none;
    cursor: pointer;
    margin-left: 10px !important;
    margin-top: 6px;
    position: relative;
    vertical-align: top;
}
input[type="radio"]:focus, .radio input[type="radio"]:focus, .radio-inline input[type="radio"]:focus {
    outline: medium none;
}
input[type="radio"]::before, .radio input[type="radio"]::before, .radio-inline input[type="radio"]::before, input[type="radio"]::after, .radio input[type="radio"]::after, .radio-inline input[type="radio"]::after {
    border-radius: 50%;
    content: "";
    display: block;
    height: 18px;
    transition: all 240ms ease 0s;
    width: 18px;
}
input[type="radio"]::before, .radio input[type="radio"]::before, .radio-inline input[type="radio"]::before {
    background-color: #FFFFFF;
    right: 0;
    position: absolute;
    top: -5px;
    transform: scale(0);
}
input[type="radio"]::after, .radio input[type="radio"]::after, .radio-inline input[type="radio"]::after {
    position: relative;
    top: -5px;
	background-color: #FFFFFF;
    border-radius: 50%;
    border: 6px solid #5a5a5a;
    -webkit-transition: .28s ease;
    -moz-transition: .28s ease;
    -o-transition: .28s ease;
    -ms-transition: .28s ease;
    transition: .28s ease;
}
input[type="radio"]:checked::before, .radio input[type="radio"]:checked::before, .radio-inline input[type="radio"]:checked::before {
    transform: scale(0.5);
}
input[type="radio"]:disabled:checked::before, .radio input[type="radio"]:disabled:checked::before, .radio-inline input[type="radio"]:disabled:checked::before {
    background-color: #bbbbbb;
}
input[type="radio"]:checked::after, .radio input[type="radio"]:checked::after, .radio-inline input[type="radio"]:checked::after {
    border-radius: 50%;
    border: 6px solid #f44336;
    background-color: #ffffff;
    z-index: 0;
    -webkit-transform: scale(1.02);
    -moz-transform: scale(1.02);
    -ms-transform: scale(1.02);
    -o-transform: scale(1.02);
    transform: scale(1.02);
}
input[type="radio"]:disabled::after, .radio input[type="radio"]:disabled::after, .radio-inline input[type="radio"]:disabled::after, input[type="radio"]:disabled:checked::after, .radio input[type="radio"]:disabled:checked::after, .radio-inline input[type="radio"]:disabled:checked::after {
    border-color: #bbbbbb;
}
input[type="checkbox"], .checkbox input[type="checkbox"], .checkbox-inline input[type="checkbox"] {
    border: medium none;
    cursor: pointer;
    margin-bottom: -4px;
    position: relative;
	margin: 15px !important;
}
input[type="checkbox"]:focus, .checkbox input[type="checkbox"]:focus, .checkbox-inline input[type="checkbox"]:focus {
    outline: medium none;
}
input[type="checkbox"]:focus::after, .checkbox input[type="checkbox"]:focus::after, .checkbox-inline input[type="checkbox"]:focus::after {
    border-color: #5a5a5a;
}
input[type="checkbox"]::after, .checkbox input[type="checkbox"]::after, .checkbox-inline input[type="checkbox"]::after {
    content: '';
    position: absolute;
    top: -6.5px;
    left: 0;
    width: 18px;
    height: 18px;
    z-index: 0;
	background: #fff;
    border: 2px solid #5a5a5a;
    border-radius: 1px;
    margin-top: 2px;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    -ms-transition: 0.2s;
    transition: 0.2s;
}
input[type="checkbox"]:checked::before, .checkbox input[type="checkbox"]:checked::before, .checkbox-inline input[type="checkbox"]:checked::before {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: #fff;
	background: #fff;
    border-image: none;
    border-style: solid;
    border-width: 0 0px 0px 0;
    content: "";
    display: table;
    height: 16px;
    right: 0;
    position: absolute;
    top: 0;
    width: 15px;
}
input[type="checkbox"]:checked::after, .checkbox input[type="checkbox"]:checked::after, .checkbox-inline input[type="checkbox"]:checked::after {
  top: -20px;
  left: -12px;
  width: 17px;
  height: 32px;
  background: transparent;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid #019dd6;
  border-bottom: 2px solid #019dd6;
  -webkit-transform: rotate(40deg);
  -moz-transform: rotate(40deg);
  -ms-transform: rotate(40deg);
  -o-transform: rotate(40deg);
  transform: rotate(40deg);
  -webkit-backface-visibility: hidden;
  -webkit-transform-origin: 100% 100%;
  -moz-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  -o-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}
input[type="checkbox"]:disabled::after, .checkbox input[type="checkbox"]:disabled::after, .checkbox-inline input[type="checkbox"]:disabled::after {
    border-color: #bbbbbb;
}
input[type="checkbox"]:disabled:checked::after, .checkbox input[type="checkbox"]:disabled:checked::after, .checkbox-inline input[type="checkbox"]:disabled:checked::after {
    background-color: #bbbbbb;
    border-color: transparent;
}
select, select.form-control {
    -moz-appearance: none;
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 13px auto;
    border: 0 none;
    border-radius: 0;
    box-shadow: 0 -1px 0 #FFF inset;
    font-size: 16px;
    line-height: 1.5;
    padding-left: 0;
}
select.input-sm, select.form-control.input-sm {
    font-size: 12px;
}
select.input-lg, select.form-control.input-lg {
    font-size: 17px;
}
select:focus, select.form-control:focus {
    box-shadow: 0 -2px 0 #2196f3 inset;
}
select[multiple], select.form-control[multiple] {
    background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
}
/*********************
  Waves
**********************/
/*!
 * Waves v0.6.0
 * http://fian.my.id/Waves
 *
 * Copyright 2014 Alfiana E. Sibuea and other contributors
 * Released under the MIT license
 * https://github.com/fians/Waves/blob/master/LICENSE
 */
.waves-effect {
  position: relative;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  vertical-align: middle;
  z-index: 1;
  will-change: opacity, transform;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.waves-effect .waves-ripple {
  position: absolute;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  margin-left: -10px;
  opacity: 0;
  background: rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.7s ease-out;
  -moz-transition: all 0.7s ease-out;
  -o-transition: all 0.7s ease-out;
  -ms-transition: all 0.7s ease-out;
  transition: all 0.7s ease-out;
  -webkit-transition-property: -webkit-transform, opacity;
  -moz-transition-property: -moz-transform, opacity;
  -o-transition-property: -o-transform, opacity;
  transition-property: transform, opacity;
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  pointer-events: none;
}

.waves-effect.waves-light .waves-ripple {
  background-color: rgba(255, 255, 255, 0.45);
}

.waves-effect.waves-red .waves-ripple {
  background-color: rgba(244, 67, 54, 0.7);
}

.waves-effect.waves-yellow .waves-ripple {
  background-color: rgba(255, 235, 59, 0.7);
}

.waves-effect.waves-orange .waves-ripple {
  background-color: rgba(255, 152, 0, 0.7);
}

.waves-effect.waves-purple .waves-ripple {
  background-color: rgba(156, 39, 176, 0.7);
}

.waves-effect.waves-green .waves-ripple {
  background-color: rgba(76, 175, 80, 0.7);
}

.waves-effect.waves-teal .waves-ripple {
  background-color: rgba(0, 150, 136, 0.7);
}

.waves-notransition {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -o-transition: none !important;
  -ms-transition: none !important;
  transition: none !important;
}

.waves-circle {
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
}

.waves-input-wrapper {
  border-radius: 0.2em;
  vertical-align: bottom;
}

.waves-input-wrapper .waves-button-input {
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
}

.waves-circle {
  text-align: center;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.5em;
  border-radius: 50%;
  -webkit-mask-image: none;
}

.waves-block {
  display: block;
}

/* Firefox Bug: link not triggered */
a.waves-effect .waves-ripple {
  z-index: -1;
}

/*********************
  Media Query Classes
**********************/
@media only screen and (max-width: 600px) {
  .center-on-small-only {
    text-align: center;
  }
}

.no-margin {
  margin: 0;
  padding: 0;
}

.space-30 {
  height: 30px;
}

.vcenter {
  display: inline-block;
  vertical-align: middle;
  float: none;
}

.vertical-center {
  margin: 0;
  min-height: 100%;
  /* Fallback for vh unit */
  min-height: 100vh;
  /* You might also want to use
                        'height' property instead.
                        
                        Note that for percentage values of
                        'height' or 'min-height' properties,
                        the 'height' of the parent element
                        should be specified explicitly.
  
                        In this case the parent of '.vertical-center'
                        is the <body> element */
  /* Make it a flex container */
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  /* Align the bootstrap's container vertically */
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /* In legacy web browsers such as Firefox 9
     we need to specify the width of the flex container */
  width: 100%;
  /* Also 'margin: 0 auto' doesn't have any effect on flex items in such web browsers
     hence the bootstrap's container won't be aligned to the center anymore.
  
     Therefore, we should use the following declarations to get it centered again */
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}