@charset "utf-8";
@import "plugins/jQuery/jquery-ui.custom.min.css";

/* montserrat-regular - latin */
@font-face {
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 400;
	src: url("/css/font/montserrat-v23-latin-regular.eot"); /* IE9 Compat Modes */
	src: local(""),
	  url("/css/font/montserrat-v23-latin-regular.eot?#iefix")
		format("embedded-opentype"),
	  /* IE6-IE8 */
		url("/css/font/montserrat-v23-latin-regular.woff2")
		format("woff2"),
	  /* Super Modern Browsers */
		url("/css/font/montserrat-v23-latin-regular.woff")
		format("woff"),
	  /* Modern Browsers */
		url("/css/font/montserrat-v23-latin-regular.ttf")
		format("truetype"),
	  /* Safari, Android, iOS */
		url("/css/font/montserrat-v23-latin-regular.svg#Montserrat")
		format("svg"); /* Legacy iOS */
}
  
/* montserrat-700 - latin */
@font-face {
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 700;
	src: url("/css/font/montserrat-v23-latin-700.eot"); /* IE9 Compat Modes */
	src: local(""),
	  url("/css/font/montserrat-v23-latin-700.eot?#iefix")
		format("embedded-opentype"),
	  /* IE6-IE8 */ url("/css/font/montserrat-v23-latin-700.woff2")
		format("woff2"),
	  /* Super Modern Browsers */
		url("/css/font/montserrat-v23-latin-700.woff") format("woff"),
	  /* Modern Browsers */
		url("/css/font/montserrat-v23-latin-700.ttf")
		format("truetype"),
	  /* Safari, Android, iOS */
		url("/css/font/montserrat-v23-latin-700.svg#Montserrat")
		format("svg"); /* Legacy iOS */
}

html, body {
	margin: 0;
	padding: 0;
}

html {
	font-size: 100%;
	overflow-x: hidden;
}

body {
	background-image: url("../images/image_accueil_poste.png");
  	background-repeat: no-repeat;
  	background-size: cover;
  	background-position: right center;
  	position: fixed;
  	width: 100%;
  	height: 100%;
	font-family: Verdana, Geneva, sans-serif;
	font-size: 1em;
	color: #cdced2;
}

.container {
	position: absolute;
	width: 450px;
	top: 40%;
	text-align: center;
	max-width: 970px;
	margin-left: auto;
	margin-right: auto;
}

p {
	font-size: 0.8em;
	margin: 10px 0;
}

/*************************************************************************************************************/
/************************************************  WRAPPER  **************************************************/
/*************************************************************************************************************/

#wrapper {
	position: absolute;
	right: 0;
	background-color: transparent;
	padding-bottom: 0px;
	min-height: 100%;
	width: 30%;
  	min-width: 550px;
  	overflow:hidden;
}

/*************************************************************************************************************/
/**********************************************  LOGO DEV  ***************************************************/
/*************************************************************************************************************/

#logodev {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}
  
#logodev .container {
	left: 0;
	top: 0;
	position: absolute;
	width: 150px !important;
	margin: 0;
	padding: 0;
}
  
#logodev .container #textLogoDev {
	border-style: solid;
	border-color: green;
	border-radius: 50px;
	color: green;
	padding: 5px 10px;
	font-size: 15px;
	position: relative;
	display: inline-block;
	background-color: white;
}

/*************************************************************************************************************/
/************************************************  HEADER  ***************************************************/
/*************************************************************************************************************/

#header {
	margin: 0;
	padding: 0;
	margin-bottom: 2rem;
}

#header .logo {
	position: absolute;
	background-image: url("../images/logo_laposte.svg");
	background-repeat: no-repeat;
	margin: 0 auto;
	width: 200px;
	height: 145px;
	padding: 0;
	left: 0;
	right: 0;
}

#header .container {
	position: inherit;
	margin: 15% 0 0 0;
	height: 145px;
	padding: 0;
	width: auto;
}

/*************************************************************************************************************/
/************************************************  CONTENT  **************************************************/
/*************************************************************************************************************/

#container_milieu {
	position: relative;
	padding: 0 0 60px 0;
	padding-bottom: 60px;
	margin-top: 0%;
}

#container_milieu #contenu_specifique_application {
	margin: 3% 4%;
	margin-bottom: 30px;
	position: relative;
	top: 0px;
}

form {
	margin: 0 0;
    position: relative;
	margin-right: 0%;
}

/*************************************************************************************************************/
/************************************************  INPUTS  **************************************************/
/*************************************************************************************************************/

#container_milieu #contenu_specifique_application form h3 {
	width: auto;
	margin: auto;
	text-align: left;
	font-weight: bold;
	color: black;
	font-size: 0.8rem;
	font-style: normal;
	line-height: normal;
	padding: 0;
}

.pwdField::placeholder {
	color: transparent;
}

.pwdField {
  	outline: none;
  	border: solid 1px #003ea5;
  	border-radius: 8px;
  	height: 40px;
  	margin: 5px 0 10px 0;
  	text-align: left;
  	padding: 7px 12px;
  	color: #6c727f;
  	background: none repeat scroll 0 0 #fff;
  	font-size: 0.9em;
	box-sizing: border-box;
	flex: 1 1 auto;
}

.pwdField:focus {
	box-shadow: 0 0 8px rgba(0, 123, 255, 0.6);
}

.input-group-append, .input-group-prepend {
	margin-left: -55px;
	margin-block-start: 1%;
	margin-block-end: 1%;
  }

/** EYES ***/


