/* SpeedLink 下载页样式 */
.download-hero{
  position:relative;padding:140px 0 64px;overflow:hidden;
  background:
    radial-gradient(600px 340px at 70% 20%,rgba(16,185,129,0.14),transparent 60%),
    radial-gradient(450px 260px at 20% 80%,rgba(6,182,212,0.12),transparent 70%);
}
.download-hero h1{
  font-size:clamp(30px,4.5vw,48px);font-weight:800;color:#fff;
  line-height:1.2;margin-bottom:14px;
}
.download-hero h1 .grad{background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.download-hero .lead{font-size:16px;color:var(--text-secondary);max-width:600px;margin-bottom:24px}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:40px}
.badge-pill{
  display:inline-flex;align-items:center;gap:6px;padding:6px 14px;
  border-radius:100px;font-size:12.5px;background:var(--bg-card-hover);
  border:1px solid var(--border-hover);color:var(--brand-1);
}
.badge-pill svg{width:14px;height:14px}

.download-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.download-card{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:28px 22px;text-align:center;transition:all .35s ease;
}
.download-card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow)}
.download-icon{
  width:56px;height:56px;margin:0 auto 16px;border-radius:14px;
  background:linear-gradient(135deg,rgba(16,185,129,0.16),rgba(6,182,212,0.1));
  border:1px solid var(--border-hover);display:grid;place-items:center;
}
.download-icon svg{width:28px;height:28px;color:var(--brand-1)}
.download-card .platform{font-size:17px;font-weight:700;color:#fff;margin-bottom:4px}
.download-card .version{font-size:12px;color:var(--text-tertiary);margin-bottom:14px}
.download-card .meta{display:flex;justify-content:center;gap:10px;font-size:11.5px;color:var(--text-tertiary);margin-bottom:20px;flex-wrap:wrap}
.download-card .btn{width:100%;justify-content:center;font-size:13.5px;padding:11px 16px}

.requirement{background:var(--bg-secondary);border-top:1px solid var(--border)}
.req-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.req-card{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:26px 24px;
}
.req-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.req-head .ico{width:40px;height:40px;border-radius:10px;background:var(--bg-card-hover);display:grid;place-items:center}
.req-head .ico svg{width:20px;height:20px;color:var(--brand-1)}
.req-head h3{font-size:16px;font-weight:600;color:#fff}
.req-list{display:flex;flex-direction:column;gap:10px}
.req-list li{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}
.req-list li:last-child{border-bottom:none}
.req-list .key{color:var(--text-tertiary)}
.req-list .val{color:var(--text-secondary);font-weight:500;text-align:right}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px}
.step-card{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:28px 24px;position:relative;transition:all .35s ease;
}
.step-card:hover{border-color:var(--border-hover);transform:translateY(-3px)}
.step-num{
  position:absolute;top:-14px;left:24px;width:32px;height:32px;border-radius:50%;
  background:var(--gradient);color:#fff;font-weight:700;font-size:15px;
  display:grid;place-items:center;box-shadow:0 4px 12px rgba(16,185,129,0.4);
}
.step-card h3{font-size:16px;font-weight:600;color:#fff;margin:8px 0 8px}
.step-card p{font-size:13px;color:var(--text-tertiary);line-height:1.7}

.mini-faq{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:24px 28px;
}
.mini-faq h3{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#fff;margin-bottom:14px}
.mini-faq h3 svg{width:18px;height:18px;color:var(--brand-1)}
.mini-faq ul{display:flex;flex-direction:column;gap:10px}
.mini-faq li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--text-secondary)}
.mini-faq li svg{width:16px;height:16px;color:var(--brand-1);flex:none;margin-top:2px}

/* ===== 扩充内容区块样式 ===== */
.tutorial-block{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:32px 28px;margin-bottom:24px;
}
.tutorial-title{
  display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;color:#fff;
  margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border);
}
.tutorial-icon{
  width:40px;height:40px;border-radius:10px;background:var(--bg-card-hover);
  display:grid;place-items:center;flex:none;
}
.tutorial-icon svg{width:20px;height:20px;color:var(--brand-1)}
.tutorial-steps{display:flex;flex-direction:column;gap:20px}
.tutorial-step{
  display:flex;gap:16px;align-items:flex-start;
}
.tutorial-step-num{
  flex:none;width:32px;height:32px;border-radius:50%;background:var(--gradient);
  color:#fff;font-weight:700;font-size:14px;display:grid;place-items:center;
  box-shadow:0 4px 12px rgba(16,185,129,0.35);
}
.tutorial-step h4{font-size:15px;font-weight:600;color:#fff;margin-bottom:6px}
.tutorial-step p{font-size:13.5px;color:var(--text-secondary);line-height:1.8}

.feature-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.feature-detail-card{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:26px 22px;transition:all .35s ease;
}
.feature-detail-card:hover{border-color:var(--border-hover);transform:translateY(-3px);background:var(--bg-card-hover)}
.feature-detail-icon{
  width:48px;height:48px;border-radius:12px;margin-bottom:16px;
  background:linear-gradient(135deg,rgba(16,185,129,0.14),rgba(6,182,212,0.08));
  border:1px solid var(--border-hover);display:grid;place-items:center;
}
.feature-detail-icon svg{width:24px;height:24px;color:var(--brand-1)}
.feature-detail-card h3{font-size:16px;font-weight:600;color:#fff;margin-bottom:10px}
.feature-detail-card p{font-size:13px;color:var(--text-secondary);line-height:1.8}

.changelog-list{display:flex;flex-direction:column;gap:20px}
.changelog-item{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:24px 26px;
}
.changelog-version{
  display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;
  border-bottom:1px solid var(--border);
}
.changelog-version .ver{font-size:16px;font-weight:700;color:#fff}
.changelog-version .date{font-size:12.5px;color:var(--text-tertiary)}
.changelog-version .tag{
  font-size:11px;font-weight:600;padding:3px 10px;border-radius:100px;
}
.changelog-version .tag.stable{background:rgba(16,185,129,0.15);color:var(--brand-1);border:1px solid var(--border-hover)}
.changelog-version .tag.major{background:rgba(6,182,212,0.15);color:#06b6d4;border:1px solid rgba(6,182,212,0.3)}
.changelog-content{display:flex;flex-direction:column;gap:8px}
.changelog-content li{
  display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--text-secondary);
  line-height:1.7;
}
.changelog-content .type{
  flex:none;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:4px;
  text-transform:uppercase;letter-spacing:.5px;margin-top:2px;
}
.changelog-content .type.new{background:rgba(16,185,129,0.18);color:#34d399}
.changelog-content .type.improve{background:rgba(6,182,212,0.18);color:#22d3ee}
.changelog-content .type.fix{background:rgba(245,158,11,0.18);color:#fbbf24}

@media (max-width:1024px){
  .download-grid{grid-template-columns:repeat(2,1fr)}
  .req-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .feature-detail-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:768px){
  .download-hero{padding:108px 0 48px}
  .download-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:480px){
  .download-grid{grid-template-columns:1fr}
}
