.calendar-container {
    height: 400px;
}

.calendar_default_main {
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    margin-bottom: 24px;
    background: #fff;
    border-color: rgba(12, 12, 12, 0.3);
    font: var(--font-texte);
}

/* Styles pour les boutons de navigation */
#previousWeek, #nextWeek {
    border-top: none;
    border-right: none;
    border-left: none;
    background: none;
    padding: 0;
    height: 20px;
}

#currentWeek {
    font-size: 1.2rem;
    color: #2c3e50;
}

.modal-dialog {
    max-width: 420px;
    width: 95vw;
    margin: 1.5rem auto;
}
.modal-content.conflict-modal {
    border-radius: 14px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.13);
    border: none;
    background: #fff;
    max-height: 90vh;
    overflow: hidden;
}
.modal-header.conflict-modal {
    background: linear-gradient(90deg, #f2979d 0%, #fffbe6 100%);
    border-bottom: none;
    border-radius: 14px 14px 0 0;
    padding: 1rem 1.25rem 0.75rem 1.25rem;
}
.modal-title.conflict-modal {
    color: var(--accent);
    font-weight: 700;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.modal-body.conflict-modal {
    padding: 1.1rem 1.25rem 1.1rem 1.25rem;
    background: #fffbe6;
    border-radius: 0 0 14px 14px;
    max-height: 55vh;
    overflow-y: auto;
}
.modal-body.conflict-modal ul {
    background: #fff;
    border-radius: 7px;
    padding: 0.5rem 0.75rem;
    margin-bottom: 0.7rem;
    box-shadow: 0 1px 5px rgba(255,193,7,0.06);
    font-size: 0.97rem;
}
.modal-body.conflict-modal p strong {
    color: var(--accent);
}
.modal-footer.conflict-modal {
    border-top: none;
    background: #fffbe6;
    border-radius: 0 0 14px 14px;
    padding: 0.7rem 1.25rem 1.1rem 1.25rem;
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
}
.modal-footer.conflict-modal .btn {
    min-width: 120px;
    font-weight: 600;
    font-size: 0.98rem;
    border-radius: 7px;
    box-shadow: 0 1px 5px rgba(255,193,7,0.06);
    transition: background 0.2s, color 0.2s;
    padding: 0.45rem 0.7rem;
}
.modal-footer.conflict-modal .btn-secondary {
    background: #fff;
    color: var(--accent);
    border: 1px solid var(--primary);
}
.modal-footer.conflict-modal .btn-secondary:hover {
    background: var(--secondary);
    color: #fff;
}
.modal-footer.conflict-modal .btn-danger {
    background: #ff7043;
    border: none;
}
.modal-footer.conflict-modal .btn-danger:hover {
    background: #d84315;
}
.modal-footer.conflict-modal .btn-primary {
    background: var(--primary);
    color: #fff;
    border: none;
}
.modal-footer.conflict-modal .btn-primary:hover {
    background: var(--accent);
    color: #fff;
}

.calendar-header-border-color > * {
    border-left-color: var(--primary) !important;
    border-right-color: var(--primary) !important;
    color: var(--white-color) !important;
    font: var(--font-texte-gras);
}

.calendar_default_cell_inner {
    border-top: 0 solid transparent;
    font: var(--font-texte);
    color: var(--black-color);
}

.calendar_default_cell,
.calendar_default_cell_inner {
    background-color: rgba(0, 0, 0, 0.03);
}

.calendar_default_cell_nonbusiness,
.calendar_default_cell_nonbusiness_inner {
    background-color: rgba(0, 0, 0, 0.5) !important;
}

.calendar_default_colheader,
.calendar_default_corner,
.calendar_default_rowheader,
.calendar_default_main,
.calendar_default_cell {
    font: var(--font-texte);
    color: var(--black-color);
}

.calendar_default_colheader_inner,
.calendar_default_corner_inner,
.calendar_default_rowheader_inner {
    font: var(--texte-petit);
    color: var(--black-color);
}

.calendar_default_timeheader,
.calendar_default_timeheader_group,
.calendar_default_timeheadercol_inner {
    font: var(--titre-sans-serif);
    color: var(--black-color);
}

.calendar_default_event {
    overflow: hidden;
}

.calendar_default_event_inner {
    font: var(--texte-petit);
    border: none;
}

.calendar-menu {
    margin-bottom: 20px;
}

.calendar_default_corner_inner {
    background-color: var(--primary);
    border-right: none;
}

.calendar_default_cornerright_inner {
    background-color: var(--primary);
    border-left: none;
}