.checkbox,
.checkbox-inline {
 padding-right:20px
}
.checkbox label,
.checkbox-inline label {
 display:inline-block;
 vertical-align:middle;
 position:relative;
 padding-right:5px;
 margin-left:10px
}
.checkbox label::before,
.checkbox-inline label::before {
 content:"";
 display:inline-block;
 position:absolute;
 width:18px;
 height:18px;
 right:0;
 top:2px;
 margin-right:-20px;
 border:1px solid #ccc;
 border-radius:0;
 background-color:#fff;
 transition:border .15s ease-in-out
}
.checkbox label::after,
.checkbox-inline label::after {
 display:inline-block;
 position:absolute;
 width:18px;
 height:18px;
 right:0;
 top:2px;
 margin-right:-20px;
 padding-right:3px;
 padding-top:1px;
 font-size:11px;
 color:#0099da
}
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
 opacity:0;
 z-index:1;
 transition:all .15s ease-in-out
}
.checkbox input[type="checkbox"]:focus + label::before,
.checkbox-inline input[type="checkbox"]:focus + label::before {
 border-color:#0099da
}
.checkbox input[type="checkbox"]:checked + label::after,
.checkbox-inline input[type="checkbox"]:checked + label::after {
 content:"";
 background-color:#0099da;
 width:10px;
 height:10px;
 top:6px;
 right:4px;
 transition:all .15s ease-in-out
}
.checkbox input[type="checkbox"]:disabled + label,
.checkbox-inline input[type="checkbox"]:disabled + label {
 opacity:.65
}
.checkbox input[type="checkbox"]:disabled + label::before,
.checkbox-inline input[type="checkbox"]:disabled + label::before {
 background-color:#ddd;
 cursor:not-allowed
}
.checkbox.checkbox-inline,
.checkbox-inline.checkbox-inline {
 margin-top:0
}
.radio {
 padding-right:20px
}
.radio label {
 display:inline-block;
 vertical-align:middle;
 position:relative;
 padding-right:5px;
 line-height:1.5
}
.radio label::before {
 content:"";
 display:inline-block;
 position:absolute;
 width:17px;
 height:17px;
 right:0;
 margin-right:-20px;
 border:1px solid #ccc;
 border-radius:50%;
 background-color:#fff;
 transition:border .15s ease-in-out
}
.radio label::after {
 display:inline-block;
 position:absolute;
 content:" ";
 width:9px;
 height:9px;
 right:4px;
 top:4px;
 margin-right:-20px;
 border-radius:50%;
 background-color:#0099da;
 transform:scale(0,0);
 transition:.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 {
 border-color:#0099da
}
.radio input[type="radio"]:checked + label::after {
 transform:scale(1,1)
}
.radio input[type="radio"]:disabled + label {
 opacity:.65
}
.radio input[type="radio"]:disabled + label::before {
 cursor:not-allowed
}
.radio.radio-inline {
 margin-top:0
}
.radio.radio-dark label::before {
 background-color:#444;
 border:0
}
.radio.radio-dark label::after {
 width:11px;
 height:11px;
 right:3px;
 top:3px
}