/* Connexion Skills Afrique */
body.saf-auth-body{margin:0;background:#f6f8fc;
  font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#1a2a4f}
body.saf-auth-body .saf-head,body.saf-auth-body header.header_2{display:none !important}
.saf-auth{--navy:#202C60;--blue:#0091D4;--orange:#E4602C;--orange-deep:#C54E1E;--line:#e7e8ec;--muted:#6b7591;
  display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}
.saf-auth *{box-sizing:border-box}
@media(max-width:900px){.saf-auth{grid-template-columns:1fr}.saf-auth__aside{display:none}}

.saf-auth__aside{position:relative;overflow:hidden;color:#fff;display:grid;place-items:center;padding:48px;
  background:linear-gradient(115deg,#131c46 0%,var(--navy) 46%,#15568c 100%)}
.saf-auth__aside::before{content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 48px),
             repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 48px)}
.saf-auth__aside-in{position:relative;z-index:1;max-width:460px}
.saf-auth__kicker{font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.6);margin:0 0 18px}
.saf-auth__aside h2{font-family:"Lora",Georgia,serif;font-weight:600;font-size:clamp(28px,3.2vw,42px);
  line-height:1.12;letter-spacing:-.02em;margin:0 0 18px}
.saf-auth__aside h2 em{font-style:italic;color:var(--orange);font-weight:500}
.saf-auth__note{color:#c0cee8;font-size:16px;line-height:1.7;margin:0}

.saf-auth__panel{display:grid;place-items:center;padding:40px 24px}
.saf-auth__card{width:100%;max-width:412px}
.saf-auth__logo{display:flex;align-items:center;gap:10px;text-decoration:none;margin-bottom:30px;color:var(--navy)}
.saf-auth__logo img{height:44px;width:auto;display:block}
.saf-auth__mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;font-weight:800;font-size:14px}
.saf-auth__card h1{font-family:"Lora",Georgia,serif;font-size:32px;font-weight:600;margin:0 0 6px;color:var(--navy)}
.saf-auth__sub{color:var(--muted);font-size:15.5px;margin:0 0 26px}
.saf-auth__error{background:#fdeee7;border:1px solid #f6d3c2;color:#8a3b1c;border-radius:10px;
  padding:13px 15px;font-size:14.3px;margin-bottom:20px}
.saf-auth__card label{display:block;font-size:13.5px;font-weight:600;color:#41506e;margin:0 0 7px}
.saf-auth__card input[type=text],.saf-auth__card input[type=password]{width:100%;border:1px solid var(--line);
  border-radius:10px;padding:14px 16px;font-size:15.5px;font-family:inherit;color:#1a2a4f;
  background:#fff;outline:none;margin-bottom:18px;transition:border-color .18s,box-shadow .18s}
.saf-auth__card input[type=text]:focus,.saf-auth__card input[type=password]:focus{
  border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,145,212,.14)}
.saf-auth__row{display:flex;align-items:center;justify-content:space-between;gap:12px;
  flex-wrap:wrap;margin-bottom:22px;font-size:13.8px}
.saf-auth__check{display:flex;align-items:center;gap:8px;font-weight:400;color:var(--muted);margin:0}
.saf-auth__check input{margin:0}
.saf-auth__row a{color:var(--blue);text-decoration:none;font-weight:500}
.saf-auth__row a:hover{color:var(--orange-deep)}
.saf-auth__card button{width:100%;border:0;border-radius:10px;background:var(--orange);color:#fff;
  padding:15px;font-size:16px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .18s}
.saf-auth__card button:hover{background:var(--orange-deep)}
.saf-auth__alt{margin:24px 0 0;text-align:center;font-size:14.6px;color:var(--muted)}
.saf-auth__alt a{color:var(--blue);font-weight:600;text-decoration:none}
.saf-auth__alt a:hover{color:var(--orange-deep)}
.saf-auth__back{margin:28px 0 0;text-align:center;font-size:13.6px}
.saf-auth__back a{color:var(--muted);text-decoration:none}
.saf-auth__back a:hover{color:var(--navy)}

/* ---------------- Création de compte ---------------- */
.saf-auth--register{grid-template-columns:.92fr 1.08fr}
@media(max-width:900px){.saf-auth--register{grid-template-columns:1fr}}
.saf-auth__card--wide{max-width:560px}
.saf-auth__steps{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:14px}
.saf-auth__steps li{display:flex;align-items:center;gap:13px;color:#c0cee8;font-size:15px}
.saf-auth__steps span{flex:0 0 auto;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:12.5px;font-weight:700}
.saf-auth__target{background:#e9f3fb;border:1px solid #cfe6f6;border-radius:12px;padding:14px 16px;margin-bottom:24px}
.saf-auth__target span{display:block;font-size:10.5px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:#0077B0;margin-bottom:5px}
.saf-auth__target strong{display:block;font-size:15.5px;line-height:1.4;color:#202C60}

/* Habillage du formulaire Tutor */
.saf-auth__form .tutor-row{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin:0}
@media(max-width:560px){.saf-auth__form .tutor-row{grid-template-columns:1fr}}
.saf-auth__form [class*="tutor-col"]{width:100%;max-width:100%;flex:none;padding:0}
.saf-auth__form .tutor-form-group{margin-bottom:16px}
.saf-auth__form label,.saf-auth__form .tutor-form-label{display:block;font-size:13.5px;font-weight:600;
  color:#41506e;margin:0 0 7px}
.saf-auth__form input[type=text],.saf-auth__form input[type=email],
.saf-auth__form input[type=password],.saf-auth__form input[type=tel],
.saf-auth__form select,.saf-auth__form .tutor-form-control,.saf-auth__form .tutor-form-select{
  width:100%;border:1px solid #e7e8ec;border-radius:10px;padding:13px 15px;font-size:15.3px;
  font-family:inherit;color:#1a2a4f;background:#fff;outline:none;margin-bottom:16px;
  transition:border-color .18s,box-shadow .18s;box-sizing:border-box;height:auto}
.saf-auth__form select,.saf-auth__form .tutor-form-select{
  appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%236b7591' stroke-width='2'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center}
.saf-auth__form input:focus,.saf-auth__form select:focus{
  border-color:#0091D4;box-shadow:0 0 0 3px rgba(0,145,212,.14)}
.saf-auth__form button,.saf-auth__form input[type=submit],.saf-auth__form .tutor-btn{
  width:100%;border:0;border-radius:10px;background:#E4602C !important;color:#fff !important;
  padding:15px !important;font-size:16px;font-weight:600;font-family:inherit;cursor:pointer;
  transition:background .18s;margin-top:4px;height:auto;justify-content:center}
.saf-auth__form button:hover,.saf-auth__form .tutor-btn:hover{background:#C54E1E !important}
.saf-auth__form .tutor-alert{border-radius:10px;font-size:14.3px;margin-bottom:18px}
