.vs-signature{display:block;position:relative;width:min(580px,82vw);max-width:100%;min-height:90px;line-height:0;color:#e9ad80}.vs-signature img{display:block;width:100%;height:auto;max-height:180px;object-fit:contain}.vs-signature-fallback{position:absolute;inset:0;display:grid;place-content:center;font-family:var(--font-display),sans-serif;font-size:clamp(24px,4vw,38px);line-height:1.2;opacity:0;animation:signature-fallback 0s 6s forwards;z-index:-1}.vs-signature:has(img[src]) .vs-signature-fallback{animation:none}.signature-transition{position:fixed;inset:0;z-index:150;display:grid;place-content:center;justify-items:center;gap:12px;padding:24px;background:radial-gradient(ellipse at 50% 40%,#e9ad800d,transparent 60%),#0c0e0efa;animation:signature-layer-in .18s ease-out;pointer-events:none}.signature-transition p{margin:0;color:#b7beb7;font-size:13px}.profile-loading .vs-signature{width:min(400px,80vw);margin:0 auto}.startup-loading .vs-signature{margin:auto}.startup-loading p{font-size:13px}
@keyframes signature-layer-in{from{opacity:0}to{opacity:1}}@keyframes signature-fallback{to{opacity:1}}
@media(max-width:600px){.vs-signature{width:min(440px,88vw);min-height:70px}.signature-transition{padding:16px}}
/* Replay the writing reveal whenever a new loader is mounted. */
.gateway-portal-mark{width:min(660px,88vw);letter-spacing:normal;font-size:initial;text-shadow:none}
.gateway-portal-mark .vs-signature{width:100%;min-height:0}
.gateway-portal-mark .vs-signature img{max-height:210px;filter:drop-shadow(0 0 24px #e9ad8033)}
.vs-signature{animation:signature-reveal 2.8s ease-out both}
@keyframes signature-reveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@media(prefers-reduced-motion:reduce){.signature-transition,.vs-signature{animation:none}}
