
body { background:#f0f2f5; font-family:"Microsoft YaHei"; padding:25px; text-align:center; margin:0; }
.card { max-width:430px; margin:60px auto; padding:45px 35px 40px; background:#fff; border-radius:26px; box-shadow:0 18px 45px rgba(0,0,0,0.10); animation:fade .75s ease forwards; opacity:0; }
@keyframes fade { from{ opacity:0; transform:translateY(25px);} to{opacity:1; transform:translateY(0);} }
.logo-box{margin-bottom:12px;}
.logo{width:110px; filter:drop-shadow(0 4px 8px rgba(0,0,0,0.18)); transition:.25s;}
.logo:hover{transform:scale(1.04);}
.tip{font-size:15px; color:#666; margin:8px 0 25px 0;}
.btn{width:100%; padding:15px 0; border:none; border-radius:50px; font-size:18px; font-weight:bold; color:#fff; cursor:pointer; background:linear-gradient(90deg,#3ca846,#1f8b33); box-shadow:0 6px 16px rgba(67,160,71,0.35); transition:.3s;}
.btn:hover{box-shadow:0 10px 26px rgba(67,160,71,0.45); transform:translateY(-2px);}
.btn:disabled{background:#a9d8a9; box-shadow:none; cursor:not-allowed;}
#status{margin-top:20px; min-height:40px; font-size:15px; color:#444; line-height:22px;}
.loading span{width:10px; height:10px; background:#3ca846; border-radius:50%; display:inline-block; margin:0 4px; animation:bounce .6s infinite alternate;}
.loading span:nth-child(2){animation-delay:.15s;}
.loading span:nth-child(3){animation-delay:.3s;}
@keyframes bounce{to{transform:translateY(-8px);}}
.progress-bar{width:80%; height:8px; background:#e0e0e0; border-radius:4px; margin:10px auto 5px; overflow:hidden;}
.progress-fill{width:0%; height:100%; background:linear-gradient(90deg,#3ca846,#1f8b33); border-radius:4px; transition:width 1s linear;}
.countdown-text{font-size:15px; color:#2b8a34; margin-top:5px;}
@media(max-width:480px){.card{padding:35px 25px 30px;}.logo{width:90px;}.btn{font-size:16px; padding:12px 0;} #status p, .countdown-text{font-size:14px;}}
