
/* -- PACKAGES LIST STYLES ---------------------------------------------------------------------------------- */

.z-package {
	margin: 0px;
	padding: 4px;
	-webkit-box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.2);
	box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.2);
	border: 1px solid transparent;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-content: center;
	align-items: center;
	cursor: pointer;
	font-size: 13px;
	font-weight: 400;
	-webkit-user-select: none; /* Safari */
	-ms-user-select: none; /* IE 10 and IE 11 */
	user-select: none; /* Standard syntax */
}

.z-bloc-image {
	padding: 5px 10px 5px;
	position: relative;
	border-right: 1px solid #ccc;
}

.z-bloc-description {
	flex-grow: 1;
	position: relative;
	height: 100%;
}

.z-bloc-price {
	display: flex;
	flex-flow: column;
	min-width: 60px;
	text-align: right;
}

.z-bloc-garbage {
	min-width: 20px;
}

.z-service-image {
	height: 48px;
	width: 48px;
	min-width: 48px;
}

.z-service-image-info::after {
	content: '\f05a'; /* info circle */
	font-family: 'FontAwesome', Arial !important;
	font-weight: 900;
	width: -16px;
	position: absolute;
	right: 6px;
	top: 4px;
}

.z-service-description {
	flex-grow: 1;
	font-size: 13px;
	line-height: 15px;
	font-weight: 400;
}

.z-service-description-star {
}

	.z-service-description-star::after {
		content: '\f005'; /* star */
		font-family: 'FontAwesome', Arial !important;
		font-weight: 900;
		font-size: 6pt;
		color: #000;
		position: absolute;
		margin-top: -3px;
		margin-left: 4px;
	}

a.z-service-description:focus {
	border: none;
	background: none;
	outline: none;
	box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.z-service-star-tooltip {
	visibility: hidden;
	position: absolute;
	left: 40px;
	top: 25px;
	width: 70%;
	text-align: left;
	color: black;
	padding: 8px;
	z-index: 999; /* ! lower than app popup */
	border-radius: 6px;
	background-color: #FBFCFF;
	-webkit-box-shadow: 0 0 5px #aaa;
	box-shadow: 0 0 5px #aaa;
	opacity: 0;
	transition: opacity 0.3s;
}

@media (max-width: 991px) {
	/* adapt package tooltip to device width */
	.z-service-star-tooltip {
		left: -20px;
		top: 25px;
		width: 350px;
	}
}

@media (max-width: 574px) {
	/* adapt package tooltip to device width */
	.z-service-star-tooltip {
		left: -50px;
		top: 25px;
		width: 220px;
	}
}

.z-special-discount {
	font-size: 13px;
	line-height: 15px;
}

	.z-special-discount:focus {
		box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
	}

.z-service-price {
	font-size: 18px;
	line-height: 22px;
	padding-right: 5px;
	font-weight: bold;
}

.z-service-old-price {
	font-weight: normal;
	text-decoration: line-through;
}

.z-service-garbage {
	background-position: center;
	width: 20px;
	height: 20px;
	border: none;
}

.z-package .z-service-image, .z-service-description, .z-service-price, .z-service-garbage, .z-bloc-price, .z-bloc-description {
	pointer-events: auto;
}

@media (max-width: 575px) {
	/* reduce font size when device width is low */
	.z-bloc-description, .z-service-description, .z-special-discount, .z-service-price, z-service-old-price {
		font-size: 11px;
		line-height: 13px;
	}
}

@media (max-width: 575px) {
	/* remove left and right margin on package blocks when device width is low */
	.z-card {
		margin-left: 2px !important;
		margin-right: 2px !important;
	}
}

/* -- SHOPPING CART STYLES ---------------------------------------------------------------------------------- */

.z-cart-line {
	margin-left: 10px;
	margin-right: 10px;
	width: auto !important;
}

.z-cart-left {
	width: 100%;
	width: -moz-available; /* WebKit-based browsers will ignore this. */
	width: -webkit-fill-available; /* Mozilla-based browsers will ignore this. */
	width: fill-available;
}

.z-cart-title {
	/* IE/Edge compatibily issue*/
	overflow-wrap: break-word;
	word-break: break-word;
	/*margin-bottom: 0px;*/
	margin: 0px 0px 0px 0px;
}

a:focus .z-cart-title {
	box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.z-cart-tooltip-indicator::after {
	content: '\f05a'; /* info circle */
	font-family: 'FontAwesome', Arial !important;
	font-weight: 900;
	position: relative;
	right: -3px;
	top: -2px;
	color: #3072d3;
}

.z-tooltip {
	position: relative;
	display: inline-block;
}

	.z-tooltip .z-tooltiptext {
		background-color: #FBFCFF;
		bottom: 125%;
		border: 1px solid #000;
		border-radius: 6px;
		-webkit-box-shadow: 0 0 5px #aaa;
		box-shadow: 0 0 5px #aaa;
		color: #000;
		left: 50%;
		margin-left: -150px; /* override this with width/2 if you set a local width on your tooltip */
		opacity: 0;
		padding: 8px;
		position: absolute;
		transition: opacity 0.3s;
		text-align: left;
		z-index: 100; /* ! set to a lower value that on all others app popup z-index */
		visibility: hidden;
		width: 300px; /* see margin-left remark if you set a local width on your tooltip */
	}

	.z-tooltip:hover .z-tooltiptext {
		visibility: visible;
		opacity: 1;
	}

	.z-tooltip:focus {
		box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
	}

		.z-tooltip:focus .z-tooltiptext {
			visibility: visible;
			opacity: 1;
		}

.z-tooltiptext-mobile {
	visibility: visible;
	opacity: 1;
}

.z-cart-subtitle {
	color: #ccc;
}

.z-cart-garbage {
	width: 20px !important;
	height: 20px !important;
	max-width: 20px;
	margin-top: -2px;
	background-image: url('./BMW/img/trash.png');
	background-repeat: no-repeat;
	border: none;
	outline: none;
}

	.z-cart-garbage:focus {
		box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
	}

.z-cart-price {
	font-weight: bold !important;
}

.z-cart-special-discount {
	color: #3072d3;
	/* mini: color: #007da3; */
}
