@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/ibmplexmono.woff2) format("woff2")}:root{--bg: #000000;--text: #ffffff;--muted: #8E8E93;--border: #2C2C2E;--input-bg: #1C1C1E;--placeholder: #48484A;--radius: 14px;--error: #FF453A;--success: #30D158}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}#root{min-height:100dvh}.shell{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;padding-bottom:calc(24px + env(safe-area-inset-bottom))}.card{position:relative;width:100%;max-width:380px;text-align:center}.glow{display:none}.logo{width:64px;height:64px;border-radius:16px;margin:0 auto 20px;display:block;object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none}.title{margin:0 0 8px;font-family:IBM Plex Mono,ui-monospace,SF Mono,Menlo,monospace;font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.subtitle{margin:0 0 32px;font-size:15px;line-height:1.5;color:var(--muted)}.actions{display:flex;flex-direction:column;gap:12px}.btn{width:100%;padding:16px 24px;border:none;border-radius:var(--radius);font-family:inherit;font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;text-decoration:none;transition:opacity .15s ease,transform .12s ease,background .15s ease,border-color .15s ease}.btn:active{transform:scale(.985)}.btn:disabled{opacity:.5;pointer-events:none}.btn-primary{background:#fff;color:#000}.btn-primary .icon{color:#000}.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text);font-weight:500}.btn-ghost:active{background:#ffffff0a}.btn-tg{color:var(--muted)}.btn-link{background:transparent;border:none;color:var(--placeholder);font-size:14px;font-weight:500;padding:12px;cursor:pointer}.icon{flex-shrink:0}.email-form{display:flex;flex-direction:column;gap:12px;margin-top:16px}.hidden{display:none!important}.input{width:100%;padding:16px 20px;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:inherit;font-size:16px;outline:none;transition:border-color .15s ease}.input::placeholder{color:var(--placeholder)}.input:focus{border-color:#ffffff4d}.otp{position:relative;display:flex;gap:clamp(6px,2.2vw,10px);justify-content:center;margin:2px 0 4px}.otp-cell{position:relative;width:clamp(40px,13vw,48px);height:clamp(50px,16vw,58px);border-radius:14px;background:#ffffff0a;border:1.5px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;transition:border-color .25s cubic-bezier(.16,1,.3,1),background .25s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .3s cubic-bezier(.16,1,.3,1)}.otp-cell.otp-filled{border-color:#ffffff52;background:#ffffff12}.otp-cell.otp-active{border-color:#ffffffd9;background:#ffffff1a;box-shadow:0 0 0 3px #ffffff1a,0 0 24px #ffffff1f;transform:translateY(-2px)}.otp.otp-err .otp-cell{border-color:#ff453a;background:#ff453a1a;box-shadow:none}.otp.otp-err{animation:otpShake .4s cubic-bezier(.36,.07,.19,.97) both}@keyframes otpShake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-5px)}40%,60%{transform:translate(5px)}}.otp-digit{font-family:IBM Plex Mono,ui-monospace,SF Mono,Menlo,monospace;font-size:clamp(22px,6.5vw,28px);font-weight:600;color:#fff;line-height:1;font-variant-numeric:tabular-nums}.otp-cell.otp-filled .otp-digit{animation:otpPop .42s cubic-bezier(.34,1.56,.64,1) both;animation-delay:calc(var(--i, 0) * 45ms)}@keyframes otpPop{0%{opacity:0;transform:translateY(7px) scale(.45)}60%{opacity:1;transform:translateY(0) scale(1.14)}to{transform:scale(1)}}.otp-cell.otp-active:after{content:"";position:absolute;width:2px;height:clamp(22px,7vw,28px);background:#fff;border-radius:2px;animation:otpCaret 1.1s steps(1) infinite}.otp-cell.otp-active.otp-filled:after{display:none}@keyframes otpCaret{0%,50%{opacity:1}51%,to{opacity:0}}.otp-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;border:none;background:transparent;color:transparent;caret-color:transparent;cursor:pointer;font-size:16px}.otp-status{min-height:18px;font-size:13px;line-height:1.35;text-align:center;margin:2px 0 4px;transition:color .2s ease}.otp-status.error{color:#ff6961}.otp-status.success{color:#ffffffd9}.btn-resend{color:#fff;font-weight:600}.btn-resend:disabled{color:var(--text-dim, #6E6E73);font-weight:500}.btn-back{color:#6e6e73;font-size:13px;margin-top:-4px}.btn-back:hover{color:#8e8e93}.hint{font-size:14px;line-height:1.4;color:var(--muted)}.spinner{width:32px;height:32px;margin:8px auto 0;border:2px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:xc-spin .8s linear infinite}@keyframes xc-spin{to{transform:rotate(360deg)}}.status{margin-top:16px;min-height:18px;font-size:14px;line-height:1.4}.status.error{color:var(--error)}.status.success{color:var(--success)}.notice{margin-bottom:18px;padding:14px 16px;border:1px solid rgba(255,69,58,.35);background:#ff453a14;border-radius:var(--radius);text-align:left;display:flex;flex-direction:column;gap:12px}.notice-row{display:flex;gap:10px;align-items:flex-start}.notice .icon{flex:0 0 auto;color:var(--error);margin-top:1px}.notice-title{font-size:14px;font-weight:600;color:var(--text);margin:0 0 3px}.notice-text{font-size:13px;line-height:1.45;color:var(--muted);margin:0}.foot{margin-top:28px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:var(--placeholder)}.foot a{color:var(--placeholder);text-decoration:none}.foot a:active{color:var(--muted)}.nf-code{margin:4px 0 12px;font-family:IBM Plex Mono,ui-monospace,SF Mono,Menlo,monospace;font-size:88px;font-weight:700;letter-spacing:-.04em;line-height:1;background:linear-gradient(180deg,#fff,#6b6b70);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.enter{opacity:0;transform:translateY(12px);animation:xc-enter .5s cubic-bezier(.22,1,.36,1) forwards}.enter-d1{animation-delay:.06s}.enter-d2{animation-delay:.12s}.enter-d3{animation-delay:.18s}@keyframes xc-enter{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.btn,.input{transition:none}.spinner{animation-duration:1.4s}.enter{animation:none;opacity:1;transform:none}.otp-cell,.otp-cell.otp-filled .otp-digit,.otp.otp-err{transition:none;animation:none}.otp-cell.otp-active:after{animation:none;opacity:1}}
