.download-hero{
  padding-top:clamp(58px,8vw,100px);
  padding-bottom:clamp(66px,9vw,112px);
  background:
    linear-gradient(135deg,var(--color-panel),var(--color-wash-mint) 58%,var(--color-wash-blue));
}
.download-hero::before{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(var(--color-border) 1px,transparent 1px),
    linear-gradient(90deg,var(--color-border) 1px,transparent 1px);
  background-size:48px 48px;
  opacity:.28;
  pointer-events:none;
  content:"";
}
.download-hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);
  gap:clamp(36px,7vw,88px);
  align-items:center;
}
.download-hero-copy{
  max-width:720px;
}
.download-hero-copy h1{
  max-width:680px;
  margin-bottom:22px;
}
.download-hero-copy .lead{
  max-width:680px;
}
.download-hero-copy strong{
  color:var(--color-accent-deep);
}
.download-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.download-platform-links{
  margin-top:24px;
}
.download-platform-links a{
  color:var(--color-muted);
  text-decoration:none;
}
.download-platform-links a:hover{
  color:var(--color-accent-deep);
  border-color:var(--color-accent);
}
.download-brief{
  position:relative;
  padding:clamp(24px,3vw,34px);
  border:1px solid var(--color-border);
  border-radius:var(--radius-xl);
  background:var(--color-panel);
  box-shadow:var(--shadow-layered);
  transform:rotate(1.5deg);
}
.download-brief::before{
  position:absolute;
  z-index:-1;
  inset:14px -14px -14px 14px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-xl);
  background:var(--color-panel-soft);
  content:"";
}
.download-brief-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:24px;
}
.download-brief-index{
  color:var(--color-accent-deep);
  font-size:.84rem;
  font-weight:700;
}
.download-brief-list{
  display:grid;
  gap:20px;
  padding:0;
  list-style:none;
  counter-reset:download-brief;
}
.download-brief-list li{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  column-gap:13px;
  counter-increment:download-brief;
}
.download-brief-list li::before{
  display:grid;
  width:34px;
  height:34px;
  grid-row:1 / span 2;
  place-items:center;
  border-radius:var(--radius-sm);
  background:var(--color-panel-soft);
  color:var(--color-accent-deep);
  font-family:var(--font-mono);
  font-size:.78rem;
  font-weight:700;
  content:counter(download-brief,decimal-leading-zero);
}
.download-brief-list strong,
.download-brief-list span{
  display:block;
}
.download-brief-list strong{
  margin-bottom:3px;
  color:var(--color-text);
}
.download-brief-list span{
  color:var(--color-muted);
  font-size:.9rem;
  line-height:1.6;
}
.download-brief-status{
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:25px;
  padding-top:18px;
  border-top:1px solid var(--color-border);
  color:var(--color-muted);
  font-size:.82rem;
}
.download-status-dot{
  width:8px;
  height:8px;
  flex-shrink:0;
  border-radius:var(--radius-pill);
  background:var(--color-success);
  box-shadow:0 0 0 4px var(--color-success-ring);
}
.download-tabs{
  align-items:start;
}
.download-tabs>.tab-panel{
  grid-column:2;
  grid-row:1;
}
.download-tab-list{
  position:sticky;
  top:18px;
  padding:9px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  background:var(--color-panel);
  box-shadow:var(--shadow-mid);
}
.platform-icon{
  display:grid;
  width:34px;
  height:34px;
  flex-shrink:0;
  place-items:center;
  border:1px solid var(--color-border);
  border-radius:var(--radius-sm);
  background:var(--color-panel);
  color:var(--color-accent-deep);
}
.platform-icon svg{
  width:18px;
  height:18px;
}
.download-tab-list .tab-button[aria-selected="true"] .platform-icon{
  border-color:var(--color-accent);
  background:var(--color-accent);
  color:var(--color-panel);
}
.download-panel{
  display:grid;
  min-width:0;
  gap:20px;
}
.download-panel>*{
  min-width:0;
}
.platform-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}
.platform-kicker{
  display:block;
  margin-bottom:7px;
  color:var(--color-accent-deep);
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.06em;
}
.platform-intro{
  margin-bottom:4px;
  color:var(--color-muted);
}
.download-panel .download-card{
  padding:clamp(22px,3vw,30px);
}
.featured-package{
  border-color:var(--color-accent);
  box-shadow:var(--shadow-layered);
}
.alternate-package{
  box-shadow:var(--shadow-soft);
}
.download-app-logo{
  width:52px;
  height:52px;
  flex-shrink:0;
}
.app-title-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
}
.app-title-line h4{
  font-size:1.16rem;
}
.package-version{
  margin-top:4px;
  color:var(--color-muted);
  font-size:.82rem;
}
.download-card>p:not(.package-version):not(.package-note){
  color:var(--color-muted);
}
.package-actions{
  display:grid;
  grid-template-columns:1fr;
  margin-top:22px;
}
.package-actions.split-actions{
  grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
}
.package-primary,
.package-secondary{
  width:100%;
  min-height:52px;
}
.package-primary{
  font-size:.98rem;
}
.package-note,
.package-file-list{
  margin-top:14px;
  color:var(--color-muted);
  font-size:.78rem;
}
.package-note .mono,
.package-file-list .mono{
  overflow-wrap:anywhere;
}
.package-file-list{
  display:grid;
  gap:5px;
}
.architecture-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:20px;
}
.architecture-links a{
  display:flex;
  min-height:46px;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border:1px solid var(--color-accent);
  border-radius:var(--radius-sm);
  background:var(--color-panel-soft);
  color:var(--color-accent-deep);
  font-weight:750;
  text-align:center;
  text-decoration:none;
}
.architecture-links a:hover{
  background:var(--color-accent);
  color:var(--color-panel);
}
.requirements-block{
  margin-top:8px;
  padding-top:24px;
  border-top:1px solid var(--color-border);
}
.requirements-block h4{
  margin-bottom:14px;
}
.requirements-scroll{
  max-width:100%;
  overflow-x:auto;
  border-radius:var(--radius-md);
  -webkit-overflow-scrolling:touch;
}
.requirements-table{
  width:100%;
  min-width:580px;
  font-size:.88rem;
}
.requirements-table th:first-child,
.requirements-table td:first-child{
  width:150px;
}
.selection-guide{
  display:grid;
  gap:16px;
}
.selection-step{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:20px;
  padding:clamp(22px,3vw,30px);
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  background:var(--color-panel);
  box-shadow:var(--shadow-soft);
}
.selection-number{
  display:grid;
  width:58px;
  height:58px;
  place-items:center;
  border-radius:var(--radius-md);
  background:var(--color-panel-soft);
  color:var(--color-accent-deep);
  font-size:.9rem;
  font-weight:800;
}
.selection-step h3{
  margin-bottom:8px;
  font-size:1.2rem;
}
.selection-step p{
  color:var(--color-muted);
}
.download-callout{
  margin-top:28px;
}
.install-flow{
  position:relative;
  display:grid;
  gap:0;
}
.install-flow::before{
  position:absolute;
  top:30px;
  bottom:30px;
  left:28px;
  width:1px;
  background:var(--color-border);
  content:"";
}
.install-flow-item{
  position:relative;
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:22px;
  padding-bottom:36px;
}
.install-flow-mark{
  position:relative;
  z-index:1;
  display:grid;
  width:58px;
  height:58px;
  place-items:center;
  border:1px solid var(--color-accent);
  border-radius:var(--radius-md);
  background:var(--color-panel);
  color:var(--color-accent-deep);
  box-shadow:var(--shadow-soft);
  font-weight:800;
}
.install-flow-item h3{
  margin-bottom:10px;
}
.install-flow-item p{
  color:var(--color-muted);
}
.install-flow-item p+p{
  margin-top:12px;
}
.install-next{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:12px;
  padding:26px;
  border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
  background:var(--color-panel);
  box-shadow:var(--shadow-layered);
}
.install-next h3{
  margin-bottom:6px;
}
@media (max-width:960px){
  .download-hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);
    gap:38px;
  }
  .package-actions.split-actions{
    grid-template-columns:1fr;
  }
}
@media (max-width:820px){
  .download-hero-grid{
    grid-template-columns:1fr;
  }
  .download-brief{
    max-width:620px;
    transform:none;
  }
  .download-tabs>.tab-panel{
    grid-column:1;
    grid-row:2;
  }
  .download-tab-list{
    position:static;
  }
  .download-tab-list .tab-button{
    flex:0 0 auto;
  }
}
@media (max-width:640px){
  .download-hero{
    padding-top:48px;
    padding-bottom:64px;
  }
  .download-hero::before{
    background-size:36px 36px;
  }
  .download-hero-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .download-brief{
    padding:22px;
  }
  .download-brief::before{
    inset:8px -6px -8px 6px;
  }
  .platform-panel-head{
    flex-direction:column;
    gap:12px;
  }
  .download-panel{
    padding:20px;
  }
  .download-panel .download-card{
    padding:20px;
  }
  .download-card-head{
    align-items:flex-start;
  }
  .architecture-links{
    grid-template-columns:1fr;
  }
  .selection-step{
    grid-template-columns:1fr;
  }
  .selection-number{
    width:46px;
    height:46px;
  }
  .install-flow::before{
    left:22px;
  }
  .install-flow-item{
    grid-template-columns:46px minmax(0,1fr);
    gap:16px;
  }
  .install-flow-mark{
    width:46px;
    height:46px;
  }
  .install-next{
    align-items:flex-start;
    flex-direction:column;
  }
}
@media (max-width:380px){
  .download-panel{
    padding:16px;
  }
  .download-app-logo{
    width:48px;
    height:48px;
  }
  .download-card-head{
    gap:10px;
  }
  .app-title-line{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }
}