.login-card { background: rgba(255, 255, 255, 0.03); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.1); padding: 2.5rem; border-radius: 20px; width: 100%; max-width: 800px; box-shadow: 0 10px 40px rgba(0,0,0,0.3); }
        .login-header { text-align: center; margin-bottom: 2rem; }
        .login-header h2 { font-size: 2rem; margin-bottom: 0.5rem; background: linear-gradient(135deg, #fff, #667eea); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
        
        .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
        .form-group { margin-bottom: 1rem; }
        .form-label { display: block; margin-bottom: 5px; font-size: 0.85rem; color: rgba(255,255,255,0.6); }
        .form-control { width: 100%; padding: 12px; background: rgba(0,0,0,0.3); border: 1px solid rgba(255,255,255,0.1); border-radius: 10px; color: #fff; outline: none; transition: 0.3s; }
        .form-control:focus { border-color: #667eea; background: rgba(0,0,0,0.5); }
        
        .full-width { grid-column: span 2; }
        
        .btn-primary { width: 100%; padding: 14px; background: linear-gradient(135deg, #667eea, #764ba2); color: white; border: none; border-radius: 10px; font-weight: bold; cursor: pointer; transition: 0.3s; margin-top: 10px; }
        .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(102, 126, 234, 0.4); }
        
        .links { text-align: center; margin-top: 1.5rem; font-size: 0.9rem; }
        .links a { color: #667eea; text-decoration: none; }
        .alert-error { background: rgba(239, 68, 68, 0.2); color: #f87171; padding: 10px; border-radius: 8px; margin-bottom: 15px; font-size: 0.9rem; text-align: center; border: 1px solid rgba(239, 68, 68, 0.3); }

        @media(max-width: 600px) { .form-grid { grid-template-columns: 1fr; } .full-width { grid-column: span 1; } }
