/* Free-trial signup and verification pages. */
.trial-card { max-width: 640px; margin: 0 auto; }
.trial-field { margin-bottom: 1.4rem; }
.trial-field > label, .trial-legend { display: block; font-weight: 600; margin-bottom: .45rem; }
.trial-slug { display: flex; align-items: stretch; }
.trial-slug .form-control { border-top-right-radius: 0; border-bottom-right-radius: 0; min-width: 0; }
.trial-slug-suffix { display: flex; align-items: center; padding: 0 .9rem; border: 1px solid #ced4da; border-left: 0;
  border-radius: 0 .25rem .25rem 0; background: #f6f6f6; color: #555; white-space: nowrap; font-size: .95rem; }
.trial-hint { display: block; min-height: 1.3em; margin-top: .35rem; font-size: .9rem; color: #666; }
.trial-good { color: #1d7a3a; }
.trial-bad, .trial-alert { color: #b3261e; }
.trial-alert { margin-top: .9rem; min-height: 1.3em; }
.trial-choices { display: flex; flex-wrap: wrap; gap: .6rem; border: 0; padding: 0; margin: 0; }
.trial-choice { display: inline-flex; align-items: center; gap: .5rem; padding: .6rem 1rem; border: 1px solid #ced4da;
  border-radius: .4rem; cursor: pointer; margin: 0; font-weight: 400; }
.trial-choice:has(input:checked) { border-color: currentColor; box-shadow: 0 0 0 1px currentColor inset; }
.trial-captcha { margin: 1.2rem 0; min-height: 78px; }
.trial-panel { text-align: center; padding: 2rem 0; }
.trial-panel h2 { margin-bottom: 1rem; }
.trial-panel p { max-width: 520px; margin: 0 auto 1rem; }
.trial-actions { display: flex; flex-wrap: wrap; gap: .8rem; justify-content: center; margin-top: 1.4rem; }
.trial-spinner { width: 42px; height: 42px; margin: 0 auto 1.2rem; border: 4px solid #e6e6e6; border-top-color: currentColor;
  border-radius: 50%; animation: trial-spin .9s linear infinite; }
@keyframes trial-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .trial-spinner { animation: none; } }
@media (max-width: 575px) { .trial-slug-suffix { font-size: .8rem; padding: 0 .5rem; } }
[hidden] { display: none !important; }
