.checkbox {
     padding-left: 20px;
   }
   .checkbox label {
     display: inline-block;
     vertical-align: middle;
     position: relative;
     padding-left: 5px;
   }
   .checkbox label::before {
     content: "";
     display: inline-block;
     position: absolute;
     width: 17px;
     height: 17px;
     left: 0;
     margin-left: -20px;
     border: 1px solid #cccccc;
     border-radius: 3px;
     background-color: #fff;
     -webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
     -o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
     transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
   }
   .checkbox label::after {
     display: inline-block;
     position: absolute;
     width: 16px;
     height: 16px;
     left: 0;
     top: 0;
     margin-left: -20px;
     padding-left: 3px;
     padding-top: 1px;
     font-size: 11px;
     color: #555555;
   }
   .checkbox input[type="checkbox"],
   .checkbox input[type="radio"] {
     opacity: 0;
     z-index: 1;
   }
   .checkbox input[type="checkbox"]:focus + label::before,
   .checkbox input[type="radio"]:focus + label::before {
     outline: thin dotted;
     outline: 5px auto -webkit-focus-ring-color;
     outline-offset: -2px;
   }
   .checkbox input[type="checkbox"]:checked + label::after,
   .checkbox input[type="radio"]:checked + label::after {
     font-family: "FontAwesome";
     content: "\f00c";
   }
   .checkbox input[type="checkbox"]:indeterminate + label::after,
   .checkbox input[type="radio"]:indeterminate + label::after {
     display: block;
     content: "";
     width: 10px;
     height: 3px;
     background-color: #555555;
     border-radius: 2px;
     margin-left: -16.5px;
     margin-top: 7px;
   }
   .checkbox input[type="checkbox"]:disabled + label,
   .checkbox input[type="radio"]:disabled + label {
     opacity: 0.65;
   }
   .checkbox input[type="checkbox"]:disabled + label::before,
   .checkbox input[type="radio"]:disabled + label::before {
     background-color: #eeeeee;
     cursor: not-allowed;
   }
   .checkbox.checkbox-circle label::before {
     border-radius: 50%;
   }
   .checkbox.checkbox-inline {
     margin-top: 0;
   }
   
   .checkbox-primary input[type="checkbox"]:checked + label::before,
   .checkbox-primary input[type="radio"]:checked + label::before {
     background-color: #337ab7;
     border-color: #337ab7;
   }
   .checkbox-primary input[type="checkbox"]:checked + label::after,
   .checkbox-primary input[type="radio"]:checked + label::after {
     color: #fff;
   }
   
   .checkbox-danger input[type="checkbox"]:checked + label::before,
   .checkbox-danger input[type="radio"]:checked + label::before {
     background-color: #d9534f;
     border-color: #d9534f;
   }
   .checkbox-danger input[type="checkbox"]:checked + label::after,
   .checkbox-danger input[type="radio"]:checked + label::after {
     color: #fff;
   }
   
   .checkbox-info input[type="checkbox"]:checked + label::before,
   .checkbox-info input[type="radio"]:checked + label::before {
     background-color: #5bc0de;
     border-color: #5bc0de;
   }
   .checkbox-info input[type="checkbox"]:checked + label::after,
   .checkbox-info input[type="radio"]:checked + label::after {
     color: #fff;
   }
   
   .checkbox-warning input[type="checkbox"]:checked + label::before,
   .checkbox-warning input[type="radio"]:checked + label::before {
     background-color: #f0ad4e;
     border-color: #f0ad4e;
   }
   .checkbox-warning input[type="checkbox"]:checked + label::after,
   .checkbox-warning input[type="radio"]:checked + label::after {
     color: #fff;
   }
   
   .checkbox-success input[type="checkbox"]:checked + label::before,
   .checkbox-success input[type="radio"]:checked + label::before {
     background-color: #5cb85c;
     border-color: #5cb85c;
   }
   .checkbox-success input[type="checkbox"]:checked + label::after,
   .checkbox-success input[type="radio"]:checked + label::after {
     color: #fff;
   }
   
   .checkbox-primary input[type="checkbox"]:indeterminate + label::before,
   .checkbox-primary input[type="radio"]:indeterminate + label::before {
     background-color: #337ab7;
     border-color: #337ab7;
   }
   
   .checkbox-primary input[type="checkbox"]:indeterminate + label::after,
   .checkbox-primary input[type="radio"]:indeterminate + label::after {
     background-color: #fff;
   }
   
   .checkbox-danger input[type="checkbox"]:indeterminate + label::before,
   .checkbox-danger input[type="radio"]:indeterminate + label::before {
     background-color: #d9534f;
     border-color: #d9534f;
   }
   
   .checkbox-danger input[type="checkbox"]:indeterminate + label::after,
   .checkbox-danger input[type="radio"]:indeterminate + label::after {
     background-color: #fff;
   }
   
   .checkbox-info input[type="checkbox"]:indeterminate + label::before,
   .checkbox-info input[type="radio"]:indeterminate + label::before {
     background-color: #5bc0de;
     border-color: #5bc0de;
   }
   
   .checkbox-info input[type="checkbox"]:indeterminate + label::after,
   .checkbox-info input[type="radio"]:indeterminate + label::after {
     background-color: #fff;
   }
   
   .checkbox-warning input[type="checkbox"]:indeterminate + label::before,
   .checkbox-warning input[type="radio"]:indeterminate + label::before {
     background-color: #f0ad4e;
     border-color: #f0ad4e;
   }
   
   .checkbox-warning input[type="checkbox"]:indeterminate + label::after,
   .checkbox-warning input[type="radio"]:indeterminate + label::after {
     background-color: #fff;
   }
   
   .checkbox-success input[type="checkbox"]:indeterminate + label::before,
   .checkbox-success input[type="radio"]:indeterminate + label::before {
     background-color: #5cb85c;
     border-color: #5cb85c;
   }
   
   .checkbox-success input[type="checkbox"]:indeterminate + label::after,
   .checkbox-success input[type="radio"]:indeterminate + label::after {
     background-color: #fff;
   }
   
   .radio {
     padding-left: 20px;
   }
   .radio label {
     display: inline-block;
     vertical-align: middle;
     position: relative;
     padding-left: 5px;
   }
   .radio label::before {
     content: "";
     display: inline-block;
     position: absolute;
     width: 17px;
     height: 17px;
     left: 0;
     margin-left: -20px;
     border: 1px solid #cccccc;
     border-radius: 50%;
     background-color: #fff;
     -webkit-transition: border 0.15s ease-in-out;
     -o-transition: border 0.15s ease-in-out;
     transition: border 0.15s ease-in-out;
   }
   .radio label::after {
     display: inline-block;
     position: absolute;
     content: " ";
     width: 11px;
     height: 11px;
     left: 3px;
     top: 3px;
     margin-left: -20px;
     border-radius: 50%;
     background-color: #555555;
     -webkit-transform: scale(0, 0);
     -ms-transform: scale(0, 0);
     -o-transform: scale(0, 0);
     transform: scale(0, 0);
     -webkit-transition: -webkit-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
     -moz-transition: -moz-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
     -o-transition: -o-transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
     transition: transform 0.1s cubic-bezier(0.8, -0.33, 0.2, 1.33);
   }
   .radio input[type="radio"] {
     opacity: 0;
     z-index: 1;
   }
   .radio input[type="radio"]:focus + label::before {
     outline: thin dotted;
     outline: 5px auto -webkit-focus-ring-color;
     outline-offset: -2px;
   }
   .radio input[type="radio"]:checked + label::after {
     -webkit-transform: scale(1, 1);
     -ms-transform: scale(1, 1);
     -o-transform: scale(1, 1);
     transform: scale(1, 1);
   }
   .radio input[type="radio"]:disabled + label {
     opacity: 0.65;
   }
   .radio input[type="radio"]:disabled + label::before {
     cursor: not-allowed;
   }
   .radio.radio-inline {
     margin-top: 0;
   }
   
   .radio-primary input[type="radio"] + label::after {
     background-color: #337ab7;
   }
   .radio-primary input[type="radio"]:checked + label::before {
     border-color: #337ab7;
   }
   .radio-primary input[type="radio"]:checked + label::after {
     background-color: #337ab7;
   }
   
   .radio-danger input[type="radio"] + label::after {
     background-color: #d9534f;
   }
   .radio-danger input[type="radio"]:checked + label::before {
     border-color: #d9534f;
   }
   .radio-danger input[type="radio"]:checked + label::after {
     background-color: #d9534f;
   }
   
   .radio-info input[type="radio"] + label::after {
     background-color: #5bc0de;
   }
   .radio-info input[type="radio"]:checked + label::before {
     border-color: #5bc0de;
   }
   .radio-info input[type="radio"]:checked + label::after {
     background-color: #5bc0de;
   }
   
   .radio-warning input[type="radio"] + label::after {
     background-color: #f0ad4e;
   }
   .radio-warning input[type="radio"]:checked + label::before {
     border-color: #f0ad4e;
   }
   .radio-warning input[type="radio"]:checked + label::after {
     background-color: #f0ad4e;
   }
   
   .radio-success input[type="radio"] + label::after {
     background-color: #5cb85c;
   }
   .radio-success input[type="radio"]:checked + label::before {
     border-color: #5cb85c;
   }
   .radio-success input[type="radio"]:checked + label::after {
     background-color: #5cb85c;
   }
   
   input[type="checkbox"].styled:checked + label:after,
   input[type="radio"].styled:checked + label:after {
     font-family: 'FontAwesome';
     content: "\f00c";
   }
   input[type="checkbox"] .styled:checked + label::before,
   input[type="radio"] .styled:checked + label::before {
     color: #fff;
   }
   input[type="checkbox"] .styled:checked + label::after,
   input[type="radio"] .styled:checked + label::after {
     color: #fff;
   }  