/* Beta signup page (android-beta.html).
   The layout mirrors flashone.ai/android-beta.html: one card, benefits box,
   the form, a success section with the Google Play step. Site tokens only. */

.beta-wrap {
  max-width: 680px;
  margin: 0 auto;
  padding: calc(var(--nav-height) + var(--space-xl)) var(--space-md) var(--space-2xl);
}
.beta-card {
  background: var(--bg-secondary);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
  padding: var(--space-lg);
}
.beta-icon {
  font-size: 3rem;
  color: #3ddc84; /* Android green, as on FlashOne's page */
  text-align: center;
  margin-bottom: var(--space-md);
}
.beta-card h1 {
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(1.6rem, 4.5vw, 2.1rem);
  line-height: 1.2;
  text-align: center;
  margin-bottom: var(--space-sm);
}
.beta-sub {
  color: var(--text-secondary);
  text-align: center;
  margin-bottom: var(--space-lg);
}
.beta-card p { color: var(--text-secondary); margin-bottom: var(--space-md); }
.beta-card strong { color: var(--text-primary); }
.beta-box {
  background: var(--bg-primary);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  padding: var(--space-md) var(--space-md) var(--space-sm);
  margin-bottom: var(--space-md);
}
.beta-box h2 {
  font-size: 1.05rem;
  color: var(--accent-primary);
  margin-bottom: var(--space-sm);
}
.beta-box ul, .beta-box ol { padding-left: 1.25rem; }
.beta-box li { color: var(--text-secondary); margin-bottom: var(--space-sm); }
.beta-form { margin-top: var(--space-lg); }
.form-group { margin-bottom: var(--space-md); }
.form-label, .form-group > label {
  display: block;
  font-weight: 600;
  margin-bottom: var(--space-sm);
  color: var(--text-primary);
}
.beta-form input[type="email"],
.beta-form input[type="text"],
.beta-form select,
.beta-form textarea {
  width: 100%;
  padding: 0.75rem;
  background: var(--bg-primary);
  color: var(--text-primary);
  border: 2px solid var(--border);
  border-radius: var(--radius-sm);
  font: inherit;
  transition: border-color var(--transition);
}
.beta-form input:focus, .beta-form select:focus, .beta-form textarea:focus {
  outline: none;
  border-color: var(--accent-primary);
}
.check {
  display: flex;
  gap: var(--space-sm);
  align-items: flex-start;
  color: var(--text-secondary);
  margin-bottom: var(--space-sm);
  cursor: pointer;
}
.check input { margin-top: 0.3rem; flex: none; width: 1.1rem; height: 1.1rem; accent-color: var(--accent-primary); }
.check.consent { font-size: 0.9rem; margin-top: var(--space-md); }
.check a { color: var(--accent-primary); }
.hint { font-size: 0.875rem; color: var(--text-secondary); text-align: center; }
.hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.beta-submit {
  width: 100%;
  padding: 1rem;
  border: none;
  border-radius: var(--radius-pill);
  background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
  color: #1a1818;
  font-size: 1.1rem;
  font-weight: 700;
  cursor: pointer;
  transition: transform var(--transition), opacity var(--transition);
}
.beta-submit:hover { transform: translateY(-2px); }
.beta-submit:disabled { opacity: 0.55; cursor: not-allowed; transform: none; }
.beta-submit.loading::after { content: ' \2026'; }
.beta-message { padding: 0.9rem; border-radius: var(--radius-sm); margin-bottom: var(--space-md); }
.beta-message.error { background: rgba(232, 112, 64, 0.12); border: 1px solid var(--accent-secondary); color: var(--text-primary); }
.returning { margin-top: var(--space-lg); padding-top: var(--space-md); border-top: 1px solid var(--border); text-align: center; }
.success h2 { color: #4ade80; text-align: center; margin-bottom: var(--space-md); }
.play-button {
  display: inline-block;
  margin: var(--space-md) 0;
  padding: 0.9rem 2rem;
  border-radius: var(--radius-pill);
  background: #3ddc84;
  color: #0f0f13;
  font-weight: 700;
  text-decoration: none;
}
.play-button i { margin-right: var(--space-sm); }
.center { text-align: center; }
[hidden] { display: none !important; }
@media (max-width: 480px) {
  .beta-card { padding: var(--space-md); }
  .beta-icon { font-size: 2.5rem; }
}
