/**
 * pretty-checkbox.css
 *
 * A pure CSS library to beautify checkbox and radio buttons
 *
 * Source: https://github.com/lokesh-coder/pretty-checkbox
 * Demo: https://lokesh-coder.github.io/pretty-checkbox
 *
 * Copyright (c) 2017 Lokesh rajendran
 */

.pretty * {
	box-sizing: border-box;
}
.pretty input:not([type="checkbox"]):not([type="radio"]) {
	display: none;
}
.pretty {
	position: relative;
	display: inline-block;
	margin-right: 1em;
	white-space: nowrap;
	line-height: 1;
}
.pretty input {
	position: absolute;
	left: 0;
	top: 0;
	min-width: 1em;
	width: 100%;
	height: 100%;
	z-index: 2;
	opacity: 0;
	margin: 0;
	padding: 0;
	cursor: pointer;
}
.pretty .state label {
	position: initial;
	display: inline-block;
	font-weight: 400;
	margin: 0;
	text-indent: 1.5em;
	min-width: calc(1em + 2px);
}
.pretty .state label:after,
.pretty .state label:before {
	content: "";
	width: calc(1em + 2px);
	height: calc(1em + 2px);
	display: block;
	box-sizing: border-box;
	border-radius: 0;
	border: 1px solid transparent;
	z-index: 0;
	position: absolute;
	left: 0;
	top: calc((0% - (100% - 1em)) - 8%);
	background-color: transparent;
}
.pretty .state label:before {
	border-color: #bdc3c7;
}
.pretty .state.p-is-hover,
.pretty .state.p-is-indeterminate {
	display: none;
}
@-webkit-keyframes zoom {
	0% {
		opacity: 0;
		-webkit-transform: scale(0);
		transform: scale(0);
	}
}
@keyframes zoom {
	0% {
		opacity: 0;
		-webkit-transform: scale(0);
		transform: scale(0);
	}
}
@-webkit-keyframes tada {
	0% {
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		opacity: 0;
		-webkit-transform: scale(7);
		transform: scale(7);
	}
	38% {
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	55% {
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
	72% {
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	81% {
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		-webkit-transform: scale(1.24);
		transform: scale(1.24);
	}
	89% {
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	95% {
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		-webkit-transform: scale(1.04);
		transform: scale(1.04);
	}
	100% {
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes tada {
	0% {
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		opacity: 0;
		-webkit-transform: scale(7);
		transform: scale(7);
	}
	38% {
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	55% {
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
	72% {
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	81% {
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		-webkit-transform: scale(1.24);
		transform: scale(1.24);
	}
	89% {
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	95% {
		-webkit-animation-timing-function: ease-in;
		animation-timing-function: ease-in;
		-webkit-transform: scale(1.04);
		transform: scale(1.04);
	}
	100% {
		-webkit-animation-timing-function: ease-out;
		animation-timing-function: ease-out;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@-webkit-keyframes jelly {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	30% {
		-webkit-transform: scale3d(0.75, 1.25, 1);
		transform: scale3d(0.75, 1.25, 1);
	}
	40% {
		-webkit-transform: scale3d(1.25, 0.75, 1);
		transform: scale3d(1.25, 0.75, 1);
	}
	50% {
		-webkit-transform: scale3d(0.85, 1.15, 1);
		transform: scale3d(0.85, 1.15, 1);
	}
	65% {
		-webkit-transform: scale3d(1.05, 0.95, 1);
		transform: scale3d(1.05, 0.95, 1);
	}
	75% {
		-webkit-transform: scale3d(0.95, 1.05, 1);
		transform: scale3d(0.95, 1.05, 1);
	}
	100% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}
@keyframes jelly {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	30% {
		-webkit-transform: scale3d(0.75, 1.25, 1);
		transform: scale3d(0.75, 1.25, 1);
	}
	40% {
		-webkit-transform: scale3d(1.25, 0.75, 1);
		transform: scale3d(1.25, 0.75, 1);
	}
	50% {
		-webkit-transform: scale3d(0.85, 1.15, 1);
		transform: scale3d(0.85, 1.15, 1);
	}
	65% {
		-webkit-transform: scale3d(1.05, 0.95, 1);
		transform: scale3d(1.05, 0.95, 1);
	}
	75% {
		-webkit-transform: scale3d(0.95, 1.05, 1);
		transform: scale3d(0.95, 1.05, 1);
	}
	100% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}
@-webkit-keyframes rotate {
	0% {
		opacity: 0;
		-webkit-transform: translateZ(-200px) rotate(-45deg);
		transform: translateZ(-200px) rotate(-45deg);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateZ(0) rotate(0);
		transform: translateZ(0) rotate(0);
	}
}
@keyframes rotate {
	0% {
		opacity: 0;
		-webkit-transform: translateZ(-200px) rotate(-45deg);
		transform: translateZ(-200px) rotate(-45deg);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateZ(0) rotate(0);
		transform: translateZ(0) rotate(0);
	}
}
@-webkit-keyframes pulse {
	0% {
		box-shadow: 0 0 0 0 #bdc3c7;
	}
	100% {
		box-shadow: 0 0 0 1.5em rgba(189, 195, 199, 0);
	}
}
@keyframes pulse {
	0% {
		box-shadow: 0 0 0 0 #bdc3c7;
	}
	100% {
		box-shadow: 0 0 0 1.5em rgba(189, 195, 199, 0);
	}
}
.pretty.p-default.p-fill .state label:after {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}
.pretty.p-default .state label:after {
	-webkit-transform: scale(0.6);
	-ms-transform: scale(0.6);
	transform: scale(0.6);
}
.pretty.p-default input:checked ~ .state label:after {
	background-color: #bdc3c7 !important;
}
.pretty.p-default.p-thick .state label:after,
.pretty.p-default.p-thick .state label:before {
	border-width: calc(1em / 7);
}
.pretty.p-default.p-thick .state label:after {
	-webkit-transform: scale(0.4) !important;
	-ms-transform: scale(0.4) !important;
	transform: scale(0.4) !important;
}
.pretty.p-icon .state .icon {
	position: absolute;
	font-size: 1em;
	width: calc(1em + 2px);
	height: calc(1em + 2px);
	left: 0;
	z-index: 1;
	text-align: center;
	line-height: normal;
	top: calc((0% - (100% - 1em)) - 8%);
	border: 1px solid transparent;
	opacity: 0;
}
.pretty.p-icon .state .icon:before {
	margin: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	line-height: 1;
}
.pretty.p-icon input:checked ~ .state .icon {
	opacity: 1;
}
.pretty.p-icon input:checked ~ .state label:before {
	border-color: #5a656b;
}
.pretty.p-svg .state .svg {
	position: absolute;
	font-size: 1em;
	width: calc(1em + 2px);
	height: calc(1em + 2px);
	left: 0;
	z-index: 1;
	text-align: center;
	line-height: normal;
	top: calc((0% - (100% - 1em)) - 8%);
	border: 1px solid transparent;
	opacity: 0;
}
.pretty.p-svg .state svg {
	margin: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	line-height: 1;
}
.pretty.p-svg input:checked ~ .state .svg {
	opacity: 1;
}
.pretty.p-image .state img {
	opacity: 0;
	position: absolute;
	width: calc(1em + 2px);
	height: calc(1em + 2px);
	top: 0;
	top: calc((0% - (100% - 1em)) - 8%);
	left: 0;
	z-index: 0;
	text-align: center;
	line-height: normal;
	-webkit-transform: scale(0.8);
	-ms-transform: scale(0.8);
	transform: scale(0.8);
}
.pretty.p-image input:checked ~ .state img {
	opacity: 1;
}
.pretty.p-switch input {
	min-width: 2em;
}
.pretty.p-switch .state {
	position: relative;
}
.pretty.p-switch .state:before {
	content: "";
	border: 1px solid #bdc3c7;
	border-radius: 60px;
	width: 2em;
	box-sizing: unset;
	height: calc(1em + 2px);
	position: absolute;
	top: 0;
	top: calc((0% - (100% - 1em)) - 16%);
	z-index: 0;
	transition: all 0.5s ease;
}
.pretty.p-switch .state label {
	text-indent: 2.5em;
}
.pretty.p-switch .state label:after,
.pretty.p-switch .state label:before {
	transition: all 0.5s ease;
	border-radius: 100%;
	left: 0;
	border-color: transparent;
	-webkit-transform: scale(0.8);
	-ms-transform: scale(0.8);
	transform: scale(0.8);
}
.pretty.p-switch .state label:after {
	background-color: #bdc3c7 !important;
}
.pretty.p-switch input:checked ~ .state:before {
	border-color: #5a656b;
}
.pretty.p-switch input:checked ~ .state label:before {
	opacity: 0;
}
.pretty.p-switch input:checked ~ .state label:after {
	background-color: #5a656b !important;
	left: 1em;
}
.pretty.p-switch.p-fill input:checked ~ .state:before {
	border-color: #5a656b;
	background-color: #5a656b !important;
}
.pretty.p-switch.p-fill input:checked ~ .state label:before {
	opacity: 0;
}
.pretty.p-switch.p-fill input:checked ~ .state label:after {
	background-color: #fff !important;
	left: 1em;
}
.pretty.p-switch.p-slim .state:before {
	height: 0.1em;
	background: #bdc3c7 !important;
	top: calc(50% - 0.1em);
}
.pretty.p-switch.p-slim input:checked ~ .state:before {
	border-color: #5a656b;
	background-color: #5a656b !important;
}
.pretty.p-has-hover input:hover ~ .state:not(.p-is-hover) {
	display: none;
}
.pretty.p-has-hover input:hover ~ .state.p-is-hover {
	display: block;
}
.pretty.p-has-hover input:hover ~ .state.p-is-hover .icon {
	display: block;
}
.pretty.p-has-focus input:focus ~ .state label:before {
	box-shadow: 0 0 3px 0 #bdc3c7;
}
.pretty.p-has-indeterminate
	input[type="checkbox"]:indeterminate
	~ .state:not(.p-is-indeterminate) {
	display: none;
}
.pretty.p-has-indeterminate
	input[type="checkbox"]:indeterminate
	~ .state.p-is-indeterminate {
	display: block;
}
.pretty.p-has-indeterminate
	input[type="checkbox"]:indeterminate
	~ .state.p-is-indeterminate
	.icon {
	display: block;
	opacity: 1;
}
.pretty.p-toggle .state.p-on {
	opacity: 0;
	display: none;
}
.pretty.p-toggle .state .icon,
.pretty.p-toggle .state .svg,
.pretty.p-toggle .state img,
.pretty.p-toggle .state.p-off {
	opacity: 1;
	display: inherit;
}
.pretty.p-toggle .state.p-off .icon {
	color: #bdc3c7;
}
.pretty.p-toggle input:checked ~ .state.p-on {
	opacity: 1;
	display: inherit;
}
.pretty.p-toggle input:checked ~ .state.p-off {
	opacity: 0;
	display: none;
}
.pretty.p-plain input:checked ~ .state label:before,
.pretty.p-plain.p-toggle .state label:before {
	content: none;
}
.pretty.p-plain.p-plain .icon {
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
.pretty.p-round .state label:after,
.pretty.p-round .state label:before {
	border-radius: 100%;
}
.pretty.p-round.p-icon .state .icon {
	border-radius: 100%;
	overflow: hidden;
}
.pretty.p-round.p-icon .state .icon:before {
	-webkit-transform: scale(0.8);
	-ms-transform: scale(0.8);
	transform: scale(0.8);
}
.pretty.p-curve .state label:after,
.pretty.p-curve .state label:before {
	border-radius: 20%;
}
.pretty.p-smooth .icon,
.pretty.p-smooth .svg,
.pretty.p-smooth label:after,
.pretty.p-smooth label:before {
	transition: all 0.5s ease;
}
.pretty.p-smooth input:checked + .state label:after {
	transition: all 0.3s ease;
}
.pretty.p-smooth input:checked + .state .icon,
.pretty.p-smooth input:checked + .state .svg,
.pretty.p-smooth input:checked + .state img {
	-webkit-animation: zoom 0.2s ease;
	animation: zoom 0.2s ease;
}
.pretty.p-smooth.p-default input:checked + .state label:after {
	-webkit-animation: zoom 0.2s ease;
	animation: zoom 0.2s ease;
}
.pretty.p-smooth.p-plain input:checked + .state label:before {
	content: "";
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
	transition: all 0.5s ease;
}
.pretty.p-tada:not(.p-default) input:checked + .state .icon,
.pretty.p-tada:not(.p-default) input:checked + .state .svg,
.pretty.p-tada:not(.p-default) input:checked + .state img,
.pretty.p-tada:not(.p-default) input:checked + .state label:after,
.pretty.p-tada:not(.p-default) input:checked + .state label:before {
	-webkit-animation: tada 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1
		alternate;
	animation: tada 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1 alternate;
	opacity: 1;
}
.pretty.p-jelly:not(.p-default) input:checked + .state .icon,
.pretty.p-jelly:not(.p-default) input:checked + .state .svg,
.pretty.p-jelly:not(.p-default) input:checked + .state img,
.pretty.p-jelly:not(.p-default) input:checked + .state label:after,
.pretty.p-jelly:not(.p-default) input:checked + .state label:before {
	-webkit-animation: jelly 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	animation: jelly 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	opacity: 1;
}
.pretty.p-jelly:not(.p-default) input:checked + .state label:before {
	border-color: transparent;
}
.pretty.p-rotate:not(.p-default) input:checked ~ .state .icon,
.pretty.p-rotate:not(.p-default) input:checked ~ .state .svg,
.pretty.p-rotate:not(.p-default) input:checked ~ .state img,
.pretty.p-rotate:not(.p-default) input:checked ~ .state label:after,
.pretty.p-rotate:not(.p-default) input:checked ~ .state label:before {
	-webkit-animation: rotate 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	animation: rotate 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	opacity: 1;
}
.pretty.p-rotate:not(.p-default) input:checked ~ .state label:before {
	border-color: transparent;
}
.pretty.p-pulse:not(.p-switch) input:checked ~ .state label:before {
	-webkit-animation: pulse 1s;
	animation: pulse 1s;
}
.pretty input[disabled] {
	cursor: not-allowed;
	display: none;
}
.pretty input[disabled] ~ * {
	opacity: 0.5;
}
.pretty.p-locked input {
	display: none;
	cursor: not-allowed;
}
.pretty input:checked ~ .state.p-primary label:after,
.pretty.p-toggle .state.p-primary label:after {
	background-color: #428bca !important;
}
.pretty input:checked ~ .state.p-primary .icon,
.pretty input:checked ~ .state.p-primary .svg,
.pretty.p-toggle .state.p-primary .icon,
.pretty.p-toggle .state.p-primary .svg {
	color: #fff;
	stroke: #fff;
}
.pretty input:checked ~ .state.p-primary-o label:before,
.pretty.p-toggle .state.p-primary-o label:before {
	border-color: #428bca;
}
.pretty input:checked ~ .state.p-primary-o label:after,
.pretty.p-toggle .state.p-primary-o label:after {
	background-color: transparent;
}
.pretty input:checked ~ .state.p-primary-o .icon,
.pretty input:checked ~ .state.p-primary-o .svg,
.pretty input:checked ~ .state.p-primary-o svg,
.pretty.p-toggle .state.p-primary-o .icon,
.pretty.p-toggle .state.p-primary-o .svg,
.pretty.p-toggle .state.p-primary-o svg {
	color: #428bca;
	stroke: #428bca;
}
.pretty.p-default:not(.p-fill) input:checked ~ .state.p-primary-o label:after {
	background-color: #428bca !important;
}
.pretty.p-switch input:checked ~ .state.p-primary:before {
	border-color: #428bca;
}
.pretty.p-switch.p-fill input:checked ~ .state.p-primary:before {
	background-color: #428bca !important;
}
.pretty.p-switch.p-slim input:checked ~ .state.p-primary:before {
	border-color: #245682;
	background-color: #245682 !important;
}
.pretty input:checked ~ .state.p-info label:after,
.pretty.p-toggle .state.p-info label:after {
	background-color: #5bc0de !important;
}
.pretty input:checked ~ .state.p-info .icon,
.pretty input:checked ~ .state.p-info .svg,
.pretty.p-toggle .state.p-info .icon,
.pretty.p-toggle .state.p-info .svg {
	color: #fff;
	stroke: #fff;
}
.pretty input:checked ~ .state.p-info-o label:before,
.pretty.p-toggle .state.p-info-o label:before {
	border-color: #5bc0de;
}
.pretty input:checked ~ .state.p-info-o label:after,
.pretty.p-toggle .state.p-info-o label:after {
	background-color: transparent;
}
.pretty input:checked ~ .state.p-info-o .icon,
.pretty input:checked ~ .state.p-info-o .svg,
.pretty input:checked ~ .state.p-info-o svg,
.pretty.p-toggle .state.p-info-o .icon,
.pretty.p-toggle .state.p-info-o .svg,
.pretty.p-toggle .state.p-info-o svg {
	color: #5bc0de;
	stroke: #5bc0de;
}
.pretty.p-default:not(.p-fill) input:checked ~ .state.p-info-o label:after {
	background-color: #5bc0de !important;
}
.pretty.p-switch input:checked ~ .state.p-info:before {
	border-color: #5bc0de;
}
.pretty.p-switch.p-fill input:checked ~ .state.p-info:before {
	background-color: #5bc0de !important;
}
.pretty.p-switch.p-slim input:checked ~ .state.p-info:before {
	border-color: #2390b0;
	background-color: #2390b0 !important;
}
.pretty input:checked ~ .state.p-success label:after,
.pretty.p-toggle .state.p-success label:after {
	background-color: #5cb85c !important;
}
.pretty input:checked ~ .state.p-success .icon,
.pretty input:checked ~ .state.p-success .svg,
.pretty.p-toggle .state.p-success .icon,
.pretty.p-toggle .state.p-success .svg {
	color: #fff;
	stroke: #fff;
}
.pretty input:checked ~ .state.p-success-o label:before,
.pretty.p-toggle .state.p-success-o label:before {
	border-color: #5cb85c;
}
.pretty input:checked ~ .state.p-success-o label:after,
.pretty.p-toggle .state.p-success-o label:after {
	background-color: transparent;
}
.pretty input:checked ~ .state.p-success-o .icon,
.pretty input:checked ~ .state.p-success-o .svg,
.pretty input:checked ~ .state.p-success-o svg,
.pretty.p-toggle .state.p-success-o .icon,
.pretty.p-toggle .state.p-success-o .svg,
.pretty.p-toggle .state.p-success-o svg {
	color: #5cb85c;
	stroke: #5cb85c;
}
.pretty.p-default:not(.p-fill) input:checked ~ .state.p-success-o label:after {
	background-color: #5cb85c !important;
}
.pretty.p-switch input:checked ~ .state.p-success:before {
	border-color: #5cb85c;
}
.pretty.p-switch.p-fill input:checked ~ .state.p-success:before {
	background-color: #5cb85c !important;
}
.pretty.p-switch.p-slim input:checked ~ .state.p-success:before {
	border-color: #357935;
	background-color: #357935 !important;
}
.pretty input:checked ~ .state.p-warning label:after,
.pretty.p-toggle .state.p-warning label:after {
	background-color: #f0ad4e !important;
}
.pretty input:checked ~ .state.p-warning .icon,
.pretty input:checked ~ .state.p-warning .svg,
.pretty.p-toggle .state.p-warning .icon,
.pretty.p-toggle .state.p-warning .svg {
	color: #fff;
	stroke: #fff;
}
.pretty input:checked ~ .state.p-warning-o label:before,
.pretty.p-toggle .state.p-warning-o label:before {
	border-color: #f0ad4e;
}
.pretty input:checked ~ .state.p-warning-o label:after,
.pretty.p-toggle .state.p-warning-o label:after {
	background-color: transparent;
}
.pretty input:checked ~ .state.p-warning-o .icon,
.pretty input:checked ~ .state.p-warning-o .svg,
.pretty input:checked ~ .state.p-warning-o svg,
.pretty.p-toggle .state.p-warning-o .icon,
.pretty.p-toggle .state.p-warning-o .svg,
.pretty.p-toggle .state.p-warning-o svg {
	color: #f0ad4e;
	stroke: #f0ad4e;
}
.pretty.p-default:not(.p-fill) input:checked ~ .state.p-warning-o label:after {
	background-color: #f0ad4e !important;
}
.pretty.p-switch input:checked ~ .state.p-warning:before {
	border-color: #f0ad4e;
}
.pretty.p-switch.p-fill input:checked ~ .state.p-warning:before {
	background-color: #f0ad4e !important;
}
.pretty.p-switch.p-slim input:checked ~ .state.p-warning:before {
	border-color: #c77c11;
	background-color: #c77c11 !important;
}
.pretty input:checked ~ .state.p-danger label:after,
.pretty.p-toggle .state.p-danger label:after {
	background-color: #d9534f !important;
}
.pretty input:checked ~ .state.p-danger .icon,
.pretty input:checked ~ .state.p-danger .svg,
.pretty.p-toggle .state.p-danger .icon,
.pretty.p-toggle .state.p-danger .svg {
	color: #fff;
	stroke: #fff;
}
.pretty input:checked ~ .state.p-danger-o label:before,
.pretty.p-toggle .state.p-danger-o label:before {
	border-color: #d9534f;
}
.pretty input:checked ~ .state.p-danger-o label:after,
.pretty.p-toggle .state.p-danger-o label:after {
	background-color: transparent;
}
.pretty input:checked ~ .state.p-danger-o .icon,
.pretty input:checked ~ .state.p-danger-o .svg,
.pretty input:checked ~ .state.p-danger-o svg,
.pretty.p-toggle .state.p-danger-o .icon,
.pretty.p-toggle .state.p-danger-o .svg,
.pretty.p-toggle .state.p-danger-o svg {
	color: #d9534f;
	stroke: #d9534f;
}
.pretty.p-default:not(.p-fill) input:checked ~ .state.p-danger-o label:after {
	background-color: #d9534f !important;
}
.pretty.p-switch input:checked ~ .state.p-danger:before {
	border-color: #d9534f;
}
.pretty.p-switch.p-fill input:checked ~ .state.p-danger:before {
	background-color: #d9534f !important;
}
.pretty.p-switch.p-slim input:checked ~ .state.p-danger:before {
	border-color: #a02622;
	background-color: #a02622 !important;
}
.pretty.p-bigger .icon,
.pretty.p-bigger .img,
.pretty.p-bigger .svg,
.pretty.p-bigger label:after,
.pretty.p-bigger label:before {
	font-size: 1.2em !important;
	top: calc((0% - (100% - 1em)) - 35%) !important;
}
.pretty.p-bigger label {
	text-indent: 1.7em;
}
@media print {
	.pretty .state .icon,
	.pretty .state label:after,
	.pretty .state label:before,
	.pretty .state:before {
		color-adjust: exact;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
}

/* Ocultar nativo */
.wpcf7-form input[type="checkbox"],
.wpcf7-form input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Label base */
.wpcf7-form .wpcf7-list-item-label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
}

/* Caja base (cuadrada o circular) */
.wpcf7-form input[type="checkbox"] + .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  width: 20px;
  height: 20px;
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"%3E%3Cg id="Grupo_9" data-name="Grupo 9" transform="translate(2370 -15259)"%3E%3Cg id="Rectángulo_5" data-name="Rectángulo 5" transform="translate(-2370 15259)" fill="%23fff" stroke="%23efefef" stroke-width="1"%3E%3Crect width="20" height="20" rx="3" stroke="none"/%3E%3Crect x="0.5" y="0.5" width="19" height="19" rx="2.5" fill="none"/%3E%3C/g%3E%3Cpath id="Trazado_70" data-name="Trazado 70" d="M1,0H13a1,1,0,0,1,1,1V13a1,1,0,0,1-1,1H1a1,1,0,0,1-1-1V1A1,1,0,0,1,1,0Z" transform="translate(-2367 15262)" fill="%23fff"/%3E%3C/g%3E%3C/svg%3E%0A');
  transition: all 0.3s ease;
}

.wpcf7-form input[type="radio"] + .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: -4px;
  width: 20px;
  height: 20px;
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"%3E%3Cg id="Grupo_10" data-name="Grupo 10" transform="translate(2370 -15259)"%3E%3Cg id="Rectángulo_5" data-name="Rectángulo 5" transform="translate(-2370 15259)" fill="%23fff" stroke="%23efefef" stroke-width="1"%3E%3Crect width="20" height="20" rx="10" stroke="none"/%3E%3Crect x="0.5" y="0.5" width="19" height="19" rx="9.5" fill="none"/%3E%3C/g%3E%3Crect id="Rectángulo_7" data-name="Rectángulo 7" width="10" height="10" rx="5" transform="translate(-2365 15264)" fill="none"/%3E%3C/g%3E%3C/svg%3E%0A');
  transition: all 0.3s ease;
}

/* Marca oculta inicialmente */
.wpcf7-form input[type="checkbox"] + .wpcf7-list-item-label::after{
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  transform: scale(1);
  transition: all 0.3s ease;
  opacity: 0;
  width: 20px;
  height: 20px;
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"%3E%3Cg id="Grupo_8" data-name="Grupo 8" transform="translate(2370 -15259)"%3E%3Cg id="Rectángulo_5" data-name="Rectángulo 5" transform="translate(-2370 15259)" fill="%23fff" stroke="%23fb1010" stroke-width="1"%3E%3Crect width="20" height="20" rx="3" stroke="none"/%3E%3Crect x="0.5" y="0.5" width="19" height="19" rx="2.5" fill="none"/%3E%3C/g%3E%3Cg id="Rectángulo_7" data-name="Rectángulo 7" transform="translate(-2365 15264)" fill="%23fb1010" stroke="%23fb1010" stroke-width="1"%3E%3Crect width="10" height="10" rx="1" stroke="none"/%3E%3Crect x="0.5" y="0.5" width="9" height="9" rx="0.5" fill="none"/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A');
}

.wpcf7-form input[type="radio"] + .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  left: 0;
  top: -4px;
  transform: scale(1);
  transition: all 0.3s ease;
  opacity: 0;
  width: 20px;
  height: 20px;
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20"%3E%3Cg id="Grupo_8" data-name="Grupo 8" transform="translate(2370 -15259)"%3E%3Cg id="Rectángulo_5" data-name="Rectángulo 5" transform="translate(-2370 15259)" fill="%23fff" stroke="%23fb1010" stroke-width="1"%3E%3Crect width="20" height="20" rx="10" stroke="none"/%3E%3Crect x="0.5" y="0.5" width="19" height="19" rx="9.5" fill="none"/%3E%3C/g%3E%3Cg id="Rectángulo_7" data-name="Rectángulo 7" transform="translate(-2365 15264)" fill="%23fb1010" stroke="%23fb1010" stroke-width="1"%3E%3Crect width="10" height="10" rx="5" stroke="none"/%3E%3Crect x="0.5" y="0.5" width="9" height="9" rx="4.5" fill="none"/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A');
}

/* Check del checkbox */
.wpcf7-form input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
  transform: scale(1);
  opacity: 1;
}

/* Punto interior del radio */
.wpcf7-form input[type="radio"]:checked + .wpcf7-list-item-label::after {
  transform: scale(1);
  opacity: 1;
}

/* Cambiar borde al marcar */
.wpcf7-form input[type="checkbox"]:checked + .wpcf7-list-item-label::before,
.wpcf7-form input[type="radio"]:checked + .wpcf7-list-item-label::before {
  opacity: 0;
}