*{margin:0;padding:0;box-sizing:border-box;font-family:"Segoe UI",Microsoft YaHei,sans-serif}
html,body{height:100%;overflow:auto;background:#040D1A}
body{background:radial-gradient(ellipse at center,#09162b 0%,#040D1A 80%);color:#fff}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-thumb{background:rgba(30,41,59,0.6);border-radius:4px;}
::-webkit-scrollbar-thumb:hover{background:rgba(56,189,248,0.25);}
::-webkit-scrollbar-track{background:linear-gradient(135deg,#1a2347,#0f172a,#1e293b);}
.bg-grid{position:fixed;inset:0;z-index:-1;opacity:0.15}
.grid-line{position:absolute;background:linear-gradient(90deg,#00d8ff,#7000ff);animation:flow 8s linear infinite}
.grid-line.h{width:100%;height:1px}
.grid-line.v{width:1px;height:100%}
.grid-line.h:nth-child(1){top:15%}
.grid-line.h:nth-child(2){top:35%}
.grid-line.h:nth-child(3){top:55%}
.grid-line.h:nth-child(4){top:75%}
.grid-line.v:nth-child(1){left:15%}
.grid-line.v:nth-child(2){left:35%}
.grid-line.v:nth-child(3){left:55%}
.grid-line.v:nth-child(4){left:75%}
@keyframes flow{0%{opacity:.2}50%{opacity:.6}100%{opacity:.2}}
.reg-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;max-width:600px;padding:0 20px}
.reg-box{background:rgba(12,23,41,.75);backdrop-filter:blur(16px);border:1px solid rgba(0,216,255,.2);border-radius:24px;padding:50px 45px;box-shadow:0 12px 40px rgba(0,216,255,.1)}
.logo-title{font-size:32px;font-weight:700;text-align:center;margin-bottom:10px;background:linear-gradient(90deg,#00d8ff,#7000ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.sub-title{text-align:center;color:#a0b0c8;margin-bottom:40px;font-size:15px}
.form-item{margin-bottom:24px}
.form-control{width:100%;height:56px;background:rgba(10,18,32,.7);border:1px solid rgba(0,216,255,.2);border-radius:14px;padding:0 20px;color:#fff;font-size:15px;outline:none;transition:.3s}
.form-control:focus{border-color:#00d8ff;box-shadow:0 0 0 4px rgba(0,216,255,.15)}
.form-control::placeholder{color:#667692}
.code-box{display:flex;gap:12px}
.code-box input{flex:1}
.code-btn{width:130px;height:56px;background:rgba(0,216,255,.1);color:#00d8ff;border:1px solid rgba(0,216,255,.2);border-radius:14px;font-size:14px;font-weight:500;cursor:pointer}
.code-btn:disabled{background:rgba(10,18,32,.5);color:#667692;border-color:rgba(0,216,255,.1);cursor:not-allowed}
.btn-submit{width:100%;height:58px;background:linear-gradient(90deg,#00d8ff,#7000ff);color:#fff;border:none;border-radius:14px;font-size:16px;font-weight:500;cursor:pointer;transition:.3s;margin-top:10px}
.btn-submit:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,216,255,.3)}
.btn-back{width:100%;height:58px;background:rgba(10,18,32,.6);color:#a0b0c8;border:1px solid rgba(0,216,255,.15);border-radius:14px;font-size:16px;font-weight:500;cursor:pointer;transition:.3s;margin-top:12px}
.btn-back:hover{border-color:#00d8ff;color:#00d8ff}
.agreement{display:flex;align-items:center;gap:10px;margin-bottom:20px;color:#a0b0c8;font-size:14px}
.agreement a{color:#00d8ff;text-decoration:none}
.price-info{text-align:center;color:#00d8ff;font-size:16px;margin-bottom:25px;font-weight:500}
.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);z-index:9999;display:none;align-items:center;justify-content:center}
.modal-box{background:#111c30;border:1px solid #00d8ff;border-radius:18px;padding:35px;width:90%;max-width:450px;max-height:80vh;overflow-y:auto;color:#e0e0e0}
.modal-title{font-size:18px;color:#00d8ff;margin-bottom:20px}
.modal-text{line-height:1.7;font-size:14px}
.modal-close{margin-top:20px;padding:10px 25px;background:#00d8ff;color:#000;border:none;border-radius:8px;font-weight:500;cursor:pointer}
.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.7);color:#fff;padding:12px 24px;border-radius:12px;font-size:14px;z-index:9999;opacity:0;transition:opacity .3s;pointer-events:none}
input:-webkit-autofill{-webkit-box-shadow:0 0 0 30px #0a172c inset!important;-webkit-text-fill-color:#fff!important;border-color:#00d8ff!important}
@media(max-width:768px){
    .reg-container{transform:none;top:25px;left:0;position:relative;margin:0 auto}
    .reg-box{padding:30px 20px}
}