/**
 * Vauban — Icônes SVG inline (registre Vauban_Icons).
 *
 * Le <span class="v-icon"> rendu par Vauban_Icons::render() encapsule un SVG
 * monochrome qui hérite de la couleur du texte (currentColor) et s'aligne sur
 * la ligne de base typographique. La taille suit la taille de police du parent
 * (1em), de sorte qu'une icône remplaçant un emoji garde des proportions
 * cohérentes avec le texte adjacent.
 */

.v-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1em;
	height: 1em;
	line-height: 1;
	vertical-align: -0.125em;
	flex: 0 0 auto;
}

.v-icon > svg {
	width: 1em;
	height: 1em;
	display: block;
}

/* Modificateurs de taille optionnels. */
.v-icon--sm > svg { width: 0.85em; height: 0.85em; }
.v-icon--lg > svg { width: 1.35em; height: 1.35em; }
.v-icon--xl > svg { width: 2em; height: 2em; }

/* Espacement quand l'icône précède un libellé. */
.v-icon + span,
.v-icon + .v-icon-label {
	margin-left: 0.4em;
}
