/*
 * TPML — Fiche claire 1.0.1
 * Cadre clair de la fenêtre des dossiers (#vmod > .vmbox), bouton de fermeture,
 * tiroir de la fiche d'origine et formulaires de VeriMarket.
 * Le contenu de la fiche elle-même est stylé dans son Shadow DOM (fiche.js).
 *
 * Tout dépend de la classe « tpmlf », posée sur #vmod par le script : si le script
 * ne se charge pas, rien ici ne s'applique et la fenêtre garde son apparence.
 *
 * Le préfixe « :not(#_) » × 4 donne à ces règles la priorité sur le CSS additionnel
 * du site (jusqu'à 4 identifiants) sans dépendre de l'ordre de chargement.
 */

/* Newsreader (Production Type, licence SIL OFL 1.1, voir fonts/OFL-Newsreader.txt),
   servie par l'extension. Déclarée ici car les @font-face d'un Shadow DOM sont ignorées
   par Chrome ; le fichier n'est téléchargé qu'à l'ouverture d'un dossier. */
@font-face {
	font-family: "TPMLF Newsreader";
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url("../fonts/newsreader-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "TPMLF Newsreader";
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url("../fonts/newsreader-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Voile derrière la fenêtre */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) {
	background-color: rgba(9, 13, 32, .62);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}

/* Cadre */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 1080px !important;
	padding: 28px !important;
	border-radius: 24px !important;
	background: #fff !important;
	color: #0f172a !important;
	box-shadow: 0 40px 110px -30px rgba(2, 6, 23, .6), 0 0 0 1px rgba(255, 255, 255, .06) !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-pleine {
	padding: 0 !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form {
	max-width: 720px !important;
}

/* Fiche d'origine remplacée par la présentation claire */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox .tpmlf-masque,
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox .ka-bloc {
	display: none !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox > #tpmlf {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

/* Bouton de fermeture */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox .vclose {
	position: sticky !important;
	top: 12px !important;
	float: right !important;
	z-index: 40 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	width: 42px !important;
	height: 42px !important;
	min-height: 42px !important;
	margin: 0 0 8px 12px !important;
	padding: 0 !important;
	border: 1px solid rgba(15, 23, 42, .1) !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, .94) !important;
	color: #0f172a !important;
	box-shadow: 0 6px 18px -6px rgba(15, 23, 42, .35) !important;
	font-size: 24px !important;
	line-height: 1 !important;
	cursor: pointer !important;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-pleine .vclose {
	margin: 14px 14px -56px 0 !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox .vclose:hover {
	background: #fff !important;
	color: #5232e8 !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox .vclose:focus-visible {
	outline: 3px solid #6d4aff !important;
	outline-offset: 3px !important;
}

/* Tiroir « Coulisses » : la fiche d'origine garde son thème sombre, sur un panneau sombre. */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) #tpmlf-brut-c {
	display: block !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 22px !important;
	border-radius: 14px !important;
	background: #0e1428 !important;
	color: #f4f5ff !important;
	overflow-wrap: anywhere;
}

/* Fiche d'origine : la ligne « Prochaine étape » restait en texte sombre sur fond sombre
   (1,15:1) ; couleur du texte courant du site. */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) #tpmlf-brut-c .vmp-next span {
	color: #c9cfe6 !important;
}

/* Chargement et erreurs de la fiche d'origine (texte en style en ligne) */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox:not(.tpmlf-pleine) > div[style*="text-align:center"] {
	color: #5d6b80 !important;
}

/* Formulaires de VeriMarket (connexion, inscription, preuve, contradiction, vérification signée) */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form h2 {
	color: #0b1020 !important;
	font-size: 24px !important;
	line-height: 1.25 !important;
	font-weight: 800 !important;
	letter-spacing: -.01em !important;
}
/* Texte d'introduction : un paragraphe direct de la fenêtre. Sur le site, le bloc de l'Assemblée
   s'insère entre le titre et ce paragraphe ; le CSS additionnel le passe en gris clair. */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form > p {
	margin-top: 6px !important;
	color: #475569 !important;
	font-size: 14.5px !important;
	line-height: 1.55 !important;
}
/* Liens (« S'inscrire », « Se connecter ») : le CSS additionnel les passe en violet clair. */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form a {
	color: #5232e8 !important;
	text-decoration: underline !important;
	text-underline-offset: 2px;
}
/* Blocs que les scripts du site ajoutent aussi dans ces fenêtres quand un dossier était ouvert
   (constat, boutons du débat et de la table ronde, panneaux du débat) : ils concernent la fiche,
   pas le formulaire. */
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form > #vmp-constat,
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form > #vmp-actions,
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form > #vmp-debat,
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form > #vmp-tr {
	display: none !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form .vlab {
	display: block !important;
	margin: 16px 0 6px !important;
	color: #334155 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form .vin {
	box-sizing: border-box !important;
	width: 100% !important;
	background: #fff !important;
	color: #0f172a !important;
	-webkit-text-fill-color: #0f172a !important;
	border: 1px solid #c8cfdd !important;
	border-radius: 10px !important;
	box-shadow: none !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form .vin::placeholder {
	color: #6b7689 !important;
	-webkit-text-fill-color: #6b7689 !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form .vin:focus {
	border-color: #6d4aff !important;
	box-shadow: 0 0 0 3px rgba(109, 74, 255, .2) !important;
	outline: none !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form select.vin option {
	background: #fff !important;
	color: #0f172a !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form .vbtn {
	background: #fff !important;
	color: #0f172a !important;
	border: 1px solid #c8cfdd !important;
	border-radius: 12px !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form .vbtn.p {
	background: #6d4aff !important;
	border-color: #6d4aff !important;
	color: #fff !important;
	font-weight: 700 !important;
}
html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-form .vbtn.p:hover {
	background: #5a37f0 !important;
}

@media (max-width: 699px) {
	html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox {
		padding: 20px !important;
		border-radius: 20px !important;
	}
	html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-pleine {
		padding: 0 !important;
	}
	html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) .vmbox.tpmlf-pleine .vclose {
		margin: 10px 10px -52px 0 !important;
	}
	html body #vmod.tpmlf:not(#_):not(#_):not(#_):not(#_) #tpmlf-brut-c {
		padding: 16px !important;
	}
}
