/* Waiting for email confirmation, using the shared success/error card layout. */
.email-confirmation-page .email-confirmation-pending { max-width:560px; }
.email-confirmation-pending .confirmation-message { max-width:420px; margin-inline:auto; }
.email-confirmation-pending .confirmation-address { display:grid; gap:4px; margin-top:20px; padding:14px 16px; border:1px solid #e6e2ef; border-radius:8px; text-align:start; }
.email-confirmation-pending .confirmation-address span { color:#656170; font-size:.8125rem; }
.email-confirmation-pending .confirmation-address strong { color:#433d61; font-size:1rem; overflow-wrap:anywhere; }
.email-confirmation-pending .confirmation-validity { display:flex; align-items:flex-start; justify-content:center; gap:9px; margin:20px 0 0; padding:12px 14px; border-radius:8px; background:#f5f2fa; color:#615b75; font-size:.875rem; line-height:1.6; text-align:start; }
.email-confirmation-pending .confirmation-validity i { flex:none; margin-top:4px; }
.email-confirmation-pending .confirmation-state { margin-top:16px; padding:12px 14px; border:1px solid; border-radius:8px; font-size:.875rem; line-height:1.6; text-align:start; }
.email-confirmation-pending .confirmation-state--info { border-color:#dce4f1; background:#f2f6fc; color:#3e587b; }
.email-confirmation-pending .confirmation-state--warning { border-color:#f0e1c8; background:#fcf6ec; color:#80541e; }
.email-confirmation-pending .confirmation-state--success { border-color:#d3ebdf; background:#edf8f2; color:#256447; }
.email-confirmation-pending .confirmation-actions { display:flex; flex-wrap:wrap; align-items:stretch; }
.email-confirmation-pending .confirmation-actions > a { flex:1 0 auto; width:auto; }
.email-confirmation-pending .confirmation-actions form { display:flex; flex:1.35 0 auto; min-width:0; max-width:100%; margin:0; }
.email-confirmation-pending .confirmation-actions .btn { width:100%; height:100%; white-space:nowrap; }
.email-confirmation-pending .confirmation-actions > a.btn { width:auto; }
.email-confirmation-pending .confirmation-help { margin:20px 0 0; color:#656170; font-size:.8125rem; line-height:1.7; }
.email-confirmation-pending .confirmation-help a { display:inline-block; color:#675996; text-decoration:underline; text-underline-offset:3px; }
.email-confirmation-pending .confirmation-help a:focus-visible { outline:2px solid #675996; outline-offset:3px; }
@media (max-width:575.98px) {
  .email-confirmation-pending .confirmation-address { margin-top:16px; padding:12px; }
  .email-confirmation-pending .confirmation-validity { margin-top:16px; padding:12px; }
  .email-confirmation-pending .confirmation-actions > a.btn,
  .email-confirmation-pending .confirmation-actions form { flex:1 1 100%; width:100%; }
  .email-confirmation-pending .confirmation-actions .btn { padding:10px 12px; gap:8px; font-size:.9375rem; }
}
@media (max-width:359.98px) {
  .email-confirmation-pending .confirmation-actions .btn { font-size:.8125rem; }
}

/* Keep the resend action locked while its native POST is in flight. */
[data-email-resend] .email-resend-loading-label { display:none; }
[data-email-resend] [aria-busy="true"] .email-resend-label { display:none; }
[data-email-resend] [aria-busy="true"] .email-resend-loading-label { display:inline; }
[data-email-resend] .btn:disabled { opacity:.75; cursor:wait; }
[data-email-resend] [aria-busy="true"] .email-resend-icon { animation:email-resend-spin 1s linear infinite; }
@keyframes email-resend-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) {
  [data-email-resend] [aria-busy="true"] .email-resend-icon { animation:none; }
}
