:root{--ink:#06080b;--ink-2:#0d1219;--card:#151b23;--card-2:#0a0e14;--sunk:#e8eef609;--cream:#e9eff7;--muted:#e9eff7ad;--dim:#e9eff79e;--faint:#e9eff74d;--line:#e9eff717;--cy:#4fd8ff;--cy-lift:#b6efff;--cy-glow:#4fd8ff66;--ok:#5cf0c0;--ok-lift:#ddfff3;--ok-glow:#5cf0c052;--bad:#ff5d7a;--bad-lift:#ffa3b3;--bad-glow:#ff5d7a4d;--font-ui:"Sora", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--r-slot:14px;--r-card:28px;--ease:cubic-bezier(.22, 1, .36, 1);--spring:cubic-bezier(.18, 1.5, .36, 1);--detent:cubic-bezier(.2, 1.18, .32, 1);--drop:cubic-bezier(.55, 0, .85, .35);--slot-gap:2.6596%}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--ink);min-height:100dvh;color:var(--cream);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;justify-content:center;align-items:center;margin:0;padding:24px 20px;font-size:16px;line-height:1.5;display:flex;overflow-x:hidden}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.room{z-index:0;pointer-events:none;background:radial-gradient(70% 40% at 50% 2%, #4fd8ff24, transparent 70%), radial-gradient(96% 60% at 50% 112%, #5cf0c00d, transparent 66%), linear-gradient(180deg, var(--ink-2), var(--ink) 58%);position:fixed;inset:0}.room:after{content:"";opacity:.045;background-image:url(/textures/grain.png);background-size:220px;position:absolute;inset:0}.stage{z-index:1;flex-direction:column;align-items:center;gap:clamp(18px,4.4vh,34px);width:100%;max-width:430px;display:flex;position:relative}.masthead{text-align:center}.masthead__eyebrow{letter-spacing:.26em;text-transform:uppercase;color:var(--dim);margin:0 0 9px;font-size:11px;font-weight:600}.masthead__title{letter-spacing:-.03em;text-transform:uppercase;background:linear-gradient(112deg, var(--cream) 26%, var(--cy) 98%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(28px,8vw,42px);font-weight:800;line-height:1}.panel{border-radius:var(--r-card);background:linear-gradient(168deg, var(--card), var(--card-2));width:100%;padding:24px 22px 22px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,0 40px 80px -30px #000000e6,0 0 0 1px #ffffff0b}.panel__flood{z-index:0;pointer-events:none;opacity:0;transition:opacity .9s var(--ease);background:radial-gradient(64% 42% at 50% 56%, var(--ok-glow), transparent 74%), radial-gradient(120% 80% at 50% 50%, #5cf0c014, transparent 70%);position:absolute;inset:0}.panel[data-state=ok] .panel__flood{opacity:1}.verify{z-index:1;text-align:center;margin:0;position:relative}.verify__title,.verify__sub{display:grid;position:relative}.verify__title-in,.verify__sub-in{transition:opacity .52s var(--ease), transform .52s var(--ease);grid-area:1/1}.verify__title{letter-spacing:-.018em;color:var(--cream);margin:0 0 7px;font-size:19px;font-weight:700}.verify__sub{color:var(--muted);text-wrap:balance;margin:0 0 20px;font-size:13px;line-height:1.5}.verify__sub b{color:#e9eff7e6;font-weight:600}[data-title-ok],[data-sub-ok]{opacity:0;pointer-events:none;transform:translateY(6px)}.panel[data-state=ok] [data-title-idle],.panel[data-state=ok] [data-sub-idle]{opacity:0;transform:translateY(-6px)}.panel[data-state=ok] [data-title-ok],.panel[data-state=ok] [data-sub-ok]{opacity:1;transition-delay:.42s;transform:none}.code-wrap{isolation:isolate;position:relative}.lock-wrap{margin-bottom:16px;position:relative}.lock{filter:drop-shadow(0 14px 26px #0009);width:100%;height:auto;display:block;overflow:visible}.case__gloss{fill:none;stroke:#ffffff1f;stroke-width:1.2px;transition:stroke .6s var(--ease)}.panel[data-state=ok] .case__gloss{stroke:var(--ok-glow)}.cavity{fill:#0a0e14}.cavity__lip{fill:none;stroke:#000000bf;stroke-width:1.2px}.spindle{fill:#0000008c}.wh{transition:transform .62s var(--detent)}.wh__rim{fill:none;stroke:#ffffff29;stroke-width:1.4px;transition:stroke .3s var(--ease)}.wh__ticks{fill:none;stroke:#e9eff75c;stroke-width:1.5px;stroke-linecap:round}.wh__gate{fill:#05070a;stroke:#000000b3;stroke-width:.8px}.wh__hubring{fill:none;stroke:#00000080;stroke-width:2.4px}.wh__hub{fill:#7d8896;stroke:#00000080;stroke-width:1px;transition:fill .28s var(--ease)}.wh-spin.is-dialled .wh__hub{fill:var(--cy)}.panel[data-state=ok] .wh__hub{fill:var(--ok)}.wh__glow{opacity:0;transition:opacity .32s var(--ease)}.wh__glow.is-active{opacity:1}.wh__glow.is-hit{opacity:1;transition:opacity 60ms linear}.wh.is-set .wh__rim{stroke:var(--cy)}.wh.is-set .wh__ticks{stroke:var(--cy-lift)}.wh.is-bound .wh__rim{stroke:var(--bad);stroke-width:2.2px}.wh.is-bound .wh__ticks{stroke:var(--bad-lift)}.panel[data-state=ok] .wh__rim{stroke:var(--ok)}.panel[data-state=ok] .wh__ticks{stroke:var(--ok-lift)}.fence{transition:transform .34s var(--drop)}.fence.is-lifting{transition:transform .52s var(--spring)}.fence__bar{stroke:#00000073;stroke-width:.9px}.fence__lug{fill:#93a0b0;stroke:#00000073;stroke-width:.8px}.panel[data-state=ok] .fence__lug{fill:var(--ok-lift)}.fence.is-jammed .fence__lug{fill:var(--bad-lift);filter:drop-shadow(0 0 5px var(--bad-glow))}.slot{fill:#05070a;stroke:#000000b3;stroke-width:1px}.slot__lit{fill:var(--ok);opacity:0;transition:opacity .5s var(--ease) .18s}.panel[data-state=ok] .slot__lit{opacity:.18}.bolt{transition:transform .56s cubic-bezier(.5,0,.12,1)}.bolt__body{stroke:#00000073;stroke-width:.9px}.bolt__bevel{fill:#fff3}.bolt__ribs{stroke:#00000057;stroke-width:1.6px;stroke-linecap:round}.keeper{fill:none;stroke:#e9eff738;stroke-width:2.4px;stroke-linejoin:round;transition:stroke .5s var(--ease)}.panel[data-state=ok] .keeper{stroke:var(--ok)}.gate{z-index:2;pointer-events:none;position:absolute;inset:0}.gate__plate{background:linear-gradient(150deg, #b9ffe8, var(--ok) 60%, #2fd3a2);opacity:0;width:44px;height:44px;transition:transform .66s var(--spring), opacity .22s linear;border-radius:15px;place-items:center;margin:-22px 0 0 -22px;display:grid;position:absolute;top:90.63%;left:48.94%;transform:scale(.4);box-shadow:inset 0 0 0 1px #ffffff73,0 8px 22px -4px #5cf0c080,0 0 40px #5cf0c04d}.panel[data-state=ok] .gate__plate{opacity:1;transition-delay:.44s;transform:scale(1)}.gate__plate svg{width:28px;height:28px}.gate__check{stroke:#06342a;stroke-width:3.4px;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .42s var(--ease)}.panel[data-state=ok] .gate__check{stroke-dashoffset:0;transition-delay:.84s}.code{gap:var(--slot-gap);transition:opacity .6s var(--ease), transform .6s var(--ease);display:flex;position:relative}.panel[data-state=ok] .code{opacity:.55;transform:translateY(6px)}.slot-box{aspect-ratio:54/62;border-radius:var(--r-slot);background:var(--sunk);min-width:0;box-shadow:inset 0 0 0 1px var(--line), inset 0 1px 0 #ffffff0d;cursor:text;transition:box-shadow .28s var(--ease), background-color .28s var(--ease);flex:1 1 0;position:relative}.slot-box.is-filled{background:#4fd8ff12;box-shadow:inset 0 0 0 1px #4fd8ff66}.slot-box:focus-within{box-shadow:inset 0 0 0 1.5px var(--cy), 0 0 0 4px #4fd8ff26;background:#4fd8ff1f}.slot__input{z-index:3;border-radius:inherit;width:100%;height:100%;font-family:var(--font-mono);color:var(--cream);caret-color:var(--cy-lift);text-align:center;-webkit-tap-highlight-color:transparent;background:0 0;border:0;outline:none;padding:0;font-size:clamp(16px,4.6vw,23px);font-weight:700;position:absolute;inset:0}.lock-live .slot__input{color:#0000;caret-color:#0000}.slot__input::selection{background:0 0}.slot__input::-webkit-contacts-auto-fill-button{opacity:0}.slot__win{z-index:2;border-radius:inherit;contain:paint;position:absolute;inset:0;overflow:hidden}.slot__digit{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--cream);place-items:center;font-size:clamp(16px,4.6vw,23px);font-weight:700;line-height:1;display:grid;position:absolute;inset:0}.slot__glow{z-index:1;pointer-events:none;border-radius:calc(var(--r-slot) + 4px);background:radial-gradient(58% 58% at 50% 50%, var(--cy-glow), transparent 72%);opacity:0;position:absolute;inset:-8%}.lock-live .slot-box:focus-within:not(.is-filled) .slot__win:after{content:"";background:var(--cy-lift);border-radius:2px;width:2px;height:36%;margin-left:-1px;animation:1.1s step-end infinite blink;position:absolute;top:32%;left:50%}@keyframes blink{0%,55%{opacity:1}56%,to{opacity:0}}.panel[data-state=checking] .slot-box,.panel[data-state=checking] .slot-box.is-filled{background:#4fd8ff0d;box-shadow:inset 0 0 0 1px #4fd8ff3d}.panel[data-state=checking] .slot__digit{color:#e9eff79e}.panel[data-state=error] .slot-box,.panel[data-state=error] .slot-box.is-filled{background:#ff5d7a14;box-shadow:inset 0 0 0 1.5px #ff5d7a99}.panel[data-state=error] .slot-box:focus-within{box-shadow:inset 0 0 0 1.5px var(--bad), 0 0 0 4px #ff5d7a29}.panel[data-state=error] .slot__digit{color:var(--bad-lift)}.panel[data-state=error] .code,.panel[data-state=error] .lock{animation:.42s cubic-bezier(.36,.07,.19,.97) clang}@keyframes clang{0%,to{transform:translate(0,0)}14%{transform:translateY(-5px)}33%{transform:translateY(4px)}52%{transform:translateY(-3px)}72%{transform:translateY(2px)}88%{transform:translateY(-1px)}}.verify__err{min-height:18px;color:var(--bad-lift);opacity:0;transition:opacity .3s var(--ease), transform .3s var(--ease);margin:13px 0 0;font-size:12.5px;font-weight:500;line-height:18px;transform:translateY(-4px)}.panel[data-state=error] .verify__err{opacity:1;transform:none}.verify__actions{min-height:38px;margin-top:16px;display:grid}.verify__foot,.verify__done{transition:opacity .4s var(--ease), transform .4s var(--ease);grid-area:1/1;justify-content:center;align-items:center;gap:8px;display:flex}.verify__foot{color:var(--muted);font-size:12.5px}.verify__done{opacity:0;pointer-events:none;transform:translateY(8px)}.panel[data-state=ok] .verify__foot{opacity:0;pointer-events:none;transform:translateY(-8px)}.panel[data-state=ok] .verify__done{opacity:1;pointer-events:auto;transition-delay:1.1s;transform:none}.cta{background:linear-gradient(140deg, #b9ffe8, var(--ok));color:#05261e;font:inherit;cursor:pointer;transition:transform .24s var(--spring), filter .2s;border:0;border-radius:99px;padding:10px 30px;font-size:13.5px;font-weight:700}.cta:hover{filter:brightness(1.06)}.cta:active{transform:scale(.96)}.cta:focus-visible{outline:2px solid var(--ok);outline-offset:3px}.resend{box-shadow:inset 0 0 0 1px var(--line);color:var(--cream);font:inherit;cursor:pointer;transition:background-color .24s var(--ease), transform .24s var(--spring);background:#e9eff70f;border:0;border-radius:99px;align-items:center;gap:7px;padding:6px 12px 6px 9px;font-size:12.5px;font-weight:600;display:inline-flex}.resend:hover:not(:disabled){background:#4fd8ff2e}.resend:active:not(:disabled){transform:scale(.96)}.resend:focus-visible{outline:2px solid var(--cy-lift);outline-offset:3px}.resend:disabled{cursor:default;color:var(--dim);background:#e9eff709}.resend__ring{opacity:0;width:15px;height:15px;transition:opacity .24s;display:block}.resend:disabled .resend__ring{opacity:1}.resend__ring svg{width:100%;height:100%;display:block;transform:rotate(-90deg)}.resend__ring circle{stroke:var(--cy-lift);stroke-width:3px;stroke-dasharray:1;stroke-dashoffset:1px;stroke-linecap:round}.sms{z-index:6;text-align:left;opacity:0;transition:opacity .42s var(--ease), transform .52s var(--spring);background:linear-gradient(170deg,#253040,#161d27);border-radius:18px;align-items:center;gap:11px;padding:11px 11px 11px 13px;display:flex;position:absolute;bottom:14px;left:14px;right:14px;transform:translateY(130%);box-shadow:inset 0 0 0 1px #ffffff1a,0 18px 40px -14px #000000d9}.sms.is-in{opacity:1;transform:translate(0,0)}.sms__icon{background:linear-gradient(150deg, var(--cy-lift), #1a94bd);color:#062430;border-radius:10px;flex:none;place-items:center;width:30px;height:30px;display:grid}.sms__icon svg{width:17px;height:17px}.sms__body{flex:auto;min-width:0;line-height:1.35;display:block}.sms__from{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);font-size:10px;font-weight:700;display:block}.sms__text{color:#e9eff7d6;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;display:block;overflow:hidden}.sms__text b{font-family:var(--font-mono);letter-spacing:.02em;color:var(--cream);font-weight:700}.sms__fill{background:var(--cream);color:#121820;font:inherit;cursor:pointer;transition:transform .24s var(--spring), background-color .2s;border:0;border-radius:99px;flex:none;padding:7px 14px;font-size:12.5px;font-weight:700}.sms__fill:hover{background:#fff}.sms__fill:active{transform:scale(.94)}.sms__fill:focus-visible{outline:2px solid var(--cy-lift);outline-offset:3px}.hint{text-align:center;max-width:42ch;color:var(--dim);text-wrap:balance;margin:0;font-size:12.5px;line-height:1.55}@media (width<=400px){.verify__foot{flex-direction:column;gap:7px}.verify__actions{min-height:62px}}@media (height<=720px){.stage{gap:14px}.masthead__title{font-size:clamp(24px,7vw,32px)}.panel{padding:18px}.verify__sub{margin-bottom:15px}.lock-wrap{margin-bottom:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.verify__title-in,.verify__sub-in,.panel__flood,.verify__err,.gate__plate,.sms{transition-duration:.2s!important}.sms{transform:none}.gate__plate{transform:scale(1)}.lock-live .slot-box:focus-within:not(.is-filled) .slot__win:after{animation:none}}
