.vault-app{min-height:100vh;position:relative}.vault-app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(1200px 620px at 50% -12%,rgba(215,254,81,.06),transparent 62%)}.vfloat{position:fixed;top:14px;left:50%;transform:translate(-50%);width:min(1040px,calc(100% - 24px));z-index:40;display:flex;align-items:center;gap:14px;padding:9px 10px 9px 14px;background:#1c1e24b8;backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);border:1px solid var(--border-2);border-radius:18px;box-shadow:0 12px 44px #00000073,inset 0 1px #ffffff0a}.vfloat-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-serif);font-weight:600;font-size:19px;color:var(--text)}.vfloat .logo{width:30px;height:30px;font-size:17px;border-radius:9px}.vfloat-chip{font-family:var(--font-mono);font-size:8px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--pos);background:var(--pos-bg);border:1px solid rgba(215,254,81,.28);border-radius:5px;padding:2px 6px}.vfloat-nav{display:flex;gap:1px;margin-left:6px}.vfloat-nav a{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim);padding:8px 12px;border-radius:999px;transition:color .2s var(--ease),background .2s var(--ease)}.vfloat-nav a:hover{color:var(--pos);background:#d7fe5112}.vfloat-spacer{flex:1}.vfloat-net{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10px;letter-spacing:.4px;text-transform:uppercase;color:var(--text-dim);padding:8px 12px;border:1px solid var(--border);border-radius:999px;white-space:nowrap}.vfloat-net .d{width:7px;height:7px;border-radius:50%;background:var(--pos);box-shadow:0 0 8px var(--pos-glow)}.vfloat-acct{font-family:var(--font-mono);font-size:12.5px;color:var(--text);background:#e9f3ee0d;border:1px solid var(--border-2);border-radius:999px;padding:9px 15px;display:inline-flex;gap:8px;align-items:center}.vfloat-acct .d{width:7px;height:7px;border-radius:50%;background:var(--pos);box-shadow:0 0 8px var(--pos-glow)}.vconnect{font-family:var(--font-sans);font-weight:700;font-size:13.5px;cursor:pointer;background:var(--pos);color:#06210b;border:none;border-radius:999px;padding:10px 20px;box-shadow:0 6px 20px #d7fe5133,inset 0 1px #ffffff47;transition:filter .2s var(--ease),transform .15s var(--ease),box-shadow .2s var(--ease)}.vconnect:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 12px 30px #d7fe5157}.vconnect:disabled{opacity:.5;cursor:default}@media (max-width: 680px){.vfloat-nav,.vfloat-net{display:none}}.vstage{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:116px 16px 64px;position:relative;z-index:1}.vcard{width:100%;max-width:460px;background:var(--panel);border:1px solid var(--border-2);border-radius:26px;padding:8px;box-shadow:0 24px 70px #00000073}.vtabs{display:flex;gap:4px;padding:6px 6px 4px}.vtab{flex:1;font-family:var(--font-sans);font-weight:600;font-size:13px;padding:10px 8px;border-radius:14px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;transition:color .2s var(--ease),background .2s var(--ease),box-shadow .2s var(--ease)}.vtab:hover:not(.on){color:var(--text)}.vtab.on{background:var(--bg-2);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.vfield{background:var(--bg-2);border:1px solid var(--border);border-radius:20px;padding:16px 18px;margin:2px 6px}.vfield-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:var(--text-faint)}.vfield-main{display:flex;align-items:center;gap:12px;margin-top:10px}.vfield-input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--text);font-family:var(--font-sans);font-weight:500;font-size:32px;letter-spacing:-.5px;font-variant-numeric:tabular-nums;padding:0}.vfield-input::placeholder{color:var(--text-faint)}.vfield-input:disabled{opacity:.55}.vfield-token{flex:none;display:inline-flex;align-items:center;gap:8px;background:var(--panel-2);border:1px solid var(--border-2);border-radius:999px;padding:7px 14px 7px 8px;font-weight:700;font-size:14px;white-space:nowrap}.vfield-token .tk{width:22px;height:22px;border-radius:50%;background:var(--pos);color:#06210b;display:grid;place-items:center;font-size:11px;font-weight:800;font-family:var(--font-serif)}.vfield-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:12px;min-height:22px}.vfield-bal{font-size:12px;color:var(--text-dim)}.vfield-bal b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.vfield-max{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--pos);background:var(--pos-bg);border:1px solid rgba(215,254,81,.3);border-radius:999px;padding:5px 11px;cursor:pointer;transition:background .2s var(--ease)}.vfield-max:hover{background:#d7fe5133}.vhint{font-size:12px;color:var(--text-dim);text-align:center;padding:12px 14px 2px;line-height:1.5}.vauto-row{display:flex;gap:8px;margin:2px 6px}.vauto-mini{flex:1;background:var(--bg-2);border:1px solid var(--border);border-radius:16px;padding:12px 14px}.vauto-mini .k{font-family:var(--font-mono);font-size:9px;letter-spacing:.5px;text-transform:uppercase;color:var(--text-faint)}.vauto-mini input{width:100%;background:none;border:none;outline:none;color:var(--text);font-family:var(--font-sans);font-size:18px;font-weight:500;margin-top:4px;padding:0;font-variant-numeric:tabular-nums}.vauto-active{margin:2px 6px;padding:14px 16px;background:var(--bg-2);border:1px solid var(--border);border-radius:16px;font-size:13px;color:var(--text-dim);line-height:1.6}.vauto-active b{color:var(--text)}.vaction{width:calc(100% - 12px);margin:8px 6px 6px;padding:16px;border:none;border-radius:18px;font-family:var(--font-sans);font-weight:700;font-size:16px;cursor:pointer;background:var(--pos);color:#06210b;box-shadow:0 8px 26px #d7fe5133;transition:filter .2s var(--ease),transform .15s var(--ease),box-shadow .2s var(--ease)}.vaction:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 14px 36px #d7fe5152}.vaction:disabled{background:var(--panel-2);color:var(--text-faint);box-shadow:none;cursor:not-allowed}.vaction.ghost{background:transparent;color:var(--text);box-shadow:inset 0 0 0 1px var(--border-2)}.vaction.ghost:hover:not(:disabled){background:#d7fe510f;box-shadow:inset 0 0 0 1px #d7fe5166}.vfaucet{width:calc(100% - 12px);margin:10px 6px 0;padding:11px;border-radius:14px;font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:.3px;cursor:pointer;color:var(--pos);background:var(--pos-bg);border:1px dashed rgba(215,254,81,.42);transition:background .2s var(--ease)}.vfaucet:hover:not(:disabled){background:#d7fe5129}.vfaucet:disabled{color:var(--text-faint);border-color:var(--border);cursor:not-allowed}.vunder{width:100%;max-width:460px;display:flex;flex-direction:column;align-items:center;gap:10px}.vpos{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:center;font-size:13.5px;color:var(--text);font-variant-numeric:tabular-nums}.vpos b{font-weight:700}.vpos .dim{color:var(--text-dim)}.vpos .sep{color:var(--border-2)}.vtx{font-family:var(--font-mono);font-size:11.5px;color:var(--text-dim);display:inline-flex;gap:8px;align-items:center}.vtx a{color:var(--pos);text-decoration:none}.vtx .live{width:7px;height:7px;border-radius:50%;background:var(--warn);box-shadow:0 0 8px #ffc53d80;animation:vblink 1.2s step-end infinite}.verr{font-family:var(--font-mono);font-size:11.5px;color:#ffb4ae;background:var(--neg-bg);border:1px solid rgba(255,91,82,.35);border-radius:12px;padding:10px 14px;max-width:460px;text-align:center;line-height:1.5}.verr.warn{color:#f4d78a;background:#f4c85a14;border-color:#f4c85a57}.verr.warn b{color:var(--pos)}@keyframes vblink{50%{opacity:.25}}.vcontracts-toggle{background:none;border:none;cursor:pointer;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--text-faint);transition:color .2s var(--ease)}.vcontracts-toggle:hover{color:var(--pos)}.vclist{width:100%;max-width:460px;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:4px 16px}.vcrow{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.vcrow:last-child{border-bottom:none}.vcrow .n{font-size:12px;color:var(--text-dim)}.vcrow a,.vcrow span.mono{font-family:var(--font-mono);font-size:11px;color:var(--pos);white-space:nowrap}.vdisc{font-size:10.5px;color:var(--text-faint);text-align:center;max-width:440px;line-height:1.65}.vskel-inline{display:inline-block;width:72px;height:13px;border-radius:6px;vertical-align:middle;background:linear-gradient(90deg,#e9f3ee0d 25%,#e9f3ee1f 37%,#e9f3ee0d 63%);background-size:400% 100%;animation:skel-shimmer 1.4s ease infinite}@media (prefers-reduced-motion: reduce){.vskel-inline{animation:none}}.vault-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%) translateY(20px);background:#1c1e24f0;color:var(--pos);border:1px solid rgba(215,254,81,.4);border-radius:999px;box-shadow:0 12px 40px #00000080,0 0 24px #d7fe512e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 20px;font-family:var(--font-mono);font-size:11px;letter-spacing:.4px;z-index:60;opacity:0;transition:opacity .3s var(--ease),transform .3s var(--ease);max-width:90vw;display:inline-flex;align-items:center;gap:12px}.vault-toast.show{opacity:1;transform:translate(-50%) translateY(0)}.vault-toast a{color:var(--neon);text-decoration:none}.vault-boot{color:var(--text-dim);padding:140px 20px;text-align:center;font-family:var(--font-serif);font-size:17px}.vault-boot.err{color:var(--neg);font-family:var(--font-sans);font-size:13px}.vault-boot code{font-family:var(--font-mono);background:var(--bg-2);padding:1px 6px;border-radius:5px}.vscene{position:relative;width:100%;max-width:440px;height:216px;margin:0 auto -10px;pointer-events:none}.vscene-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.vscene-canvas canvas{display:block}.vscene.mode-loading .vscene-canvas:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(215,254,81,.14),transparent 70%);animation:vscene-pulse 1.6s ease-in-out infinite}@keyframes vscene-pulse{0%,to{opacity:.4}50%{opacity:.9}}.vscene.mode-fallback .vscene-canvas:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:120px;height:120px;border-radius:50%;border:1.5px solid rgba(215,254,81,.5);box-shadow:0 0 60px #d7fe5138,inset 0 0 40px #d7fe511f;animation:vscene-spin 16s linear infinite}@keyframes vscene-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.vscene.mode-loading .vscene-canvas:after,.vscene.mode-fallback .vscene-canvas:before{animation:none}}@media (max-width: 560px){.vscene{height:158px;margin-bottom:-4px}}.vhero{text-align:center;margin:0 auto 26px;max-width:640px}.vhero-kicker{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--text-dim)}.vhero-kicker .tick{width:7px;height:7px;background:var(--pos);border-radius:1.5px;transform:rotate(45deg);box-shadow:0 0 10px var(--pos-glow)}.vhero-title{font-family:var(--font-serif);font-weight:500;font-size:clamp(38px,5vw,54px);line-height:1.04;margin:12px 0 10px;color:var(--text);text-shadow:0 0 44px rgba(215,254,81,.14)}.vhero-sub{font-family:var(--font-sans);font-size:14px;line-height:1.65;color:var(--text-dim);margin:0}.vcard{border-radius:20px!important;box-shadow:0 26px 60px #00000080,0 4px 14px #00000059,inset 0 1px #ffffff0f!important}.vault-app:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(120% 55% at 30% 112%,rgba(215,254,81,.07),transparent 60%),radial-gradient(130% 60% at 75% 118%,rgba(215,254,81,.05),transparent 62%),linear-gradient(to right,rgba(233,243,238,.026) 0 1px,transparent 1px),linear-gradient(to bottom,rgba(233,243,238,.026) 0 1px,transparent 1px);background-size:auto,auto,88px 88px,88px 88px}.vstage{position:relative;z-index:1}
