:root{--rouge:#B41F3A;--rouge-fonce:#7a2233;--charcoal:#2B2B2B;--gris:#6b6b6b;--fond:#f4f2f0;--filet:#e2ddd8;--rose:#fbeef0;--blanc:#fff;--rayon:18px;--ombre:0 10px 30px rgba(43,43,43,.10);}
*{box-sizing:border-box}
body{font-family:Arial,Helvetica,sans-serif;color:var(--charcoal);background:linear-gradient(160deg,#fbeef0,#f4f2f0);margin:0;min-height:100vh}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif}
.kicker{text-transform:uppercase;letter-spacing:.22em;color:var(--rouge);font-size:.72rem;font-weight:bold}
.card{background:var(--blanc);border:1px solid var(--filet);border-radius:var(--rayon);box-shadow:var(--ombre);padding:26px}
.login-wrap{max-width:420px;margin:6vh auto;padding:0 16px}
.login-wrap input[type=text]{width:100%;padding:12px 14px;border:1px solid var(--filet);border-radius:10px;font-size:1.1rem}
.btn-primary{display:block;width:100%;margin-top:14px;padding:12px;border:0;border-radius:12px;color:#fff;font-weight:bold;cursor:pointer;background:linear-gradient(180deg,var(--rouge),var(--rouge-fonce));box-shadow:0 8px 18px rgba(180,31,58,.35)}
.erreur{background:#fff0f1;border-left:4px solid var(--rouge);padding:10px 12px;border-radius:6px;margin:10px 0;color:var(--rouge-fonce)}
.confid{font-size:.78rem;color:var(--gris);margin-top:16px;line-height:1.45}
