.register-modal { position: fixed; inset: 0; margin: auto; padding: 0; width: min(34rem, calc(100vw - 24px)); height: 440px; max-height: 80dvh; border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 2rem; background: #000; color: white; box-shadow: 0 34px 96px rgba(0, 0, 0, 0.85), 0 1px rgba(255, 255, 255, 0.18), inset 0 1px rgba(255, 255, 255, 0.08); overflow: hidden; }
@media (max-width: 639px) { .register-modal { border-radius: 1.55rem; } }
.register-modal::backdrop { background: rgba(0, 0, 0, 0.72); -webkit-backdrop-filter: blur(14px) grayscale(1); backdrop-filter: blur(14px) grayscale(1); opacity: 0; transition: opacity 180ms ease; }
.register-modal.is-open::backdrop { opacity: 1; }
.register-modal iframe { display: block; width: 100%; height: 100%; border: 0; }
.register-modal[open] { opacity: 0; transform: translateY(1.5rem) scale(0.98); transition: height 220ms ease-in-out, opacity 180ms ease, transform 180ms ease; }
.register-modal[open].is-open { opacity: 1; transform: translateY(0) scale(1); }
@media (prefers-reduced-motion: reduce) { .register-modal[open], .register-modal::backdrop { transition: none; } .register-modal[open] { transform: none; } }
.register-modal__close { position: absolute; z-index: 1; top: 8px; right: 14px; background: transparent; border: 0; color: #ddd; font-size: 28px; cursor: pointer; }
body:has(.register-modal[open]) { overflow: hidden; }
