.vs-auth{--auth-field-line:#8a7e78;--auth-soft-line:#d9cfc8;min-height:100dvh;display:grid;place-items:center;padding:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 4%,var(--ground)),var(--ground) 60%);color:var(--ink);font-family:var(--body);line-height:1.5}.vs-auth .vs-auth-card{width:100%;max-width:400px;padding:28px 20px 24px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 1px 3px rgba(23,18,15,.06)}@media (min-width:480px){.vs-auth .vs-auth-card{padding:36px 32px 28px}}.vs-auth .vs-auth-logo{display:flex;margin-bottom:24px}.vs-auth .vs-auth-logo a{min-height:44px;color:var(--ink);text-decoration:none}.vs-auth .vs-auth-title{margin:0;font-family:var(--body);font-size:1.5rem;font-weight:700;line-height:1.25;letter-spacing:-.01em;text-transform:none;color:var(--ink)}.vs-auth .vs-auth-lede{margin:8px 0 24px;font-size:.9375rem;color:var(--muted)}.vs-auth .vs-auth-lede b{color:var(--ink);overflow-wrap:anywhere}.vs-auth .vs-auth-warning{margin:-8px 0 20px;padding:12px 14px;border:1px dashed var(--auth-field-line);border-radius:10px;font-size:.85rem;color:var(--muted)}.vs-auth .vs-auth-providers{display:grid;gap:10px}.vs-auth .vs-auth-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;padding:8px 16px;border:1px solid var(--auth-soft-line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer}.vs-auth .vs-auth-btn.provider:hover:not(:disabled){border-color:var(--auth-field-line);background:var(--ground)}.vs-auth .vs-auth-btn:disabled{opacity:.55;cursor:not-allowed}.vs-auth .vs-auth-btn.primary{margin-top:8px;border-color:var(--accent);background:var(--accent);color:var(--accent-ink);font-weight:700}.vs-auth .vs-auth-btn.primary:hover:not(:disabled){background:var(--deep);border-color:var(--deep)}.vs-auth .vs-auth-btn.primary:disabled:not([aria-busy]){opacity:1;border-color:var(--line);background:var(--line);color:var(--muted)}.vs-auth .vs-auth-btn:focus-visible,.vs-auth .vs-auth-link:focus-visible,.vs-auth a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.vs-auth .vs-auth-spinner{flex:none;width:16px;height:16px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:vs-auth-spin .7s linear infinite}@keyframes vs-auth-spin{to{transform:rotate(1turn)}}.vs-auth .vs-auth-sep{display:flex;align-items:center;gap:12px;margin:20px 0;font-size:.8125rem;color:var(--muted)}.vs-auth .vs-auth-sep:after,.vs-auth .vs-auth-sep:before{content:"";flex:1;height:1px;background:var(--line)}.vs-auth .vs-auth-form{display:grid;gap:8px}.vs-auth .vs-auth-form label{font-size:.875rem;font-weight:600}.vs-auth .vs-auth-input{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--auth-field-line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:1rem;outline:none}.vs-auth .vs-auth-input::placeholder{color:var(--muted);opacity:1}.vs-auth .vs-auth-input[aria-invalid=true]{border-color:var(--lose)}.vs-auth .vs-auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--glow)}.vs-auth .vs-auth-input:disabled{opacity:.6}.vs-auth .vs-auth-otp{position:relative}.vs-auth .vs-auth-otp-input{position:absolute;inset:0;z-index:1;width:100%;height:100%;padding:0;border:0;background:transparent;color:transparent;caret-color:transparent;font-size:16px;outline:none}.vs-auth .vs-auth-otp-input::selection{background:transparent}.vs-auth .vs-auth-otp-input:focus-visible{outline:none}.vs-auth .vs-auth-otp-boxes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.vs-auth .vs-auth-otp-boxes span{display:grid;place-items:center;height:52px;border:1px solid var(--auth-field-line);border-radius:10px;background:var(--surface);font-family:var(--mono);font-size:1.4rem;font-weight:700}.vs-auth .vs-auth-otp-input[aria-invalid=true]+.vs-auth-otp-boxes span{border-color:var(--lose)}.vs-auth .vs-auth-otp-input:focus+.vs-auth-otp-boxes span.is-next{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.vs-auth .vs-auth-otp-input:disabled+.vs-auth-otp-boxes{opacity:.6}.vs-auth .vs-auth-error{display:flex;align-items:flex-start;gap:8px;margin:2px 0 0;font-size:.875rem;font-weight:600;line-height:1.4;color:var(--lose)}.vs-auth .vs-auth-error svg{flex:none;margin-top:1px}.vs-auth .vs-auth-code-actions{display:flex;justify-content:space-between;gap:12px;margin-top:4px}.vs-auth .vs-auth-link{min-height:44px;padding:0 4px;border:0;background:none;color:var(--deep);font:inherit;font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.vs-auth .vs-auth-link:disabled{color:var(--muted);text-decoration:none;cursor:not-allowed}.vs-auth .vs-auth-legal{margin:24px 0 0;font-size:.75rem;color:var(--muted)}.vs-auth .vs-auth-legal a{color:var(--ink);text-underline-offset:2px}.vs-auth .vs-auth-logo{align-items:center;justify-content:space-between;gap:12px}.vs-auth .vs-auth-close{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;color:var(--muted);font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:3px}.vs-auth .vs-auth-close:hover{color:var(--ink)}.vs-gate{position:relative}.vs-gate-skeleton{position:absolute;inset:0;overflow:hidden;filter:blur(7px);user-select:none;pointer-events:none}.vs-gate-overlay{position:relative}.vs-gate-overlay .vs-auth{min-height:0;align-items:start;padding:8px 0 0;background:transparent}.vs-gate-overlay .vs-auth-card{box-shadow:0 24px 60px -12px rgba(23,18,15,.45)}@media (max-width:767px){.vs-gate .vs-gate-overlay .vs-auth{padding:0 12px}.vs-gate .vs-gate-overlay .vs-auth-card{padding:16px 18px 18px}.vs-gate .vs-gate-overlay .vs-auth-logo{margin-bottom:8px}.vs-gate .vs-gate-overlay .vs-auth-title{font-size:1.3rem}.vs-gate .vs-gate-overlay .vs-auth-lede{margin:4px 0 16px;font-size:.875rem}.vs-gate .vs-gate-overlay .vs-auth-legal{margin-top:14px}}