.waitlist-dialog{width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.waitlist-shell{position:relative;width:100%;aspect-ratio:915/1030;transform-origin:50% 60%}
#waitlist-mascot{position:absolute;inset:0;pointer-events:none}
#waitlist-mascot .noggin-eyes,#waitlist-mascot .noggin-brows{visibility:hidden}
.waitlist-dialog.is-front #waitlist-mascot .noggin-eyes{visibility:visible}
.waitlist-back-content{position:absolute;top:36%;left:17%;width:66%;text-align:center}
.waitlist-dialog .dialog-close{z-index:2;right:0;top:10px;background:var(--chalk);border:2px solid var(--ink)}
html .waitlist-dialog .waitlist-back-content h2{font-size:clamp(20px,4.8vw,28px);padding:0;line-height:1.12}
.waitlist-back-content>p{font-size:14px;line-height:1.4;margin-top:10px}
.waitlist-dialog .waitlist-form{margin-top:16px}
.waitlist-dialog .signup-row{gap:8px}
.waitlist-dialog .signup-row input,.waitlist-dialog .signup-row button{height:46px;min-height:46px}
html .waitlist-dialog .waitlist-form label{font-size:12px;text-align:left;margin-bottom:6px}
html .waitlist-dialog .form-note,html .waitlist-dialog .form-status{font-size:11px;text-align:center;line-height:1.3;margin-top:9px}
.waitlist-dialog.is-flying .waitlist-back-content{pointer-events:none}
.waitlist-dialog.is-flying .waitlist-shell{will-change:transform,opacity}
.waitlist-dialog::backdrop{background:rgb(25 29 24 / calc(.58 * var(--waitlist-dim,1)))}
.waitlist-dialog.is-airborne::backdrop{animation:waitlist-backdrop-out .5s linear 4.3s forwards}
@keyframes waitlist-backdrop-out{to{background:rgb(25 29 24 / 0)}}
.waitlist-dialog.is-flying .dialog-close{opacity:0;pointer-events:none}
@media(max-width:440px){.waitlist-back-content{top:35%;left:15%;width:70%}.waitlist-back-content>p{font-size:12px;margin-top:6px}.waitlist-dialog .waitlist-form{margin-top:8px}.waitlist-dialog .signup-row input,.waitlist-dialog .signup-row button{height:40px;min-height:40px}.waitlist-dialog .signup-row{gap:6px}html .waitlist-dialog .form-note,html .waitlist-dialog .form-status{font-size:10px;margin-top:6px}}
@media(max-height:600px) and (min-width:600px){.waitlist-dialog{width:440px}.waitlist-back-content>p{font-size:12px}.waitlist-dialog .waitlist-form{margin-top:8px}.waitlist-dialog .signup-row input,.waitlist-dialog .signup-row button{height:40px;min-height:40px}}
/* Keep the disclosure and security check reachable on short/mobile viewports. */
.waitlist-dialog:not(.is-flying){overflow-x:hidden;overflow-y:auto;scrollbar-width:thin}
