/* Download page: platform selection, package cards and installation notes. */
.dl-intro{position:relative;padding-top:88px;padding-bottom:86px;overflow:hidden}
.dl-intro::before{content:"";position:absolute;z-index:-1;top:10px;right:var(--gutter);width:min(55vw,620px);height:340px;border-radius:var(--r-xl);background:var(--grad-wash);pointer-events:none}
.dl-intro__copy{max-width:800px}
.dl-intro h1{max-width:780px;margin-bottom:22px}
.dl-intro__gradient{background:var(--grad-brand);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.dl-intro__lede{max-width:690px;margin-bottom:0;color:var(--text-muted);font-size:18px;line-height:1.8}
.dl-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:960px;margin-top:56px}
.dl-path>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-content:start;min-width:0;padding:20px 22px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg);color:var(--text);box-shadow:var(--shadow-md)}
.dl-path__index{grid-row:span 2;font:600 13px/1.5 var(--font-mono);color:var(--accent-dark)}
.dl-path strong{font-size:15px}
.dl-path small{margin-top:3px;color:var(--text-muted);font-size:12px;overflow-wrap:anywhere}
.dl-catalog{padding-top:76px;background:var(--bg-panel);color:var(--text)}
.dl-catalog .section__intro{margin-bottom:24px}
.dl-switch{min-width:0}
.dl-switch .tablist{margin-bottom:26px;background:var(--bg);box-shadow:var(--shadow-sm)}
.dl-switch .tab{display:inline-flex;align-items:center;gap:9px}
.dl-switch .tab svg{width:17px;height:17px}
.dl-platform{min-width:0;scroll-margin-top:80px}
.dl-platform__heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:22px}
.dl-platform__heading>div{min-width:0}
.dl-platform__heading h3{margin:8px 0 0}
.dl-platform__heading p{max-width:470px;margin:0;color:var(--text-muted);font-size:14px}
.dl-eyebrow{display:inline-block;color:var(--accent-dark);font:600 12px/1.5 var(--font-mono);letter-spacing:.055em}
.dl-client{padding:34px;box-shadow:var(--shadow-md)}
.dl-client .client-card__head{margin-bottom:20px}
.dl-client .client-card__icon{width:48px;height:48px;flex-shrink:0}
.dl-client__identity{min-width:0}
.dl-client__identity h3{margin:0 0 2px}
.dl-client__version{display:block;color:var(--text-muted);font-size:12px}
.dl-client__version [data-rev]{font-family:var(--font-mono);color:var(--text)}
.dl-client>.client-card__head+.dl-client__identity{min-width:0}
.dl-client>p{max-width:920px;line-height:1.85}
.dl-packages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:26px}
.dl-package{display:flex;flex-direction:column;gap:20px;min-width:0;padding:22px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-panel);color:var(--text)}
.dl-package--lead{border-color:var(--accent-ring);background:var(--accent-soft)}
.dl-package__text{display:flex;flex-direction:column;gap:4px;min-width:0}
.dl-package__text strong{font-size:17px}
.dl-package__text span{color:var(--text-muted);font-size:13px}
.dl-package__button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:52px;margin-top:auto;padding:10px 18px;border-radius:var(--r-pill);background:var(--accent-dark);color:var(--on-ink);font-size:15px;font-weight:700;line-height:1.35;box-shadow:var(--shadow-cta);transition:transform .18s ease,box-shadow .18s ease}
.dl-package__button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}
.dl-package__button span{flex-shrink:0;font-size:20px;font-weight:400}
.dl-package__button--secondary{background:var(--text);color:var(--on-ink);box-shadow:var(--shadow-sm)}
.dl-android-list{display:grid;gap:22px}
.dl-requirements{margin-top:28px;padding:30px;border:1px solid var(--border);border-radius:var(--r-xl);background:var(--bg);color:var(--text)}
.dl-requirements h3{margin-bottom:20px;font-size:20px}
.dl-requirements .data-table{min-width:560px}
.dl-requirements p{max-width:940px;margin:22px 0 0;color:var(--text-muted);line-height:1.85}
.dl-alt{margin-top:26px;padding:20px 22px;border-radius:var(--r-lg);background:var(--bg-panel);color:var(--text)}
.dl-alt>strong{font-size:15px}
.dl-alt p{margin:4px 0 12px;color:var(--text-muted);font-size:13px}
.dl-alt__links{display:flex;flex-wrap:wrap;gap:10px}
.dl-alt__links a{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:46px;padding:9px 18px;border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--bg);color:var(--accent-dark);font-size:14px;font-weight:650}
.dl-alt__links a:hover{border-color:var(--accent)}
.dl-after__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dl-after__grid .panel{padding:26px}
.dl-after__grid h3{margin:16px 0 10px;font-size:20px}
.dl-after__grid p{margin:0;color:var(--text-muted);font-size:14px;line-height:1.85}
.dl-after__number{font:600 12px var(--font-mono);color:var(--accent-dark)}
.dl-after__more{margin:26px 0 0;color:var(--text-muted)}
.dl-after__more a,.dl-faq .faq-item__answer a{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}
.dl-faq{padding-top:70px;background:var(--bg-panel);color:var(--text)}
.dl-faq .section__intro{margin-bottom:28px}
.dl-faq .faq-item{box-shadow:var(--shadow-sm)}
.dl-faq .faq-item__answer{line-height:1.85}
@media(max-width:768px){
  .dl-intro{padding-top:54px;padding-bottom:58px}
  .dl-intro__lede{font-size:16px}
  .dl-path{margin-top:34px}
  .dl-path>div{padding:16px}
  .dl-platform__heading{display:block}
  .dl-platform__heading p{margin-top:10px}
  .dl-after__grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .dl-path{grid-template-columns:1fr;gap:9px}
  .dl-path>div{grid-template-columns:35px 1fr}
  .dl-catalog{padding-top:60px}
  .dl-switch .tablist{display:flex;width:100%;max-width:100%;justify-content:flex-start}
  .dl-switch .tab{gap:6px;padding-inline:12px;font-size:13px}
  .dl-switch .tab svg{width:15px;height:15px}
  .dl-client{padding:20px}
  .dl-client .client-card__head{gap:10px}
  .dl-client .client-card__head .label{margin-left:0}
  .dl-packages{grid-template-columns:1fr;gap:12px}
  .dl-package{gap:14px;padding:17px}
  .dl-package__button{min-height:50px}
  .dl-requirements{padding:20px}
  .dl-alt{padding:16px}
  .dl-alt__links{flex-direction:column}
  .dl-alt__links a{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .dl-package__button{transition:none}
}