/*-----------------------------------*/
/* Custom checkboxes, radios */
/*-----------------------------------*/

.custom-checkbox, .custom-radio {position:relative;}
.custom-checkbox label::selection, .custom-radio label::selection {background: transparent; color: inherit;}
.custom-checkbox input, .custom-radio input {position: absolute; top: 0; left: 10px; margin:0; border:none; width: 1px; height: 1px; display: none;}
.ie8 .custom-checkbox input, .ie8 .custom-radio input {display:block;}
.custom-checkbox label.focus, .custom-radio label.focus {outline: none;}

.custom-checkbox label,
.custom-radio label {
    display: block;
    position: relative;
    line-height: 22px;
    padding-left: 32px;
    margin-bottom: 14px;
    cursor: pointer;
    min-height: 22px;}

.custom-checkbox label {line-height: 22px; min-height: 20px;color:#191919;font-size:15px;font-style:italic;}

.custom-checkbox label:before,
.custom-checkbox label:after,
.custom-radio label:before,
.custom-radio label:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    font-style:normal;
}
.custom-checkbox label:before,
.custom-radio label:before {
    width: 22px;
    height: 22px;
    background: #d4d4d4;
    -webkit-box-shadow: inset 1px 1px 0 rgba(0,0,0,.15);
    box-shadow: inset 1px 1px 0 rgba(0,0,0,.15);
    border-radius: 50%;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.custom-checkbox label:before {
    width: 24px;
    height: 24px;
    border-radius: 0;
}
.custom-checkbox label.checked:before,
.custom-radio label.checked:before {
    background: #ee5190;
    box-shadow:none;
}

.green .custom-checkbox label.checked:before,
.green .custom-radio label.checked:before {
  background:#c1ca00;
}

.custom-checkbox label:after {
    font-family: 'Glyphicons Halflings';
    font-size: 12px;
    line-height: 26px;
    color: #fff;
    text-align: center !important;
    width: 24px;
    height: 24px;
    border-radius: 3px;
}
.custom-checkbox label.checked:after {content: '\e013';}

.custom-radio label.checked:after {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #fff;
    top: 7px;
    left: 7px;
}

/* checkboxes, radios Right Align */
.label-right .custom-checkbox label,
.label-right .custom-radio label {
    padding-left: 0;
    padding-right: 32px;
    text-align: right;
}
.label-right .custom-checkbox label:before,
.label-right .custom-checkbox label:after,
.label-right .custom-radio label:before,
.label-right .custom-radio label:after {
    left: auto;
    right: 0;
}
.label-right .custom-radio label.checked:after {left: auto; right: 7px;}

/* Switch
--------------------------------------------------------*/
.switch .custom-checkbox label {padding-left: 70px;display:inline-block;}
.label-right.switch .custom-checkbox label {display:block;}

.switch .custom-checkbox label:before {
    content: 'Off';
    width: 65px;
    height: 24px;
    padding: 0 5px;
    font-size: 12px;
    color: #f6f6f2;
    text-align: left !important;
    line-height: 24px;
    background: #d4d4d4;
    box-shadow:none;
    font-weight:500;
    font-style:normal;
    color:#3a3a3a;
    text-transform: uppercase;
}
.switch .custom-checkbox label.checked:before {
    content: 'On';
    text-align: right !important;
    background: #ee5190;
    color:#fff;
    padding: 0 7px;
}
.switch .custom-checkbox label:after {
    content: '';
    top: 2px;
    left: 29px;
    width: 34px;
    height: 20px;
    background:url(images/switch_check.png);
    border-radius:0;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.switch .custom-checkbox label.checked:after {left: 2px;background-position:0 -22px;}

/* Switch Right Align */
.label-right.switch .custom-checkbox label {padding-left: 0; padding-right: 70px;}
.label-right.switch .custom-checkbox label:after {left: auto; right: 2px;}
.label-right.switch .custom-checkbox label.checked:after {left: auto; right: 29px;}

/* Large Switch
--------------------------------------------------------*/
.switch-large .custom-checkbox label {
    padding-left: 90px;
    line-height: 36px;
    min-height: 36px;
}
.switch-large .custom-checkbox label:before,
.switch-large .custom-checkbox label:after {
    content: 'On';
    width: 87px;
    height: 40px;
    line-height: 38px;
    font-family: 'Cabin', serif;
    font-size: 10px;
    color: #6f6f6f;
    text-align: left !important;
    text-shadow: 0 1px 0 #fff;
    background: url(images/switch.png) 0 0 no-repeat;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transition: none;
    transition: none;
    padding: 0 16px 0 19px;
    left: -6px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi) {
    .switch-large .custom-checkbox label:before {
        background-image:url(images/switch-x2.png);
        background-size: 87px auto;
    }
}
.switch-large .custom-checkbox label:after {
    content: 'Off';
    background: none;
    color: #f87600;
    text-align: right !important;
}
.switch-large .custom-checkbox label.checked:before {background-position: 0 -100px; color: #f87600;}
.switch-large .custom-checkbox label.checked:after {color: #6f6f6f;}

/* Large Switch Right Align */
.label-right.switch-large .custom-checkbox label {padding-left: 0; padding-right: 90px;}

.label-right.switch-large .custom-checkbox label:before,
.label-right.switch-large .custom-checkbox label:after {
    left: auto;
    right: -6px;
}

/* Inline checkboxes, radios
--------------------------------------------------------*/
.input_styled.inline .rowCheckbox,
.input_styled.inline .rowRadio,
.input_styled.inline span {
    display: inline-block;
    margin-right: 10px;
}
.input_styled.inline span {line-height: 22px; margin-bottom: 14px;}

/*-----------------------------------*/
/* Ribbons */
/*-----------------------------------*/

.ribbon {
  position:relative;
  display:inline-block;
  height:36px;
  line-height:36px;
  background:#ee5190;
  color:#fff;
  font-size:14px;
  font-style:italic;
  text-shadow:0 1px 0 rgba(0,0,0,.3);
  padding:0 10px 0 25px;
  z-index:3;
  left:-50px;}

.ribbon:after {
  content:'';
  position:absolute;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 18px 0 18px 15px;
  border-color: transparent transparent transparent #ee5190;
  top:0;
  right:-15px;
}

.ribbon:before {
  content:'';
  position:absolute;
  left:0;
  bottom:-27px;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 26px 27px 0;
  border-color: transparent #d03473 transparent transparent;
  z-index:2;
}

.ribbon .ribbon-stitches-top {
  position:absolute;
  bottom:-27px;
  left:-25px;
  height:35px;
  width:51px;
  background:#ee5190;
  z-index:1;
}

.ribbon .ribbon-stitches-top:before {
  content:'';
  position:absolute;
  left:-14px;
  top:0;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 14px 16px 0;
  border-color: transparent #ee5190 transparent transparent;
}

.ribbon .ribbon-stitches-top:after {
  content:'';
  position:absolute;
  bottom:0;
  left:-11px;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 0 18px 11px;
  border-color: transparent transparent #ee5190 transparent;
}

/* green ribbon*/
.ribbon.ribbon-green,.ribbon.ribbon-green .ribbon-stitches-top {background:#c1ca00;}
.ribbon.ribbon-green:after {border-color: transparent transparent transparent #c1ca00;}
.ribbon.ribbon-green:before {border-color: transparent #a6ae00 transparent transparent;}
.ribbon.ribbon-green .ribbon-stitches-top:before{border-color: transparent #c1ca00 transparent transparent;}
.ribbon.ribbon-green .ribbon-stitches-top:after {border-color: transparent transparent #c1ca00 transparent;}

/*brown ribbon*/
.ribbon.ribbon-brown,.ribbon.ribbon-brown .ribbon-stitches-top {background:#ae8f75;}
.ribbon.ribbon-brown:after {border-color: transparent transparent transparent #ae8f75;}
.ribbon.ribbon-brown:before {border-color: transparent #917055 transparent transparent;}
.ribbon.ribbon-brown .ribbon-stitches-top:before{border-color: transparent #ae8f75 transparent transparent;}
.ribbon.ribbon-brown .ribbon-stitches-top:after {border-color: transparent transparent #ae8f75 transparent;}

/*orange ribbon*/
.ribbon.ribbon-orange,.ribbon.ribbon-orange .ribbon-stitches-top {background:#ffb529;}
.ribbon.ribbon-orange:after {border-color: transparent transparent transparent #ffb529;}
.ribbon.ribbon-orange:before {border-color: transparent #d29520 transparent transparent;}
.ribbon.ribbon-orange .ribbon-stitches-top:before{border-color: transparent #ffb529 transparent transparent;}
.ribbon.ribbon-orange .ribbon-stitches-top:after {border-color: transparent transparent #ffb529 transparent;}

/*blue ribbon*/
.ribbon.ribbon-blue,.ribbon.ribbon-blue .ribbon-stitches-top {background:#0cc3d9;}
.ribbon.ribbon-blue:after {border-color: transparent transparent transparent #0cc3d9;}
.ribbon.ribbon-blue:before {border-color: transparent #0f98a9 transparent transparent;}
.ribbon.ribbon-blue .ribbon-stitches-top:before{border-color: transparent #0cc3d9 transparent transparent;}
.ribbon.ribbon-blue .ribbon-stitches-top:after {border-color: transparent transparent #0cc3d9 transparent;}

@media (max-width:479px), (min-width:768px) and (max-width:991px) {
  .ribbon {left:-36px;}
}

.ckbox,
.rdio {
	position: relative;
}

.ckbox input[type="checkbox"],
.rdio input[type="radio"] {
	opacity: 0;
}

.ckbox label,
.rdio label {
	padding-left: 10px;
	cursor: pointer;
	margin-bottom: 7px !important;
}

.ckbox label:before {
	width: 18px;
	height: 18px;
	position: absolute;
	top: 1px;
	left: 0;
	content: '';
	display: inline-block;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	border: 1px solid #bbb;
	background: #fff;
}

.ckbox input[type="checkbox"]:disabled + label  {
	color: #999;
}

.ckbox input[type="checkbox"]:disabled + label:before  {
	background-color: #eee;
}

.ckbox input[type="checkbox"]:checked + label::after  {
	font-family: 'FontAwesome';
	content: "\F00C";
	position: absolute;
	top: 0;
	left: 3.5px;
	display: inline-block;
	font-size: 11px;
	width: 16px;
	height: 16px;
	color: #fff;
}

.ckbox-default input[type="checkbox"]:checked + label:before {
	border-color: #999;
}

.ckbox-default input[type="checkbox"]:checked + label::after {
	color: #333;
}

.ckbox-primary input[type="checkbox"]:checked + label:before {
	border-color: #357EBD;
	background-color: #428BCA;
}

.ckbox-warning input[type="checkbox"]:checked + label:before {
	border-color: #EEA236;
	background-color: #F0AD4E;
}

.ckbox-success input[type="checkbox"]:checked + label:before {
	border-color: #1CAF9A;
	background-color: #1CAF9A;
}

.ckbox-danger input[type="checkbox"]:checked + label:before {
	border-color: #D43F3A;
	background-color: #D9534F;
}

.rdio label:before {
	width: 18px;
	height: 18px;
	position: absolute;
	top: 1px;
	left: 0;
	content: '';
	display: inline-block;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	border-radius: 50px;
	border: 1px solid #bbb;
	background: #fff;
}

.rdio input[type="radio"]:disabled + label  {
	color: #999;
}

.rdio input[type="radio"]:disabled + label:before  {
	background-color: #eee;
}

.rdio input[type="radio"]:checked + label::after  {
	content: '';
	position: absolute;
	top: 5px;
	left: 4px;
	display: inline-block;
	font-size: 11px;
	width: 10px;
	height: 10px;
	background-color: #444;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	border-radius: 50px;
}

.rdio-default input[type="radio"]:checked + label:before {
	border-color: #999;
}

.rdio-primary input[type="radio"]:checked + label:before {
	border-color: #428BCA;
}

.rdio-primary input[type="radio"]:checked + label::after {
	background-color: #428BCA;
}

.rdio-warning input[type="radio"]:checked + label:before {
	border-color: #F0AD4E;
}

.rdio-warning input[type="radio"]:checked + label::after {
	background-color: #F0AD4E;
}

.rdio-success input[type="radio"]:checked + label:before {
	border-color: #1CAF9A;
}

.rdio-success input[type="radio"]:checked + label::after {
	background-color: #1CAF9A;
}

.rdio-danger input[type="radio"]:checked + label:before {
	border-color: #D9534F;
}

.rdio-danger input[type="radio"]:checked + label::after {
	background-color: #D9534F;
}
