/* Shared dark-theme overrides for public-facing form pages built on the
   .interest-form pattern (getstarted.html, signup.html). Page-specific
   additions (e.g. signup.html's .tier-toggle) stay inline in each page. */
body { background: #060a07; color: #fff; }
nav { background: rgba(6,10,7,0.92); border-bottom-color: rgba(255,255,255,0.07); }
nav .nav-links a { color: rgba(255,255,255,0.65); }
nav .nav-links a:hover { color: #fff; }
nav .nav-logo { color: #fff; }
nav .btn-ghost { color: rgba(255,255,255,0.6); }
nav .btn-ghost:hover { background: rgba(255,255,255,0.08); color: #fff; }
.interest-form { background: #060a07; }
.interest-form label { color: rgba(255,255,255,0.7); }
.interest-form input,
.interest-form select {
  background: #0e1c14;
  border-color: rgba(255,255,255,0.1);
  color: #fff;
}
.interest-form input::placeholder { color: rgba(255,255,255,0.3); }
.interest-form select option { background: #0e1c14; color: #fff; }
.form-success { background: #0e1c14; border-color: rgba(82,210,130,0.3); color: #52c97a; }
footer { border-top-color: rgba(255,255,255,0.07); color: rgba(255,255,255,0.28); }
footer a { color: rgba(255,255,255,0.38); }
footer a:hover { color: #fff; }

.form-group {
  opacity: 0;
  transform: translateY(16px);
  animation: formFieldIn 0.5s ease calc(0.2s + var(--i,0) * 0.08s) forwards;
}
@keyframes formFieldIn { to { opacity: 1; transform: translateY(0); } }

.interest-form input:focus,
.interest-form select:focus {
  outline: none;
  border-color: #2d6a4f;
  box-shadow: 0 0 0 3px rgba(45,106,79,0.15);
  transition: box-shadow 0.2s, border-color 0.2s;
}
