/**
 * Plug&Sign — Utility classes
 * À utiliser dans les modules Divi (classes CSS personnalisées)
 */

/* Sections */
.ps-section-alt { background-color: var(--ps-bg-alt) !important; }
.ps-section-dark { background-color: var(--ps-dark) !important; }
.ps-section-dark * { color: #fff; }
.ps-section-dark p { color: rgba(255, 255, 255, 0.85) !important; }

/* Texte */
.ps-text-muted { color: var(--ps-text-muted) !important; }
.ps-text-center { text-align: center !important; }
.ps-content-narrow .et_pb_text_inner { max-width: var(--ps-content-max); margin: 0 auto; }

/* Badges */
.ps-badge { display: inline-block; padding: 0.25rem 0.75rem; font-size: var(--ps-text-xs); font-weight: 600; border-radius: var(--ps-radius-pill); }
.ps-badge--primary { background: var(--ps-primary-light); color: var(--ps-primary); }
.ps-badge--success { background: var(--ps-success-light); color: var(--ps-success); }
.ps-badge--dark { background: rgba(43, 47, 54, 0.1); color: var(--ps-dark); }
.ps-badge-eidas { background: var(--ps-success-light) !important; border-left: 4px solid var(--ps-success); border-radius: var(--ps-radius); padding: var(--ps-space-md); }

/* Boutons (wrapper row/column Divi) */
.ps-btn-secondary .et_pb_button { background: transparent !important; border-color: var(--ps-dark) !important; color: var(--ps-dark) !important; }
.ps-btn-outline .et_pb_button { background: transparent !important; border-color: var(--ps-primary) !important; color: var(--ps-primary) !important; }

/* Logos */
.ps-logo-grayscale img { filter: grayscale(100%); opacity: 0.6; transition: filter 0.2s ease, opacity 0.2s ease; }
.ps-logo-grayscale img:hover { filter: grayscale(0%); opacity: 1; }

/* Espacement */
.ps-mt-0 { margin-top: 0 !important; }
.ps-mb-0 { margin-bottom: 0 !important; }
.ps-p-0 { padding: 0 !important; }

/* Visibilité responsive */
@media (max-width: 767px) {
	.ps-hide-mobile { display: none !important; }
}

@media (min-width: 768px) {
	.ps-hide-desktop { display: none !important; }
}

/* Accessibilité : focus visible */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
.et_pb_button:focus-visible {
	outline: 2px solid var(--ps-primary);
	outline-offset: 2px;
}

/* Molti / Divi — classes utilitaires legacy (ex-customizer) */
.pointer {
	cursor: pointer;
}

mark-history,
mark-shy-text {
	background-color: var(--ps-primary-muted) !important;
	color: var(--ps-primary) !important;
}

.flex_ss_titre {
	display: flex;
	flex-direction: column;
}

.flex_ss_titre h5 {
	order: -1;
}

/* Breadcrumb (Flexy Breadcrumb) */
.fbc-page .fbc-wrap .fbc-items li {
	padding: 0 2px !important;
}

.fbc-page .fbc-wrap .fbc-items li:first-child {
	padding-left: 0;
}

/* Iframe embarqué */
#iframeContainerId iframe {
	border: none !important;
}

/* Fix style bugs */
#comparatifPubli {
	background-color: #fff !important;
}

/* Réduction des animations */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
