body.flow-page{--zkp-bg: #0a1746;--zkp-stage: #182659;--zkp-surface: #27366e;--zkp-raised: #35447f;--zkp-border: #3a4a85;--zkp-fg: #ffffff;--zkp-muted: #aab4dd;--zkp-dim: #8390c4;--zkp-accent: #ffffff;--zkp-brand: #f9d59e;--zkp-success: #00d39e;--zkp-error: #f95a7e;--zkp-qr-padding: 15px;background:#060c22;color-scheme:dark;overflow:hidden}.flow-card{position:relative;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;width:100%;max-width:420px;flex:1;max-height:780px;padding:14px 8px 12px;border:none;border-radius:26px;background:var(--zkp-bg);color:var(--zkp-fg);font-family:ui-sans-serif,system-ui,sans-serif;font-size:14px;line-height:1.4;text-align:left}.flow-card *,.flow-card *:before,.flow-card *:after{box-sizing:border-box}.flow-card button{font-family:inherit;cursor:pointer}.flow-stage{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;margin-top:16px;padding:0 8px;border-radius:20px;background:var(--zkp-stage)}.flow-id{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 12px}.flow-id-app{display:flex;align-items:center;gap:7px;min-width:0}.flow-id-logo{width:19px;height:19px;border-radius:6px;object-fit:contain}.flow-id-name{font-size:14px;font-weight:600;color:var(--zkp-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flow-id-tie{margin:0 12px;font-family:ui-monospace,monospace;font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--zkp-dim)}.flow-id-mark{justify-self:end;line-height:0}.flow-id-mark svg{width:84px;height:auto;display:block}.flow-step{display:flex;flex-direction:column;flex:1;min-height:0;animation:flow-fade-in .2s ease-out}@keyframes flow-fade-in{0%{opacity:0}to{opacity:1}}.flow-body{display:flex;flex-direction:column;flex:1;min-height:0;gap:18px;padding:26px 0 20px}.flow-main{display:flex;flex-direction:column;flex:1;min-height:0;gap:20px}.flow-waiting{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:30px;text-align:center}.flow-body[data-hidden]{display:none}.flow-card-slot{width:100%}.flow-page .zkp-chip-symbol{width:38px;margin-bottom:3px;color:var(--zkp-fg)}.flow-privacy{display:none;justify-content:center;gap:8px;margin:0;padding:16px 0 0;font-size:11.5px;font-weight:600;color:var(--zkp-brand)}.flow-privacy span+span:before{content:"·";margin-right:8px;color:var(--zkp-dim)}.flow-skeleton{width:100%;border-radius:18px;background:var(--zkp-surface)}.flow-lede{margin:0;padding:0 4px;font-size:12.5px;line-height:1.5;text-align:center;color:var(--zkp-muted)}.flow-when-intro,.flow-when-qr{display:none}.scan-fallback{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:18px}.scan-fallback-label{margin:0;font-size:12.5px;font-weight:500;color:var(--zkp-fg)}.flow-link-actions{display:flex;justify-content:center;gap:8px}.flow-quietbtn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--zkp-border, rgb(128 128 128 / .45));border-radius:4px;background:transparent;font:inherit;font-size:12px;color:var(--zkp-fg, inherit);cursor:pointer;transition:background .15s ease}.flow-quietbtn:hover{background:color-mix(in srgb,var(--zkp-fg, currentColor) 5%,transparent)}.flow-quietbtn .flow-glyph{width:13px;height:13px}.scan-fallback-hint{margin:0;max-width:280px;font-size:11.5px;line-height:1.5;text-align:center;color:var(--zkp-dim, var(--zkp-muted))}.flow-heading{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.flow-badge{display:inline-flex;align-items:center;align-self:center;margin:-8px 0 8px;padding:5px 12px 5px 10px;border-radius:999px;background:color-mix(in srgb,var(--zkp-success) 14%,transparent);color:var(--zkp-success);font-size:11.5px;font-weight:600}.flow-title{margin:0;font-size:22px;font-weight:700;line-height:1.25;letter-spacing:-.015em;color:var(--zkp-fg)}.flow-hint{margin:0;font-size:13.5px;line-height:1.45;color:var(--zkp-muted)}.flow-actions{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding:16px 0 0}.flow-actions:empty{display:none}.flow-panel{border-radius:18px;background:var(--zkp-surface)}.flow-wallet-row{display:flex;align-items:center;gap:12px;padding:14px 16px}.flow-wallet-row img{width:30px;height:30px;border-radius:9px}.flow-wallet-who{display:flex;flex-direction:column;gap:2px;min-width:0;margin-right:auto}.flow-wallet-name{font-size:14px;font-weight:600;color:var(--zkp-fg)}.flow-rows{margin:0;padding:0 16px;border-top:1px solid var(--zkp-border);font-size:13.5px}.flow-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0}.flow-row dt{color:var(--zkp-muted)}.flow-row dd{margin:0;color:var(--zkp-fg);font-weight:600;text-align:right}.flow-address{font-family:ui-monospace,monospace;font-size:13px;font-weight:500;color:var(--zkp-dim)}.flow-row .flow-address{color:var(--zkp-fg);font-weight:600}.flow-address[data-chip]{display:inline-flex;align-items:center;padding:8px 16px;border-radius:12px;background:var(--zkp-surface);color:var(--zkp-fg);font-size:14px;letter-spacing:.02em;text-decoration:none}a.flow-address[data-chip]:hover{background:var(--zkp-raised)}.flow-row .flow-link.flow-address{color:var(--zkp-fg)}.flow-row .flow-link.flow-address:hover{color:var(--zkp-brand)}.flow-ghost{flex:none;padding:7px 12px;border:none;border-radius:999px;background:var(--zkp-raised);color:var(--zkp-muted);font-size:12.5px;font-weight:500;transition:background .12s ease,color .12s ease}.flow-ghost:hover{background:#2c3d84;color:var(--zkp-fg)}.flow-iconbtn{display:grid;place-items:center;flex:none;width:32px;height:32px;padding:0;border:none;border-radius:10px;background:var(--zkp-surface);color:var(--zkp-muted);transition:background .12s ease,color .12s ease}.flow-iconbtn:hover{background:var(--zkp-raised);color:var(--zkp-fg)}.flow-iconbtn .flow-glyph{width:15px;height:15px;margin:0}.flow-note{max-width:280px;margin:0 auto;font-size:12.5px;line-height:1.5;text-align:center;color:var(--zkp-dim)}.flow-note[data-tone=alert]{align-self:center;padding:10px 14px;border-radius:14px;background:color-mix(in srgb,var(--zkp-error) 14%,transparent);color:var(--zkp-error);font-weight:500}.flow-link{display:inline-flex;align-items:center;color:var(--zkp-muted);text-decoration:none;transition:color .12s ease}.flow-link:hover{color:var(--zkp-brand);text-decoration:underline;text-underline-offset:3px}.flow-link[data-quiet]{margin-top:12px;font-size:12.5px;color:var(--zkp-dim)}.flow-glyph{display:inline-block;flex:none;width:1.05em;height:1.05em;margin-right:.45em}.flow-glyph[data-after]{margin-right:0;margin-left:.4em;opacity:.65}.flow-glyph svg{width:100%;height:100%;display:block}.flow-spinner{animation:flow-spin .9s linear infinite}@keyframes flow-spin{to{transform:rotate(360deg)}}.flow-progress{display:flex;justify-content:center;gap:3px;margin:0;padding:16px 0 0;list-style:none}.flow-progress li{width:30px;height:3px;overflow:hidden;background:#3f4b77}.flow-progress li:first-child{border-radius:999px 0 0 999px}.flow-progress li:last-child{border-radius:0 999px 999px 0}.flow-progress li[data-state=active]{background:#68749d}.flow-progress li:before{content:"";display:block;width:0;height:100%;border-radius:inherit;background:var(--zkp-fg);transition:width .4s ease}.flow-progress li[data-state=active]:before{width:50%}.flow-progress li[data-state=done]:before{width:100%}.flow-card:has(.flow-skeleton) .flow-progress{visibility:hidden}.flow-done{display:flex;flex-direction:column;flex:1;align-items:center;justify-content:center;gap:12px;padding-top:40px;text-align:center}.flow-seal{width:84px;margin-bottom:18px;color:var(--zkp-success);animation:flow-seal-in .52s cubic-bezier(.22,1,.36,1)}.flow-seal[data-tone=error]{color:var(--zkp-error)}.flow-seal svg{width:100%;height:auto;display:block}@keyframes flow-seal-in{0%{opacity:0;transform:scale(.72)}60%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}.flow-done-title{margin:0;font-size:22px;font-weight:700;line-height:1.25;letter-spacing:-.015em;color:var(--zkp-fg)}.flow-done-sub{margin:0;padding:0 4px;font-size:12.5px;line-height:1.5;text-align:center;color:var(--zkp-muted)}.flow-wallets{display:flex;flex-direction:column;flex:1;gap:8px;margin:0;padding:2px;overflow-y:auto;overscroll-behavior:contain;list-style:none}.flow-wallet{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;border:none;border-radius:16px;background:var(--zkp-surface);color:var(--zkp-fg);font-size:14.5px;font-weight:500;text-align:left;transition:background .12s ease}.flow-wallet:hover:not(:disabled){background:var(--zkp-raised)}.flow-wallet:disabled{opacity:.6;cursor:default}.flow-wallet img{width:28px;height:28px;border-radius:9px}.flow-phone{width:150px}.flow-phone svg{width:100%;height:auto;display:block;overflow:visible}.flow-phone-body{fill:var(--zkp-surface);stroke:var(--zkp-raised);stroke-width:2.5}.flow-phone-notch,.flow-phone-line,.flow-phone-track{fill:var(--zkp-raised)}.flow-phone-chevron{fill:none;stroke:var(--zkp-brand);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.4}.flow-phone-knob{fill:var(--zkp-brand);animation:flow-swipe 3.2s ease-in-out infinite}@keyframes flow-swipe{0%,10%{transform:translate(0);opacity:0}22%,58%{opacity:1}58%,74%{transform:translate(36px)}74%,to{transform:translate(36px);opacity:0}}.flow-waiting-text{display:flex;flex-direction:column;gap:8px}.flow-waiting .flow-hint{font-size:13px;color:var(--zkp-dim)}.flow-keep-open{margin:0;font-size:11.5px;color:var(--zkp-dim);opacity:.7}.flow-dots{display:flex;align-items:center;gap:12px;height:150px}.flow-dots i{width:22px;height:22px;border-radius:50%;background:var(--zkp-muted);animation:flow-throb 1.5s ease-in-out infinite}.flow-dots i:nth-child(2){animation-delay:.2s}.flow-dots i:nth-child(3){animation-delay:.4s}@keyframes flow-throb{0%,to{opacity:.3;transform:scale(.7)}40%{opacity:1;transform:scale(1.05)}}.flow-page .zkp-error-icon{width:62px;height:62px;background:color-mix(in srgb,var(--zkp-error) 21%,transparent);color:var(--zkp-error)}.flow-page .zkp-error-icon svg{width:46%;height:46%}.flow-detail{width:100%;max-height:132px;overflow-y:auto;overscroll-behavior:contain;margin:0;padding:12px 14px;border-radius:8px;background:var(--zkp-surface);color:var(--zkp-dim);font-size:12.5px;line-height:1.5;text-align:left;overflow-wrap:anywhere;user-select:text}@media(prefers-reduced-motion:reduce){.flow-step,.flow-dots i,.flow-phone-knob,.flow-seal{animation:none}.flow-dots i{opacity:.55}}@layer zkpassport{.flow-page .zkp-card .zkp-intro-continue{display:flex!important;align-items:center;justify-content:center;gap:8px;padding:16px 18px!important;border-radius:16px!important;background:var(--zkp-brand)!important;color:#0a1746!important;font-size:15px!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important}}.intro-asks{border-radius:8px;background:var(--zkp-surface)}.intro-asks-head{margin:0;padding:13px 16px;border-bottom:1px solid var(--zkp-border);font-size:12.5px;font-weight:500;color:var(--zkp-muted)}.intro-list{margin:0;padding:0;list-style:none}.intro-list li{display:flex;align-items:flex-start;gap:12px;padding:13px 16px}.intro-list li+li{border-top:1px solid var(--zkp-border)}.intro-tick{flex:none;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin:-1px 0 0;border-radius:50%;background:color-mix(in srgb,var(--zkp-success) 18%,transparent);color:var(--zkp-success)}.intro-tick svg{width:12px;height:12px}.intro-tick-blank{background:color-mix(in srgb,var(--zkp-muted) 22%,transparent)}.intro-ask{display:flex;flex-direction:column;flex:1;min-width:0;gap:5px}.intro-ask-title{font-size:13px;font-weight:500;line-height:1.35;color:var(--zkp-fg)}.intro-ask-detail{margin-top:3px;padding:5px 7px;border-radius:4px;background:color-mix(in srgb,var(--zkp-fg) 4%,transparent);font-size:10.5px;line-height:1.5;letter-spacing:.01em;overflow-wrap:anywhere;color:var(--zkp-dim, var(--zkp-muted))}.intro-ask-loading{position:relative}.intro-ask-loading:before{content:"​"}.intro-bar{position:absolute;top:50%;left:0;transform:translateY(-50%);height:10px;border-radius:3px;background:color-mix(in srgb,var(--zkp-muted) 25%,transparent);animation:intro-pulse 1.4s ease-in-out infinite}@keyframes intro-pulse{0%,to{opacity:.55}50%{opacity:1}}.intro-list li.intro-note{display:block;margin:0;padding:12px 16px;border-top:1px solid var(--zkp-border);font-size:12.5px;color:var(--zkp-dim, var(--zkp-muted))}.intro-note-label{display:block;margin-bottom:5px;font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.8}.intro-note-text{display:block;color:var(--zkp-muted)}.intro-note-rows{margin:0;display:flex;flex-direction:column;gap:3px}.intro-note-rows>div{display:flex;gap:6px}.intro-note-rows dt{flex:none;min-width:42px;color:var(--zkp-dim, var(--zkp-muted))}.intro-note-rows dd{margin:0;min-width:0;font-size:12.5px;letter-spacing:-.015em;overflow-wrap:anywhere;color:var(--zkp-muted)}.intro-chip{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;margin-top:auto;padding-top:16px}.intro-chip-mark{width:38px;margin-bottom:3px;color:var(--zkp-fg)}.intro-chip-mark svg{width:100%;height:auto;display:block}.intro-chip-question{margin:0;font-size:14.5px;font-weight:600;color:var(--zkp-fg)}.intro-chip-hint{margin:0 0 10px;margin-inline:auto;padding:0 12px;font-size:12.5px;color:var(--zkp-dim)}.intro-privacy{margin:0;padding:0 10px;font-size:12px;line-height:1.55;text-align:center;color:var(--zkp-dim, var(--zkp-muted))}.flow-primary{appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:4px;padding:16px 18px;border:none;border-radius:16px;background:var(--zkp-brand);color:#0a1746;font-family:inherit;font-size:16px;font-weight:600;letter-spacing:.04em;line-height:1.2;text-align:center;text-wrap:balance;cursor:pointer;transition:filter .15s ease}.flow-primary:hover{filter:brightness(1.05)}.flow-primary:disabled{background:var(--zkp-surface);color:var(--zkp-muted);cursor:default;filter:none}.scan-slot{position:relative;flex:none;align-self:center;height:min(360px,56vh);width:auto;max-width:100%;aspect-ratio:1;margin:22px auto 0;display:grid;place-items:center;overflow:hidden;border-radius:4px;background:#fff}.scan-qr{width:100%;height:100%;padding:var(--zkp-qr-padding);color:#000;background:#fff}.scan-qr svg{width:100%;height:100%;display:block}.scan-mark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:14%;aspect-ratio:1;padding:3px;border-radius:50%;background:#fff;display:grid;place-items:center}.scan-mark svg{width:100%;height:100%;display:block}.scan-skeleton{position:absolute;inset:0;display:none;border-radius:4px;background:var(--zkp-surface);animation:intro-pulse 1.4s ease-in-out infinite}.scan-slot[data-state=preparing] .scan-skeleton,.scan-slot[data-state=connecting] .scan-skeleton{display:block}.scan-slot[data-state=preparing] .scan-qr,.scan-slot[data-state=preparing] .scan-mark{visibility:hidden}.scan-slot[data-state=connecting] .scan-qr{opacity:.65}.scan-hero{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:12px 0 6px}.scan-hero[data-state=nothing-opened] .flow-primary{background:transparent;box-shadow:inset 0 0 0 1px var(--zkp-border);color:var(--zkp-brand)}.scan-hero[data-state=nothing-opened] .scan-install{background:var(--zkp-surface);border-color:var(--zkp-brand);box-shadow:0 0 0 1px var(--zkp-brand)}.scan-reveal{appearance:none;border:none;background:none;padding:4px;font:inherit;font-size:12.5px;color:var(--zkp-muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}a.flow-primary{text-align:center;text-decoration:none}.scan-escape{display:flex;flex-direction:column;align-items:center;gap:8px}.scan-install{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px;border:1px solid var(--zkp-border);border-radius:12px;transition:background .2s ease,border-color .2s ease}.scan-install-title{margin:0;font-size:15px;font-weight:600}.scan-install-note{margin:0;font-size:11.5px;line-height:1.5;text-align:center;color:var(--zkp-muted)}.store-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.store-badge img{display:block;height:44px;width:auto}.r-mark{display:flex;justify-content:center;margin:0;padding:4px 12px 0;line-height:0}.r-mark svg{width:110px;height:auto;display:block}.r-actions{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:auto;padding-top:8px}.r-note{margin:0;max-width:300px;font-size:11.5px;line-height:1.5;text-align:center;color:var(--zkp-dim, var(--zkp-muted))}
