* { box-sizing: border-box; }
html, body { height: 100%; }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  /* REALLY dark purple gradient */
  background:
    radial-gradient(80% 60% at 50% -20%, rgba(102,0,153,0.35) 0%, rgba(0,0,0,0) 60%),
    linear-gradient(180deg, #0a0011 0%, #1a002e 100%);
  color: #eaf1ff;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 56px 16px;
}

/* Main column (no card/box) */
.main {
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  text-align: center;
}

/* Heading */
h1 {
  margin: 0 0 10px 0;
  font-size: 2rem;
  line-height: 1.2;
  letter-spacing: 0.2px;
  background: linear-gradient(90deg, #b45cff, #8e00ff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Subtitle */
.subtitle {
  margin: 0 0 24px 0;
  color: #c0a8ff;
  font-size: 1rem;
}

/* Input */
.input {
  width: 100%;
  max-width: 460px;
  margin: 0 auto 16px auto;
  padding: 14px 16px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.06);
  color: #fff;
  border-radius: 14px;
  outline: none;
  font-size: 1rem;
  text-align: center;
  backdrop-filter: blur(6px);
}
.input::placeholder { color: #c5b6e0; }

/* Modern centered button */
.btn {
  width: 100%;
  max-width: 460px;
  display: block;
  margin: 0 auto 20px auto;
  padding: 14px 18px;
  border: none;
  border-radius: 14px;
  font-size: 1.05rem;
  font-weight: 700;
  color: #1a002e;
  background: linear-gradient(90deg, #a64cff 0%, #7e00ff 100%);
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, opacity .2s ease;
}
.btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(126,0,255,0.25); }
.btn:active { transform: translateY(0); box-shadow: none; }

/* Status text */
.status { min-height: 22px; margin: 8px 0 6px; font-size: .92rem; color: #d0b3ff; }

/* Bulleted list */
.list {
  list-style: disc;
  text-align: left;
  margin: 14px auto 18px;
  padding-left: 22px;
  max-width: 460px;
  color: #c0a8ff;
}
.list a { color: #8e00ff; text-decoration: none; font-weight: 600; }
.list a:hover { text-decoration: underline; }

/* Divider */
.rule {
  height: 1px;
  border: none;
  background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.18), rgba(255,255,255,0));
  margin: 20px auto;
  max-width: 460px;
}

/* Donation */
.donate-label { color: #c0a8ff; margin: 6px 0 6px; }
.donate-addr {
  margin: 0 auto;
  max-width: 460px;
  font-weight: 800;
  color: #b45cff;
  word-break: break-all;
  letter-spacing: .3px;
}
/* Mobile-specific adjustments: 1.5x bigger */
@media (max-width: 768px) {
  body {
    padding: 40px 16px; /* a little extra for breathing room */
  }

  .main {
    max-width: 90%; /* keeps layout tight on small screens */
    margin: 0 auto;
  }

  h1 {
    font-size: 3rem; /* 2rem × 1.5 */
  }

  .subtitle {
    font-size: 1.5rem; /* 1rem × 1.5 */
  }

  .input {
    padding: 21px 24px; /* 14px × 1.5 */
    font-size: 1.5rem; /* 1rem × 1.5 */
  }

  .btn {
    padding: 21px 27px; /* 14px × 1.5 / 18px × 1.5 */
    font-size: 1.575rem; /* 1.05rem × 1.5 */
  }

  .list {
    font-size: 1.38rem; /* ~0.92rem × 1.5 */
    padding-left: 33px; /* 22px × 1.5 */
  }

  .status {
    font-size: 1.38rem; /* 0.92rem × 1.5 */
  }

  .donate-label {
    font-size: 1.5rem; /* 1rem × 1.5 */
  }

  .donate-addr {
    font-size: 1.5rem; /* 1rem × 1.5 */
  }
}
/* Mobile-specific adjustments: 1.5x bigger */
@media (max-width: 768px) {
  body {
    padding: 40px 16px; /* a little extra for breathing room */
  }

  .main {
    max-width: 90%; /* keeps layout tight on small screens */
    margin: 0 auto;
  }

  h1 {
    font-size: 3rem; /* 2rem × 1.5 */
  }

  .subtitle {
    font-size: 1.5rem; /* 1rem × 1.5 */
  }

  .input {
    padding: 21px 24px; /* 14px × 1.5 */
    font-size: 1.5rem; /* 1rem × 1.5 */
  }

  .btn {
    padding: 21px 27px; /* 14px × 1.5 / 18px × 1.5 */
    font-size: 1.575rem; /* 1.05rem × 1.5 */
  }

  .list {
    font-size: 1.38rem; /* ~0.92rem × 1.5 */
    padding-left: 33px; /* 22px × 1.5 */
  }

  .status {
    font-size: 1.38rem; /* 0.92rem × 1.5 */
  }

  .donate-label {
    font-size: 1.5rem; /* 1rem × 1.5 */
  }

  .donate-addr {
    font-size: 1.5rem; /* 1rem × 1.5 */
  }
}
/* Logo container for top-left positioning */
.logo-container {
  position: absolute;
  top: 16px;
  left: 16px;
}

/* Logo image */
.logo {
  width: 150px;   /* set a fixed width for desktop */
  height: auto;
}

/* Optional: slightly smaller on small mobile screens */
@media (max-width: 480px) {
  .logo {
    width: 120px;
  }
}
