/* Encart du panier BookingPress : note d'information + séances manquantes d'un bilan. */

.bpa-front-module--cart .akdigital-bilan-notice {
	margin-bottom: 16px;
	font-size: 15px;
	line-height: 1.5;
}

.bpa-front-module--cart .akdigital-bilan-notice p,
.bpa-front-module--cart .akdigital-bilan-notice ul {
	margin: 0 0 8px;
}

.bpa-front-module--cart .akdigital-bilan-notice ul {
	padding-left: 20px;
}

.bpa-front-module--cart .akdigital-bilan-notice p,
.bpa-front-module--cart .akdigital-bilan-notice ul,
.bpa-front-module--cart .akdigital-bilan-notice li,
.bpa-front-module--cart .akdigital-bilan-notice strong {
	font-size: 15px;
	line-height: 1.5;
	color: inherit;
}

.bpa-front-module--cart .akdigital-bilan-notice li {
	margin: 0;
}

.bpa-front-module--cart .akdigital-bilan-notice > div > :last-child {
	margin-bottom: 0;
}

.bpa-front-module--cart .akdigital-bilan-notice__title {
	font-weight: 700;
}

.bpa-front-module--cart .akdigital-bilan-notice__info {
	padding: 16px;
	background: antiquewhite;
	color: #3f3f3f;
	border-radius: 8px;
}

.bpa-front-module--cart .akdigital-bilan-notice__message {
	margin-top: 12px;
	padding: 12px 16px;
	background: #fdecea;
	color: #8a1f11;
	border-left: 4px solid #c0392b;
	border-radius: 8px;
}

/* Pulse autour du bouton « Ajouter une séance » quand un bilan est incomplet. */
.bpa-front-module--cart .bpa-cart-add-service-btn.--akdigital-pulse {
	animation: akdigital-bilan-pulse 1.4s ease-out infinite;
}

@keyframes akdigital-bilan-pulse {
	0% { box-shadow: 0 0 0 0 rgba(192, 57, 43, 0.6); }
	70% { box-shadow: 0 0 0 12px rgba(192, 57, 43, 0); }
	100% { box-shadow: 0 0 0 0 rgba(192, 57, 43, 0); }
}

@media (prefers-reduced-motion: reduce) {
	.bpa-front-module--cart .bpa-cart-add-service-btn.--akdigital-pulse {
		animation: none;
		box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.5);
	}
}

/* Carte « bilan complet » à l'étape Services. */
.akdigital-bilan-card {
	cursor: pointer;
}

.akdigital-bilan-card .akdigital-bilan-card__desc {
	margin: 4px 0 8px;
	font-size: 13px;
	line-height: 1.4;
	color: #6a6a6a;
}

.akdigital-bilan-card .akdigital-bilan-card__cta {
	display: inline-block;
	margin-top: 10px;
	padding: 6px 14px;
	border-radius: 6px;
	background: #f69c3c;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
}

/* Bandeau de progression à l'étape Date. */
.akdigital-bilan-progress {
	margin: 0 0 16px;
	padding: 12px 16px;
	background: antiquewhite;
	color: #3f3f3f;
	border-radius: 8px;
	font-size: 15px;
	line-height: 1.5;
}

.akdigital-bilan-progress p,
.akdigital-bilan-progress ul {
	margin: 0 0 6px;
	font-size: 15px;
	line-height: 1.5;
	color: inherit;
}

.akdigital-bilan-progress ul {
	padding-left: 20px;
}

.akdigital-bilan-progress li {
	margin: 0;
	font-size: 15px;
	line-height: 1.5;
	color: inherit;
}

.akdigital-bilan-progress > :last-child {
	margin-bottom: 0;
}

.akdigital-bilan-progress__hint {
	font-size: 14px;
	font-style: italic;
}

/* Titre de l'étape Date pendant un parcours : « Séance 2 sur 3 : … ». */
.akdigital-bilan-session .bpa-front-module--date-and-time > .bpa-front-module-heading[data-bp-step-heading] {
	font-size: 24px !important; /* BookingPress fixe la taille des titres d'étape via une règle plus spécifique */
	line-height: 1.3 !important;
}

@media (max-width: 576px) {
	.akdigital-bilan-session .bpa-front-module--date-and-time > .bpa-front-module-heading[data-bp-step-heading] {
		font-size: 20px !important;
	}
}

/* Ligne du panier dont la date est trop proche de la séance précédente. */
.bpa-front-module--cart .bpa-cart__item.--akdigital-invalid {
	box-shadow: inset 4px 0 0 #c0392b;
	background: #fdf3f2;
}
