/* Required-field feedback, scoped to the membership application. */
.application-page .application-required-hint { margin: 0; color: #b7c2ba; font-size: .875rem; }
.application-page #referralApplicationForm input[aria-invalid="true"],
.application-page #referralApplicationForm select[aria-invalid="true"] {
  border-color: #ff8585; outline: 1px solid #ff8585;
  background-color: #251516; box-shadow: 0 0 0 3px rgba(255,110,110,.1);
}
.application-page .application-photo-grid label:has(input[aria-invalid="true"]),
.application-page .application-agreement:has(input[aria-invalid="true"]),
.application-page #applicationSecurityCheck[aria-invalid="true"] {
  outline: 1px solid #ff8585; outline-offset: 5px; border-radius: 8px;
}
.application-page .error { color: #ff9292; }
.application-page .error:empty, .application-page #referrerHint:empty { display: none; }
.application-page .application-agreement .error { display: block; margin-top: 4px; }
.application-page .application-agreement .error:empty { display: none; }
.application-page .application-photo-grid { grid-template-columns: minmax(0,1fr); row-gap: 32px; margin: 20px 0; }
.application-page .application-photo-grid > label { padding: 8px 0; margin: 0; }

.application-page .application-phone-field { min-width:0; }
.application-page .application-phone-field > label { margin:0 0 8px; }
.application-page .application-phone-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.35fr); gap:10px; }
.application-page .application-phone-row input,.application-page .application-phone-row select { box-sizing:border-box; width:100%; min-width:0; margin:0; }
.application-page .application-phone-row select { border:1px solid #3a3a3a; border-radius:10px; padding:12px 8px; background:#121212; color:#f5f5f5; font:inherit; font-size:16px; }
.application-page .application-phone-field .error { display:block; }
.application-page .application-phone-field .error:empty { display:none; }

/* The Telegram link's email step (application.js). */
.telegram-email-form { display:grid; gap:12px; margin-top:12px; }
.telegram-email-form label { display:grid; gap:6px; }
.telegram-email-form .error:empty { display:none; }
