@charset "UTF-8";

.a42-nowrap{
	white-space: nowrap;
}

.a42-site-logo{
	display: block;
	width: 4.75em;
	height: 4.5em;
}

#main-error-message, p#main-error-message {
  margin-top: 1em;
}
#main-error-message, p#main-error-message, .warning-text {
  font-weight: bold;
  color: #962e3f;
}
.errormandatory {
  color: #962e3f;
}
/**/


legend .question-valid-container,
legend .question-help-container {
	font-family: Verdana, Arial, sans-serif;
	font-size: 1rem;
}

.label-no-important legend{font-size:1.1em;font-weight:100;font-family: Verdana, Arial, sans-serif;}


/* Questionnaire de certification — #435132 */
#question2734 .questionhelp,
#question2735 .questionhelp,
#question2736 .questionhelp,
#question2737 .questionhelp,
#question2740 .questionhelp,
#question2741 .questionhelp,
#question2742 .questionhelp,
#question2743 .questionhelp,
#question2744 .questionhelp,
#question2746 .questionhelp,
#question2748 .questionhelp,
#question2749 .questionhelp,

/* Questionnaire certifiés – #743139 */
#question2850 .questionhelp,
#question2861 .questionhelp,
#question2852 .questionhelp,
#question2853 .questionhelp,
#question2856 .questionhelp,
#question2861 .questionhelp
{
	display: none;
}

.row{
	margin-bottom: 0;
}

fieldset {
	margin: 0;
	padding-bottom: 0;
}

.label-text,
.radio-list label.btn,
.control-label{
	display: inline-block;
	vertical-align: top;
	margin-bottom: 0;
	/*word-break: break-all;*/
	min-width: 2.75rem; /* 44px */
	padding-top: .2rem;
	padding-bottom: .5rem;
	line-height: 1.5rem; /* 24px */
}

	.checkbox-item .label-text{
		padding-top: 0;
	}

.label-text{
	padding-left: .5rem;
}

.radio-list label.btn > input{
	position: relative;
	top: .2rem;
	margin-right: .5rem;
}

.radio-item label::before,
.checkbox-item label::before{
	border: 1px solid #7d829a;
	top:9px!important;
}

.ui-button {
	margin: 0;
	padding: 1.125em 1.5em; /* 18px 24px */
	background: none;   
	border: 0;
	border-radius: 0;
	font-family: 'GeoMed', Verdana, Arial, sans-serif;
}

.ui-button.btn-primary {
	transition: border-color .25s, background-color .25s, opacity .25s;
	padding: .857em 1.143em; /* 18px 24px */
	background-color: #31486e;
	color: #fff;
	font-size: 1.313em; /* 21px */
	line-height: 1.143; /* 24px */
}

.ui-button.btn-primary:focus,
.ui-button.btn-primary:hover,
.ui-button.btn-primary.ui-state-hover {
	background-color: #f2ebc7;
	color: #0b1b34;
}

.ui-button.btn-default{
	padding: 1em 0; /* 18px 24px */
	font-size: 1.125em; /* 18px */
	color: #31486e;
	background: none;
	border: 0;
	padding: .5em;
}

	.ui-button.btn-default:focus,
	.ui-button.btn-default:hover,
	.ui-button.btn-default:active{
		background: none;
	}

.ui-button .ui-button-text {
	line-height: inherit;
}

.ui-button.btn-default .ui-button-text {
	padding-right: 0;
	padding-left: 0;
	border-bottom: 1px solid;
	transition: border-color .25s;
}

.ui-button-text-only .ui-button-text {
	padding: 0;
}

.ui-button.btn-default:focus,
.ui-button.btn-default:hover,
.ui-button.btn-default.ui-state-hover { 
	color: #962e3f;
}

.ui-button.btn-default:focus .ui-button-text,
.ui-button.btn-default:hover .ui-button-text,
.ui-button.btn-default.ui-state-hover .ui-button-text {
	border-bottom-color: transparent;
}

.ui-button .ui-icon {
	display: none;
}

.ui-button-text-icon-secondary .ui-button-text,
.ui-button-text-icons .ui-button-text {
	padding: 0;
}

#footer {
	margin-bottom: 0;
}



#footer * {
	margin-bottom: 0;
}

[class*="btn"] + input[class*="btn"] + [class*="btn"] {
	margin-left: 0.750em;
}

