/* assets/auth.css — écran de connexion centré & sobre */
:root{
  --bg:#f7f9fc; --ink:#0f172a; --muted:#667085; --bd:#e5e7eb;
  --brand:#2563eb; --brand-ink:#fff; --card:#fff;
}

*{box-sizing:border-box}
html,body{height:100%}
body.auth-body{
  margin:0; background:
    radial-gradient(1200px 600px at -10% -10%, #e0e7ff 0%, transparent 60%),
    radial-gradient(800px 400px at 110% 0%, #c7d2fe 0%, transparent 55%),
    var(--bg);
  color:var(--ink);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif;
}

.auth-wrap{
  min-height:100vh; display:grid; place-items:center; padding:1rem;
}

.auth-card{
  width:min(420px, 92vw);
  background:var(--card);
  border:1px solid var(--bd);
  border-radius:1rem;
  box-shadow:0 12px 40px rgba(2,6,23,.06);
  padding:1.1rem 1.1rem 1rem;
}

.auth-head{margin-bottom:.6rem}
.auth-brand{font-weight:800;font-size:1.35rem}
.auth-sub{color:var(--muted);font-size:.95rem;margin-top:.15rem}

.auth-banner{padding:.65rem .75rem;border-radius:.6rem;margin:.6rem 0}
.auth-banner.error{background:#fef2f2;border:1px solid #fee2e2;color:#991b1b}

.auth-form{display:grid;gap:.75rem;margin-top:.4rem}
.field label{display:block;font-weight:600;margin-bottom:.25rem;color:#334155}
.field input{
  width:100%;padding:.7rem .75rem;border:1px solid var(--bd);border-radius:.65rem;background:#fff;font-size:1rem
}

.btn{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1rem;border:1px solid var(--bd);border-radius:.7rem;background:#fff;cursor:pointer;font-weight:600}
.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.w-full{width:100%}

.auth-foot{margin-top:.9rem;text-align:center;color:#64748b}
