.modal-open{overflow:hidden;touch-action:none}.auth-modal[hidden]{display:none}.auth-modal{position:fixed;inset:0;z-index:1000;display:grid;align-items:center;justify-items:center;padding:max(16px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-sizing:border-box}.auth-modal__backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 18%,rgba(100,210,255,0.20),transparent 32rem),rgba(2,4,8,0.78);backdrop-filter:blur(10px)}.auth-modal__dialog{position:relative;z-index:1;width:min(100%,470px);max-width:470px;margin:auto;padding:28px 24px 22px;max-height:min(100dvh - 32px,720px);overflow-y:auto;box-sizing:border-box;border-radius:26px;border:1px solid var(--line-strong);background:linear-gradient(180deg,rgba(255,255,255,0.085),rgba(255,255,255,0.035)),#101620;color:var(--text);box-shadow:0 28px 100px rgba(0,0,0,0.62),0 0 52px rgba(100,210,255,0.14)}.auth-modal__dialog::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 18% -8%,rgba(100,210,255,0.18),transparent 17rem),radial-gradient(circle at 100% 0%,rgba(155,255,205,0.10),transparent 15rem)}.auth-step,.auth-modal__close,.auth-modal__message{position:relative;z-index:1}.auth-modal__close{position:absolute;top:12px;right:12px;width:38px;height:38px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,0.055);color:var(--muted);font-size:25px;line-height:1;cursor:pointer;transition:color .16s ease,background .16s ease,border-color .16s ease}.auth-modal__close:hover{color:var(--text);border-color:rgba(100,210,255,0.36);background:rgba(255,255,255,0.085)}.auth-modal__eyebrow{margin:2px 48px 10px 0;color:var(--accent);font-size:12px;font-weight:900;letter-spacing:0.12em;text-transform:uppercase}.auth-modal__title{margin:0 48px 10px 0;font-size:30px;line-height:1.05;letter-spacing:-0.04em}.auth-modal__text{margin:0 0 18px;color:var(--muted);font-size:14px;line-height:1.55}.auth-modal__text strong{color:var(--text);font-weight:850;overflow-wrap:anywhere}.auth-modal__form{display:grid;gap:11px}.auth-modal__label{font-size:13px;color:var(--text);font-weight:760}.auth-modal__input{display:block;width:100%;max-width:100%;min-height:54px;padding:14px 16px;box-sizing:border-box;border-radius:16px;border:1px solid var(--line-strong);outline:none;background:rgba(255,255,255,0.055);color:var(--text);font:inherit;font-size:16px;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.auth-modal__input::placeholder{color:var(--muted-2)}.auth-modal__input:focus{border-color:rgba(100,210,255,0.62);background:rgba(255,255,255,0.075);box-shadow:0 0 0 4px rgba(100,210,255,0.12)}.auth-modal__input--code{text-align:center;letter-spacing:0.22em;font-size:24px;font-weight:850;font-variant-numeric:tabular-nums}.auth-modal__free-note{display:flex;gap:10px;align-items:flex-start;padding:12px 13px;border-radius:16px;border:1px solid rgba(119,240,168,0.22);background:rgba(119,240,168,0.085);color:#cfffde;font-size:13px;line-height:1.45}.auth-modal__free-note[hidden]{display:none}.auth-modal__free-note__icon{display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;border-radius:999px;background:rgba(119,240,168,0.18);color:var(--success);font-weight:900}.auth-modal__submit,.auth-modal__ghost{position:relative;display:inline-flex;align-items:center;width:100%;min-height:46px;gap:10px;text-align:center;justify-content:center}.auth-modal__ghost{border-radius:16px;padding:13px 15px}.auth-modal__button-spinner{width:16px;height:16px;flex:0 0 16px;border-radius:50%;border:2px solid rgba(255,255,255,0.26);border-top-color:rgba(255,255,255,0.96);animation:auth-modal-spin 0.75s linear infinite;display:none}.auth-modal__button-text{min-width:0;overflow-wrap:anywhere}.auth-modal__submit.is-pending,.auth-modal__ghost.is-pending{background:rgba(255,255,255,0.11);border-color:rgba(255,255,255,0.20);box-shadow:none;color:rgba(255,255,255,0.94)}.auth-modal__submit.is-pending .auth-modal__button-spinner,.auth-modal__ghost.is-pending .auth-modal__button-spinner{display:inline-block}.auth-modal__submit.is-success,.auth-modal__ghost.is-success{background:rgba(119,240,168,0.16);border-color:rgba(119,240,168,0.34);box-shadow:none;color:#d8ffdc}.auth-modal__submit.is-error,.auth-modal__ghost.is-error{background:rgba(255,115,115,0.14);border-color:rgba(255,115,115,0.36);box-shadow:none;color:#ffd4d4}.auth-modal__submit:disabled,.auth-modal__ghost:disabled{cursor:not-allowed;transform:none}@keyframes auth-modal-spin{to{transform:rotate(360deg)}}.auth-modal__row{margin-top:10px;display:grid;gap:10px}.auth-modal__row--split{grid-template-columns:1fr}.auth-modal__text-button{border:0;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:14px;font-weight:760;padding:7px 4px 2px;text-align:center}.auth-modal__text-button:hover{color:var(--accent)}.auth-modal__message{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.auth-modal__message[data-type="success"]{color:var(--success)}.auth-modal__message[data-type="error"]{color:var(--danger)}@media (max-width:480px){.auth-modal{align-items:end;padding-bottom:max(12px,env(safe-area-inset-bottom))}.auth-modal__dialog{width:100%;border-radius:22px;max-height:min(100dvh - 12px,100dvh - env(safe-area-inset-top) - 12px);padding:22px 16px 16px}.auth-modal__title{font-size:25px}.auth-modal__input--code{font-size:22px;letter-spacing:0.16em}}