.error {
	color: #962e3f;
	font-weight: bold;
}

.error[style*="center"] {
	text-align: left !important;
}

.form-group {
	display: flex;
	width: 100%; /* bugfix quand il n’y a qu’une légende mais pas de label */
}

.form-group input[type="checkbox"], 
.form-group input[type=radio] {
	position: relative;
	/*top: .35em;*/
	top: 0;
	/*width: 1.5em;
	height: 1.5em;*/
}
	
	.checkbox-item .form-group input[type="checkbox"]{
		/*top: .35rem;*/
		top: 0;
	}

.radio-item input[type="radio"]:focus + label::before,
.checkbox-item input[type="checkbox"]:focus + label::before{
	outline : 4px solid #31486e!important
}
/* attention : ça casse le formulaire "enregistrer et terminer plus tard" */
.form-group label {
/*  border: 0 !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	-webkit-clip-path: inset(50%) !important;
		clip-path: inset(50%) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
	white-space: nowrap !important;*/
}

.form-group .hide {
	border: 0 !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	-webkit-clip-path: inset(50%) !important;
		clip-path: inset(50%) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
	white-space: nowrap !important;
}

/*.form-group > *:first-child {
	width: 1.5em;
	background-color: yellow;
}*/

.form-group .label-text {
	flex: 1;
	padding-left: .5rem;
	/**/
	/*padding-bottom: 0;*/
}

/**
 * 20200408
 */
.radio-list{
	line-height: 2.75rem;
}

.radio-list .radio-item,
.radio-list label.btn{
	display: inline-block;
	vertical-align: top;
	width: auto; /* allows to display 1 to 5 radio buttons next to each other. */
	margin-bottom: 0;
}

.a42-radio-block .radio-list .radio-item{
	display: block;

}

.radio-list .radio-item{
	margin-right: .5rem;
}
.radio-list label.btn{
	margin-right: 1rem;
}

input[type="radio"]{
	display: inline-block;
	vertical-align: text-top;
}
input[type="checkbox"]{
	display: inline-block;
	vertical-align: text-bottom;
}
input[type="checkbox"].other-checkbox{
	vertical-align: baseline;
}
.emtip{
	color: #31486e;
}


/**
 * 2021-03-18
 */
.radio-item,
.radio-list label.btn {
	position: relative;
	padding-left: 1.5rem;
}

.radio-item input[type="radio"],
.radio-list label.btn > input {
	position: absolute;
	/*top: 1em;*/
	top: .5rem;
	left: 0;
	width: auto;
	margin: 0;
}


.radio-item.form-group .label-text{
	padding-left: 0;
}

.radio-list{clear: both}


input[type="email"],
input[type="text"],
input[type="search"],
input[type="password"],
input[type="tel"],
input[type="number"]{
	width: 90vw;
}

input[type="email"],
input[type="text"],
input[type="search"],
input[type="password"]{
	max-width: 15rem;
}
input[type="tel"],
input[type="number"]{
	max-width: 12rem;
}


/* reprise de AccessStyle /!\ */
/* on est obligé de préciser les balises car LimeSurvey applique la classe .btn sur certains labels */
input.btn:not(.btn-default),
button.btn:not(.btn-default){
	display: inline-block;
	vertical-align: top;
	margin-bottom: 0;
	background: none;
	border: 0;
	padding: 0;
	font-size: inherit;
	/*line-height: inherit;*/
	line-height: 1.5em;
	font-family: inherit;
	text-decoration: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	color: inherit;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	text-align: inherit;

	font-size: 1.125em;
	/* 18px */
	line-height: 1.333;
	/* 24px */
	padding: .5em;
	background-color: #31486e;
	color: #fff;
	font-family: 'GeoMed', Verdana, sans-serif;
	border: 1px solid #31486e;
}

.clear-all input{
	position: relative;
	top: .5rem;
}

.clear-all input[type="checkbox"]{
	top: .75rem;
}

.clear-all label{
	display: inline-block;
	vertical-align: top;
	padding: .5em 0;
}


/**/



@media screen and (max-width: 29.9em) {

	.ui-button.btn-default {
		padding-top: .5em;
		padding-bottom: .5em;
		font-size: 1em;
	}

}

