@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-variable.woff2)format("woff2")}:root{color:#151515;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--color-muted:#62666d;--color-primary:#2454ff;background:#fff;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:280px;margin:0}button{font:inherit}[hidden]{display:none!important}.flow-screen{width:min(100%,390px);min-height:100svh;padding-top:max(24px, env(safe-area-inset-top));flex-direction:column;margin:0 auto;display:flex}.flow-nav{height:56px;color:var(--color-muted);letter-spacing:-.01em;flex-shrink:0;justify-content:space-between;align-items:center;padding-inline:28px;font-size:14px;line-height:25px;display:flex}.flow-content{flex-direction:column;flex:1;gap:28px;padding:36px 28px 24px;display:flex}.flow-message{flex-direction:column;gap:18px;display:flex}h1{letter-spacing:-.045em;white-space:pre-line;overflow-wrap:anywhere;margin:0;font-size:clamp(36px,11.8vw,46px);font-weight:600;line-height:48px}h1:focus{outline:none}.description{color:var(--color-muted);letter-spacing:-.01em;white-space:pre-line;overflow-wrap:anywhere;margin:0;font-size:17px;line-height:25px}.artwork{background-color:var(--color-primary);background-position:50%;background-size:cover;flex:1;align-items:center;min-height:200px;display:flex}.artwork-welcome{background-image:url(/images/presence/welcome.jpg)}.artwork-upload{background-image:url(/images/presence/upload.jpg)}.artwork-passkey{background-image:url(/images/presence/passkey.jpg)}.artwork-proof{background-image:url(/images/presence/proof.jpg)}.artwork-ready{background-image:url(/images/presence/ready.jpg)}.artwork-recovery{background-image:url(/images/presence/recovery.jpg)}.artwork-error{background-image:url(/images/presence/error.jpg)}.enrollment-flow .flow-content{justify-content:space-between}.enrollment-flow .artwork{aspect-ratio:1;flex:none;width:100%;min-height:0}.enrollment-flow :is(.artwork-welcome,.artwork-ready,.artwork-recovery,.artwork-error){aspect-ratio:334/366}.eligibility{color:#fff;width:100%;margin:0;padding:0 24px;list-style:none}.eligibility li{align-items:center;gap:12px;min-height:72px;padding-block:12px;display:flex}.eligibility li+li{border-top:1px solid #ffffff47}.eligibility span{letter-spacing:-.025em;font-size:24px;font-weight:500;line-height:30px}svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:22px;height:22px}.eligibility svg{width:24px;height:24px}.flow-actions{padding:0 28px max(28px, env(safe-area-inset-bottom));flex-direction:column;flex-shrink:0;gap:8px;display:flex}button{cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;justify-content:center;align-items:center;gap:12px;min-height:44px;display:inline-flex}.primary{background:var(--color-primary);color:#fff;border-radius:16px;width:100%;min-height:56px;padding:16px;font-size:16px;font-weight:600;line-height:20px}.secondary,.action-note{min-height:44px;color:inherit;text-align:center;letter-spacing:-.01em;background:0 0;margin:0;padding:8px 0;font-size:14px;font-weight:500;line-height:25px}.action-note{justify-content:center;align-items:center;display:flex}.back-button{color:#151515;background:0 0;justify-content:flex-start;width:44px;padding:0}button:focus-visible{outline-offset:4px;outline:3px solid #151515}button:disabled{cursor:default}button:disabled:not([aria-busy]){opacity:.6}.status{color:var(--color-muted);margin:0 0 8px;font-size:14px;line-height:21px}.status.is-error{color:#9a2626}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:20px;height:20px}@media (hover:hover){.primary:hover:not(:disabled){background:#1741da}.secondary:hover:not(:disabled),.back-button:hover{color:var(--color-primary)}}@media (min-height:760px){.flow-screen{padding-top:max(62px, env(safe-area-inset-top))}.flow-actions{padding-bottom:max(56px, env(safe-area-inset-bottom))}}@media (min-width:600px){.flow-screen{min-height:min(100svh,900px)}}@media (prefers-reduced-motion:no-preference){.flow-content{animation:.22s ease-out both enter-screen}button{transition:background-color .15s,color .15s}.spinner{animation:.9s linear infinite spin}@keyframes enter-screen{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}}
