.auth-root{background:var(--canvas);color:var(--fg)}.auth-aurora{contain:paint;pointer-events:none;position:absolute;inset:-20%;-webkit-mask-image:linear-gradient(#000 40%,#0000 90%);mask-image:linear-gradient(#000 40%,#0000 90%)}.auth-aurora:before{content:"";filter:blur(80px);opacity:.5;background:conic-gradient(at 50% 30%,#2dd4bf00 0deg,#38bdf873 60deg,#2dd4bf80 110deg,#4ade804d 150deg,#2dd4bf00 220deg,#4ade8038 300deg,#2dd4bf00 360deg);position:absolute;inset:0}.auth-grain{pointer-events:none;opacity:.045;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:240px 240px;position:absolute;inset:0}.auth-dots{background-image:radial-gradient(#94a3b829 1px,#0000 1px);background-size:28px 28px;-webkit-mask-image:radial-gradient(60% 50% at 50% 20%,#000,#0000);mask-image:radial-gradient(60% 50% at 50% 20%,#000,#0000)}.auth-card{background:color-mix(in srgb, var(--surface) 58%, transparent);border:1px solid var(--hairline);-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);box-shadow:var(--highlight), 0 24px 48px -24px #0009, 0 40px 120px -30px var(--accent-glow), 0 0 80px -20px color-mix(in srgb, var(--accent) 18%, transparent)}.auth-btn{letter-spacing:-.01em;border-radius:9999px;justify-content:center;align-items:center;gap:10px;width:100%;height:44px;font-size:14px;font-weight:500;transition:background-color .15s,border-color .15s,opacity .15s,transform .1s;display:inline-flex}.auth-btn:disabled{opacity:.5;pointer-events:none}.auth-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.auth-btn-primary{background:var(--fg);color:var(--canvas)}.auth-btn-primary:hover{background:color-mix(in srgb, var(--fg) 92%, var(--canvas))}.auth-btn-secondary{background:color-mix(in srgb, var(--surface) 70%, transparent);color:var(--fg);border:1px solid var(--border-strong)}.auth-btn-secondary:hover{border-color:color-mix(in srgb, var(--accent) 60%, transparent);background:var(--surface)}.auth-btn:active{transform:translateY(1px)}.auth-input{border:1px solid var(--border);background:var(--inset);width:100%;height:44px;color:var(--fg);border-radius:12px;outline:none;padding:0 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.auth-input::placeholder{color:var(--dim)}.auth-otp{letter-spacing:.45em;text-align:center;height:60px;padding-left:.45em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:28px}@keyframes auth-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.auth-in{animation:.5s cubic-bezier(.16,1,.3,1) both auth-in}@media (prefers-reduced-motion:reduce){.auth-in{animation:none}}
