body{font-family:'Segoe UI','PingFang SC','Microsoft YaHei',Arial,sans-serif;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:100vh;display:flex;align-items:center}
.auth-container{max-width:420px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);padding:40px}
.auth-container h2{text-align:center;margin-bottom:10px;color:#1a1a2e;font-weight:700}
.auth-container .subtitle{text-align:center;color:#999;margin-bottom:30px;font-size:14px}
.form-group{margin-bottom:20px}
.form-group label{font-weight:600;font-size:13px;color:#555}
.btn-primary{background:#667eea;border:none;width:100%;padding:12px;font-size:16px;border-radius:8px}
.btn-primary:hover{background:#5a6fd8}
.links{text-align:center;margin-top:20px}
.links a{color:#667eea;text-decoration:none;margin:0 10px;font-size:14px}
.links a:hover{text-decoration:underline}
.captcha-row{display:flex;gap:10px;align-items:center}
.captcha-row input{flex:1}
.captcha-img{background:#f0f2f5;border-radius:6px;padding:6px 14px;font-size:20px;font-weight:700;letter-spacing:4px;color:#e94560;cursor:pointer;user-select:none;min-width:90px;text-align:center}
.remember-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;font-size:13px}
.steps{display:flex;justify-content:center;margin-bottom:25px}
.steps .step{width:30px;height:30px;border-radius:50%;background:#e0e0e0;color:#999;display:flex;align-items:center;justify-content:center;font-weight:600;margin:0 8px}
.steps .step.active{background:#667eea;color:#fff}
.steps .step.done{background:#43e97b;color:#fff}
.register-container{max-width:700px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);padding:40px}
.register-container h2{text-align:center;margin-bottom:30px;color:#1a1a2e}
.form-check-label{font-size:14px}
.sms-row{display:flex;gap:8px}
.sms-row input{flex:1}
.sms-row button{white-space:nowrap;min-width:120px}
.section-title{font-size:15px;font-weight:600;color:#667eea;border-bottom:2px solid #667eea;padding-bottom:5px;margin:15px 0 10px}
.admin-login body{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%)}
.admin-login .btn-primary{background:#e94560;border-radius:8px}
.admin-login .btn-primary:hover{background:#c73852}
.admin-login .alert{font-size:13px}
.public-auth .auth-container{max-width:600px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.2);padding:30px}
.public-auth .auth-container h2{text-align:center;margin-bottom:30px;color:#333}
.public-auth .btn-primary{padding:10px}
.public-auth .text-center{margin-top:20px}
.public-auth .text-center a{color:#667eea;text-decoration:none}
.public-auth .text-center a:hover{text-decoration:underline}
