.modern-auth-form{max-width:400px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.05);margin:40px auto;border:1px solid #e5e7eb;transition:transform .2s,box-shadow .3s}.modern-auth-form:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(0,0,0,.08)}.auth-header{text-align:center}.auth-header .auth-icon{width:48px;height:48px;fill:#3b82f6;margin-bottom:16px;transition:transform .3s}.auth-header .auth-icon:hover{transform:scale(1.1)}.auth-header h2{font-size:24px;font-weight:600;color:#1f2a44;margin:0;letter-spacing:-.3px}.form-group{position:relative;margin-bottom:20px}.form-group input{width:100%;padding:12px 12px 12px 40px;border:1px solid #d1d5db;border-radius:8px;font-size:15px;background:#fafafa;transition:border-color .3s,box-shadow .3s;color:#374151}.form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:0;background:#fff}.form-group input::placeholder{color:#9ca3af}.form-group .icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#6b7280;width:20px;height:20px;transition:color .3s}.form-group input:focus+.icon{color:#3b82f6}.remember-me{display:flex;align-items:center;margin:16px 0}.remember-me label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#4b5563}.remember-me input[type=checkbox]{width:16px;height:16px;margin:0;cursor:pointer;accent-color:#3b82f6;border-radius:4px}.terms-checkbox{display:flex;align-items:flex-start;gap:8px;margin:16px 0}.terms-checkbox input[type=checkbox]{width:16px;height:16px;margin:2px 0 0;cursor:pointer;accent-color:#3b82f6;border-radius:4px}.terms-checkbox label{font-size:13px;line-height:1.5;color:#4b5563}.terms-checkbox a{color:#3b82f6;text-decoration:none;font-weight:500}.terms-checkbox a:hover{text-decoration:underline;color:#2563eb}#resend-code,#verify-2fa,.forgot-button,.login-button,.register-button,.reset-button{width:100%;padding:12px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:background .3s,transform .2s,box-shadow .3s;display:inline-flex;align-items:center;justify-content:center}#resend-code:hover:not(:disabled),#verify-2fa:hover:not(:disabled),.forgot-button:hover,.login-button:hover,.register-button:hover,.reset-button:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 2px 8px rgba(59,130,246,.2)}.button-icon{width:18px;height:18px;margin-right:8px;vertical-align:middle;fill:#fff;transition:transform .2s}#resend-code,#verify-2fa{background:#e5e7eb;color:#4b5563}#resend-code:hover:not(:disabled),#verify-2fa:hover:not(:disabled){background:#d1d5db}.google-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;background:#fff;color:#4b5563;border:1px solid #d1d5db;border-radius:8px;font-size:15px;font-weight:500;text-decoration:none;transition:border-color .3s,background .3s,transform .2s}.google-btn:hover{background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.auth-alternate{text-align:center;padding-top:16px;border-top:1px solid #e5e7eb;margin-top:16px}.auth-alternate p{margin:0;color:#4b5563;font-size:13px;padding:8px 0}.auth-link{color:#3b82f6;text-decoration:none;font-weight:500}.auth-link:hover{text-decoration:underline;color:#2563eb}.forgot-password{display:block;text-align:center;text-decoration:none;margin-top:12px;font-size:13px;color:#3b82f6;font-weight:500}.forgot-password:hover{text-decoration:underline;color:#2563eb}.support-message{margin-top:20px;text-align:center;font-size:13px;color:#4b5563}.support-message a{color:#3b82f6;text-decoration:none;font-weight:500}.support-message a:hover{text-decoration:underline;color:#2563eb}.form-messages{border-radius:8px;font-size:13px;font-weight:500;text-align:center}.success-message{background-color:#ecfdf5;color:#15803d;border:1px solid #d1fae5}.error-message{background-color:#fef2f2;color:#b91c1c;border:1px solid #fee2e2}.password-strength-meter{margin-top:8px}.strength-bar{height:4px;background:#e5e7eb;border-radius:2px;transition:width .3s,background .3s}.strength-text{font-size:12px;margin-top:4px;color:#6b7280}.strength-weak .strength-bar{background:#ef4444;width:25%}.strength-fair .strength-bar{background:#f59e0b;width:50%}.strength-good .strength-bar{background:#10b981;width:75%}.strength-strong .strength-bar{background:#047857;width:100%}.cf-turnstile,.g-recaptcha{margin:20px auto;display:flex;justify-content:center;align-items:center;width:100%}.cf-turnstile>iframe,.g-recaptcha>div{margin:0 auto}.email-validation-message{font-size:12px;margin-top:4px;color:#b91c1c;display:none}input[name=email].invalid{border-color:#b91c1c}.two-factor-form{text-align:center;padding:20px}.two-factor-input{margin:20px 0}.two-factor-input input{font-size:24px;letter-spacing:4px;text-align:center;margin:10px;border-radius:6px;padding:10px;border:1px solid #d1d5db}.two-factor-timer{margin-top:16px;color:#4b5563;font-size:13px}#timer{font-weight:500;color:#3b82f6}.input-actions{display:flex;gap:10px;justify-content:center;margin-top:16px}body.dark-mode .modern-auth-form{background:#1f2a44;border:1px solid #374151;box-shadow:0 4px 20px rgba(0,0,0,.2)}body.dark-mode .form-group input{background:#374151;border-color:#4b5563;color:#d1d5db}body.dark-mode .form-group input:focus{background:#4b5563;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.15)}body.dark-mode .auth-header h2{color:#f3f4f6}body.dark-mode .remember-me label,body.dark-mode .support-message,body.dark-mode .terms-checkbox label{color:#9ca3af}body.dark-mode .google-btn{background:#374151;border-color:#4b5563;color:#d1d5db}body.dark-mode .google-btn:hover{background:#4b5563;border-color:#6b7280}body.dark-mode #resend-code,body.dark-mode #verify-2fa{background:#4b5563;color:#d1d5db}body.dark-mode #resend-code:hover:not(:disabled),body.dark-mode #verify-2fa:hover:not(:disabled){background:#6b7280}