/* Waitlista: dokłada do styles.css z meeties.pl formularz zapisu. Sekcje używają klas strony inwestorskiej. */
.visually-hidden { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.trap { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }

.signup { display: flex; flex-direction: column; gap: 14px; max-width: 580px; }
.signup-row { display: flex; gap: 12px; }
.signup input[type="email"] { flex: 1; min-width: 0; min-height: 56px; padding: 14px 18px; border: 1px solid #d5d2c8; border-radius: 12px; background: white; color: var(--ink); font-size: var(--text-ui); transition: border-color .15s; }
.signup input[type="email"]::placeholder { color: #8a8780; }
.signup input[type="email"]:hover { border-color: #b5b0a6; }
.signup input[type="email"]:focus-visible { border-color: var(--brand); outline: 3px solid #8c80ff; outline-offset: 2px; }
.signup input[aria-invalid="true"] { border-color: #b3261e; }
.signup .button { flex-shrink: 0; border: 0; }
.signup .button[disabled] { opacity: .6; cursor: progress; }
.consent { display: flex; align-items: flex-start; gap: 12px; font-size: var(--text-caption); line-height: 1.6; color: var(--muted); cursor: pointer; }
.consent input { flex-shrink: 0; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--brand); }
.consent a { text-decoration: underline; }
.signup-status { margin: 0; font-size: var(--text-ui); font-weight: 500; line-height: 1.5; }
.signup-status:empty { display: none; }
.signup-status.is-error { color: #b3261e; }
.signup-status.is-ok { color: #1f7a45; }
.signup.is-done .signup-row, .signup.is-done .consent { display: none; }
.hero .signup { margin-block-end: 8px; }

.idea-extra { margin-block: 8px 0; padding-block-start: 24px; border-top: 1px solid #d5d2c8; font-size: var(--text-ui); color: var(--muted); max-width: 52ch; }
.idea-extra strong { color: var(--ink); font-weight: 500; }
.safety-streams { margin-block-end: 0; }
.faq-section.section { padding-block-start: var(--section-space); }

.signup-light .consent { color: #e4e0ff; }
.signup-light input[type="email"] { border-color: transparent; }
.signup-light .signup-status.is-ok { color: white; }
.signup-light .signup-status.is-error { color: #ffd9d6; }
.contact { margin-block-end: 20px; }

@media (max-width: 520px) {
  .signup-row { flex-direction: column; }
  .signup .button { width: 100%; }
}