.showPassword {
	margin: -4px 0 0 0;
	width: 56px;
}

.showPassword:focus {
	border: 2px dashed #003ea5 !important;
	border-radius: 10px;
}

.btn-secondary,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
  background-color: transparent !important;
  border-color: transparent;
  color: #003ea5;
  box-shadow: none;
}

.fa {
	top: 0px;
	font-size: 14px;
}

/* Fix bottom default-custom */
.alert {
	bottom: 0px;
	font-size: 0.8rem;
}

/*************************************************************************************************************/
/************************************************  VALIDATE BUTTON  ***************************************************/
/*************************************************************************************************************/

.button-container {
	position: relative;
	display: inline-block;
	width: 100%;
}

#validateButton {
	position: relative;
	top: -22px;
	float: none;
	transition: all 0.5s ease;
	margin: 30px 0px  0px 0px;
	outline: none;
	border: none;
	background: #003ea5;
    border-radius: 30px;
    font-size: 18px;
    text-transform: uppercase;
    font-family: "Montserrat";
    outline-color: #002aed;
    height: 50px;
    width: 100%;
}

#validateButton:hover, #validateButton:focus {
	letter-spacing: 2px;
	box-shadow: rgba(0, 123, 255, 0.6) 0px 0px 19px 5px;
}

#validateButton:disabled {
	color: #c4c4c4;
}

.loader {
	display: block;
	position: absolute;
	top: 32px;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80px; /* Ajuste la taille selon ton besoin */
	height: 80px;
}

.hidden-text {
	visibility: hidden; /* Cache uniquement le texte du bouton, sans affecter la taille */
}

.hidB4 {
	display: none;
}

.ml12 {
	font-weight: 200;
	font-size: 1.8em;
	text-transform: uppercase;
	/*letter-spacing: 0.2em;*/
}

.ml12 .letter {
	display: inline-block;
	line-height: 1em;
}

#attempts {
	position: absolute;
    color: #fff;
    top: 26px;
    right: 120px;
	font-size: 0.5rem;
	display: none;
}

/*************************************************************************************************************/
/************************************************  FOOTER  ***************************************************/
/*************************************************************************************************************/

#footer {
	width: 100%;
	height: 40px;
	bottom: 0;
	left: 0;
	background-color: transparent;
	font-family: "Montserrat" !important;
	font-size: 11px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	margin-bottom: 20px;
	margin-top: 20px;
	position: absolute;
}

#footer .MentionLegal {
	color: #003ae5 !important;
	font-weight: bold;
	text-decoration: underline #003ae5 !important;
}

/*.container {
    display: block;
    max-width: 970px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

input, select {
	flex: 1 1 auto;
}*/

/* screen < 310 px */
/*@media screen and (max-width: 310px) {
	body {
		background-image: none;
	}
	form {
		margin: 0;
	}
}*/

/*************************************************************************************************************/
/***********************************************  RESPONSIVE  ************************************************/
/*************************************************************************************************************/

@media screen and (min-width: 321px) and (max-width: 375px) {

	#logodev .container #textLogoDev {
	  padding: 3px 5px;
	}
  
	#logodev .container {
	  height: 50px;
	}
  
	.header .container, #header .container {
	  margin: 20% 0 0 0;
	  height: 130px;
	}
  
	#header {
	  margin-bottom: -3%;
	}
  
	.header .logo, #header .logo {
	  height: 110px;
	  width: 150px;
	}
  
	#container_milieu {
	  margin-top: 0%;
	}
  
	#container_milieu #contenu_specifique_application {
	  margin-top: 15px;
	  position: relative;
	  top: 0px;
	  width: 80%;
	}
}
  
@media screen and (min-width: 376px) and (max-width: 668px) {
	#logodev .container #textLogoDev {
	  padding: 3px 5px;
	}
  
	#logodev .container {
	  height: 50px;
	}
  
	.header .container,
	#header .container {
	  margin: 20% 0 0 0;
	  height: 130px;
	}
  
	#header {
	  margin-bottom: 3%;
	}
  
	.header .logo, #header .logo {
	  height: 110px;
	  width: 150px;
	}
  
	#container_milieu {
	  margin-top: 0%;
	}
  
	#container_milieu #contenu_specifique_application {
	  margin-top: 15px;
	  width: 85%;
	}
}
  
@media screen and (min-width: 669px) and (max-width: 768px) {
  
	.header .container, #header .container {
	  margin: 10% 0 0 0;
	  height: 80px;
	}
  
	.header .logo, #header .logo {
	  height: 110px;
	  width: 150px;
	  background-position: center,110px 83px;
	}
  
	#container_milieu {
	  margin-top: 0%;
	}
  
	#wrapper {
	  background-color: white;
	}
}
  
@media screen and (min-width: 769px) and (max-width: 868px) {
	body {
	  background-position: -400px 0px;
	}
  
	#header {
	  margin-bottom: 15%;
	}
  
	.header .container,  #header .container {
	  margin: 10% 0 0 0;
	  height: 60px;
	}
  
	.header .logo,
	#header .logo {
	  height: 110px;
	  width: 150px;
	}
  
	#container_milieu {
	  margin-top: 0%;
	}
}

@media screen and (min-width: 321px) and (max-width: 868px) {
	body {
		background-image: none;
	}
}

@media screen and (max-width: 768px) {
	#wrapper {
	  width: 100%;
	  min-width: 150px;
	}
}
	
@media screen and (max-width:720px) {
	.header, #header {
		height: 140px;
	}
	
	.ui-state-default{
		text-shadow: none;
	}
}