﻿/*Radio*/
/*Radio - Before*/
.custom-radio .custom-control-input ~ .custom-control-label::before
{
	top:0;
	left:-24px;
	width:24px;
	height:24px;
	border:0;
	background-color:var(--basic-0);
	box-shadow:0 0 0 2px var(--secondary-600);
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::before
{
	background-color:var(--basic-0);
	box-shadow:0 0 0 2px var(--secondary-600);
}

/*Radio - Before - Disabled*/
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before
{
	background-color:var(--basic-200);
	box-shadow:0 0 0 2px var(--basic-300);
}

/*Radio - After*/
.custom-radio .custom-control-input:checked ~ .custom-control-label::after
{
	background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='12' height='12' rx='6' fill='%23EC944D'/%3E%3C/svg%3E%0A");
}

/*Radio - After - Disabled*/
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::after
{
	background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='12' height='12' rx='6' fill='%23F9DDBF'/%3E%3C/svg%3E%0A");
}

/*Radio - Styles*/
/*Radio - Styles - Card*/
.card-radio
{
	padding-left:0;
}
.card-radio .custom-control-input ~ .custom-control-label
{
	color:var(--basic-900);
	text-align:center;
	border-radius:8px;
	background-color:var(--basic-100);
	padding:8px 16px;
	user-select:none;
}
@media all and (max-width:575px)
{
	.card-radio .custom-control-input ~ .custom-control-label
	{
		padding:8px 14px;
	}
}

/*Radio - Styles - Card - Before*/
.card-radio .custom-control-input ~ .custom-control-label::before
{
	content:'';
	display:block;
	width:56px;
	height:56px;

	color:inherit;
	font-family:'Font Awesome Kit';
	font-size:3.5rem;
	line-height:1;
	font-weight:400;
	font-style:normal;
	font-variant:normal;
	text-rendering:auto;
	-moz-osx-font-smoothing:grayscale;
	-webkit-font-smoothing:antialiased;

	border:1px solid var(--basic-300);
	border-radius:50%;
	background-color:transparent;
	box-shadow:none;
	margin-bottom:8px;
	position:relative;
	top:0;
	left:50%;
	transform:translateX(-50%);
}
.card-radio.ico-dog .custom-control-label::before
{
	content:'\e004';
}
.card-radio.ico-cat .custom-control-label::before
{
	content:'\e003';
}
.card-radio.ico-bird .custom-control-label::before
{
	content:'\e002';
}
.card-radio.ico-cattle .custom-control-label::before
{
	content: '\e031';
}

/*Radio - Styles - Card - Checked*/
.card-radio .custom-control-input:checked ~ .custom-control-label
{
	color:var(--basic-0);
	background-color:var(--tertiary-400);
}

/*Radio - Styles - Card - Before - Checked*/
.card-radio .custom-control-input:checked ~ .custom-control-label::before
{
	border:1px solid var(--basic-0);
}

/*Radio - Styles - Card - Reset*/
.card-radio .custom-control-input:focus:not(:checked)~.custom-control-label::before,
.card-radio .custom-control-input:not(:disabled):active ~ .custom-control-label::before,
.card-radio .custom-control-input:not(:disabled):checked:active ~ .custom-control-label::before
{
	color:inherit;
	border-color:var(--basic-300);
	background-color:transparent;
	box-shadow:none;
}

/*Radio - Styles - Card - After*/
.card-radio .custom-control-input ~ .custom-control-label::after
{
	display:none;
}

/*Radio - Styles - Card - Disabled*/
.card-radio .custom-control-input:checked:disabled ~ .custom-control-label,
.card-radio .custom-control-input:checked[disabled] ~ .custom-control-label
{
	background-color:var(--basic-500);
}

/*Radio - Styles - WideCard*/
.widecard-radio
{
	width:100%;
	padding:0;
	margin:0;
}
.widecard-radio .custom-control-input ~ .custom-control-label.has-inner-label
{
	display:flex;
	width:100%;
	align-items:center;
	padding:24px 24px 24px 48px;
	position:relative;
	z-index:1;
}

/*Radio - Styles - WideCard - Before*/
.widecard-radio .custom-control-input ~ .custom-control-label.has-inner-label::before
{
	display:none;
}

/*Radio - Styles - WideCard - After*/
.widecard-radio .custom-control-input ~ .custom-control-label.has-inner-label::after
{
	width:100%;
	height:100%;
	border-radius:12px;
	background-image:none;
	background-color:var(--basic-50);
	box-shadow:none;
	top:0;
	left:0;
	transform:none;
	z-index:-1;
}

/*Radio - Styles - WideCard - Inner Label*/
.widecard-radio .custom-control-input:not(disabled) ~ .custom-control-label.has-inner-label > .custom-control-label
{
	display:inline-flex;
	width:100%;
	align-items:center;
	column-gap:16px;
	cursor:pointer;
}
@media all and (max-width:767px)
{
	.widecard-radio .custom-control-input:not(disabled) ~ .custom-control-label.has-inner-label > .custom-control-label
	{
		flex-wrap:wrap;
	}
}

/*Radio - Styles - WideCard - Inner Label - Before*/
.widecard-radio .custom-control-input:not(:disabled):active ~ .custom-control-label.has-inner-label > .custom-control-label::before
{
	background-color:var(--secondary-100);
}
.widecard-radio .custom-control-input:not(:disabled):checked:active ~ .custom-control-label.has-inner-label > .custom-control-label::before
{
	background-color:var(--secondary-100);
	box-shadow:0 0 0 2px var(--secondary-100);
}

/*Radio - Styles - WideCard - Inner Label - After*/
.widecard-radio .custom-control-input:checked ~ .custom-control-label.has-inner-label::after
{
	background-color:var(--secondary-50);
}
.widecard-radio .custom-control-input:checked ~ .custom-control-label.has-inner-label > .custom-control-label::after
{
	background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='12' height='12' rx='6' fill='%23EC944D'/%3E%3C/svg%3E%0A");
}

/*Radio - Styles - WideCard - Inner Label - Content*/
.label-content .label-description
{
	display:block;
	font-size:0.875rem;
}

/*Radio - Styles - WideCard - Inner Label - Image*/
.label-image
{
	flex:0 0 auto;
	max-width:35%;
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	gap:2px;
	margin-left:auto;
}
@media all and (max-width:767px)
{
	.label-image
	{
		max-width:100%;
		justify-content:flex-start;
		margin:6px 0 0 0;
	}
}