:root{color-scheme:light;--encre:#15171c;--gris:#626873;--filet:#e3e6ea;--bleu:#1a66ff;--violet:#8b2cf5;
  --ok:#15803d;--ok-bg:#e7f5ec;--ko:#b3261e;--ko-bg:#fdecea}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;color:var(--encre);background:#fff;overflow-wrap:break-word;
  font:15px/1.55 "Segoe UI",Inter,Roboto,-apple-system,Helvetica,Arial,sans-serif}
.en-gauche{background:#f4f6fa;padding:56px 64px;display:flex;flex-direction:column;justify-content:space-between;gap:32px;position:relative;overflow:hidden}
.en-gauche::after{content:"";position:absolute;right:-120px;top:120px;width:420px;height:420px;pointer-events:none;background:
  linear-gradient(115deg,transparent 46%,#22c55e 46%,#1a66ff 54%,transparent 54%),
  linear-gradient(115deg,transparent 58%,#1a66ff 58%,#8b2cf5 66%,transparent 66%),
  linear-gradient(115deg,transparent 70%,#8b2cf5 70%,#f97316 78%,transparent 78%);opacity:.18}
.en-logo{width:270px;max-width:100%;height:auto;display:block}
.en-titre{font-size:34px;line-height:1.15;letter-spacing:-1px;margin:0 0 12px;max-width:440px}
.en-titre span{background:linear-gradient(90deg,#1a66ff,#8b2cf5,#f97316);-webkit-background-clip:text;background-clip:text;color:transparent}
.en-texte{color:var(--gris);max-width:420px;margin:0 0 30px}
.en-univers{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:460px;position:relative;z-index:1}
.en-u{background:#fff;border:1px solid var(--filet);border-radius:14px;padding:14px 16px}
.en-u strong{display:flex;align-items:center;gap:8px;font-size:13px;letter-spacing:1.5px}
.en-u strong i{width:10px;height:10px;border-radius:50%;display:inline-block}
.en-u span{display:block;color:var(--gris);font-size:12.5px;margin-top:2px}
.en-mention{color:var(--gris);font-size:12px;margin:0}
.en-droite{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px}
.en-form{width:100%;max-width:380px}
.en-form h1{font-size:26px;letter-spacing:-.5px;margin:0 0 6px}
.en-form .en-sous{color:var(--gris);margin:0 0 28px;font-size:14px}
.champ{margin-bottom:16px}
.champ label{display:block;font-size:12.5px;font-weight:600;margin:0 0 6px;color:#3a3f47}
.champ input,.champ select{width:100%;padding:13px 14px;border:1px solid var(--filet);border-radius:11px;font:inherit;background:#fff;color:var(--encre)}
.champ input:focus,.champ select:focus{outline:none;border-color:var(--bleu);box-shadow:0 0 0 4px rgba(26,102,255,.12)}
.champ input.code{text-align:center;font-size:24px;letter-spacing:.4em;padding-left:.4em;font-variant-numeric:tabular-nums}
.btn{display:block;width:100%;text-align:center;text-decoration:none;padding:13px;border:0;border-radius:11px;
  background:linear-gradient(90deg,#1a66ff,#8b2cf5);color:#fff;font:inherit;font-weight:600;cursor:pointer;margin-top:4px}
.btn:hover{filter:brightness(1.06)}
.btn.sec{background:#fff;color:var(--gris);border:1px solid var(--filet);margin-top:10px}
.en-liens{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px;font-size:13px}
.en-liens a,.en-pied a{color:var(--bleu);text-decoration:none}
.en-liens a:hover,.en-pied a:hover{text-decoration:underline}
.alerte{background:var(--ko-bg);color:var(--ko);border-radius:11px;padding:11px 14px;font-size:13.5px;margin-bottom:16px}
.info{background:var(--ok-bg);color:var(--ok);border-radius:11px;padding:11px 14px;font-size:13.5px;margin-bottom:16px}
.aide{font-size:12.5px;color:var(--gris);margin:-6px 0 16px}
.perdu{margin-top:18px;border-top:1px solid var(--filet);padding-top:14px}
.perdu summary{cursor:pointer;font-size:13px;color:var(--gris)}
.perdu .aide{margin:10px 0 0}
.en-pied{margin-top:28px;padding-top:18px;border-top:1px solid var(--filet);font-size:12.5px;color:var(--gris);line-height:1.8}
@media (max-width:900px){
  body{grid-template-columns:1fr}
  .en-gauche{padding:28px 20px;gap:18px}
  .en-gauche::after,.en-texte,.en-univers{display:none}
  .en-titre{font-size:24px;margin:0}
  .en-mention{display:none}
  .en-droite{padding:28px 16px 40px;justify-content:flex-start}
}
