
.wallet-gate-screen{min-height:calc(100svh - 38px);padding-bottom:max(32px,env(safe-area-inset-bottom));}
.wallet-gate-intro{padding:28px 0 10px;text-align:center}
.wallet-gate-art{position:relative;width:106px;height:106px;margin:0 auto 22px;display:grid;place-items:center}
.wallet-gate-art:before{content:"";position:absolute;inset:-26px;background:radial-gradient(circle,rgba(204,177,119,.14),transparent 69%);filter:blur(12px)}
.wallet-gate-art .token-icon{width:96px;height:96px;background:none;box-shadow:none;border:0}
.wallet-gate-intro h1{font-size:clamp(30px,8.5vw,39px);line-height:1.08;letter-spacing:-1.6px;margin:0 0 14px;font-weight:600}
.wallet-gate-intro p{max-width:290px;margin:0 auto;color:#a5a5ac;font-size:14px;line-height:1.55}
.wallet-gate-steps{display:flex;align-items:center;justify-content:center;gap:9px;margin:20px 0;color:#8e8e97;font-size:10px;letter-spacing:.06em;text-transform:uppercase}
.wallet-gate-steps b{color:#e6e1d7;font-weight:500}.wallet-gate-steps i{height:2px;width:2px;border-radius:50%;background:#74747e}
.wallet-gate-card{padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.02));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.wallet-gate-card .tl-card{background:none;border:0;padding:0;margin:0;box-shadow:none}
.wallet-gate-card .tl-card-top{padding-bottom:14px}
.wallet-gate-card .tl-qr{width:142px;height:142px;padding:8px;margin:20px auto;display:block}
.wallet-gate-card .tl-note{font-size:11px;line-height:1.55}
.wallet-gate-safe{display:flex;justify-content:center;align-items:flex-start;gap:6px;color:#878790;font-size:11px;line-height:1.5;padding:20px 9px;text-align:center}
.wallet-gate-safe i{flex:none}.wallet-gate-loading{padding:20px 0;color:#c9c6bf;text-align:center;font-size:13px}
.wallet-gate-art{animation:entry-arrive .65s cubic-bezier(.2,.8,.2,1) both}
@keyframes entry-arrive{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.app-confirmation{position:fixed;z-index:4000;left:50%;top:43%;transform:translate(-50%,-50%);width:min(232px,calc(100vw - 56px));min-height:182px;border-radius:32px;padding:30px 20px 24px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;isolation:isolate;pointer-events:none;background:linear-gradient(145deg,rgba(37,37,42,.88),rgba(10,10,13,.88));border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 64px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.055);backdrop-filter:blur(28px) saturate(130%);-webkit-backdrop-filter:blur(28px) saturate(130%);animation:confirmation-arrive 1.8s cubic-bezier(.2,.8,.2,1) both}
.confirmation-halo{position:absolute;inset:22px;border-radius:50%;background:radial-gradient(circle,rgba(225,200,146,.14),transparent 64%);filter:blur(13px);z-index:-1;animation:confirmation-glow 1.3s ease-out both}
.confirmation-mark{width:62px;height:62px;color:#e7d2a3}.confirmation-mark svg{width:100%;height:100%;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.confirmation-mark circle{opacity:.4;stroke-dasharray:164;stroke-dashoffset:164;animation:confirmation-ring .55s .08s ease-out forwards}
.confirmation-mark path{stroke-width:3;stroke-dasharray:40;stroke-dashoffset:40;animation:confirmation-check .36s .28s ease-out forwards}
.confirmation-label{font:500 14px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f2eee4;text-align:center;letter-spacing:-.2px}
@keyframes confirmation-arrive{0%{opacity:0;transform:translate(-50%,-47%) scale(.94)}14%,82%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-51%) scale(.985)}}
@keyframes confirmation-ring{to{stroke-dashoffset:0}}@keyframes confirmation-check{to{stroke-dashoffset:0}}@keyframes confirmation-glow{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
.app-confirmation.is-reduced,.app-confirmation.is-reduced *{animation:none!important}.app-confirmation.is-reduced circle,.app-confirmation.is-reduced path{stroke-dashoffset:0}
@media(prefers-reduced-motion:reduce){.wallet-gate-art,.app-confirmation,.app-confirmation *{animation:none!important}.confirmation-mark circle,.confirmation-mark path{stroke-dashoffset:0}}

.wallet-gate-intro .wallet-gate-welcome{font-size:11px;letter-spacing:.015em;color:#cbc4b6;margin:0 auto 20px}
