.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(42,109,244,.1),rgba(176,42,244,.1))}.login-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);padding:2.5rem;width:100%;max-width:400px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;background:linear-gradient(135deg,#2a6df4,#b02af4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-header p{color:hsl(var(--foreground)/.6);font-size:.875rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:hsl(var(--foreground)/.8)}.form-group input{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) - 4px);background:hsl(var(--background));color:hsl(var(--foreground));transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary)/.2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:calc(var(--radius) - 4px);cursor:pointer;transition:all .2s}.btn-primary{width:100%;background:linear-gradient(135deg,#2a6df4,#4b2af4);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 20px -10px rgba(42,109,244,.5)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background:rgba(217,38,38,.1);color:#c32222;padding:.75rem 1rem;border-radius:calc(var(--radius) - 4px);font-size:.875rem;margin-bottom:1rem;border:1px solid rgba(217,38,38,.2)}.form-footer-link{text-align:center;margin-top:1.5rem;font-size:.875rem;color:hsl(var(--foreground)/.6)}.form-footer-link a{color:hsl(var(--primary));text-decoration:none;font-weight:500}.form-footer-link a:hover{text-decoration:underline}.login-fallback{width:100%;margin-top:1rem;padding:.65rem;border-radius:999px;border:1px solid hsla(0,0%,100%,.15);background:transparent;color:inherit;cursor:pointer;font-size:.9rem}.login-fallback:hover{background:hsla(0,0%,100%,.06)}