

main{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 24px;}
.auth-wrap{width:100%;max-width:440px;}
.auth-card{background:var(--glass);border:1px solid var(--border);-webkit-border-radius:var(--radius);padding:44px;position:relative;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.5);}

.auth-top{text-align:center;margin-bottom:36px;}
.auth-icon{width:60px;height:60px;border-radius:18px;margin:0 auto 18px;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1.6rem;}
.auth-title{font-size:1.45rem;font-weight:800;letter-spacing:-.02em;margin-bottom:6px;color:var(--text);}
.auth-sub{font-size:.84rem;color:var(--muted);line-height:1.6;}
.form-group{margin-bottom:18px;}
.form-label{font-size:.78rem;color:var(--muted);font-weight:600;margin-bottom:7px;display:block;letter-spacing:.02em;}
.form-input{width:100%;background:rgba(255,255,255,.05);border:1.5px solid var(--border);color:var(--text);border-radius:11px;padding:13px 15px;font-size:.9rem;outline:none;transition:border-color .2s,box-shadow .2s;}
.form-input::placeholder{color:rgba(244,240,255,.3);}
.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(139,92,246,.2);}
.form-input.error{border-color:var(--danger);}
.pass-wrap{position:relative;}
.pass-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--muted);cursor:pointer;font-size:.9rem;padding:4px;transition:color .15s;}
.pass-toggle:hover{color:var(--text);}
.err-msg{font-size:.77rem;color:var(--danger);margin-top:6px;min-height:16px;}
.strength-bar{height:3px;background:rgba(255,255,255,.08);border-radius:2px;margin-top:8px;overflow:hidden;}
.strength-fill{height:100%;border-radius:2px;transition:width .3s,background .3s;width:0;}
.strength-label{font-size:.72rem;color:var(--muted);margin-top:5px;}
.captcha-wrap{display:flex;justify-content:center;margin:4px 0 16px;filter:invert(0.88) hue-rotate(180deg);}
.btn-submit{width:100%;background:var(--accent);border:none;border-radius:11px;color:#fff;font-size:.95rem;font-weight:700;padding:14px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px;}
.btn-submit:hover{transform:translateY(-1px);opacity:.95;}
.btn-submit:active{transform:scale(.98);}
.btn-submit:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none;}
.spin{width:15px;height:15px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;}
.verify-screen{text-align:center;padding:10px 0;}
.verify-icon{font-size:3rem;margin-bottom:16px;animation:float 3s ease-in-out infinite;}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.verify-title{font-size:1.3rem;font-weight:800;margin-bottom:8px;color:var(--text);}
.verify-sub{color:var(--muted);font-size:.86rem;line-height:1.7;}
.verify-email{font-weight:700;color:#c4b5fd;-webkit-text-fill-color:#c4b5fd;}
.verify-hint{margin-top:20px;font-size:.76rem;color:var(--muted);}
.auth-footer{text-align:center;margin-top:28px;font-size:.84rem;color:var(--muted);}
.auth-footer a{color:#c4b5fd;text-decoration:none;font-weight:600;transition:color .15s;}
.auth-footer a:hover{color:#fff;}
.toast{background:rgba(10,8,20,.94);border:1px solid var(--border);border-radius:13px;padding:13px 18px;font-size:.84rem;animation:toastIn .3s ease;max-width:320px;box-shadow:0 8px 40px rgba(0,0,0,.6);}
.toast.success{border-color:rgba(139,92,246,.5);}
.toast.error{border-color:rgba(244,63,94,.5);}
/* Checkbox termes */
    .terms-wrap{display:flex;align-items:flex-start;gap:12px;background:rgba(139,92,246,.06);border:1.5px solid rgba(139,92,246,.18);border-radius:12px;padding:14px 16px;cursor:pointer;transition:border-color .18s;margin-bottom:4px;user-select:none;}
.terms-wrap:hover{border-color:rgba(139,92,246,.4);}
.terms-wrap.checked{border-color:rgba(139,92,246,.5);background:rgba(139,92,246,.1);}
.terms-checkbox{width:18px;height:18px;border:2px solid rgba(139,92,246,.5);border-radius:5px;flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;transition:all .15s;background:transparent;}
.terms-checkbox.checked{background:var(--accent);border-color:var(--accent);}
.terms-checkbox svg{opacity:0;transition:opacity .15s;}
.terms-checkbox.checked svg{opacity:1;}
.terms-text{font-size:.82rem;color:rgba(244,240,255,.7);line-height:1.5;}
.terms-text a{color:#c4b5fd;text-decoration:none;font-weight:600;}
.terms-text a:hover{color:#fff;text-decoration:underline;}
.auth-logo{margin:0 auto 18px;display:flex;justify-content:center;}
.auth-logo img{height:64px;width:auto;}
