/* /register — page autonome (CSS separe, aucun style inline) */
*{box-sizing:border-box;margin:0;padding:0}
:root{--or:#e85d26;--bg:#f5f4f0;--bg2:#fff;--bg3:#eeecea;--bd:#e2ddd8;--t:#1a1917;--t2:#6b6560;--t3:#a8a29e;--re:#dc2626;--ok:#16a34a}
body{background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}
.box{background:var(--bg2);border:0.5px solid var(--bd);border-radius:16px;padding:32px 28px;width:100%;max-width:380px;box-shadow:0 4px 24px rgba(0,0,0,.08)}
.logo{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:20px}
.logo-icon{width:44px;height:44px;background:var(--or);border-radius:12px;display:flex;align-items:center;justify-content:center}
.logo-icon i{font-size:22px;color:#fff}
.logo-text{font-size:22px;font-weight:700;color:var(--t)}
.logo-text span{color:var(--or)}
.subtitle{text-align:center;font-size:13px;color:var(--t3);margin-bottom:24px}
.fi{width:100%;padding:10px 13px;background:var(--bg3);border:0.5px solid var(--bd);border-radius:9px;font-size:14px;font-family:inherit;color:var(--t);outline:none;transition:.15s}
.fi:focus{background:var(--bg2);border-color:var(--or);box-shadow:0 0 0 3px rgba(232,93,38,.08)}
.fi.ok{border-color:var(--ok)}
.fi.ko{border-color:var(--re)}
.lbl{font-size:11px;font-weight:600;color:var(--t2);margin-bottom:4px;display:block;text-transform:uppercase;letter-spacing:.05em}
.mb{margin-bottom:12px}
.btn-p{width:100%;padding:11px;background:var(--or);color:#fff;border:none;border-radius:9px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:.12s;margin-top:4px}
.btn-p:hover:not(:disabled){background:#c94d1e}
.btn-p:disabled{opacity:.5;cursor:not-allowed}
.err{background:#fee2e2;color:var(--re);border:0.5px solid #fca5a5;border-radius:9px;padding:10px 13px;font-size:13px;margin-bottom:14px;display:flex;align-items:center;gap:6px}
.alt{text-align:center;margin-top:16px;font-size:13px;color:var(--t3)}
.t-or{color:var(--or);text-decoration:none;font-weight:600}
.t-or:hover{text-decoration:underline}

/* Hints sous chaque champ */
.hint{font-size:12px;margin-top:5px;min-height:0;line-height:1.3}
.hint.ok{color:var(--ok)}
.hint.ko{color:var(--re)}

/* Champ mot de passe + bouton afficher/masquer */
.pw-wrap{position:relative}
.pw-wrap .fi{padding-right:40px}
.pw-toggle{position:absolute;top:0;right:0;height:100%;width:38px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--t3);cursor:pointer;font-size:17px}
.pw-toggle:hover{color:var(--t2)}

/* Barre de robustesse du mot de passe */
.pw-meter{height:5px;background:var(--bg3);border-radius:4px;overflow:hidden;margin-top:7px}
.pw-bar{height:100%;width:0;border-radius:4px;transition:width .2s,background .2s}
.pw-bar.f1{width:25%;background:var(--re)}
.pw-bar.f2{width:50%;background:#f59e0b}
.pw-bar.f3{width:75%;background:#eab308}
.pw-bar.f4{width:100%;background:var(--ok)}

/* Ligne label + lien generateur */
.lbl-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.lbl-row .lbl{margin-bottom:4px}
.pw-gen{background:none;border:none;padding:0 0 4px;font-family:inherit;font-size:11px;font-weight:600;color:var(--or);cursor:pointer;white-space:nowrap}
.pw-gen:hover{text-decoration:underline}


/* Honeypot invisible (anti-bot) */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Page « vérifie ton email » */
.ve-ico{font-size:46px;text-align:center;margin:4px 0 12px}
.ve-ctr{text-align:center;font-size:14px;color:var(--t2);line-height:1.55}
.ve-ctr b{color:var(--t)}
.ve-pill{display:inline-block;background:var(--bg3);border:0.5px solid var(--bd);border-radius:8px;padding:6px 12px;font-weight:700;font-size:13px;margin:8px 0;word-break:break-all}
.ve-ok{background:#dcfce7;color:#15803d;border:0.5px solid #86efac;border-radius:9px;padding:10px 13px;font-size:13px;margin-bottom:14px;text-align:center}
.ve-resend{margin-top:18px;border-top:0.5px solid var(--bd);padding-top:16px}
.ve-resend .lbl{margin-bottom:6px}

/* Connexion sociale : bouton « Continuer avec Google » + séparateur « ou » */
.btn-social{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px;border-radius:9px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;text-decoration:none;transition:.12s}
.btn-google{background:var(--bg2);color:var(--t);border:0.5px solid var(--bd)}
.btn-google:hover{background:var(--bg3)}
.btn-discord{background:#5865F2;color:#fff;border:0.5px solid #5865F2}
.btn-discord:hover{background:#4752c4}
.btn-facebook{background:#1877F2;color:#fff;border:0.5px solid #1877F2}
.btn-facebook:hover{background:#1463cf}
.btn-social+.btn-social{margin-top:9px}
.g-logo{display:flex;align-items:center;justify-content:center}
.sep{display:flex;align-items:center;gap:10px;margin:16px 0;color:var(--t3);font-size:12px}
.sep::before,.sep::after{content:"";flex:1;height:0.5px;background:var(--bd)}
/* CAPTCHA image « collection » (anti-robot maison) */
.cap-card{border:0.5px solid var(--bd);border-radius:11px;overflow:hidden;background:var(--bg3)}
.cap-q{background:var(--or);color:#fff;padding:9px 12px;line-height:1.25}
.cap-q-small{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.9}
.cap-q-big{display:block;font-size:15px;font-weight:700}
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:3px;background:var(--bd);max-width:270px;margin:0 auto}
.cap-cell{position:relative;aspect-ratio:1;padding:0;border:none;background:var(--bg2);cursor:pointer;overflow:hidden}
.cap-cell img{width:100%;height:100%;object-fit:contain;object-position:center;box-sizing:border-box;padding:6px;display:block}
.cap-cell.sel{outline:4px solid var(--or);outline-offset:-4px}
.cap-cell.sel::after{content:'✓';position:absolute;top:3px;left:4px;width:18px;height:18px;background:var(--or);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800}
.cap-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg2)}
.cap-refresh{background:none;border:none;font-family:inherit;font-size:12px;font-weight:600;color:var(--or);cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.cap-refresh:hover{text-decoration:underline}
.cap-status{font-size:11px;color:var(--t3)}
/* CAPTCHA mode TEXTE (mot déformé en image) */
.cap-block[data-mode="texte"] .cap-card{padding:10px}
.cap-imgwrap{background:#fff;border:0.5px solid var(--bd);border-radius:8px;overflow:hidden}
.cap-imgwrap img{display:block;width:100%;height:auto}
.cap-block[data-mode="texte"] .fi{margin-top:6px}

/* Thème sombre (page autonome) */
html[data-theme="dark"]{color-scheme:dark;--or:#f06a34;--bg:#161512;--bg2:#211f1c;--bg3:#2a2723;--bd:#39342f;--t:#f3f1ee;--t2:#b5afa8;--t3:#857f78;--re:#f87171;--ok:#34d399}
