/* Base for label styling */
.mycheckbox[type="checkbox"]:not(:checked),
.mycheckbox[type="checkbox"]:checked {
	position: absolute;
	left: -9999px;
}
.mycheckbox[type="checkbox"]:not(:checked) + label,
.mycheckbox[type="checkbox"]:checked + label {
	position: relative;
	padding-left: 25px;
	cursor: pointer;
}

/* checkbox aspect */
.mycheckbox[type="checkbox"]:not(:checked) + label:before,
.mycheckbox[type="checkbox"]:checked + label:before {
	content: '';
	position: absolute;
	left:0; top: 2px;
	width: 17px; height: 17px;
	border: 1px solid #aaa;
	background: #f8f8f8;
	border-radius: 3px;
	box-shadow: inset 0 1px 3px rgba(0,0,0,.3)
}
/* checked mark aspect */
.mycheckbox[type="checkbox"]:not(:checked) + label:after,
.mycheckbox[type="checkbox"]:checked + label:after {
	content: url(../images/coche.png);
	position: absolute;
	top: 0; left: 4px;
	font-size: 14px;
	color: #09ad7e;
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	-ms-transition: all .2s;
	transition: all .2s;
}
/* checked mark aspect changes */
.mycheckbox[type="checkbox"]:not(:checked) + label:after {
	opacity: 0;
	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.mycheckbox[type="checkbox"]:checked + label:after {
	opacity: 1;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}
/* disabled checkbox */
.mycheckbox[type="checkbox"]:disabled:not(:checked) + label:before,
.mycheckbox[type="checkbox"]:disabled:checked + label:before {
	box-shadow: none;
	border-color: #bbb;
	background-color: #ddd;
}
.mycheckbox[type="checkbox"]:disabled:checked + label:after {
	color: #999;
}
.mycheckbox[type="checkbox"]:disabled + label {
	color: #aaa;
}
/* accessibility */
.mycheckbox[type="checkbox"]:checked:focus + label:before,
.mycheckbox[type="checkbox"]:not(:checked):focus + label:before {
	border: 1px dotted blue;
}


/*-----------------------------------------------------------------------------------------------*/
/* Base for label styling */
.myradio[type="radio"]:not(:checked),
.myradio[type="radio"]:checked {	
	position: absolute;
	left: -9999px;
}
.myradio[type="radio"]:not(:checked) + label,
.myradio[type="radio"]:checked + label {
	position: relative;
	padding-left: 25px;
	cursor: pointer;
}

/* checkbox aspect */
.myradio[type="radio"]:not(:checked) + label:before,
.myradio[type="radio"]:checked + label:before {
	content: '';
	position: absolute;
	left:0; top: 2px;
	width: 17px; height: 17px;
	border: 1px solid #aaa;
	background: #f8f8f8;
	/*
	border-radius: 3px;
	box-shadow: inset 0 1px 3px rgba(0,0,0,.3)
	*/
	-webkit-border-radius: px;
	-moz-border-radius: 50px;
	border-radius: 50px;

	-webkit-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
	-moz-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
	box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
}
/* checked mark aspect */
.myradio[type="radio"]:not(:checked) + label:after,
.myradio[type="radio"]:checked + label:after {
	content: url(../images/coche.png);
	position: absolute;
	top: 0; left: 4px;
	font-size: 14px;
	color: #09ad7e;
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	-ms-transition: all .2s;
	transition: all .2s;
}
/* checked mark aspect changes */
.myradio[type="radio"]:not(:checked) + label:after {	
	opacity: 0;
	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.myradio[type="radio"]:checked + label:after {
	opacity: 1;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}
/* disabled checkbox */
.myradio[type="radio"]:disabled:not(:checked) + label:before,
.myradio[type="radio"]:disabled:checked + label:before {
	box-shadow: none;
	border-color: #bbb;
	background-color: #ddd;
}
.myradio[type="radio"]:disabled:checked + label:after {
	color: #999;
}
.myradio[type="radio"]:disabled + label {
	color: #aaa;
}
/* accessibility */
.myradio[type="radio"]:checked:focus + label:before,
.myradio[type="radio"]:not(:checked):focus + label:before {
	border: 1px dotted blue;
}

/*-----------------------------------------------------------------------------------------------*/
/* Base for label styling */
.myradioforbidden[type="radio"]:not(:checked),
.myradioforbidden[type="radio"]:checked {	
	position: absolute;
	left: -9999px;
}
.myradioforbidden[type="radio"]:not(:checked) + label,
.myradioforbidden[type="radio"]:checked + label {
	position: relative;
	padding-left: 25px;
	cursor: pointer;
}

/* checkbox aspect */
.myradioforbidden[type="radio"]:not(:checked) + label:before,
.myradioforbidden[type="radio"]:checked + label:before {
	content: '';
	position: absolute;
	left:2px; 
	top: 0px;
	width: 17px; height: 17px;
	border: 1px solid #aaa;
	background: #f8f8f8;
	/*
	border-radius: 3px;
	box-shadow: inset 0 1px 3px rgba(0,0,0,.3)
	*/
	-webkit-border-radius: px;
	-moz-border-radius: 50px;
	border-radius: 50px;

	-webkit-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
	-moz-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
	box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5);
}
/* checked mark aspect */
.myradioforbidden[type="radio"]:not(:checked) + label:after,
.myradioforbidden[type="radio"]:checked + label:after {
	content: url(../images/coche-interdit.png);
	position: absolute;
	left: 3px;
	top: 1px; 	
	font-size: 14px;
	color: #09ad7e;
	-webkit-transition: all .2s;
	-moz-transition: all .2s;
	-ms-transition: all .2s;
	transition: all .2s;
}
/* checked mark aspect changes */
.myradioforbidden[type="radio"]:not(:checked) + label:after {	
	opacity: 0;
	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}
.myradioforbidden[type="radio"]:checked + label:after {
	opacity: 1;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}
/* disabled checkbox */
.myradioforbidden[type="radio"]:disabled:not(:checked) + label:before,
.myradioforbidden[type="radio"]:disabled:checked + label:before {
	box-shadow: none;
	border-color: #bbb;
	background-color: #ddd;
}
.myradioforbidden[type="radio"]:disabled:checked + label:after {
	color: #999;
}
.myradioforbidden[type="radio"]:disabled + label {
	color: #aaa;
}
/* accessibility */
.myradioforbidden[type="radio"]:checked:focus + label:before,
.myradioforbidden[type="radio"]:not(:checked):focus + label:before {
	border: 1px dotted blue;
}
