/* Styles applicatifs Repalox (complements a Bootstrap). */

body {
    min-height: 100vh;
}

main {
    padding-bottom: 3rem;
}

/*
 * RG-11 : dans tout formulaire, le label d'un champ obligatoire est mis en avant
 * par une etoile rouge. Le theme de formulaire bootstrap_5_layout ajoute la classe
 * `required` au label (ou au legend) de chaque champ requis : on s'appuie dessus,
 * la regle couvre donc automatiquement tous les formulaires de l'application.
 */
label.required::after,
legend.required::after {
    content: " *";
    color: var(--bs-danger, #dc3545);
    font-weight: 700;
}

/*
 * Agenda hebdomadaire de l'accueil (Lot 3) : grille 7 colonnes sur ecran large, pile
 * verticale sur mobile pour rester exploitable sur smartphone (CLAUDE.md, contrainte
 * transverse responsive).
 */
.agenda-semaine {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 0.5rem;
}

@media (max-width: 767.98px) {
    .agenda-semaine {
        grid-template-columns: 1fr;
    }
}

.agenda-jour-entete--actif {
    box-shadow: 0 0 0 2px var(--bs-primary, #0d6efd);
}

.agenda-jour {
    padding: 0.375rem;
    border-radius: 0.375rem;
}

/* Colonne du jour actuel (non selectionne) : teinte dediee, distincte du jour actif (primaire). */
.agenda-jour--aujourdhui {
    background-color: var(--bs-info-bg-subtle, #cff4fc);
}

/* Colonnes des jours passes de la semaine affichee : fond neutre attenue. */
.agenda-jour--passe {
    background-color: var(--bs-secondary-bg, #e9ecef);
}

.agenda-bloc {
    display: block;
    overflow-wrap: anywhere;
}

/* Cartes de detail (jour selectionne / brouillons) : largeur minimale, wrap Bootstrap natif. */
.accueil-carte {
    flex: 1 1 260px;
    max-width: 340px;
}
