div#frm_check_sn_mvr {
	position:relative;
	width:calc(100% - 42px);
	border:1px solid #0054a6;
	border-radius:0.5em;
	background:#FFF;
	padding:20px 20px 5px 20px;
	margin:0 auto 30px auto;
}
div#frm_check_sn_mvr_content {position:relative; display: table; width:100%;}

.ch_frm_name {
    position: absolute;
    z-index: -1;
    left: -9999px;
    width: 0px;
    height: 0px;
}

.frm_check_sn_mvr_title {position:relative;margin:0 0 20px 0;color:#0054a6; font-size:1.4em; font-weight:bold; padding:2px 5px 5px 40px; background:url("../img/public/check_numsn.png") left top no-repeat;}
.frm_check_sn_mvr_txt {position:relative;color:#5f5f5f;margin:0 0 20px 0;}
.frm_check_envoiok {position:relative;padding:25px; border-radius:0.5em; border:1px solid #28a745; background:#d1ffdb; color:#28a745; text-align:center; width:90%; max-width:700px; margin:25px auto;}
.frm_checksn_error_cadre {position:relative;width:calc(100% - 32px); margin:0 0 30px 0;padding:15px;border-radius:0.5em; border:1px solid #b00000; background:#ffc8c8; color:#b00000;}
.frm_checksn_error_cadre p {margin:5px 0;}
#frm_checksnmvr {overflow:visible;}
.frm_checksnmvr_champ {position:relative; float:left; margin:0 15px 15px 0;}
.frm_checksnmvr_ligne1 {float:left; width:calc(100% - 150px);}
.frm_checksnmvr_champ label {color: #333; width: 100%; font-weight: bold; display: table; margin: 0 0 5px 0; font-size: 0.8em;}
.frm_checksnmvr_ligne1 .frm_checksnmvr_champ {width:calc(50% - 15px);}
.frm_checksnmvr_ligne1 .frm_checksnmvr_champ input {width:calc(100% - 22px);}
.frm_checksnmvr_champ input { border:1px solid #cccccc; border-radius:0.3em; padding:10px; font-size:1em;}
.frm_checksnmvr_submit {margin: 20px 0 0 0;width: 150px;}
.ch_frm_submit {cursor:pointer;width:100%;background:#f38119; border:1px solid #f38119 !important; font-weight:400; text-transform:uppercase; color:#FFF;padding:10px 0 !important;}
.ch_frm_submit:hover {background:#000; border:1px solid #000 !important;}
.frm_checksnmvr_champ2 {margin:0 !important;}
.frm_checksnmvr_champ2 input {padding:0 !important;}

/* ===== LABEL AVEC INFOBULLE ===== */

.label-with-tooltip {
    display: flex;
    align-items: center;
    gap: 6px;
}

/* Pictogramme ? */
.tooltip-wrapper {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    font-size: 11px;
    font-weight: bold;
    color: #FFF;
    border-radius: 0.8em;
    cursor: help;
    background: #0054a6;
}

/* Infobulle */
.tooltip-content {
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    min-width: 260px;
    max-width: 320px;
    background: #111;
    color: #fff;
    font-size: 1.1em;
    line-height: 1.4em;
    padding: 10px 12px;
    border-radius: 0.4em;
    text-align: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease;
    z-index: 10;
}

/* Petite flèche */
.tooltip-content::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px;
    border-style: solid;
    border-color: #111 transparent transparent transparent;
}

/* Affichage au hover et au focus */
.tooltip-wrapper:hover .tooltip-content,
.tooltip-wrapper:focus .tooltip-content,
.tooltip-wrapper:active .tooltip-content {
    opacity: 1;
    visibility: visible;
}

/* Override du label pour l'infobulle */
.frm_checksnmvr_champ label.label-with-tooltip {
    display: flex;
    align-items: center;
}


@media screen and (max-width : 650px) {
	.frm_checksnmvr_ligne1 {float:none; width:100%;}
	.frm_checksnmvr_champ {margin:0 7px 15px 7px;}
	.frm_checksnmvr_submit {
		margin: 10px 0 10px 0;
		width: 100%;
	}
}
@media screen and (max-width : 500px) {
	.frm_checksnmvr_ligne1 .frm_checksnmvr_champ {width:100%;}
	.frm_checksnmvr_champ {margin:0 0 15px 0;}
}