/* style.css - Format ultra compact (378px) & Vert foncé */

.calendar-container {
    max-width: 378px !important; /* Réduit de 420px à 378px (-10%) */
    width: 100%;
    margin: 15px auto;
    font-family: Arial, sans-serif;
    padding: 0 4px;
    box-sizing: border-box;
}

/* Barre d'administration */
.admin-bar {
    text-align: right;
    margin-bottom: 5px;
    font-size: 0.7em;
}

/* En-tête (Bandeau du mois en vert foncé) */
.calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #1e4620; /* Vert foncé */
    color: white;
    padding: 6px 10px;
    border-radius: 5px 5px 0 0;
}

.calendar-header h2 {
    margin: 0;
    font-size: 0.85em;
}

.calendar-header a.nav-btn,
.calendar-header span.nav-btn {
    color: white;
    text-decoration: none;
    font-size: 0.9em;
    font-weight: bold;
    padding: 2px 7px;
    background-color: #2d6a30; /* Boutons vert légèrement plus clair */
    border-radius: 3px;
    transition: background-color 0.2s;
}

.calendar-header a.nav-btn:hover {
    background-color: #3e8e42;
}

/* Grille principale */
.calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    background-color: #dcdde1;
    padding: 5px;
    border: 1px solid #ccc;
    border-top: none;
}

.day-name {
    text-align: center;
    font-weight: bold;
    padding: 2px 0;
    font-size: 0.65em;
    color: #2f3640;
}

.day {
    padding: 6px 0;
    text-align: center;
    border-radius: 3px;
    font-size: 0.75em;
    font-weight: bold;
    user-select: none;
}

/* Mode admin interactif */
.day.is-admin {
    cursor: pointer;
    transition: transform 0.1s, opacity 0.2s;
}

.day.is-admin:hover {
    opacity: 0.85;
    transform: scale(1.05);
}

/* --- COULEURS VIVES --- */

/* Libre : Vert Émeraude */
.status-libre {
    background-color: #209250;
    color: #ffffff;
}

/* Option : Orange Vif */
.status-option {
    background-color: #ec913c;
    color: #ffffff;
}

/* Réservé : Rouge Vif */
.status-reserve {
    background-color: #df2020;
    color: #ffffff;
}

/* Passé / Indisponible : Gris */
.status-passe {
    background-color: #bec3c9;
    color: #8395a7;
    font-weight: normal;
    cursor: not-allowed;
}

/* --- LÉGENDE ULTRA COMPACTE --- */
.calendar-legend {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 6px;
    padding: 5px;
    background-color: #f8f9fa;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.legend-item {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.65em;
    font-weight: bold;
    color: #2f3640;
}

.legend-color {
    width: 10px;
    height: 10px;
    border-radius: 2px;
    display: inline-block;
}