/* =====================================================================
 * Vandeto Footer Fix
 * Le JS ajoute la classe .vff-flex ou .vff-minheight sur <html>,
 * tague le footer avec .vff-footer, et pose --vff-nav-offset.
 * En mode Yellow Pencil, .vff-yp neutralise tout.
 * ===================================================================== */

:root {
	--vff-nav-offset: 0px;
}

/* ---------------------------------------------------------------------
 * MÉTHODE FLEX — sticky footer natif
 * body en colonne flex, le footer prend margin-top:auto => poussé en bas.
 * ------------------------------------------------------------------- */
html.vff-flex:not(.vff-yp),
html.vff-flex:not(.vff-yp) body {
	height: auto;
}

html.vff-flex:not(.vff-yp) body {
	min-height: 100vh;
	min-height: 100dvh;
	display: flex;
	flex-direction: column;
}

/* Le footer est le dernier maillon poussé en bas */
html.vff-flex:not(.vff-yp) body > .vff-footer {
	margin-top: auto;
	flex: 0 0 auto;
}

/* Offset pour une bottom-nav fixe : padding sur le footer, jamais de vide */
html.vff-flex:not(.vff-yp) body > .vff-footer {
	padding-bottom: calc(var(--vff-nav-offset) + 0px);
}

/* ---------------------------------------------------------------------
 * MÉTHODE MIN-HEIGHT — fallback non intrusif
 * On garde le flux normal, on force juste le wrapper de contenu à
 * remplir la hauteur pour que le footer descende.
 * ------------------------------------------------------------------- */
html.vff-minheight:not(.vff-yp) body > .vff-grow {
	min-height: calc(100vh - var(--vff-footer-h, 0px) - var(--vff-header-h, 0px));
}

html.vff-minheight:not(.vff-yp) body > .vff-footer {
	padding-bottom: calc(var(--vff-nav-offset) + 0px);
}

/* ---------------------------------------------------------------------
 * ANTI-GAP — éléments vides collés après le footer
 * ------------------------------------------------------------------- */
html:not(.vff-yp) .vff-collapsed {
	display: none !important;
}

/* Neutralise un padding-bottom parasite direct sur body
 * (remplacé par l'offset réel géré via .vff-footer). */
html.vff-killgap:not(.vff-yp) body {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}
