@font-face{font-family:'eitfont';src:url('/fonts/Folks-Light.ttf');}
@font-face{font-family:'eitfont';src:url('/fonts/Folks-Bold.ttf');font-weight:bold;}

html{margin:0;padding:0;width:100%;min-height:100%;font-family:eitfont;color:#1e2630;}
body{margin:0;padding:0;min-height:100vh;min-height:100dvh;background:url('/images/login_background_2.png') center/cover no-repeat fixed;display:flex;align-items:center;justify-content:center;}

.centerpage{width:100%;padding:20px;}

.container{display:flex;border-radius:15px;overflow:hidden;box-shadow:0 15px 35px rgba(0,0,0,0.35);background:#ffffff;border:1px solid rgba(0,0,0,0.12);max-width:900px;margin-left:auto;margin-right:auto;}

.leftlogin{width:40%;background:linear-gradient(160deg,#2f3946,#1e2630);color:#ffffff;padding:40px 20px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;}
.leftlogin img{width:100%;max-width:560px;margin:0 auto 16px auto;filter:drop-shadow(0px 4px 8px rgba(0,0,0,0.35));}
.login-tagline{margin:0;font-size:1.05em;line-height:1.45;font-weight:normal;opacity:0.95;max-width:280px;}

.rightlogin{width:60%;padding:40px 30px;background:#ffffff;}

.titre{font-size:1.8em;margin-bottom:30px;font-weight:bold;color:#1f6fa8;}

.login-form{display:flex;flex-direction:column;gap:16px;}
.login-form fieldset{margin:0;}
.login-form br{display:none;}

input[type=text],input[type=email],input[type=password]{border:1px solid #8a9aab;border-radius:8px;width:100%;padding:12px 14px;font-size:1em;background:#ffffff;transition:border-color 0.2s,box-shadow 0.2s;color:#1e2630;box-sizing:border-box;-webkit-appearance:none;appearance:none;}
input[type=text]:focus,input[type=email]:focus,input[type=password]:focus{outline:none;border-color:#2b7fb7;background:#ffffff;box-shadow:0 0 0 3px rgba(43,127,183,0.25);}
input[type=text]::placeholder,input[type=email]::placeholder,input[type=password]::placeholder{color:#8a96a3;}

fieldset{border:1px solid #b8c4d0;padding:14px 16px 18px 16px;border-radius:10px;transition:border-color 0.2s,box-shadow 0.2s;background:#f7f9fb;}
legend{padding:0 10px;font-size:0.9em;font-weight:600;color:#2b3a4a;background:#ffffff;border-radius:5px;border:1px solid #b8c4d0;}
fieldset:focus-within{border-color:#2b7fb7;background:#ffffff;box-shadow:0 0 0 3px rgba(43,127,183,0.12);}
fieldset:focus-within legend{border-color:#2b7fb7;background:#2b7fb7;color:#ffffff;}

.logbutton{text-align:right;margin-top:4px;}
.logbutton input[type=submit]{background:linear-gradient(135deg,#2b7fb7,#1f6fa8);color:#ffffff;border:0;padding:12px 25px;border-radius:30px;font-weight:bold;cursor:pointer;font-size:1em;letter-spacing:0.5px;transition:0.25s;box-shadow:0 5px 10px rgba(0,0,0,0.2);}
.logbutton input[type=submit]:hover{background:linear-gradient(135deg,#1f6fa8,#4aa3d6);transform:translateY(-1px);box-shadow:0 8px 15px rgba(0,0,0,0.25);}

a{text-decoration:none;color:#077;font-weight:bold;}
a:hover{color:#2b7fb7;}

strong{color:inherit;}
.login-error{padding:12px 14px;border-radius:10px;background:#fdecea;border:1px solid #f5c6c6;color:#922b21;text-align:center;font-size:0.95em;}
.login-error strong{font-weight:bold;color:#922b21;}

.forgotpwd{margin:0;text-align:center;}
.forgotpwd a{display:inline-block;padding:8px 4px;}

@media screen and (max-width:900px){
*{box-sizing:border-box;}

body{
	align-items:stretch;
	justify-content:flex-start;
	background-attachment:scroll;
	background-position:center top;
}

.centerpage{
	padding:0;
	min-height:100dvh;
	display:flex;
	flex-direction:column;
}

.container{
	flex:1;
	flex-direction:column;
	width:100%;
	max-width:none;
	min-height:100dvh;
	border-radius:0;
	box-shadow:none;
	border:0;
	background:transparent;
}

.leftlogin{
	width:100%;
	flex-shrink:0;
	padding:calc(env(safe-area-inset-top,0px) + 32px) 24px 40px;
	background:linear-gradient(165deg,#354556 0%,#1a2330 55%,#141c26 100%);
}

.leftlogin img{
	width:auto;
	max-width:min(52vw,200px);
	margin-bottom:12px;
}

.login-tagline{
	max-width:none;
	font-size:1.15em;
	line-height:1.35;
	letter-spacing:0.01em;
}

.rightlogin{
	flex:1;
	width:100%;
	margin-top:-20px;
	padding:28px 20px calc(env(safe-area-inset-bottom,0px) + 28px);
	background:#ffffff;
	border-radius:24px 24px 0 0;
	box-shadow:0 -10px 40px rgba(0,0,0,0.12);
}

.login-page .titre{display:none;}

.reset-page .titre{
	display:block;
	font-size:1.35em;
	margin-bottom:20px;
	text-align:center;
	line-height:1.3;
}

.login-form{gap:18px;}

fieldset{
	padding:0;
	border:0;
	background:transparent;
	box-shadow:none;
}

fieldset:focus-within{box-shadow:none;}

legend{
	display:block;
	width:100%;
	padding:0 0 8px 2px;
	margin:0;
	border:0;
	background:transparent;
	border-radius:0;
	font-size:0.85em;
	text-transform:uppercase;
	letter-spacing:0.06em;
	color:#5a6a7a;
}

fieldset:focus-within legend{
	background:transparent;
	color:#2b7fb7;
}

input[type=text],input[type=email],input[type=password]{
	min-height:48px;
	padding:14px 16px;
	font-size:16px;
	border-radius:12px;
	border-color:#c5d0db;
	background:#f7f9fb;
}

input[type=text]:focus,input[type=email]:focus,input[type=password]:focus{
	background:#ffffff;
}

.forgotpwd a{
	font-size:0.95em;
	padding:10px;
}

.logbutton{
	margin-top:8px;
	text-align:stretch;
}

.logbutton input[type=submit]{
	width:100%;
	min-height:52px;
	padding:16px 24px;
	font-size:1.05em;
	border-radius:14px;
	box-shadow:0 8px 20px rgba(31,111,168,0.35);
}

.logbutton input[type=submit:active]{
	transform:scale(0.98);
}

.login-error{
	font-size:0.9em;
}
}
