/* Use the portal's role theme, including its existing Liberal Democrat tokens. */
body.android-download-page { padding-bottom: 0; }
.android-download-shell {
  --download-ink: #f5fff9;
  --download-muted: #d3eee7;
  --download-panel: #123e31;
  --download-line: #598174;
  --download-link: var(--accent-soft);
  --download-button: var(--accent-soft);
  --download-button-ink: var(--ink-980);
  --download-focus: var(--accent-soft);
}
.android-download-shell[data-party-theme="lib_dem"] {
  --download-ink: var(--ld-ink);
  --download-muted: var(--ld-ink-soft);
  --download-panel: var(--ld-surface-strong);
  --download-line: var(--ld-line-strong);
  --download-link: var(--ld-ink);
  --download-button: var(--ld-yellow);
  --download-button-ink: var(--ld-ink);
  --download-focus: var(--ld-orange);
}
.android-download-shell .workspace-content { position: relative; z-index: 1; }
.android-download-shell .public-footer,
.android-download-shell .public-footer a { color: var(--download-muted); }
.android-download { max-width: 820px; width: 100%; margin: 0 auto; padding: 24px 12px 48px; color: var(--download-ink); }
.android-download a { color: var(--download-link); text-underline-offset: 3px; }
.android-download-nav { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; margin-bottom: 36px; }
.android-download-brand { display: inline-flex; align-items: center; gap: 10px; font-size: 23px; font-weight: 800; text-decoration: none; }
.android-download-brand img { width: 38px; height: 38px; object-fit: contain; }
.android-download-intro h1 { font-family: 'Fraunces', Georgia, serif; font-size: clamp(30px, 5vw, 42px); line-height: 1.15; margin: 12px 0 16px; }
.android-download :is(h1, h2, h3) { color: var(--download-ink); }
.android-download p { line-height: 1.65; }
.android-download-intro > p:last-child { max-width: 580px; font-size: 17px; }
.android-download-release { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 24px; background: var(--download-panel); border: 1px solid var(--download-line); border-radius: 18px; padding: 26px; margin: 28px 0 16px; }
.android-download h2 { font-size: 23px; margin: 0 0 12px; }
.android-download-release p { margin: 4px 0; font-size: 14px; }
.android-download a.android-download-button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; padding: 16px 22px; border-radius: 10px; color: var(--download-button-ink); background: var(--download-button); text-decoration: none; font-weight: 800; }
.android-download-button:hover { filter: brightness(1.15); }
.android-download :focus-visible { outline: 3px solid var(--download-focus); outline-offset: 4px; }
.android-download-preserve { line-height: 1.6; padding: 4px 0 30px; }
.android-download-steps { list-style: none; counter-reset: steps; padding: 0; margin: 10px 0 36px; }
.android-download-steps li { counter-increment: steps; display: flex; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--download-line); }
.android-download-steps li::before { content: counter(steps); flex: 0 0 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: var(--download-panel); font-weight: 800; }
.android-download h3 { font-size: 19px; margin: 4px 0 10px; }
.android-download-steps p { margin: 0 0 8px; }
.android-download-help details { border: 1px solid var(--download-line); padding: 12px 16px; scroll-margin-top: 20px; background: var(--download-panel); color: var(--download-ink); }
.android-download-help summary { color: var(--download-ink); padding: 4px 0; cursor: pointer; font-weight: 700; line-height: 1.5; }
.android-download-help > p { margin-top: 24px; }
@media (max-width: 540px) {
  .android-download { padding: 12px 0 32px; }
  .android-download-nav { margin-bottom: 32px; font-size: 13px; gap: 12px; }
  .android-download-release { padding: 20px; }
  .android-download-button { width: 100%; }
  .android-download-steps li { gap: 14px; }
}
