:root {
  color-scheme: dark;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #000;
  color: #f5f7fa;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

* { box-sizing: border-box; }

html, body { margin: 0; min-width: 280px; }

#app {
  display: flex;
  min-height: 100vh;
  min-height: 100svh;
}

.logo {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 0 38px;
  user-select: none;
}

.signup { position: relative; width: 100%; max-width: 440px; }
.signup-row { display: flex; gap: 10px; width: 100%; }

.signup-email, .signup-button {
  min-height: 50px;
  border-radius: 8px;
  font: inherit;
  font-size: 15px;
  line-height: 22px;
}

.signup-email {
  flex: 1;
  min-width: 0;
  padding: 13px 16px;
  border: 1px solid #303136;
  background: #101114;
  color: #f5f7fa;
  caret-color: #5a8dff;
  transition: border-color 150ms ease;
}

.signup-email::placeholder { color: #9196a0; opacity: 1; }
.signup-email:hover:not(:disabled) { border-color: #555963; }

.signup-button {
  flex: 0 0 108px;
  padding: 13px 16px;
  border: 1px solid transparent;
  background: #0750ff;
  color: #fff;
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
  transition: background 150ms ease, opacity 150ms ease;
}

.signup-button:hover:not(:disabled) { background: #2868ff; }
.signup-button:active:not(:disabled) { background: #0045e6; }
.signup-button:disabled { cursor: default; opacity: .65; }
.signup-email:disabled { opacity: .65; }

.signup-email:focus-visible, .signup-button:focus-visible {
  outline: 2px solid #85aaff;
  outline-offset: 3px;
}

.signup-feedback {
  min-height: 44px;
  margin-top: 15px;
  text-align: center;
}

.signup-noscript { color: #a8adb7; font-size: 14px; text-align: center; }

.signup-privacy {
  margin: 16px 0 0;
  color: #9196a0;
  font-size: 12px;
  line-height: 19px;
  text-align: center;
}

.copyright {
  margin-top: 12px;
  color: #9196a0;
  font-size: 12px;
  line-height: 19px;
  text-align: center;
}

.signup-honeypot, .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.copyright a, .privacy-page a { color: inherit; text-underline-offset: 3px; }
.privacy-page { max-width: 680px; margin: 0 auto; padding: 48px 24px; line-height: 1.65; }
.privacy-page h1 { font-size: 28px; }
.privacy-page h2 { margin-top: 28px; font-size: 18px; }
.privacy-page p { color: #b9bdc6; }

@media (max-width: 400px) {
  .logo { margin-bottom: 28px; }
  .signup-row { flex-direction: column; }
  .signup-button { flex-basis: auto; }
  .signup-email { font-size: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .signup-email, .signup-button { transition: none; }
}
