:root{--bg:#05080f;--bg2:#090e1a;--card:rgba(13,19,35,.85);--border:rgba(99,102,241,.18);--border-glow:rgba(99,102,241,.45);--text:#f1f5f9;--muted:#64748b;--accent:#6366f1;--accent2:#0ea5e9;--green:#22c55e;--red:#ef4444;--yellow:#eab308;--radius:20px;--radius-sm:12px;--transition:.25s cubic-bezier(.4,0,.2,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}.reg-body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;min-height:100vh;overflow-x:hidden}.reg-bg{inset:0;overflow:hidden;pointer-events:none;position:fixed;z-index:0}.orb{animation:orbFloat 8s ease-in-out infinite;border-radius:50%;filter:blur(90px);opacity:0;position:absolute}.orb-1{animation-delay:0s;background:radial-gradient(circle,#6366f1 0,transparent 70%);height:600px;opacity:.3;right:-150px;top:-200px;width:600px}.orb-2{animation-delay:-3s;background:radial-gradient(circle,#0ea5e9 0,transparent 70%);bottom:-150px;height:500px;left:-100px;opacity:.25;width:500px}.orb-3{animation-delay:-6s;background:radial-gradient(circle,#8b5cf6 0,transparent 70%);height:350px;left:35%;opacity:.15;top:50%;width:350px}@keyframes orbFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-40px) scale(1.05)}}.reg-particles{height:100%;inset:0;opacity:.4;position:absolute;width:100%}.reg-split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;position:relative;z-index:1}.reg-brand{background:linear-gradient(135deg,rgba(99,102,241,.08),rgba(14,165,233,.05));border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;padding:48px 52px;position:relative}.reg-brand:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40'/%3E");background-size:40px 40px;content:"";inset:0;position:absolute}.brand-logo{color:var(--text);font-weight:700;gap:12px;position:relative;text-decoration:none;z-index:1}.brand-icon,.brand-logo{align-items:center;display:flex;font-size:20px}.brand-icon{background:linear-gradient(135deg,var(--accent),var(--accent2));border-radius:12px;box-shadow:0 0 24px rgba(99,102,241,.4);height:42px;justify-content:center;width:42px}.brand-body{display:flex;flex:1;flex-direction:column;justify-content:center;padding:48px 0;position:relative;z-index:1}.brand-headline{font-size:clamp(28px,3vw,42px);font-weight:900;letter-spacing:-.02em;line-height:1.15;margin-bottom:20px}.brand-hl{background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-sub{color:var(--muted);font-size:15px;line-height:1.7;margin-bottom:32px;max-width:420px}.brand-perks{display:flex;flex-direction:column;gap:14px;list-style:none}.brand-perks li{color:#94a3b8;font-size:14px;gap:14px}.brand-perks li,.perk-icon{align-items:center;display:flex}.perk-icon{background:rgba(99,102,241,.12);border:1px solid var(--border);border-radius:9px;flex-shrink:0;font-size:16px;height:34px;justify-content:center;width:34px}.brand-footer{color:var(--muted);font-size:14px;position:relative;z-index:1}.brand-footer a{color:var(--accent);font-weight:600;text-decoration:none}.brand-footer a:hover{text-decoration:underline}.reg-alert{border:1px solid transparent;border-radius:var(--radius-sm);font-size:14px;margin-bottom:16px;padding:12px 16px}.reg-alert--error{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.3);color:#fca5a5}.reg-alert--success{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.3);color:#86efac}.reg-alert--warning{background:rgba(234,179,8,.12);border-color:rgba(234,179,8,.3);color:#fde047}.reg-alert--info{background:rgba(99,102,241,.12);border-color:rgba(99,102,241,.3);color:#a5b4fc}.reg-main{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:48px 40px}.reg-card{backdrop-filter:blur(24px);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 32px 80px rgba(0,0,0,.5),inset 0 0 0 1px rgba(99,102,241,.08),inset 0 1px 0 hsla(0,0%,100%,.05);max-width:500px;overflow:hidden;padding:40px 36px;position:relative;width:100%}.reg-card:before{background:linear-gradient(90deg,transparent,var(--accent),var(--accent2),transparent);content:"";height:1px;left:0;opacity:.6;position:absolute;right:0;top:0}.progress-bar-wrap{margin-bottom:32px}.prog-step,.progress-steps{align-items:center;display:flex}.prog-step{flex-direction:column;flex-shrink:0;gap:6px}.prog-dot{align-items:center;background:hsla(0,0%,100%,.03);border:2px solid var(--border);border-radius:50%;display:flex;height:32px;justify-content:center;transition:all var(--transition);width:32px}.prog-dot span{font-size:13px;font-weight:700}.prog-dot span,.prog-label{color:var(--muted);transition:color var(--transition)}.prog-label{font-size:11px;font-weight:500}.prog-step.active .prog-dot{background:rgba(99,102,241,.2);border-color:var(--accent);box-shadow:0 0 16px rgba(99,102,241,.4)}.prog-step.active .prog-dot span{color:var(--accent)}.prog-step.active .prog-label{color:var(--text)}.prog-step.done .prog-dot{background:rgba(34,197,94,.15);border-color:var(--green)}.prog-step.done .prog-dot span{font-size:0}.prog-step.done .prog-dot span:before{color:var(--green);content:"✓";font-size:13px}.prog-step.done .prog-label{color:var(--green)}.prog-line{background:var(--border);border-radius:2px;flex:1;height:2px;margin:0 8px 16px;overflow:hidden;position:relative}.prog-line:after{background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:2px;content:"";height:100%;left:0;position:absolute;top:0;transition:width .5s ease;width:0}.prog-line.filled:after{width:100%}.js-only{display:none}.no-js-submit{display:flex;justify-content:flex-end;margin-top:24px}body.js-active .js-only{display:revert}body.js-active .js-hidden,body.js-active .no-js-submit{display:none}.reg-step{animation:stepIn .35s var(--transition) both}.reg-step.hidden{display:none}@keyframes stepIn{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes stepOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-30px)}}.reg-step.leaving{animation:stepOut .25s var(--transition) both}.step-header{gap:16px;margin-bottom:28px}.step-avatar,.step-header{align-items:center;display:flex}.step-avatar{background:linear-gradient(135deg,#1e2a40,#1a1f35);border:2px solid var(--border);border-radius:50%;color:var(--muted);flex-shrink:0;font-size:22px;font-weight:800;height:64px;justify-content:center;position:relative;transition:all .4s ease;width:64px}.step-avatar.has-name{background:linear-gradient(135deg,var(--accent),var(--accent2));border-color:transparent;box-shadow:0 0 28px rgba(99,102,241,.45);color:#fff}.avatar-ring{background:linear-gradient(135deg,var(--accent),var(--accent2)) border-box;border:2px solid transparent;border-radius:50%;inset:-5px;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:destination-out;mask-composite:exclude;opacity:0;position:absolute;transition:opacity .4s}.step-avatar.has-name .avatar-ring{opacity:1}.step-icon-wrap{align-items:center;background:rgba(99,102,241,.12);border:1px solid var(--border);border-radius:16px;display:flex;flex-shrink:0;font-size:26px;height:56px;justify-content:center;width:56px}.step-icon-wrap--green{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.2)}.step-title{font-size:22px;font-weight:800}.step-sub{color:var(--muted);font-size:13px;margin-top:3px}.field-row{display:grid;gap:14px;grid-template-columns:1fr 1fr}.field-group{display:flex;flex-direction:column;gap:7px}.field-label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.02em}.field-wrap{position:relative}.field-icon{color:var(--muted);font-size:15px;left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:color var(--transition);z-index:1}.field-wrap:focus-within .field-icon{color:var(--accent)}.field-input{background:hsla(0,0%,100%,.04);border:1.5px solid rgba(148,163,184,.12);border-radius:var(--radius-sm);color:var(--text);font-size:15px;outline:none;padding:13px 44px 13px 42px;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition);width:100%}.field-input:focus{background:rgba(99,102,241,.06);border-color:var(--accent);box-shadow:0 0 0 3px rgba(99,102,241,.12)}.field-input::placeholder{color:rgba(100,116,139,.6)}.field-input.is-valid{border-color:var(--green)}.field-input.is-invalid{border-color:var(--red)}.field-valid-icon{font-size:14px;opacity:0;position:absolute;right:14px;top:50%;transform:translateY(-50%);transition:opacity .2s}.field-group.valid .field-valid-icon{opacity:1}.field-group.valid .field-valid-icon:after{color:var(--green);content:"✓"}.field-group.invalid .field-valid-icon:after{color:var(--red);content:"✕"}.field-group.invalid .field-valid-icon{opacity:1}.field-error{color:#fca5a5;font-size:12px;min-height:16px}.field-error ul{list-style:none;padding:0}.field-error li{padding:2px 0}.field-eye{background:none;border:none;color:var(--muted);cursor:pointer;font-size:15px;padding:4px;position:absolute;right:42px;top:50%;transform:translateY(-50%);transition:color .15s}.field-eye:hover{color:var(--text)}.pw-meter{margin-top:10px}.pw-meter-track{background:hsla(0,0%,100%,.06);border-radius:3px;height:5px;margin-bottom:10px;overflow:hidden}.pw-meter-fill{background:var(--red);border-radius:3px;height:100%;transition:width .4s ease,background .4s ease;width:0}.pw-checks{display:grid;gap:6px;grid-template-columns:1fr 1fr}.pw-check{align-items:center;color:var(--muted);display:flex;font-size:11px;gap:5px;transition:color .2s}.pw-check.ok{color:var(--green)}.pw-check.ok:first-letter{content:"●"}.match-indicator{font-size:12px;margin-top:6px;min-height:16px;transition:all .2s}.match-indicator.match{color:var(--green)}.match-indicator.no-match{color:var(--red)}.step-nav{align-items:center;display:flex;justify-content:space-between;margin-top:28px}.btn-next,.btn-submit{align-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));border:none;border-radius:var(--radius-sm);box-shadow:0 4px 20px rgba(99,102,241,.3);color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:10px;overflow:hidden;padding:13px 24px;position:relative;transition:opacity .15s,transform .15s,box-shadow .2s}.btn-next:before,.btn-submit:before{background:linear-gradient(135deg,hsla(0,0%,100%,.1),transparent);content:"";inset:0;opacity:0;position:absolute;transition:opacity .2s}.btn-next:hover:before,.btn-submit:hover:before{opacity:1}.btn-next:active,.btn-submit:active{transform:scale(.98)}.btn-icon{font-size:17px;transition:transform .2s}.btn-next:hover .btn-icon{transform:translateX(4px)}.btn-back{background:none;border:none;color:var(--muted);cursor:pointer;font-size:14px;padding:12px 8px;transition:color .15s}.btn-back:hover{color:var(--text)}.submit-loader{animation:spin .7s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;display:none;height:16px;width:16px}.btn-submit.loading .submit-icon,.btn-submit.loading .submit-text{display:none}.btn-submit.loading .submit-loader{display:block}@keyframes spin{to{transform:rotate(1turn)}}.summary-card{background:rgba(99,102,241,.07);border:1px solid rgba(99,102,241,.2);border-radius:var(--radius-sm);gap:16px;margin-bottom:20px;padding:18px 20px}.summary-avatar,.summary-card{align-items:center;display:flex}.summary-avatar{background:linear-gradient(135deg,var(--accent),var(--accent2));border-radius:50%;color:#fff;flex-shrink:0;font-size:20px;font-weight:800;height:52px;justify-content:center;width:52px}.summary-name{font-size:17px;font-weight:700}.summary-email{color:var(--muted);font-size:13px;margin-top:2px}.summary-role{background:rgba(99,102,241,.15);border-radius:999px;color:#a5b4fc;display:inline-block;font-size:11px;font-weight:600;margin-top:6px;padding:3px 10px}.summary-rows{display:flex;flex-direction:column;gap:0;margin-bottom:20px}.summary-row{align-items:center;border-bottom:1px solid rgba(148,163,184,.07);display:flex;font-size:14px;justify-content:space-between;padding:10px 0}.sr-label{color:var(--muted)}.sr-value{font-weight:600}.cgu-label{align-items:flex-start;color:var(--muted);cursor:pointer;display:flex;font-size:13px;gap:12px;margin-bottom:8px;user-select:none}.cgu-label input{display:none}.cgu-box{align-items:center;background:hsla(0,0%,100%,.04);border:2px solid rgba(148,163,184,.2);border-radius:6px;display:flex;flex-shrink:0;height:20px;justify-content:center;margin-top:1px;transition:all .2s;width:20px}.cgu-label input:checked~.cgu-box{background:var(--accent);border-color:var(--accent)}.cgu-label input:checked~.cgu-box:after{color:#fff;content:"✓";font-size:13px;font-weight:700}.cgu-link{color:var(--accent);font-weight:500;text-decoration:none}.reg-footer{color:var(--muted);font-size:13px;margin-top:20px;text-align:center}.reg-footer a{color:var(--accent);font-weight:600;text-decoration:none}.reg-success-wrap{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:40px 20px;position:relative;z-index:1}.success-card{animation:successPop .6s cubic-bezier(.34,1.56,.64,1) both;backdrop-filter:blur(24px);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 32px 80px rgba(0,0,0,.5);max-width:500px;overflow:hidden;padding:52px 44px;position:relative;text-align:center;width:100%}@keyframes successPop{0%{opacity:0;transform:scale(.85) translateY(30px)}to{opacity:1;transform:scale(1) translateY(0)}}.success-burst{background:radial-gradient(circle at 50% 30%,rgba(34,197,94,.12),transparent 60%);inset:0;pointer-events:none;position:absolute}.success-card:before{background:linear-gradient(90deg,transparent,var(--green),transparent);content:"";height:1px;left:0;position:absolute;right:0;top:0}.success-avatar{align-items:center;animation:avatarPop .8s cubic-bezier(.34,1.56,.64,1) .3s both;background:linear-gradient(135deg,var(--accent),var(--accent2));border-radius:50%;box-shadow:0 0 40px rgba(99,102,241,.5);color:#fff;display:flex;font-size:30px;font-weight:800;height:80px;justify-content:center;margin:0 auto 24px;width:80px}@keyframes avatarPop{0%{transform:scale(0)}to{transform:scale(1)}}.success-title{font-size:28px;font-weight:900;margin-bottom:10px}.success-sub{color:var(--muted);font-size:15px;line-height:1.6;margin-bottom:32px}.success-perks{background:hsla(0,0%,100%,.02);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:12px;margin-bottom:32px;padding:20px;text-align:left}.sp-item{color:#94a3b8;font-size:14px;gap:12px}.sp-icon,.sp-item{align-items:center;display:flex}.sp-icon{background:rgba(99,102,241,.1);border-radius:9px;flex-shrink:0;font-size:20px;height:36px;justify-content:center;width:36px}.btn-success-login{align-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));border-radius:var(--radius-sm);box-shadow:0 4px 24px rgba(99,102,241,.35);color:#fff;display:flex;font-size:15px;font-weight:700;justify-content:space-between;margin-bottom:14px;padding:15px 24px;text-decoration:none;transition:opacity .15s,transform .15s;width:100%}.btn-success-login:hover{opacity:.9;transform:translateY(-1px)}.success-home-link{color:var(--muted);display:block;font-size:13px;text-decoration:none;transition:color .15s}.success-home-link:hover{color:var(--text)}@media (max-width:900px){.reg-split{grid-template-columns:1fr}.reg-brand{display:none}.reg-main{padding:32px 20px}}@media (max-width:480px){.reg-card{padding:28px 20px}.field-row{grid-template-columns:1fr}.step-title{font-size:18px}}