body {
            padding-top: 70px; /* Adjust padding if navbar is fixed-top and for its height */
            background-color: #f8f9fa; /* Light gray background */
            display: flex;
            flex-direction: column;
            min-height: 100vh;
        }
        .navbar-brand-custom {
            font-weight: bold;
        }
        .user-avatar-nav {
            width: 32px;
            height: 32px;
            border-radius: 50%;
            margin-right: 8px;
            object-fit: cover;
        }
        .main-container {
            flex: 1; /* Allows container to expand and push footer down */
            padding-bottom: 20px; /* Space for content before footer */
        }
        .footer-custom {
            background-color: #111; /* Darker background for footer */
            color: #888; /* Dimmer text for footer */
            padding: 2rem 0;
            text-align: center;
            font-size: 0.9em;
            border-top: 1px solid #333;
        }



html, body { /* Applique le style au body et html */
    background-color: #000;
    background-image: url('../images/background_near.png');
    background-size: cover; /* Couvre toute la zone sans déformer l'image */
    background-position: center center; /* Centre l'image */
    background-repeat: no-repeat; /* Empêche la répétition de l'image */
    background-attachment: fixed; /* L'image reste fixe lors du défilement */
    min-height: 100%; /* Assure que le body prend au moins 100% de la hauteur */
    background-color: black; /* Couleur de fond de secours si l'image ne charge pas */
    color: white; /* Définit la couleur du texte par défaut en blanc */
}

/* Nouvelle classe pour le fond des modes de jeu avec opacité */
.row-background {
    position: relative; /* Nécessaire pour positionner le pseudo-élément */
    overflow: hidden; /* Pour contenir le pseudo-élément si nécessaire */
	z-index: 1;
}

.row-background::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('../images/texture.jpg'); /* Chemin de l'image de fond */
    background-size: cover; /* Couvre toute la zone */
    background-position: center center; /* Centre l'image */
    background-repeat: no-repeat; /* Empêche la répétition */
    opacity: 0.85; /* Opacité de 95% pour l'image de fond (très peu de transparence) */
    z-index: -1; /* Place l'image derrière le contenu du div */
}

.modal-background{
	background-image: url('../images/background_far.png');
	background-color: black;
	background-size: auto;
    background-position: center center;
    background-repeat: no-repeat;
}

/* Custom UI enhancements for the Landing and Rules pages */
.card-body.row-background {
    color: white;
}

.breadcrumb-item + .breadcrumb-item::before {
    color: #6c757d;
}

.hero-section {
    position: relative;
    overflow: hidden;
}

.hero-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle, rgba(0,123,255,0.1) 0%, rgba(0,0,0,0) 70%);
    pointer-events: none;
}

.shadow-hover:hover {
    box-shadow: 0 1rem 3rem rgba(0,0,0,0.5) !important;
    border-color: #0d6efd !important;
}

.btn-success {
    background-color: #198754;
    border-color: #198754;
    font-weight: 600;
}

.btn-success:hover {
    background-color: #157347;
    border-color: #146c43;
}

.dropdown-menu-dark .dropdown-item:hover {
    background-color: #0d6efd;
}

.shadow-hover:hover {
    transform: translateY(-10px);
}

.bg-gradient-dark {
    background: linear-gradient(135deg, #1a1a1a 0%, #000000 100%);
}

.auth-card {
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5);
}

.auth-hero-section {
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.7)), url('../images/background_near.png') center/cover fixed;
    min-height: calc(100vh - 70px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 0;
}