.lf-page{position:relative;isolation:isolate;min-height:100dvh;background-color:var(--lf-bg);color:var(--lf-text);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;-webkit-tap-highlight-color:transparent}.lf-page:before{z-index:-2;background:radial-gradient(520px 380px at 85% -8%,var(--lf-brand-glow),transparent 68%),radial-gradient(460px 420px at -12% 104%,var(--lf-brand-glow),transparent 66%);opacity:.55}.lf-page:after,.lf-page:before{content:"";position:absolute;inset:0;pointer-events:none}.lf-page:after{z-index:-1;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}.lf-card{position:relative;width:100%;max-width:28rem;background-color:var(--lf-card);border-radius:24px;border:1px solid var(--lf-border);box-shadow:0 1px 2px var(--lf-shadow),0 24px 48px -16px var(--lf-shadow);overflow:hidden}.lf-display{font-family:var(--font-lf-display),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.015em}.lf-progress-track{position:absolute;top:0;left:0;right:0;height:4px;background:var(--lf-brand-soft)}.lf-progress-fill{height:100%;border-radius:0 99px 99px 0;transition:width .45s cubic-bezier(.22,1,.36,1)}.lf-btn,.lf-progress-fill{background:var(--lf-brand)}.lf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:56px;padding:14px 24px;border-radius:16px;color:var(--lf-on-brand);font-family:var(--font-lf-display),ui-sans-serif,system-ui,sans-serif;font-size:17px;font-weight:600;letter-spacing:-.01em;box-shadow:0 10px 24px -8px var(--lf-brand-glow);transition:transform .12s ease,box-shadow .2s ease,filter .2s ease;touch-action:manipulation}.lf-btn:hover{filter:brightness(1.06)}.lf-btn:active{transform:scale(.975)}.lf-btn:disabled{opacity:.7;pointer-events:none}.lf-back:focus-visible,.lf-btn:focus-visible,.lf-choice:focus-visible,.lf-ghost-btn:focus-visible{outline:2px solid var(--lf-brand);outline-offset:2px}.lf-ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 20px;border-radius:14px;border:1.5px solid var(--lf-border);color:var(--lf-text);font-weight:600;font-size:15px;transition:background .15s ease,transform .12s ease}.lf-ghost-btn:hover{background:var(--lf-input-bg)}.lf-ghost-btn:active{transform:scale(.975)}.lf-back{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;color:var(--lf-text-muted);transition:background .15s ease,color .15s ease,transform .12s ease}.lf-back:hover{background:var(--lf-input-bg);color:var(--lf-text)}.lf-back:active{transform:scale(.92)}.lf-input{width:100%;font-size:18px;line-height:1.4;padding:16px 18px;border-radius:14px;border:1.5px solid var(--lf-border);background:var(--lf-input-bg);color:var(--lf-text);caret-color:var(--lf-brand);transition:border-color .15s ease,box-shadow .15s ease}.lf-input::-moz-placeholder{color:var(--lf-text-faint)}.lf-input::placeholder{color:var(--lf-text-faint)}.lf-input:focus{outline:none;border-color:var(--lf-brand);box-shadow:0 0 0 4px var(--lf-brand-ring)}.lf-input[aria-invalid=true]{border-color:#e5484d;box-shadow:0 0 0 4px rgba(229,72,77,.15)}.lf-choice{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:15px 16px;border-radius:14px;border:1.5px solid var(--lf-border);background:var(--lf-card);color:var(--lf-text);font-size:16px;font-weight:500;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .12s ease,box-shadow .15s ease;touch-action:manipulation}.lf-choice:hover{border-color:var(--lf-brand);background:var(--lf-brand-soft)}.lf-choice:active{transform:scale(.985)}.lf-choice[aria-checked=true]{border-color:var(--lf-brand);background:var(--lf-brand-soft);box-shadow:0 0 0 3px var(--lf-brand-ring)}.lf-choice[aria-checked=true] .lf-key{background:var(--lf-brand);color:var(--lf-on-brand);border-color:var(--lf-brand)}.lf-key{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;border:1.5px solid var(--lf-border);font-size:12px;font-weight:700;color:var(--lf-text-muted);font-family:var(--font-lf-display),ui-sans-serif,system-ui,sans-serif;transition:inherit}@keyframes lf-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes lf-in-fwd{0%{opacity:0;transform:translateX(32px)}to{opacity:1;transform:translateX(0)}}@keyframes lf-in-back{0%{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:translateX(0)}}.lf-rise{animation:lf-rise .55s cubic-bezier(.22,1,.36,1) both}.lf-slide-fwd{animation:lf-in-fwd .4s cubic-bezier(.22,1,.36,1) both}.lf-slide-back{animation:lf-in-back .4s cubic-bezier(.22,1,.36,1) both}@keyframes lf-shake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.lf-error{animation:lf-rise .25s ease both,lf-shake .3s ease .1s}@keyframes lf-pop{0%{transform:scale(.3);opacity:0}60%{transform:scale(1.08);opacity:1}to{transform:scale(1);opacity:1}}@keyframes lf-draw{to{stroke-dashoffset:0}}.lf-check-svg{width:84px;height:84px;animation:lf-pop .5s cubic-bezier(.22,1,.36,1) both}.lf-check-circle{stroke:var(--lf-brand);stroke-width:3;stroke-linecap:round;fill:var(--lf-brand-soft);stroke-dasharray:151;stroke-dashoffset:151;animation:lf-draw .6s cubic-bezier(.65,0,.45,1) .15s forwards}.lf-check-mark{stroke:var(--lf-brand);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;fill:none;stroke-dasharray:36;stroke-dashoffset:36;animation:lf-draw .35s cubic-bezier(.65,0,.45,1) .55s forwards}@keyframes lf-dot{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.lf-dot{display:inline-block;width:5px;height:5px;margin-left:3px;border-radius:99px;background:var(--lf-text-muted);animation:lf-dot 1.2s ease-in-out infinite}.lf-dot:nth-child(2){animation-delay:.15s}.lf-dot:nth-child(3){animation-delay:.3s}@keyframes lf-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.lf-skeleton{border-radius:10px;background:linear-gradient(100deg,rgba(120,130,145,.12) 40%,rgba(120,130,145,.24) 50%,rgba(120,130,145,.12) 60%);background-size:200% 100%;animation:lf-shimmer 1.6s linear infinite}@media (prefers-reduced-motion:reduce){.lf-check-svg,.lf-dot,.lf-error,.lf-rise,.lf-skeleton,.lf-slide-back,.lf-slide-fwd{animation-duration:1ms!important;animation-delay:0s!important}.lf-check-circle,.lf-check-mark{stroke-dashoffset:0;animation:none}.lf-progress-fill{transition:none}}