.signup-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.signup-card{background:white;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.15);padding:40px;width:100%;max-width:480px}.signup-header{text-align:center;margin-bottom:28px}.signup-header h1{color:#1e293b;margin:0 0 8px;font-size:26px;font-weight:700}.signup-header p{color:#64748b;margin:0 0 20px;font-size:15px}.signup-steps{justify-content:center;gap:12px}.signup-step,.signup-steps{display:flex;align-items:center}.signup-step{gap:6px;opacity:.4;transition:opacity .3s ease}.signup-step.active{opacity:1}.step-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#667eea;color:white;font-size:13px;font-weight:600}.step-label{font-size:13px;font-weight:500;color:#475569}.step-divider{width:40px;height:2px;background:#e2e8f0}.signup-error{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;border:1px solid #fecaca}.signup-form{display:flex;flex-direction:column;gap:18px}.signup-form .form-group{margin-bottom:0}.signup-form .form-group label{display:flex;align-items:center;gap:6px;color:#334155;font-weight:500;margin-bottom:6px;font-size:14px}.signup-form .form-group input{width:100%;padding:12px 14px;border:2px solid #e2e8f0;border-radius:8px;font-size:15px;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box;color:#1e293b}.signup-form .form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1)}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:44px!important}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;display:flex;align-items:center}.password-toggle:hover{color:#667eea}.password-rules{display:flex;gap:12px;margin-top:6px;flex-wrap:wrap}.rule-pass{color:#16a34a;font-size:12px;font-weight:500}.rule-pass:before{content:"✓ "}.rule-fail{color:#dc2626;font-size:12px;font-weight:500}.rule-fail:before{content:"✗ "}.signup-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.signup-summary h4{margin:0 0 10px;font-size:14px;color:#475569}.signup-summary p{margin:4px 0;font-size:13px;color:#64748b}.signup-summary strong{color:#334155}.signup-button{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;padding:14px 20px;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,opacity .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.signup-button:hover:not(:disabled){transform:translateY(-2px)}.signup-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.signup-button-group{display:flex;gap:12px}.signup-back-button{flex:0 0 auto;background:white;color:#667eea;border:2px solid #667eea;padding:12px 18px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.signup-back-button:hover:not(:disabled){background:#667eea;color:white}.signup-back-button:disabled{opacity:.5;cursor:not-allowed}.signup-button-group .signup-button{flex:1}.signup-footer{text-align:center;margin-top:24px;padding-top:20px;border-top:1px solid #f1f5f9}.signup-footer p{margin:0;color:#64748b;font-size:14px}.signup-footer .signup-legal{font-size:12px;color:#94a3b8;margin-bottom:12px}.signup-footer .signup-legal a{color:#667eea;text-decoration:none}.signup-footer .signup-legal a:hover{text-decoration:underline}.signup-link{color:#667eea;font-weight:600;text-decoration:none}.signup-link:hover{text-decoration:underline}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:480px){.signup-card{padding:24px}.signup-header h1{font-size:22px}.signup-button-group{flex-direction:column}}