/* 首页的内容编排；基础组件沿用共享设计系统。 */
.home-platform-row {
  align-items:flex-start;
}
.home-platform-row .platforms {
  gap:6px;
}
.home-platform-row .platform {
  padding-inline:10px;
  gap:6px;
}
.home-feature-intro {
  margin-top:24px;
  max-width:27em;
  color:var(--ink-soft);
  line-height:1.85;
}
.home-feature-stage {
  position:relative;
  min-width:0;
}
.home-feature-stage > .mini-badge {
  top:-24px;
  right:0;
}
.home-feature-stage > .tab-panel {
  margin-top:0;
}
.home-feature-stage .feat-head {
  padding-right:48px;
}
.home-download {
  background:var(--bg-sunken);
  color:var(--text);
}
.home-section-head {
  max-width:800px;
  margin-bottom:36px;
}
.home-section-head > h2 {
  margin-top:18px;
}
.home-section-head > p:last-child {
  margin-top:22px;
  color:var(--muted);
  line-height:1.85;
}
.sheet .home-section-head > p:last-child {
  color:var(--ink-soft);
}
.home-download-grid {
  align-items:stretch;
}
.home-os-link {
  display:inline-flex;
  align-items:center;
  gap:14px;
}
.home-os-link > svg {
  width:24px;
  height:24px;
  color:var(--accent);
}
.home-os-link:hover {
  color:var(--accent);
}
.home-download-tail {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:24px;
  margin-top:32px;
}
.home-download-tail > p {
  max-width:47em;
  color:var(--muted);
  font-size:var(--type-small);
  line-height:1.85;
}
.home-reading-sheet {
  padding-top:80px;
}
.home-block + .home-block {
  margin-top:96px;
  padding-top:72px;
  border-top:1px solid var(--ink-grid);
}
.home-kicker {
  font-family:var(--font-mono);
  font-size:var(--type-caption);
  font-weight:var(--weight-bold);
  color:var(--ink-soft);
}
.home-steps {
  list-style:none;
  display:grid;
  gap:0;
}
.home-steps > li {
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:28px;
  padding-top:32px;
  padding-bottom:32px;
  border-top:1px solid var(--ink-grid);
}
.home-steps .prose {
  max-width:880px;
}
.home-steps .prose > h3 {
  margin-top:0;
}
.home-step-mark {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:60px;
  height:60px;
  border:1px solid var(--ink);
  border-radius:var(--r-mini);
  background:var(--accent);
  color:var(--ink);
  font-family:var(--font-mono);
  font-size:var(--type-h3);
  font-weight:var(--weight-bold);
}
.home-ecology-band {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:32px;
  padding:24px;
  border:1px solid var(--ink);
  border-radius:var(--r-menu);
  background:var(--ink);
  color:var(--text);
  font-size:var(--type-small);
  font-weight:var(--weight-semibold);
}
.home-ecology-band > span[aria-hidden] {
  color:var(--accent);
  font-family:var(--font-mono);
}
.home-ecosystem .content-card {
  display:flex;
  flex-direction:column;
  gap:20px;
}
.home-ecosystem .content-card p {
  color:var(--ink-soft);
  line-height:1.85;
  font-size:var(--type-small);
}
.home-text-link {
  text-decoration:underline;
  text-underline-offset:4px;
  font-weight:var(--weight-semibold);
}
.home-posts {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.home-posts > * {
  min-width:0;
}
.home-posts h3 {
  font-size:var(--type-h3);
  line-height:1.45;
}
.home-posts .article-card {
  gap:22px;
}
.home-posts .article-card p {
  line-height:1.85;
}
.home-posts .pill-link {
  font-size:var(--type-small);
}
@media (min-width:1081px) and (max-width:1400px) {
  .home-features .feat {
    gap:40px;
    grid-template-columns:minmax(0,4fr) minmax(0,8fr);
  }
  .home-features .feat-body {
    gap:24px;
  }
}
@media (max-width:1080px) {
  .home-feature-stage {
    margin-top:12px;
  }
  .home-posts {
    grid-template-columns:minmax(0,1fr);
  }
  .home-posts .article-card {
    display:grid;
    grid-template-columns:minmax(0,1fr);
  }
}
@media (max-width:640px) {
  .home-platform-row .platform {
    min-height:36px;
    padding-inline:9px;
  }
  .home-platform-row .platforms {
    gap:6px;
  }
  .home-section-head {
    margin-bottom:28px;
  }
  .home-block + .home-block {
    margin-top:64px;
    padding-top:48px;
  }
  .home-reading-sheet {
    padding-top:56px;
  }
  .home-steps > li {
    grid-template-columns:minmax(0,1fr);
    gap:20px;
    padding-top:28px;
    padding-bottom:28px;
  }
  .home-step-mark {
    width:48px;
    height:48px;
    border-radius:var(--r-field);
  }
  .home-ecology-band {
    justify-content:flex-start;
    padding:20px;
    gap:12px;
  }
  .home-feature-stage .feat-head {
    padding-right:38px;
  }
  .home-feature-stage > .mini-badge {
    top:-26px;
  }
  .home-download-tail {
    align-items:flex-start;
  }
}