/* ============================================================
   SuperLoyer — Pages Connexion / Inscription
   ============================================================ */
.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1.05fr}

/* Panneau latéral (desktop) */
.auth-side{background:var(--grad-hero);color:#fff;padding:44px 52px;display:flex;flex-direction:column;
  justify-content:space-between;position:relative;overflow:hidden}
.auth-side::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle,rgba(16,185,129,.28),transparent 68%);bottom:-180px;right:-140px}
.auth-side-top{position:relative}
.auth-side .logo{font-size:21px}
.auth-side h2{font-size:clamp(26px,2.6vw,34px);font-weight:800;letter-spacing:-1px;line-height:1.2;margin:26px 0 14px;position:relative}
.auth-side .side-lead{color:rgba(255,255,255,.75);font-size:15px;line-height:1.7;font-weight:500;max-width:420px;position:relative}
.auth-points{display:flex;flex-direction:column;gap:13px;margin-top:30px;position:relative}
.auth-points li{display:flex;gap:12px;align-items:center;font-size:14px;font-weight:700;color:rgba(255,255,255,.9)}
.auth-points .pt{width:34px;height:34px;border-radius:11px;background:rgba(16,185,129,.2);border:1px solid rgba(16,185,129,.4);
  display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}
.auth-quote{position:relative;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);
  border-radius:18px;padding:20px 22px;backdrop-filter:blur(6px)}
.auth-quote p{font-size:13.5px;line-height:1.65;color:rgba(255,255,255,.85);font-weight:500}
.auth-quote .who{display:flex;align-items:center;gap:10px;margin-top:14px}
.auth-quote .who .av{width:36px;height:36px;border-radius:11px;background:var(--grad-brand);display:flex;
  align-items:center;justify-content:center;font-weight:800;font-size:13px}
.auth-quote .who b{font-size:12.5px;display:block}
.auth-quote .who span{font-size:11px;color:rgba(255,255,255,.6);font-weight:600}
.auth-back{position:relative;display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:13px;
  font-weight:800;color:rgba(255,255,255,.75);padding:9px 14px;border-radius:11px;transition:color .2s,background .2s}
.auth-back:hover{color:#fff;background:rgba(255,255,255,.1)}

/* Colonne formulaire */
.auth-main{display:flex;align-items:center;justify-content:center;padding:56px 28px;position:relative}
.auth-card{width:min(100%,460px)}
.auth-card h1{font-size:clamp(26px,3vw,32px);font-weight:800;letter-spacing:-.8px;margin-bottom:8px}
.auth-card .sub{color:var(--muted);font-size:14.5px;font-weight:500;margin-bottom:30px;line-height:1.6}
.auth-demo{background:var(--brand-soft);border:1px solid rgba(16,185,129,.35);border-radius:14px;
  padding:13px 16px;font-size:12.5px;font-weight:700;color:var(--brand-deep);margin-top:20px;line-height:1.6}
.auth-demo button{font-weight:800;color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px}
.auth-alt{margin-top:26px;text-align:center;font-size:14px;font-weight:600;color:var(--muted)}
.auth-alt a{color:var(--brand-deep);font-weight:800}
.auth-alt a:hover{text-decoration:underline;text-underline-offset:3px}
.form-error{display:none;background:var(--red-soft);border:1px solid #FCA5A5;color:#B91C1C;border-radius:13px;
  padding:12px 16px;font-size:13px;font-weight:700;margin-bottom:16px}
.form-error.show{display:block}
.btn-block{width:100%}
.momo-hint{display:flex;align-items:center;gap:9px;justify-content:center;margin-top:22px;font-size:11.5px;
  font-weight:700;color:var(--muted)}

@media(max-width:880px){
  .auth-layout{grid-template-columns:1fr}
  .auth-side{display:none}
  .auth-main{min-height:100vh;padding:32px 22px;align-items:flex-start}
  .auth-mobile-top{display:flex!important}
}

/* Barre mobile (visible uniquement sur mobile) */
.auth-mobile-top{display:none;align-items:center;justify-content:space-between;margin-bottom:30px}
.auth-mobile-top .logo{font-size:18px}
.auth-mobile-top a{font-size:13px;font-weight:800;color:var(--muted)}
