/* --- En-tête de page (Bannière) --- */
.page-header {
    height: 40vh; /* Moins haut que l'index */
    min-height: 350px;
    background-image: linear-gradient(rgba(15, 17, 21, 0.85), rgba(15, 17, 21, 1)), url('../images_site/image_3.png');
    background-size: cover;
    background-position: center;
    padding-top: 80px; /* Compense la navbar fixe */
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.small-subtitle {
    font-size: 0.85rem;
    letter-spacing: 2px;
}

/* --- Mise en page principale --- */
.page-content {
    min-height: 80vh; /* Permet de centrer la box verticalement */
}

/* Background avec filtre sombre géré purement en CSS */
.auth-bg {
    background-image: linear-gradient(rgba(15, 17, 21, 0.85), rgba(15, 17, 21, 1)), url('../images_site/default_article.png');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

/* --- Conteneur d'authentification --- */
.auth-container {
    max-width: 500px;
    width: 100%;
}

.auth-box {
    background-color: rgba(15, 17, 21, 0.85);
    border: 1px solid rgba(74, 222, 128, 0.3); /* Bordure vert subtil The Last Horizon */
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(5px);
}

/* --- Inputs personnalisés --- */
.custom-input {
    background-color: rgba(0, 0, 0, 0.6);
    border: 1px solid #4ade80;
    color: #d1d5db;
    transition: all 0.3s ease;
}

.custom-input:focus {
    background-color: rgba(0, 0, 0, 0.8);
    border-color: #f59e0b; /* Devient orange au focus */
    color: white;
    box-shadow: 0 0 8px rgba(245, 158, 11, 0.5);
}

.tracking-widest {
    letter-spacing: 0.2em;
}

.auth-bg {
    background-image: linear-gradient(rgba(15, 17, 21, 0.85), rgba(15, 17, 21, 1)), url('../images_site/image_1.png');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}