@import "https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Instrument+Sans:wght@400;500;600&family=JetBrains+Mono:wght@400;500;600&display=swap";
.asuka-client,.asuka-bank{--serif:"Instrument Serif", Georgia, serif;--sans:"Instrument Sans", Inter, -apple-system, sans-serif;--mono:"JetBrains Mono", ui-monospace, Menlo, monospace;font-family:var(--sans);background:var(--canvas);color:var(--text);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}.asuka-client{--canvas:#0a0608;--surface:#1a1a26;--raised:#22222f;--hairline:#2a2a3a;--text:#fafafa;--muted:#a8a8c0;--faint:#6b6b82;--carmine:#bf1b2c;--carmine-hover:#d94455;--carmine-deep:#8c1220;--gold:#c9a84c;--success:#16a34a;--success-bright:#4ade80;--accent:#bf1b2c;--accent-hover:#d94455;--accent-deep:#8c1220;--glow:#bf1b2c80;--glow-strong:#bf1b2ccc;--shimmer-col:#d944551a;--dot-glow:#4ade8080}.asuka-bank{--canvas:#0a0e1a;--surface:#0d1424;--raised:#16293d;--hairline:#94a3b824;--text:#e2e8f0;--text-strong:#f1f5f9;--muted:#94a3b8;--faint:#475569;--accent:#3b82f6;--accent-hover:#60a5fa;--accent-deep:#2563eb;--gold:#c9a84c;--success:#22c55e;--success-bright:#4ade80;--amber:#f59e0b;--amber-light:#fbbf24;--red:#ef4444;--red-light:#f87171;--glow:#2563eb8c;--glow-strong:#2563ebd9;--shimmer-col:#60a5fa1f;--dot-glow:#60a5fa80}.asuka-client .mono,.asuka-bank .mono{font-family:var(--mono)}.asuka-client .serif,.asuka-bank .serif{font-family:var(--serif)}.asuka-client button,.asuka-bank button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.asuka-client input,.asuka-bank input{font-family:inherit}.asuka-client .texture,.asuka-bank .texture{background-image:radial-gradient(#ffffff06 1px,#0000 1px);background-size:14px 14px}.asuka-client .scanline,.asuka-bank .scanline{background-image:repeating-linear-gradient(#ffffff04 0 1px,#0000 1px 3px)}.asuka-bank .conf{background-image:repeating-linear-gradient(45deg,#2e7bd612 0 1px,#0000 1px 6px)}@keyframes asuka-springIn{0%{opacity:0;transform:translateY(-10px)scale(.9)}60%{opacity:1;transform:translateY(0)scale(1.025)}to{transform:translateY(0)scale(1)}}.springIn{animation:.5s cubic-bezier(.34,1.56,.64,1) both asuka-springIn}@keyframes asuka-scaleIn{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.04)}to{transform:scale(1)}}.scaleIn{animation:.45s cubic-bezier(.34,1.56,.64,1) both asuka-scaleIn}@keyframes asuka-fadeUp{0%{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}.fadeUp{animation:.52s cubic-bezier(.2,.7,.2,1) both asuka-fadeUp}@keyframes asuka-cardInL{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.cardInL{animation:.4s both asuka-cardInL}@keyframes asuka-revealRow{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.revealRow{animation:.45s cubic-bezier(.2,.7,.2,1) both asuka-revealRow}@keyframes asuka-breathe{0%,to{box-shadow:0 0 0 1px var(--accent), 0 0 16px -5px var(--glow);transform:scale(1)}50%{box-shadow:0 0 0 1px var(--accent-hover), 0 0 28px -3px var(--glow-strong);transform:scale(1.006)}}.breathe{animation:2.4s ease-in-out infinite asuka-breathe}@keyframes asuka-shimmer{0%{background-position:-180px 0}to{background-position:180px 0}}.shimmer:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(100deg, transparent 30%, var(--shimmer-col) 50%, transparent 70%);background-size:180px 100%;animation:1.6s linear infinite asuka-shimmer;position:absolute;inset:0}@keyframes asuka-dotPulse{0%,to{opacity:1;box-shadow:0 0 0 0 var(--dot-glow);transform:scale(1)}50%{opacity:.7;transform:scale(1.15);box-shadow:0 0 0 5px #0000}}.dotPulse{animation:1.6s ease-in-out infinite asuka-dotPulse}@keyframes asuka-caretBlink{0%,50%{opacity:1}51%,to{opacity:0}}.caret{animation:.9s step-end infinite asuka-caretBlink}@keyframes asuka-eq{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.eqbar{transform-origin:bottom;animation:.7s ease-in-out infinite asuka-eq}@keyframes asuka-micLive{0%,to{box-shadow:0 0 #bf1b2c8c}70%{box-shadow:0 0 0 9px #bf1b2c00}}.micLive{animation:1.9s ease-out infinite asuka-micLive}@keyframes asuka-micHear{0%,to{box-shadow:0 0 #4ade80a6}70%{box-shadow:0 0 0 10px #4ade8000}}.micHearing{animation:1s ease-out infinite asuka-micHear}@keyframes asuka-srcPulse{0%,to{border-color:var(--hairline);color:var(--faint)}50%{border-color:var(--accent);color:var(--accent-hover)}}.srcPulse{animation:1.3s ease-in-out infinite asuka-srcPulse}@keyframes asuka-tokenMove{0%{offset-distance:0%}to{offset-distance:100%}}.token{offset-rotate:0deg;border-radius:50%;width:8px;height:8px;animation:.85s cubic-bezier(.5,0,.5,1) forwards asuka-tokenMove;position:absolute;top:0;left:0}@keyframes drawOn{to{stroke-dashoffset:0}}@keyframes asuka-crossIn{0%{opacity:0}to{opacity:1}}.crossIn{animation:.4s both asuka-crossIn}@keyframes asuka-crossTravel{0%{left:2%}to{left:98%}}.crossDot{animation:1.5s cubic-bezier(.5,0,.4,1) forwards asuka-crossTravel}@keyframes asuka-endPulse{0%,to{box-shadow:0 0 16px -5px #bf1b2cb3}50%{box-shadow:0 0 26px -2px #bf1b2c}}.endCta{transition:background .16s;animation:2s ease-in-out infinite asuka-endPulse}.endCta:hover{background:var(--carmine-hover)!important}@keyframes asuka-arrivePulse{0%,to{box-shadow:0 0 #57a0ee99}50%{box-shadow:0 0 0 9px #57a0ee00}}.arrive{animation:1.4s ease-in-out infinite asuka-arrivePulse}@keyframes coolDown{0%{background:#1c0a0f}to{background:var(--canvas)}}@keyframes crossOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}@keyframes asuka-spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite asuka-spin}@keyframes edge-travel{to{stroke-dashoffset:-32px}}.edge-pulse{animation:.9s linear infinite edge-travel}@keyframes asuka-seal{0%{opacity:0;transform:scale(1.7)rotate(-8deg)}55%{opacity:1;transform:scale(.9)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}.sealStamp{animation:.7s cubic-bezier(.34,1.56,.64,1) both asuka-seal}@keyframes asuka-authScan{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}.authScan{animation:1.1s ease-in-out infinite asuka-authScan}@keyframes asuka-loginPulse{0%,to{box-shadow:0 0 #3b82f68c}70%{box-shadow:0 0 0 12px #3b82f600}}.loginPulse{animation:2s ease-out infinite asuka-loginPulse}.chip{transition:all .18s}.chip:hover:not(:disabled){transform:translateY(-1px)}.ctl{transition:all .16s}.ctl:hover{background:#ffffff14}.sendBtn{transition:background .16s,transform .12s}.sendBtn:hover:not(:disabled){background:var(--accent-hover)}.sendBtn:active:not(:disabled){transform:scale(.97)}.btn{transition:all .16s}.btn:hover{transform:translateY(-1px)}.seg{transition:all .18s}.phone-shell{height:100dvh;max-height:100dvh;padding-bottom:env(safe-area-inset-bottom);overflow:hidden}
