.vv-backdrop{z-index:0;background:var(--bg-deep);position:fixed;inset:0;overflow:hidden}.vv-photo{filter:blur(16px)saturate(1.25)brightness(1.15);background:url(/auth/vault-room.png) 50%/cover no-repeat;position:absolute;inset:-5%;transform:scale(1.06)}.vv-tone{background:color-mix(in srgb, var(--primary) 60%, #000);mix-blend-mode:color;position:absolute;inset:0}.vv-tint{background:radial-gradient(120% 85% at 50% -12%, color-mix(in srgb, var(--primary-deep) 38%, transparent), transparent 58%), radial-gradient(85% 70% at 88% 104%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 62%), linear-gradient(180deg, color-mix(in srgb, var(--bg-top) 45%, transparent), color-mix(in srgb, var(--bg-deep) 68%, transparent) 72%);position:absolute;inset:0}.vv-silhouettes{pointer-events:none;position:absolute;inset:0;overflow:hidden}.vv-sil{font-family:var(--font-playfair), serif;color:color-mix(in srgb, var(--primary) 30%, transparent);opacity:.7;filter:blur(2px);-webkit-user-select:none;user-select:none;line-height:1;position:absolute}.vv-sil.a{font-size:clamp(160px,34vmin,340px);top:3%;left:-4%;rotate:-16deg}.vv-sil.b{color:color-mix(in srgb, var(--accent) 28%, transparent);font-size:clamp(140px,30vmin,300px);top:22%;right:-9%;rotate:13deg}.vv-sil.c{font-size:clamp(130px,28vmin,270px);bottom:2%;left:-8%;rotate:9deg}.vv-sil.d{color:color-mix(in srgb, var(--accent) 26%, transparent);font-size:clamp(120px,24vmin,220px);bottom:16%;right:-6%;rotate:-8deg}.vv-sil.e{opacity:.4;font-size:clamp(90px,18vmin,180px);top:48%;left:40%;rotate:6deg}@media (max-width:700px){.vv-sil.e{display:none}}.vv-sweep{background:conic-gradient(from 0deg, transparent 0deg 58deg, color-mix(in srgb, var(--primary) 7%, transparent) 78deg, color-mix(in srgb, var(--champagne) 5%, transparent) 90deg, color-mix(in srgb, var(--primary) 7%, transparent) 102deg, transparent 122deg 360deg);width:220vmax;height:220vmax;margin:-110vmax 0 0 -110vmax;animation:52s linear infinite vv-sweep;position:absolute;top:-10%;left:50%}@keyframes vv-sweep{to{transform:rotate(360deg)}}.vv-suit{font-family:var(--font-playfair), serif;color:#0000;-webkit-text-stroke:1.5px color-mix(in srgb, var(--primary) 26%, transparent);opacity:.55;-webkit-user-select:none;user-select:none;font-size:clamp(300px,48vmin,580px);line-height:1;animation:26s ease-in-out infinite alternate vv-float;position:absolute}.vv-suit.s1{top:-7%;left:-4%;rotate:-14deg}.vv-suit.s2{-webkit-text-stroke-color:color-mix(in srgb, var(--accent) 22%, transparent);animation-delay:-9s;top:16%;right:-5%;rotate:11deg}.vv-suit.s3{animation-delay:-17s;bottom:-12%;left:6%;rotate:8deg}.vv-suit.s4{-webkit-text-stroke-color:color-mix(in srgb, var(--accent) 18%, transparent);font-size:clamp(180px,26vmin,320px);animation-delay:-5s;bottom:4%;right:20%;rotate:-7deg}@keyframes vv-float{0%{transform:translateY(-1.6%)}to{transform:translateY(1.6%)}}@media (max-width:700px){.vv-suit.s3,.vv-suit.s4{display:none}}.vv-cards{pointer-events:none;position:absolute;inset:0;overflow:hidden}.vv-card{font-family:var(--font-playfair), serif;color:color-mix(in srgb, var(--primary-hot) 62%, #fff);opacity:.18;text-shadow:0 0 16px var(--primary-glow);filter:blur(.4px);will-change:transform;line-height:1;position:absolute;left:0}.vv-card.c1{font-size:36px;animation:42s linear -3s infinite vv-fly-r;top:17%}.vv-card.c2{color:color-mix(in srgb, var(--accent-hot) 60%, #fff);font-size:26px;animation:50s linear -22s infinite vv-fly-l;top:63%}.vv-card.c3{color:color-mix(in srgb, var(--gold-hot) 58%, #fff);opacity:.14;font-size:22px;animation:58s linear -36s infinite vv-fly-r;top:39%}.vv-card.c4{font-size:30px;animation:46s linear -11s infinite vv-fly-l;top:80%}.vv-card.c5{color:color-mix(in srgb, var(--gold-hot) 58%, #fff);opacity:.12;font-size:20px;animation:64s linear -48s infinite vv-fly-r;top:7%}.vv-card.c6{color:color-mix(in srgb, var(--accent-hot) 60%, #fff);font-size:28px;animation:54s linear -28s infinite vv-fly-l;top:50%}@keyframes vv-fly-r{0%{transform:translate(-14vw)rotate(-8deg)}to{transform:translate(116vw,-7vh)rotate(20deg)}}@keyframes vv-fly-l{0%{transform:translate(116vw)rotate(8deg)}to{transform:translate(-14vw,-6vh)rotate(-18deg)}}.vv-floor{background:radial-gradient(58% 58% at 50% 0%, color-mix(in srgb, var(--primary-deep) 55%, transparent), transparent 72%);filter:blur(36px);opacity:.55;width:170vw;height:64vh;position:absolute;bottom:-34vh;left:50%;transform:translate(-50%)}.vv-grain{opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.vv-sweep,.vv-suit{animation:none}.vv-cards{display:none}}.login-shell{z-index:1;justify-content:center;align-items:center;gap:clamp(48px,7vw,110px);min-height:100dvh;padding:28px 16px;display:flex;position:relative}.pane-right{flex-direction:column;width:100%;max-width:440px;display:flex;position:relative}.vault-side{display:none}@media (min-width:1024px){.vault-side{flex-direction:column;gap:26px;max-width:460px;animation:.7s cubic-bezier(.22,1,.36,1) both vs-in;display:flex}}@keyframes vs-in{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:none}}.vs-logo{object-fit:contain;width:76px;height:76px;filter:drop-shadow(0 6px 22px var(--primary-glow));margin-bottom:22px}.vs-eye{font-family:var(--font-jetbrains), monospace;letter-spacing:.32em;text-transform:uppercase;color:var(--text-dim);align-items:center;gap:14px;font-size:10px;display:flex}.vs-rule{background:var(--primary);flex:none;width:34px;height:1px}.vs-tagline{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.03em;color:#fff;text-wrap:balance;margin:0;font-size:clamp(44px,4.4vw,62px);font-weight:800;line-height:1.04}.vs-tagline em{background:linear-gradient(100deg, var(--primary-hot), var(--accent-hot));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;padding-right:.06em;font-style:italic}.vs-chips{flex-wrap:wrap;gap:8px;display:flex}.vs-chips>span{border:1px solid var(--border-strong);color:var(--text-dim);background:color-mix(in srgb, var(--bg-deep) 45%, transparent);border-radius:999px;align-items:center;gap:7px;padding:8px 14px;font-size:12px;font-weight:600;display:inline-flex}.vs-chips .material-symbols-outlined{color:var(--primary-hot);font-size:16px}.pass{filter:drop-shadow(0 30px 50px #0009) drop-shadow(0 0 44px color-mix(in srgb, var(--primary) 16%, transparent));animation:.6s cubic-bezier(.22,1,.36,1) both pass-in}@keyframes pass-in{0%{opacity:0;transform:translateY(20px)rotate(.6deg)}to{opacity:1;transform:none}}.pass-card{--perf-y:70px;--notch:11px;background:linear-gradient(165deg, color-mix(in srgb, var(--surface-2) 70%, transparent), transparent 42%), linear-gradient(180deg, var(--surface-1), color-mix(in srgb, var(--bg-deep) 72%, var(--surface-1)));border:1px solid var(--border-strong);-webkit-mask-image:radial-gradient(circle var(--notch) at 0 var(--perf-y), transparent calc(var(--notch) - 1px), #000 var(--notch)), radial-gradient(circle var(--notch) at 100% var(--perf-y), transparent calc(var(--notch) - 1px), #000 var(--notch));-webkit-mask-composite:source-in;-webkit-mask-image:radial-gradient(circle var(--notch) at 0 var(--perf-y), transparent calc(var(--notch) - 1px), #000 var(--notch)), radial-gradient(circle var(--notch) at 100% var(--perf-y), transparent calc(var(--notch) - 1px), #000 var(--notch));mask-image:radial-gradient(circle var(--notch) at 0 var(--perf-y), transparent calc(var(--notch) - 1px), #000 var(--notch)), radial-gradient(circle var(--notch) at 100% var(--perf-y), transparent calc(var(--notch) - 1px), #000 var(--notch));border-radius:22px;position:relative;overflow:hidden;-webkit-mask-composite:source-in;mask-composite:intersect}.pass-stub{background:linear-gradient(180deg, color-mix(in srgb, var(--primary) 14%, transparent), color-mix(in srgb, var(--primary) 4%, transparent));justify-content:space-between;align-items:center;gap:12px;height:70px;padding:0 22px;display:flex;position:relative;overflow:hidden}.pass-stub:before{content:"";background:linear-gradient(90deg, var(--primary-hot), var(--accent-hot) 30%, var(--champagne) 50%, var(--accent-hot) 70%, var(--primary-hot));background-size:220% 100%;height:3px;animation:7s ease-in-out infinite foil-slide;position:absolute;inset:0 0 auto}@keyframes foil-slide{0%,to{background-position:0 0}50%{background-position:100% 0}}@media (prefers-reduced-motion:reduce){.pass-stub:before{animation:none}}.pass-brand{flex-direction:row;align-items:center;gap:10px;min-width:0;display:flex}.pass-logo{object-fit:contain;width:40px;height:40px;filter:drop-shadow(0 2px 9px var(--primary-glow));flex:none}.pass-brand-text{flex-direction:column;gap:3px;min-width:0;display:flex}.pass-mark{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.01em;color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:21px;font-weight:800;line-height:1;overflow:hidden}.pass-mark em{background:var(--gold-grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:normal}.pass-club{font-family:var(--font-jetbrains), monospace;letter-spacing:.3em;text-transform:uppercase;color:var(--text-faint);white-space:nowrap;font-size:8px}.pass-meta{flex-direction:column;flex:none;align-items:flex-end;gap:5px;display:flex}.pass-eye{letter-spacing:.2em;text-transform:uppercase;color:var(--primary-hot);border:1px solid color-mix(in srgb, var(--primary) 40%, transparent);background:color-mix(in srgb, var(--bg-deep) 50%, transparent);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:9.5px;font-weight:800;display:inline-flex}.pass-eye .material-symbols-outlined{font-size:13px}.pass-serial{font-family:var(--font-jetbrains), monospace;letter-spacing:.18em;color:var(--text-faint);font-size:8.5px}.pass-perf{border-top:2px dashed #ffffff21;margin:0 18px}.pass-body{padding:22px 24px 6px}.pass-body h2{font-family:var(--font-display), var(--font-sans), sans-serif;letter-spacing:-.025em;color:#fff;font-size:30px;font-weight:800;animation:.5s cubic-bezier(.22,1,.36,1) 80ms both rise}.pass-body h2 em{background:linear-gradient(100deg, var(--primary-hot) 0%, var(--accent-hot) 55%, var(--primary-hot) 110%);-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;padding-right:.05em;font-style:italic;animation:6s ease-in-out infinite em-sheen;display:inline-block}@keyframes em-sheen{0%,to{background-position:0 0}50%{background-position:100% 0}}.pass-body .sub{color:var(--text-dim);margin-top:8px;font-size:13.5px;line-height:1.55;animation:.5s cubic-bezier(.22,1,.36,1) .13s both rise}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.pass-body h2.register-h2{letter-spacing:-.02em;font-size:25px;line-height:1.15}.pass-body h2.register-h2 em{word-break:break-word;line-height:1.15}.note{border:1px solid var(--border);background:color-mix(in srgb, var(--bg-deep) 40%, transparent);color:var(--text-dim);border-radius:12px;align-items:flex-start;gap:10px;margin-top:16px;padding:12px 14px;font-size:12.5px;line-height:1.5;display:flex}.note .material-symbols-outlined{color:var(--primary-hot);flex:none;font-size:18px}.note.accent{border-color:color-mix(in srgb, var(--primary) 38%, transparent);background:color-mix(in srgb, var(--primary) 8%, transparent);color:var(--text)}.note.danger{border-color:color-mix(in srgb, var(--rose) 40%, transparent)}.note.danger .material-symbols-outlined{color:var(--rose)}.note b{color:var(--primary-hot)}.ref-row{border:1px dashed color-mix(in srgb, var(--primary) 40%, transparent);background:color-mix(in srgb, var(--primary) 7%, transparent);letter-spacing:.14em;text-transform:uppercase;color:var(--primary-hot);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:10px 14px;font-size:10.5px;font-weight:700;display:flex}.ref-row .code{letter-spacing:.1em;font-size:12px}.auth-form{margin-top:22px;animation:.5s cubic-bezier(.22,1,.36,1) .18s both rise}.auth-form .field{margin-bottom:15px}.auth-form .field>label{font-family:var(--font-jetbrains), monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--text-faint);margin-bottom:7px;font-size:9px;display:block}.auth-form .input-wrap input{background:color-mix(in srgb, var(--bg-deep) 72%, transparent);border:1px solid var(--border);border-radius:14px;height:52px;padding-left:46px;font-size:15px;transition:border-color .16s,box-shadow .16s,background .16s;box-shadow:inset 0 2px 6px #00000059}.auth-form .input-wrap>.material-symbols-outlined{color:var(--text-faint);font-size:19px;transition:color .16s;left:16px}.auth-form .input-wrap:focus-within>.material-symbols-outlined{color:var(--primary-hot)}.auth-form .input-wrap input:focus{border-color:color-mix(in srgb, var(--primary) 70%, transparent);background:var(--bg-deep);box-shadow:inset 0 2px 6px #00000059, 0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent)}.auth-form .toggle-pw{width:36px;height:36px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:8px}.auth-form .toggle-pw:hover{color:var(--text);background:#ffffff0f}.toggle-pw .material-symbols-outlined{font-size:20px}.auth-form input.code-input{font-family:var(--font-manrope), var(--font-sans), sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.5em;text-align:center;padding-left:14px;font-size:22px}.row-between{justify-content:space-between;align-items:center;gap:12px;margin:8px 0 18px;font-size:13px;display:flex}.row-between label{color:var(--text-dim);cursor:pointer;align-items:center;gap:8px;font-weight:500;display:flex}.row-between input{accent-color:var(--primary)}.row-between a{color:var(--accent-hot);white-space:nowrap;font-weight:700}.auth-form .row-between input[type=checkbox]{flex:none;width:16px;height:16px}.auth-form .btn.primary.lg.full{letter-spacing:.1em;min-height:54px;box-shadow:0 14px 30px -10px color-mix(in srgb, var(--primary) 60%, transparent), inset 0 1px 0 #ffffff4d, inset 0 -2px 6px #00000040;border-radius:14px;font-size:14px;font-weight:800}.btn.ghost{border:1px solid var(--border);color:var(--text-dim);background:0 0}.btn.ghost:hover{color:var(--text);background:#ffffff0d}.btn.ghost:disabled{opacity:.5;cursor:not-allowed}.register-prompt{text-align:center;color:var(--text-faint);margin-top:18px;font-size:13px}.register-prompt .alt-divider{letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);align-items:center;gap:14px;font-size:10.5px;font-weight:700;display:flex}.register-prompt .alt-divider:before,.register-prompt .alt-divider:after{content:"";flex:1;height:1px}.register-prompt .alt-divider:before{background:linear-gradient(90deg,#0000,#ffffff24)}.register-prompt .alt-divider:after{background:linear-gradient(90deg,#ffffff24,#0000)}.register-prompt a{border:1.5px dashed color-mix(in srgb, var(--primary) 50%, transparent);background:color-mix(in srgb, var(--primary) 6%, transparent);color:#fff;letter-spacing:.04em;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:48px;margin-top:10px;font-size:13.5px;font-weight:800;transition:background .15s,border-color .15s,border-style .15s;display:flex}.register-prompt a:hover{border-style:solid;border-color:var(--primary);background:color-mix(in srgb, var(--primary) 15%, transparent);text-decoration:none}.pass-rail{border-top:1px solid var(--border);align-items:center;gap:14px;margin:16px 24px 0;padding:12px 0 16px;display:flex}.pass-barcode{color:#ffffff52;background:repeating-linear-gradient(90deg,currentColor 0 1px,#0000 1px 4px),repeating-linear-gradient(90deg,currentColor 0 3px,#0000 3px 9px);flex:1;min-width:60px;height:20px}.pass-rail-txt{font-family:var(--font-jetbrains), monospace;letter-spacing:.24em;color:var(--text-faint);white-space:nowrap;flex:none;font-size:8.5px}.pane-right footer{text-align:center;color:var(--text-faint);flex-direction:column;align-items:center;gap:8px;margin-top:18px;font-size:11px;display:flex}.pane-right footer a{color:var(--text-dim);margin:0 8px}.pane-right footer>div:first-child{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.lang-switch{top:max(14px, env(safe-area-inset-top,0px));border:1px solid var(--border-strong);z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000073;border-radius:999px;gap:4px;padding:4px;display:flex;position:fixed;right:14px}.lang-switch button{color:var(--text-dim);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.lang-switch button.active{background:var(--primary);color:var(--cta-text)}@media (max-width:380px){.pass-stub{padding:0 16px}.pass-body{padding:18px 18px 4px}.pass-rail{margin:14px 18px 0}.pass-body h2{font-size:26px}.pass-body h2.register-h2{font-size:21px}.pass-eye{letter-spacing:.12em}.auth-form input.code-input{font-size:20px}.auth-form .row-between:has(.btn.ghost){flex-direction:column;align-items:stretch;gap:6px}.auth-form .row-between .btn.ghost{width:100%}}
