/* Registration modal assets are mirrored in the self-contained WordPress child theme. */
body.sa-registration-open { overflow: hidden; }
.sa-registration-modal { width: min(480px, calc(100% - 32px)); max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; padding: 32px; overflow: auto; border: 1px solid #c8dbea; border-radius: 22px; background: #fff; color: #33465f; box-shadow: 0 24px 80px rgba(11, 21, 51, .22); font: 500 16px/1.65 Nunito, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; text-align: left; }
.sa-registration-modal:not([open]) { display: none; }
.sa-registration-modal::backdrop { background: rgba(11, 21, 51, .5); backdrop-filter: blur(3px); }
.sa-registration-modal .sa-registration-symbol { display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; margin-bottom: 20px; border: 1px solid #cce4f5; border-radius: 14px; background: #eaf5fd; color: #195f8f; }
.sa-registration-symbol svg { width: 25px; height: 25px; }
.sa-registration-modal h2 { margin: 0 28px 14px 0; color: #0b1533; font-size: 24px; font-weight: 800; line-height: 1.25; letter-spacing: -.025em; }
.sa-registration-modal p { margin: 0; color: #33465f; font-size: 16px; font-weight: 500; line-height: 1.65; }
.sa-registration-modal .sa-registration-close { position: absolute; top: 14px; right: 14px; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 9px; border: 0; border-radius: 10px; background: #f0f6fb; color: #33465f; cursor: pointer; }
.sa-registration-close svg { width: 22px; height: 22px; }
.sa-registration-modal .sa-registration-close:hover { background: #e2f0fa; color: #195f8f; }
.sa-registration-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; margin-top: 26px; padding-top: 22px; border-top: 1px solid #dce7f0; }
.sa-registration-modal .sa-registration-action { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 11px 18px; border: 1px solid #b7cddd; border-radius: 10px; background: #fff; color: #195f8f; font: 800 16px/1.4 Nunito, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; text-align: center; text-decoration: none; cursor: pointer; }
.sa-registration-modal .sa-registration-action--continue { border-color: #2479b3; background: #2479b3; color: #fff; }
.sa-registration-action svg { width: 16px; height: 16px; flex: 0 0 16px; }
.sa-registration-modal .sa-registration-action:hover { background: #edf6fd; border-color: #2479b3; text-decoration: none; }
.sa-registration-modal .sa-registration-action--continue:hover { border-color: #195f8f; background: #195f8f; color: #fff; }
.sa-registration-modal :focus-visible { outline: 3px solid #195f8f; outline-offset: 4px; }
@media (max-width: 420px) {
  .sa-registration-modal { padding: 26px 24px; }
  .sa-registration-modal h2 { font-size: 22px; }
  .sa-registration-actions { gap: 10px; }
  .sa-registration-modal .sa-registration-action { flex: 1 1 auto; }
}
@media print {
  .sa-registration-modal { display: none !important; }
  body.sa-registration-open { overflow: visible; }
}
