Faits: Faits: A. Par jugement du 30 octobre 2007, le Tribunal correctionnel de l'arrondissement de la Broye et du Nord vaudois a condamné A._ - ressortissant de Serbie et Montenegro et ayant obtenu la nationalité suisse par sa naturalisation en 2003 - à sept ans de réclusion, sous déduction de trente-sept jours de détention préventive, pour infraction grave à la loi fédérale sur les stupéfiants. Il a également révoqué un sursis qui lui avait été accordé en 2003 et ordonné l'exécution de la peine de vingt jours d'emprisonnement y relative. Enfin, il a ordonné l'arrestation immédiate du prénommé, qui a été placé en détention à l'issue de l'audience de jugement. Cette arrestation était motivée par le risque que le condamné prenne la fuite pour se soustraire à l'exécution de sa peine. A._ a recouru contre ce jugement le 2 novembre 2007 et il a déposé une demande de mise en liberté provisoire le 5 novembre 2007 auprès du Président de la Cour de cassation pénale du Tribunal cantonal du canton de Vaud. Rejetant cette requête par arrêt du 12 novembre 2007, ce magistrat a considéré en substance qu'un risque de fuite était avéré en raison des nombreuses attaches de A._ avec le Kosovo. Son attitude de déni et la lourde condamnation prononcée à son encontre faisaient également craindre qu'il ne cherche à se soustraire à l'exécution de sa peine. A._ a recouru contre ce jugement le 2 novembre 2007 et il a déposé une demande de mise en liberté provisoire le 5 novembre 2007 auprès du Président de la Cour de cassation pénale du Tribunal cantonal du canton de Vaud. Rejetant cette requête par arrêt du 12 novembre 2007, ce magistrat a considéré en substance qu'un risque de fuite était avéré en raison des nombreuses attaches de A._ avec le Kosovo. Son attitude de déni et la lourde condamnation prononcée à son encontre faisaient également craindre qu'il ne cherche à se soustraire à l'exécution de sa peine. B. A._ a recouru contre cette décision auprès de la Cour de cassation pénale du Tribunal cantonal du canton de Vaud (ci-après: le Tribunal cantonal). Il niait l'existence d'un risque de fuite et se plaignait du fait que l'on n'ait pas ordonné des mesures moins incisives que la détention, comme par exemple le dépôt de son passeport ou le versement de sûretés. Le Tribunal cantonal a rejeté le recours par arrêt du 3 décembre 2007, considérant avec le premier juge que le danger de fuite était suffisamment concret et vraisemblable pour justifier le maintien de l'intéressé en détention préventive. Il relevait en outre que cette mesure respectait le principe de la proportionnalité. B. A._ a recouru contre cette décision auprès de la Cour de cassation pénale du Tribunal cantonal du canton de Vaud (ci-après: le Tribunal cantonal). Il niait l'existence d'un risque de fuite et se plaignait du fait que l'on n'ait pas ordonné des mesures moins incisives que la détention, comme par exemple le dépôt de son passeport ou le versement de sûretés. Le Tribunal cantonal a rejeté le recours par arrêt du 3 décembre 2007, considérant avec le premier juge que le danger de fuite était suffisamment concret et vraisemblable pour justifier le maintien de l'intéressé en détention préventive. Il relevait en outre que cette mesure respectait le principe de la proportionnalité. C. Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral de modifier cet arrêt dans le sens d'une mise en liberté immédiate, subsidiairement d'une mise en liberté immédiate aux conditions émises par l'autorité compétente. Invoquant les art. 5 par. 3 CEDH et 31 Cst., il soutient que sa détention ne peut pas être justifiée par l'existence d'un risque de fuite. Il requiert en outre l'octroi de l'assistance judiciaire. Le Tribunal cantonal se réfère aux considérants de son arrêt. Le Procureur général du canton de Vaud conclut au rejet du recours. Interpellé, le recourant a renoncé à formuler des observations complémentaires. 