:root{--sky-1:#cfe8fb;--sky-2:#e9f4fd;--horizon:#fdf3e1;--card:#fcf8f1;--card-2:#f4ece0;--ink:#2a3440;--ink-2:#5a6673;--muted:#98a2ae;--line:#2a34401f;--line-2:#2a344033;--seal:#c0473b;--seal-deep:#a3392f;--post:#3a6ea5;--ok:#2f9e6f;--bad:#d24b3e;--paper:#f3e7c8;--paper-2:#e6d4a6;--ink-pen:#5b4a2e;--spring:linear(0, .009, .035 2.1%, .141, .281 6.7%, .723 12.9%, .938 16.7%, 1.017, 1.077, 1.121, 1.149 24.3%, 1.159, 1.163, 1.161, 1.154 29.9%, 1.129 32.8%, 1.051 39.6%, 1.017 43.1%, .991, .977 51%, .974 53.8%, .975 57.1%, .997 69.8%, 1.003 76.9%, 1.004 83.8%, 1);--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}body{min-height:100dvh;color:var(--ink);background:radial-gradient(120% 80% at 50% 120%, var(--horizon) 0%, transparent 55%), linear-gradient(180deg, var(--sky-1) 0%, var(--sky-2) 100%);-webkit-font-smoothing:antialiased;place-items:center;padding:clamp(20px,5vw,56px);font-family:Inter,system-ui,sans-serif;display:grid;overflow:hidden}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sky{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.cloud{opacity:.55;filter:blur(.5px);will-change:transform;background:#fff;border-radius:100px;position:absolute}.cloud:before,.cloud:after{content:"";background:#fff;border-radius:50%;position:absolute}.cloud--1{width:150px;height:42px;animation:46s linear infinite drift;top:16%;left:-20%}.cloud--2{opacity:.4;width:110px;height:32px;animation:62s linear 8s infinite drift;top:34%;left:-30%}.cloud--3{opacity:.35;width:190px;height:50px;animation:78s linear 20s infinite drift;top:68%;left:-25%}.cloud--1:before{width:60px;height:60px;top:-26px;left:26px}.cloud--1:after{width:42px;height:42px;top:-16px;left:84px}.cloud--2:before{width:44px;height:44px;top:-20px;left:22px}.cloud--2:after{width:34px;height:34px;top:-12px;left:64px}.cloud--3:before{width:74px;height:74px;top:-34px;left:34px}.cloud--3:after{width:52px;height:52px;top:-22px;left:108px}@keyframes drift{to{transform:translate(160vw)}}.page{z-index:1;width:100%;max-width:440px;position:relative}.intro{text-align:center;margin-bottom:22px}.intro__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:#0000;background:linear-gradient(90deg, var(--seal), var(--post));-webkit-background-clip:text;background-clip:text;font-size:.7rem;font-weight:600}.intro__title{letter-spacing:-.03em;color:#1f2833;margin-top:.4rem;font-size:clamp(2rem,1.4rem + 2.6vw,2.6rem);font-weight:700}.intro__lede{max-width:42ch;color:var(--ink-2);margin:.55rem auto 0;font-size:.93rem;line-height:1.62}.intro__lede b{color:var(--ink);font-weight:600}.auth{background:linear-gradient(180deg, var(--card), var(--card-2));box-shadow:0 0 0 1px #ffffffb3 inset, 0 0 0 1px var(--line), 0 30px 60px -28px #283c5a80, 0 6px 16px -10px #283c5a66;transition:transform .6s var(--ease), box-shadow .6s var(--ease);border-radius:24px;padding:clamp(22px,5vw,30px);position:relative}.auth.is-verified{transform:translateY(-4px);box-shadow:inset 0 0 0 1px #ffffffb3,0 0 0 1.5px #2f9e6f80,0 34px 64px -26px #2f9e6f73}.auth__brand{letter-spacing:.04em;color:var(--post);align-items:center;gap:6px;font-size:.72rem;font-weight:600;display:inline-flex}.auth__title{letter-spacing:-.02em;margin-top:10px;font-size:1.28rem;font-weight:700}.auth__lede{color:var(--ink-2);margin-top:5px;font-size:.9rem;line-height:1.5}.auth__lede b{color:var(--ink);white-space:nowrap;font-weight:600}.otp{margin-top:22px}.otp__boxes{grid-template-columns:repeat(6,1fr);gap:clamp(6px,2.4vw,11px);display:grid}.otp__box{appearance:none;aspect-ratio:3/4;width:100%;box-shadow:0 0 0 1.4px var(--line), 0 2px 5px -3px #283c5a66;font-variant-numeric:tabular-nums;text-align:center;color:var(--ink);caret-color:var(--seal);transition:box-shadow .18s var(--ease), transform .18s var(--ease), background .18s;will-change:transform;background:#fff;border:0;border-radius:13px;outline:none;font-family:inherit;font-size:clamp(1.3rem,5.5vw,1.7rem);font-weight:600}.otp__box::placeholder{color:var(--muted);opacity:.5}.otp__box:hover{box-shadow:0 0 0 1.4px var(--line-2), 0 2px 5px -3px #283c5a66}.otp__box:focus{box-shadow:0 0 0 2px var(--post), 0 0 0 5px #3a6ea529;transform:translateY(-1px)}.otp__box.is-filled{box-shadow:0 0 0 1.6px var(--line-2), 0 3px 8px -4px #283c5a73}.otp__boxes.is-error .otp__box{box-shadow:0 0 0 1.7px var(--bad), 0 0 0 4px #d24b3e24;color:var(--bad)}.otp__boxes.is-error{animation:shake .5s var(--ease)}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}.otp__boxes.is-ok .otp__box{box-shadow:0 0 0 1.7px var(--ok), 0 3px 10px -5px #2f9e6f80;color:var(--ok)}.otp__msg{min-height:1.15rem;color:var(--ink-2);margin-top:12px;font-size:.84rem;font-weight:500;line-height:1.3;transition:color .2s}.otp__msg.is-error{color:var(--bad)}.otp__msg.is-ok{color:var(--ok)}.otp__msg b{font-weight:600}.otp__actions{align-items:center;gap:10px;margin-top:16px;display:flex}.btn{cursor:pointer;transition:transform .16s var(--ease), box-shadow .18s var(--ease), background .18s, color .18s, opacity .18s;will-change:transform;border:0;border-radius:12px;padding:12px 16px;font-family:inherit;font-size:.9rem;font-weight:600}.btn:active{transform:translateY(1px)scale(.99)}.btn:disabled{cursor:not-allowed}.btn--ghost{color:var(--ink-2);box-shadow:0 0 0 1.4px var(--line-2) inset;background:0 0}.btn--ghost:hover:not(:disabled){color:var(--ink);box-shadow:0 0 0 1.4px var(--ink-2) inset}.btn--ghost:disabled{color:var(--muted);box-shadow:0 0 0 1.4px var(--line) inset;opacity:.8}.btn--solid{background:linear-gradient(180deg, var(--seal), var(--seal-deep));color:#fff;margin-left:auto;box-shadow:0 6px 16px -8px #c0473bcc,inset 0 1px #ffffff4d}.btn--solid:hover:not(:disabled){box-shadow:0 10px 22px -9px #c0473be6,inset 0 1px #ffffff4d}.btn--solid:disabled{color:#fbf6ee;box-shadow:none;background:#d9cfc2}.btn--solid.is-ok{background:linear-gradient(#35b07d,#2f9e6f);box-shadow:0 8px 20px -9px #2f9e6fcc}.note{max-width:42ch;color:var(--ink-2);text-align:center;margin:18px auto 0;font-size:.8rem;line-height:1.6}.note code{color:var(--ink);background:#2a344014;border-radius:6px;padding:.1em .4em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78em}.flight{z-index:40;pointer-events:none;position:fixed;inset:0;overflow:hidden}.pigeon{opacity:0;will-change:transform;width:168px;height:136px;position:absolute;top:0;left:0;transform:translate(-40vw,-40vh)}.pigeon.is-flying{opacity:1}.pigeon__svg{display:block;overflow:visible}.pg__near,.pg__far{transform-box:view-box;will-change:transform, opacity;transition:opacity .22s}.pg__near{transform-origin:158px 96px}.pg__far{transform-origin:150px 98px}.pg__folded{opacity:0;transition:opacity .22s}.pigeon.is-perched .pg__near,.pigeon.is-perched .pg__far{opacity:0}.pigeon.is-perched .pg__folded{opacity:1}.scrollnote{opacity:0;will-change:transform, opacity;position:absolute;top:0;left:0;transform:translate(-9999px)}.scrollnote__paper{background:repeating-linear-gradient(90deg, #785f2d0d 0 2px, transparent 2px 26px), linear-gradient(180deg, var(--paper), var(--paper-2));transform-origin:50%;will-change:transform;border-radius:6px;padding:12px 30px;display:block;position:relative;transform:scaleX(.04);box-shadow:0 10px 22px -10px #3c2d0f8c,inset 0 0 0 1px #96783c59}.scrollnote__paper:before,.scrollnote__paper:after{content:"";background:linear-gradient(#e7d3a2,#c8ad74);border-radius:8px;width:14px;position:absolute;top:-3px;bottom:-3px;box-shadow:0 2px 6px -2px #3c2d0f99,inset 0 0 0 1px #96783c66}.scrollnote__paper:before{left:-7px}.scrollnote__paper:after{right:-7px}.scrollnote__code{letter-spacing:.42em;color:var(--ink-pen);font-variant-numeric:tabular-nums;opacity:0;padding-left:.42em;font-family:Gloock,Georgia,serif;font-size:1.5rem;transition:opacity .2s}.scrollnote.is-open .scrollnote__code{opacity:1}.drop{width:34px;height:46px;color:var(--ink-pen);font-variant-numeric:tabular-nums;will-change:transform, opacity;place-items:center;font-family:Gloock,Georgia,serif;font-size:1.5rem;display:grid;position:absolute;top:0;left:0}@media (prefers-reduced-motion:reduce){.cloud{animation:none}.auth{transition:none}.otp__box{transition:box-shadow .12s}.otp__boxes.is-error{animation:none}.flight{display:none}}@media (width<=420px){.otp__box{border-radius:11px}.btn{padding:11px 13px;font-size:.86rem}}
