/*
 * ========================================================
 * [ÉTAT : FINAL] Date : 21-05-2026 16:23:00
 * FICHIER : admin_horaire.css
 * RÔLE : Styles de la vue calendrier interactif
 * Auteurs : Yvan Dubé & Gemini (IA Collaboratrice)
 * =========================================================
 */

.conteneur-admin {
    width: 100%;
    margin: 20px auto;
    padding: 10px;
}

/* --- Layout Principal (Grille 2 colonnes) --- */
.layout-interactif {
    display: grid;
    grid-template-columns: 2.5fr 1fr; 
    gap: 30px;
    /* 1. RETIRE la ligne "align-items: start;" pour permettre à la colonne de s'étirer */
}

@media (max-width: 900px) {
    .layout-interactif {
        grid-template-columns: 1fr; 
    }
}

/* 2. AJOUTE ceci pour garantir que le parent crée une longue piste de glissement */
.section-formulaire {
    height: 100%;
}

/* --- Calendrier --- */
.composant-calendrier {
    background: #fff;
    border: 1px solid var(--couleur-bordure);
    border-radius: var(--radius);
    padding: 20px;
    margin-bottom: 30px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.03);
}

.titre-mois {
    text-align: center;
    color: var(--couleur-primaire);
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 22px;
}

.grille-calendrier {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
}

.entete-jour {
    background: var(--couleur-grise);
    text-align: center;
    padding: 10px 0;
    font-weight: bold;
    color: #444;
    border-radius: 4px;
}

.cellule-vide, .cellule-jour {
    min-height: 100px;
    border: 1px solid #eaeaea;
    border-radius: 4px;
    padding: 5px;
    background: #fdfdfd;
}

.cellule-jour {
    cursor: pointer;
    transition: all var(--transition-rapide);
    position: relative;
}

.cellule-jour:hover {
    border-color: var(--couleur-primaire);
    background-color: #faf6fc;
}

.cellule-jour.selectionne {
    border: 2px solid var(--couleur-primaire);
    background-color: #f3ebf8;
    box-shadow: inset 0 0 0 1px var(--couleur-primaire);
}

.jour-dimanche {
    background-color: #fcfcfc;
    border-top: 3px solid var(--couleur-grise);
}

.jour-aujourdhui {
    background-color: #fffdf0;
    border-color: #ffd966;
}

.numero-jour {
    font-weight: bold;
    color: #666;
    display: block;
    margin-bottom: 5px;
}

/* --- Badges des employés --- */
.conteneur-badges {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.badge-horaire {
    font-size: 11px;
    padding: 3px 5px;
    border-radius: 3px;
    color: #fff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center;
}

.badge-regulier {
    background-color: #4b8b3b; /* Vert doux */
}

.badge-special {
    background-color: #e67e22; /* Orange */
}


/* --- Panneau Latéral (Formulaire & Mémos) --- */
.section-formulaire {
    height: 100%;
}

/* Le conteneur magique qui fait glisser les deux boîtes ensemble au défilement */
.boite-sticky-container {
    position: sticky;
    top: 120px;
    display: flex;
    flex-direction: column;
    gap: 20px; /* Espace équilibré entre la boîte mémo et la boîte assignation */
}

/* Design de la nouvelle boîte de remarque générale */
.boite-message-general {
    background: #fff4e6; /* Teinte orangée très douce pour se différencier */
    border: 1px solid #ffe3c3;
    border-left: 5px solid #e67e22; /* Rappel visuel de la couleur "spéciale" */
    border-radius: var(--radius);
    padding: 20px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.02);
}

.boite-message-general h2 {
    margin-top: 0;
    font-size: 16px;
    color: #d35400;
    border-bottom: 1px solid #ffe3c3;
    padding-bottom: 8px;
    margin-bottom: 12px;
}

.affichage-message-interne p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    color: #333;
    background: #fff;
    padding: 12px;
    border-radius: 4px;
    border: 1px solid #fbf2e7;
    white-space: pre-line;
}

/* Style de base de la boîte d'assignation existante */
.boite-assignation {
    background: var(--couleur-grise-pale);
    border: 1px solid var(--couleur-bordure);
    border-radius: var(--radius);
    padding: 20px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.02);
}

.boite-assignation h2 {
    margin-top: 0;
    font-size: 18px;
    border-bottom: 2px solid var(--couleur-grise);
    padding-bottom: 10px;
}

.instruction-clic {
    font-size: 13px;
    color: #666;
    font-style: italic;
    margin-bottom: 20px;
    background: #fff;
    padding: 8px;
    border-radius: 4px;
    border-left: 3px solid var(--couleur-primaire);
}

.champ-formulaire { margin-bottom: 15px; }
.champ-formulaire label { display: block; font-weight: bold; font-size: 13px; margin-bottom: 5px; }
.champ-formulaire input, .champ-formulaire select, .champ-formulaire textarea {
    width: 100%; padding: 8px; border: 1px solid var(--couleur-bordure); border-radius: 4px;
}

.groupe-heures {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.btn-soumettre {
    background-color: var(--couleur-primaire) !important;
    color: #fff !important;
    font-weight: bold;
    padding: 12px !important;
    border: none;
    cursor: pointer;
}
.btn-soumettre:hover { background-color: var(--couleur-primaire-hover) !important; }