@media screen and (max-width: 49.9em) {

	form:not(.survey-form-container) #footer .f-left,
	#footer .f-right{
		display: block;
	}

	#footer > * + *,
	#footer + .clear-all{
		margin-top: .75em;
	}

	.clear-all::before,
	.clear-all::after {
		content:'';
		display: table;
	}

	.clear-all::after {
		clear: both;
	}

	.clear-all button,
	.clear-all input {
		float: left;
	}

	[class*="btn"] ~ * {
		float: left;
	}

	[class*="btn"] + input[class*="btn"] {
		position: relative;
		top: .1em;
		clear: left;
		max-width: 20%;
	}

	[class*="btn"] + input[class*="btn"] + [class*="btn"] {
		display: inline-block;
		vertical-align: top;
		max-width: 80%;
		font-style: .9em;
	}
}

@media screen and (min-width: 30em) {

	#footer::before,
	#footer::after {
		content:'';
		display: table;
	}

	#footer::after {
		clear: both;
	}

	#footer .f-left,
	#footer .f-right{
		float: left;
	}

	#footer .f-left > *:last-child {
		margin-right: 1.875em;
	}
	
}

@media screen and (min-width: 40em) {

	#footer,
	#footer + .clear-all,
	#footer + .clear-all + * {
		padding-left: calc(1.875em + 10px);
	}
}

@media screen and (min-width: 50em) {

	[class*="btn"] + input[class*="btn"] {
		margin-left: 1.875em;
	}
}

legend p{
	margin-bottom: 0;
}

legend br
{
	display: none;
}

/* on masque cet élément car on gère déjà les astérisques à la main dans l'intitulé des questions*/
.visually-hidden
{
	border: 0 !important;
	clip: rect(1px, 1px, 1px, 1px) !important; /* 1 */
	-webkit-clip-path: inset(50%) !important;
		clip-path: inset(50%) !important;  /* 2 */
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
	white-space: nowrap !important; 
}

.fa-asterisk{font-size:65%}
/**/

.errormandatory{
	color:#962e3f;
}

.warning-text{
	display: block;
}

#main-error-message,
p#main-error-message,
.warning-text{
	font-weight:bold;
	color:#962e3f;
}

#main-error-message,
p#main-error-message{
	margin-top:1em;
}

#main-error-message:focus,
p#main-error-message:focus{
	outline:2px solid currentColor;
	outline-offset:2px;
}

/*.save-heading{
	display: block;
	margin-bottom: 0;
	font-size: 1.5em;
	line-height: 1.25;
	color: #31486e;
	font-family: 'GeoMed', Verdana, Arial, sans-serif;
}*/

/* "Veuillez sélectionner une réponse ci-dessous" : redondance avec la nature des champs  */
.list-radio .questionhelp{
	display: none;
}
.radio-text-item{list-style: none}


#beginScripts, .script-container{
	margin: 0;
}

fieldset ul, fieldset ol{
	padding-left: 0;
}

.group-description{
	margin-bottom: 3rem;
}

fieldset .answers-list, fieldset .answers-list{
	margin-bottom: 0;
}

.list-unstyled{
	list-style: none;
}

.survey-name{
	margin-bottom: 0;
}

.a42-main-intro_desc > *:first-child{
	margin-top: 1.5rem;
}

/* CHECKBOX WITH TEXT */
.checkbox-text-item .other-checkbox{
	display: none;
}

/** ERRORS */
.input-error input{
	border-color: #962e3f;
	border-width: 2px;
}
.input-error .text-danger{
	color: #962e3f;
	font-weight: bold;
}


/**surcharge fruity temporaire**/

