:root {
  --bg-1: #eef1f7; --bg-2: #dfe6f3; --bg-3: #f6e9ef;
  --ink: #12141a; --ink-soft: #4a5060;
  --glass: rgba(255, 255, 255, 0.45); --edge: rgba(255, 255, 255, 0.75);
  --btn: #12141a; --btn-ink: #ffffff;
  --shadow: 0 20px 60px rgba(30, 40, 70, 0.18);
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg-1: #0d0f14; --bg-2: #161b28; --bg-3: #24161f;
    --ink: #f2f4f8; --ink-soft: #a6adbd;
    --glass: rgba(30, 34, 46, 0.45); --edge: rgba(255, 255, 255, 0.16);
    --btn: #f2f4f8; --btn-ink: #0d0f14;
    --shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
  }
}
* { box-sizing: border-box; }
html, body { height: 100%; margin: 0; }
body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: var(--ink);
  background:
    radial-gradient(60vmax 60vmax at 15% 10%, var(--bg-3), transparent 60%),
    radial-gradient(50vmax 50vmax at 90% 90%, var(--bg-2), transparent 60%),
    var(--bg-1);
  background-attachment: fixed;
  -webkit-font-smoothing: antialiased;
}
.stage { min-height: 100%; display: grid; place-items: center; padding: 24px; }
.card {
  width: min(420px, 100%);
  padding: 40px 32px 32px;
  text-align: center;
  border-radius: 28px;
  background: var(--glass);
  border: 1px solid var(--edge);
  box-shadow: var(--shadow), inset 0 1px 0 var(--edge);
  -webkit-backdrop-filter: blur(24px) saturate(160%);
  backdrop-filter: blur(24px) saturate(160%);
  animation: rise 0.6s ease-out both;
}
.docao { width: 120px; height: auto; display: block; margin: 0 auto 8px; }
h1 { font-size: 44px; letter-spacing: -0.02em; margin: 4px 0 6px; }
.lead { font-size: 17px; color: var(--ink-soft); margin: 0 0 24px; }
.download {
  display: inline-block; padding: 14px 26px; border-radius: 999px;
  background: var(--btn); color: var(--btn-ink); text-decoration: none; font-weight: 600; font-size: 16px;
  transition: transform 0.15s ease, opacity 0.15s ease;
}
.download:hover { transform: translateY(-1px); opacity: 0.92; }
.download:focus-visible { outline: 3px solid #5b8cff; outline-offset: 3px; }
.req { margin: 14px 0 0; font-size: 14px; color: var(--ink-soft); }
.note { margin: 18px 0 0; font-size: 13px; line-height: 1.45; color: var(--ink-soft); }
@keyframes rise { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .card { animation: none; }
  .download { transition: none; }
  .download:hover { transform: none; }
}
@media (prefers-reduced-transparency: reduce) {
  .card { -webkit-backdrop-filter: none; backdrop-filter: none; background: var(--bg-1); }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .card { background: var(--bg-1); }
}
