@layer components{.login-shell{background:radial-gradient(120% 84% at -10% -12%, hsl(var(--primary) / .2), transparent 58%), radial-gradient(100% 78% at 108% 10%, hsl(var(--accent) / .16), transparent 60%), linear-gradient(180deg, hsl(var(--background)) 0%, hsl(var(--background) / .98) 45%, hsl(var(--background)) 100%);min-height:100vh;position:relative}.login-backdrop{pointer-events:none;position:absolute;inset:0;overflow:hidden}.login-backdrop:before,.login-backdrop:after{content:"";filter:blur(42px);border-radius:9999px;position:absolute}.login-backdrop:before{background:radial-gradient(circle, hsl(var(--primary) / .24) 0%, transparent 68%);width:min(40rem,78vw);height:min(40rem,78vw);top:-28%;left:-22%}.login-backdrop:after{background:radial-gradient(circle, hsl(var(--accent) / .22) 0%, transparent 68%);width:min(35rem,68vw);height:min(35rem,68vw);top:8%;right:-18%}.login-card{border:1px solid hsl(var(--border) / .18);background:linear-gradient(146deg, hsl(var(--card) / .9), hsl(var(--background) / .68));box-shadow:0 42px 140px -90px hsl(var(--foreground) / .42);backdrop-filter:blur(14px);border-radius:1.8rem;position:relative;overflow:hidden}.login-card:before{content:"";pointer-events:none;background:linear-gradient(120deg, hsl(var(--primary) / .18), transparent 38%), radial-gradient(circle at 88% -8%, hsl(var(--accent) / .2), transparent 42%);position:absolute;inset:0}.login-card-content{background:linear-gradient(180deg, hsl(var(--card) / .72), hsl(var(--background) / .5));box-shadow:none;border:0;border-radius:1.45rem;padding:2rem;position:relative}.login-alert{border:1px solid hsl(var(--destructive) / .4);background:hsl(var(--destructive) / .1);color:hsl(var(--destructive));border-radius:1rem;padding:.75rem 1rem;font-size:.875rem}.login-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.login-providers{flex-direction:column;gap:.75rem;display:flex}.login-provider-btn{border:1px solid hsl(var(--border) / .5);background:hsl(var(--background) / .6);width:100%;color:hsl(var(--foreground));cursor:pointer;border-radius:1rem;align-items:center;gap:.875rem;padding:.875rem 1.25rem;font-size:.875rem;font-weight:500;transition:border-color .22s cubic-bezier(.16,1,.3,1),background-color .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1),transform .12s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.login-provider-btn:hover{border-color:hsl(var(--primary) / .5);background:hsl(var(--primary) / .06);box-shadow:0 2px 12px -4px hsl(var(--primary) / .18)}.login-provider-btn:active{transform:scale(.985)}.login-provider-btn:focus-visible{box-shadow:0 0 0 2px hsl(var(--ring) / .45);outline:none}.login-provider-icon{background:hsl(var(--secondary) / .7);border:1px solid hsl(var(--border) / .4);border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;transition:background-color .22s cubic-bezier(.16,1,.3,1),border-color .22s cubic-bezier(.16,1,.3,1);display:flex}.login-provider-label{text-align:left;flex:1}.login-provider-btn--discord .login-provider-icon{color:#5865f2}.login-provider-btn--discord:hover .login-provider-icon{background:#5966f324;border-color:#5966f34d}.login-provider-btn--google .login-provider-icon{color:hsl(var(--foreground))}.login-provider-btn--google:hover .login-provider-icon{background:#4387f41a;border-color:#4387f440}.login-back-link{color:hsl(var(--muted-foreground));font-size:.875rem;transition:color .18s cubic-bezier(.16,1,.3,1)}.login-back-link:hover{color:hsl(var(--foreground))}:root[data-theme-mode=light] .login-shell{background:radial-gradient(110% 80% at -10% -12%, hsl(var(--primary) / .14), transparent 58%), radial-gradient(90% 72% at 108% 12%, hsl(var(--accent) / .16), transparent 62%), linear-gradient(180deg, hsl(var(--background)) 0%, hsl(var(--background) / .97) 48%, hsl(var(--background)) 100%)}:root[data-theme-mode=light] .login-card{border-color:hsl(var(--border) / .28);background:linear-gradient(148deg, hsl(var(--card) / .94), hsl(var(--background) / .76));box-shadow:0 30px 84px -64px hsl(var(--foreground) / .22)}:root[data-theme-mode=light] .login-card-content{background:linear-gradient(180deg, hsl(var(--card) / .9), hsl(var(--background) / .74));box-shadow:none}:root[data-theme-mode=light] .login-provider-btn{border-color:hsl(var(--border) / .6);background:hsl(var(--card) / .8)}:root[data-theme-mode=light] .login-provider-btn:hover{border-color:hsl(var(--primary) / .45);background:hsl(var(--primary) / .05);box-shadow:0 2px 14px -4px hsl(var(--primary) / .12)}:root[data-theme-mode=light] .login-provider-icon{background:hsl(var(--secondary) / .6);border-color:hsl(var(--border) / .5)}:root[data-theme-mode=light] .login-provider-btn--discord:hover .login-provider-icon{background:#5966f31a;border-color:#5966f338}:root[data-theme-mode=light] .login-provider-btn--google:hover .login-provider-icon{background:#4387f414;border-color:#4387f433}@media (width>=768px){.login-card-content{padding:2.5rem}}}
