*{margin:0;padding:0;box-sizing:border-box}
body{overflow-x:hidden;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#f5f7fa 0%,#e4e8f0 100%);color:#2d3748;min-height:100vh;position:relative}
.tech-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}
.grid-lines{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(200,210,230,0.3) 1px,transparent 1px),linear-gradient(90deg,rgba(200,210,230,0.3) 1px,transparent 1px);background-size:50px 50px}
.floating-shapes{position:absolute;width:100%;height:100%}
.shape{position:absolute;border-radius:50%;background:rgba(66,153,225,0.1);animation:float 15s infinite ease-in-out}
.shape:nth-child(1){width:300px;height:300px;top:10%;left:5%;animation-delay:0s}
.shape:nth-child(2){width:200px;height:200px;top:60%;right:10%;animation-delay:3s;background:rgba(102,126,234,0.1)}
.shape:nth-child(3){width:150px;height:150px;bottom:20%;left:15%;animation-delay:6s;background:rgba(72,187,120,0.1)}
.shape:nth-child(4){width:100px;height:100px;top:20%;right:20%;animation-delay:9s}
.pulse-dot{position:absolute;width:8px;height:8px;background:#4299e1;border-radius:50%;box-shadow:0 0 15px 5px rgba(66,153,225,0.3);animation:pulse 2s infinite}
.pulse-dot:nth-child(5){top:30%;left:20%}
.pulse-dot:nth-child(6){bottom:40%;right:25%;animation-delay:1s}
@keyframes float{0%,100%{transform:translateY(0) translateX(0)}
25%{transform:translateY(-20px) translateX(10px)}
50%{transform:translateY(10px) translateX(-15px)}
75%{transform:translateY(-15px) translateX(-5px)}
}@keyframes pulse{0%,100%{transform:scale(1);opacity:1}
50%{transform:scale(1.5);opacity:0.7}
}
 .main-content {margin:0 auto;max-width:980px;padding: clamp(50px, 10vw, 50px) 0 clamp(60px, 15vw, 150px);
    /* 增加底部内边距，为固定页脚留出空间 */
}
/*步骤指示器*/
.step-indicator{position:relative;padding:0;margin:0.1rem 0;list-style:none;display:flex;flex-wrap:nowrap;align-items:center}
.step-indicator > .step-item{position:relative;flex:1;text-align:center;padding:0 0.25rem}
.step-indicator::before{content:"";position:absolute;top:1.4rem;left:1rem;right:1rem;height:2px;background-color:#4299e1;z-index:1}
.step-item > .step-node{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;background-color:#fff;border:2px solid #cfe2ff;transition:all 0.3s ease;font-size:1.25rem;color:#6c757d}
.svg-white{width: 25px;height: 25px;filter: brightness(0) invert(1);}
.svg-dark{width: 25px;height: 25px;opacity: 0.2;}

.step-item > .step-label{display:block;margin-top:0.5rem;font-size:0.875rem;color:#6c757d;transition:color 0.3s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.step-item.completed > .step-node{background-color:#4299e1;border-color:#4299e1;color:#fff}
.step-item.completed > .step-label{color:#4299e1;font-weight:500}
.step-item:not(.active):not(.completed) > .step-node:hover{border-color:#4299e1;color:#4299e1;cursor:pointer}
@media (max-width:768px){.step-indicator{margin:1rem 0;padding:0 0.5rem}
.step-item > .step-node{width:2rem;height:2rem;font-size:1rem}
.step-indicator::before{top:0.75rem;left:0.75rem;right:0.75rem}
.step-item > .step-label{font-size:0.75rem;margin-top:0.25rem;line-height:1.2}
}@media (max-width:375px){.step-item > .step-label{font-size:0.65rem}
.step-item > .step-node{width:1.75rem;height:1.75rem}
.step-indicator::before{top:0.65rem}
}

.btn-button{padding:0.8rem 3rem;font-size:1rem;color:white;border-radius:8px;background-color:#3F93DB;border:none;}
.btn-button:hover{background-color:#2F75BA;box-shadow:0 8px 20px rgba(47, 117, 186, 0.5);}
.btn[disabled]{background:#3F93DB !important;color:white !important;cursor:not-allowed !important;opacity:0.8 !important;pointer-events:none !important;filter:none !important}
/* 底部样式 */
.footer{background:rgba(255,255,255,0.9);padding:clamp(20px,4vw,30px) 0;border-top:1px solid rgba(226,232,240,0.8);position:fixed;bottom:0;left:0;width:100%;z-index:100}