/* Sign.vet – Demande d'intégration à l'éditeur (v1.2.0)
 * Tailles en px (et non en rem) : le thème modifie la taille de base et l'espacement des lettres,
 * ce qui rendait la popin illisible. */

/* Bouton et lien */
.sv-integration--bouton {
	display: inline-block;
	padding: 0.7em 1.4em;
	border-radius: 999px;
	background: var(--blue, #1f5fd6);
	color: var(--white, #fff) !important;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none !important;
	transition: opacity 0.2s ease;
}
.sv-integration--bouton:hover,
.sv-integration--bouton:focus-visible { opacity: 0.85; }
.sv-integration--bouton:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.sv-integration--lien { text-decoration: underline; cursor: pointer; }

/* Popin : remise à zéro de ce que le thème impose */
.svdi-dialog,
.svdi-dialog * {
	letter-spacing: normal !important;
	word-spacing: normal !important;
	text-transform: none;
	box-sizing: border-box;
}
.svdi-dialog {
	width: min(640px, calc(100vw - 32px));
	max-height: calc(100vh - 32px);
	overflow-y: auto;
	padding: 28px;
	border: 0;
	border-radius: 16px;
	background: #fff;
	color: var(--blue, #1f2f4d);
	font-family: var(--font1, inherit);
	font-size: 16px;
	line-height: 1.45;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
}
.svdi-dialog::backdrop { background: rgba(15, 25, 45, 0.55); }
.svdi-fermer {
	position: absolute; top: 12px; right: 14px;
	width: 40px; height: 40px; padding: 0;
	border: 0; background: none; cursor: pointer;
	font-size: 28px; line-height: 40px; color: inherit;
}
.svdi-dialog .svdi-titre {
	margin: 0 44px 8px 0;
	font-family: var(--font1, inherit);
	font-size: 24px;
	font-weight: 600;
	line-height: 1.25;
}
.svdi-intro { margin: 0 0 20px; font-size: 16px; opacity: 0.85; }
.svdi-grille { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 16px; }
.svdi-champ { display: flex; flex-direction: column; gap: 6px; margin: 0; }
.svdi-champ label { font-size: 15px; font-weight: 600; line-height: 1.3; }
.svdi-champ input,
.svdi-champ select,
.svdi-champ textarea,
.svdi-secours-texte {
	width: 100%;
	min-height: 44px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid rgba(31, 47, 77, 0.35);
	border-radius: 8px;
	font-family: var(--font1, inherit);
	font-size: 16px;
	line-height: 1.4;
	color: inherit;
	background: #fff;
}
.svdi-champ select { cursor: pointer; }
.svdi-champ input[hidden] { display: none; }
.svdi-champ input:focus,
.svdi-champ select:focus,
.svdi-champ textarea:focus { outline: 2px solid var(--blue, #1f5fd6); outline-offset: 1px; }
.svdi-champ--message { margin-top: 16px; }
.svdi-champ--message textarea { resize: vertical; min-height: 220px; line-height: 1.5; }
.svdi-mention { margin: 12px 0 0; font-size: 14px; opacity: 0.8; }
.svdi-erreur { margin: 12px 0 0; color: #b42318; font-weight: 600; font-size: 15px; }
.svdi-actions { display: flex; justify-content: flex-end; gap: 12px; margin-top: 20px; flex-wrap: wrap; }
.svdi-dialog .svdi-btn {
	min-height: 44px;
	padding: 10px 22px;
	border-radius: 999px;
	font-family: var(--font1, inherit);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	border: 1px solid var(--blue, #1f5fd6);
}
.svdi-btn--prim { background: var(--blue, #1f5fd6); color: var(--white, #fff); }
.svdi-btn--sec { background: transparent; color: var(--blue, #1f5fd6); }
.svdi-secours p { margin: 0 0 12px; font-size: 16px; }
.svdi-secours-texte { margin-bottom: 12px; min-height: 120px; }
[hidden].svdi-form, [hidden].svdi-secours, [hidden].svdi-erreur { display: none !important; }

@media (max-width: 600px) {
	.svdi-dialog { padding: 22px 16px; }
	.svdi-grille { grid-template-columns: 1fr; }
	.svdi-actions .svdi-btn { flex: 1 1 auto; }
}
