* { box-sizing:border-box; }
html,body.login { min-height:100%; min-width:320px; }
body.login { display:flex; align-items:center; height:auto; min-height:100vh; min-height:100svh; margin:0; color:#152e46; background:#f5f7fb; font-family:Inter,"Segoe UI",Arial,sans-serif; font-size:15px; line-height:1.5; }
body.login::before { content:""; position:fixed; inset:0 50% 0 0; background:radial-gradient(circle at 15% 15%,#1d5380,transparent 60%),#062b4d; }
body.login::after { content:"Un espace commun. Des accès personnels."; position:fixed; left:6vw; bottom:8vh; width:34vw; color:#e4edf7; font-size:26px; line-height:1.5; }
#login { position:relative; width:min(460px,calc(50vw - 70px)); padding:0; margin:50px max(35px,8vw) 50px auto; }
.login h1 { margin:0 0 30px; text-align:left; }
.login h1 a { display:block; width:190px; height:94px; margin:0; background-image:url(images/krea3-logo-complete-blue.png); background-position:left center; background-size:contain; text-indent:-9999px; overflow:hidden; }
.k3ee-login-intro { margin-bottom:26px; }
.k3ee-login-intro p { color:#185d9e; text-transform:uppercase; font-size:12px; letter-spacing:.09em; font-weight:700; }
.k3ee-login-intro h2 { margin:0 0 12px; color:#152e46; font-size:32px; line-height:1.2; letter-spacing:-.03em; }
.k3ee-login-intro span { color:#53657c; font-size:15px; }
.login form { margin:0; padding:30px; border:1px solid #dce5f0; border-radius:16px; background:white; box-shadow:0 15px 45px #1e355319; }
.login label { color:#243b52; font-size:14px; font-weight:600; }
.login form .input,.login input[type=text],.login input[type=password],.login input[type=email] { display:block; width:100%; min-height:50px; margin:7px 0 22px; padding:11px 13px; border:1px solid #b6c5d8; border-radius:9px; font-size:17px; background:#fcfdff; color:#152e46; }
.login form .input:focus { border-color:#1563b4; outline:2px solid #1563b4; outline-offset:2px; box-shadow:none; }
.login .button.wp-hide-pw { color:#15599c; min-width:44px; min-height:44px; top:10px; }
.login .submit { margin:20px 0 0; float:none; }
.login .submit .button-primary,.login form .button-primary { width:100%; min-height:48px; padding:10px 16px; border:1px solid #125eb0; border-radius:9px; background:#125eb0; color:white; font-size:16px; font-weight:650; box-shadow:none; }
.login .submit .button-primary:hover { background:#084b91; }
.login .forgetmenot,.login .language-switcher,.login #backtoblog { display:none!important; }
.login #nav { margin:20px 0 0; padding:0; font-size:14px; }
.login #nav a { color:#14599c; }
.login #nav .wp-login-lost-password,.login #nav a[href*="action=lostpassword"] { display:inline!important; }
.login #login_error,.login .message,.login .notice { margin-bottom:20px; padding:15px; background:white; border:1px solid #dce5f0; border-left:4px solid #15599c; border-radius:8px; box-shadow:none; font-size:14px; }
.login #login_error { border-left-color:#b32e42; }
.login :focus-visible { outline:3px solid #15599c; outline-offset:4px; }
@media(max-width:1024px) { body.login { display:block; padding:34px 20px; } body.login::before { inset:0 0 auto; height:190px; } body.login::after { display:none; } #login { width:min(460px,100%); margin:0 auto; } .login h1 a { background-image:url(images/krea3-logo-complete-white.png); } .login h1 { margin-bottom:70px; } .k3ee-login-intro h2 { font-size:29px; } }
@media(max-width:400px) { body.login { padding:28px 14px; } .login form { padding:23px; } }