.fruity .a42-main-tools a {color:#FFF;}
.fruity .a42-main-tools a:hover {color:#FFF;text-decoration:underline;}
.fruity .text-info, .fruity .text-primary, .fruity .text-success {color: #000 !important;}
body.fruity{padding-top:0!important}
.fruity .box{box-shadow:none!important}
.fruity .question-container.input-error{box-shadow:none!important}
.fruity legend {  border-bottom: 0}

.fruity .btn-check:active + .btn-primary, .fruity .btn-check:checked + .btn-primary, .fruity .btn-check:focus + .btn-primary, .fruity .btn-primary.active, .fruity .btn-primary.active.active, .fruity .btn-primary.active:focus, .fruity .btn-primary:active, .fruity .btn-primary:focus, .fruity .btn-primary:hover, .fruity .open .dropdown-toggle.btn-primary{background-color: #F2EBC7;
color: #0B1B34;
border-color: #F2EBC7;}
.fruity .btn-primary, .fruity .btn-primary.disabled, .fruity .btn-primary.disabled.active, .fruity .btn-primary.disabled:active, .fruity .btn-primary.disabled:focus, .fruity .btn-primary.disabled:hover{background-color: #31486e;color:#FFF}

body .answer-item label::after {
  background-color: #31486e;
  top: 10px;
  color:#fff;
  line-height: 13px;
}

body .answer-item.radio-item label::after{
  top: 12px;
}

.fruity .input-error input {
  border: 1px solid #962e3f;
  color: #000;
}
.fruity .alert-success{color:#27752c}
.fruity .alert-warning{border:none;color:#b35d24}


/*** upload file**/

.file-upload-modal{
	display: none;
}

.file-upload-modal.show{
	display: block;
	position:fixed;
	top:5vh;
	background: #fff;
  padding: 1em;
  z-index:999!important;
}

.file-upload-modal .modal-dialog{
	display: block;
}

.file-upload-modal .btn-close::after{
  content: "X";
  font-weight: bold;
}

.file-upload-modal	.btn-close{
	position: absolute;
	top: 34px;
	right: 12px;
	background: #ddd;
	padding: 5px 10px;
}

.file-upload-modal-body *{margin-bottom: 0}
table.uploadedfiles tr th:nth-child(1),table.uploadedfiles tr td:nth-child(1){display: none}

.files-list{display:block!important}
.files-list .file-element{display:block!important;width:100%}
.file-upload-modal-footer{padding:10px}
.fruity .btn-danger:hover{background:#a94442;color:#fff;cursor:pointer}
.file-preview{border-top:1px solid black;margin-top:5px;margin-bottom:5px}
.file-upload-modal .alert-success, .file-upload-modal  .alert-info{margin:auto}

.btn.upload,table.uploadedfiles .btn{padding:10px}


/*** modal **/
#bootstrap-alert-box-modal{
	display: none!important;
}

#bootstrap-alert-box-modal.show{
	display: block!important;
	position:fixed!important;
	top:10vh!important;
	background:#fff;
	width: 50em;
	margin-left: 20rem;
	z-index:99999;
}

.a42-main-container{
	position:static!important;
}

#bootstrap-alert-box-modal .modal-dialog{
	display: block;!important;
}

.modal-body{
	margin-bottom: 0!important;
	padding:2em;
	padding-bottom:3em;
}

.modal-footer{
	padding:2em;
	padding-top:0;
}

.modal-backdrop.show{
	position:fixed!important;
	top:0!important;
	bottom:0!important;
	width:100%!important;
	background:rgba(0,0,0,0.5)!important;
	padding:1em;
	/*z-index:999!important pour cacher tout le reste*/
}

/**Prérequis**/
code{font-weight: bold;}
button#a42-button-disabled{
	border: 1px solid #0b1b34;
  border-radius: 7px;
  padding: 5px;
  background: #fff;
  cursor: pointer;
  font-size: 0.7em;
  margin-left:0.2em;
}


/*2025/05/27 : ajout de la class radio-table pour faire des radios sur une ligne avec les intitulés au dessus **/ 
.radio-table ul.list-unstyled {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 1em;
  padding: 0;
}

.radio-table ul.list-unstyled li.radio-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center;
  text-align: center;
  list-style: none;
}

.radio-table ul.list-unstyled li.radio-item label {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
}

.radio-table ul.list-unstyled li.radio-item label::before {
  order: 2; /* placer après le texte */
  margin: 0 auto;
  margin-top: 0.5em;
  position: static !important; /* enlève le positionnement absolu */
}

.radio-table ul.list-unstyled li.radio-item label::after {
  order: 2; /* placer après le texte */
  margin: 0 auto;
  margin-top: -0.86em;
  position: static !important; /* enlève le positionnement absolu */
}


/*2025/07/25 : ajout de la class radio-block pour faire des radios les uns en dessous des autres **/ 
.radio-block ul.list-unstyled li.radio-item {
  display: block;
}


#ls-button-submit{
	margin-top:2em;
	margin-bottom:4em;
}
