/* calendrier */

.calendrier_wrapper,
.calendrier.overDialog {
    position: fixed;
    color: var(--color);
    background-color: var(--background-color);
    font-family: var(--font-family-calendrier), sans-serif;
    font-weight: normal;
    font-variant: normal;
    font-size: var(--font-size-calendrier);
    z-index: 150;

    /* border: var(--border-frame); */
    border: none;
    border-color: var(--color-light);
    border-radius: 0.6rem;
    outline: solid medium transparent;
    outline-offset: 0;
    box-shadow: 0 0 10px 0 var(--background-color-backdrop);
}
.calendrier_wrapper.innerField,
.calendrier.innerField {
    position: relative;
    border: var(--border-input);
    box-shadow: none;
    font-size: calc(var(--font-size-calendrier) * 0.93);
}
.calendrier {
    border-radius: inherit;
    border-collapse: collapse;
    border-spacing: 5px;
    empty-cells: show;
}

table.calendrier > tbody,
table.calendrier > tbody > tr:first-child,
table.calendrier > tbody > tr:first-child > td:first-child {
    border-top-left-radius: inherit;
}
table.calendrier > tbody,
table.calendrier > tbody > tr:first-child,
table.calendrier > tbody > tr:first-child > td:last-child {
    border-top-right-radius: inherit;
}
table.calendrier > tbody,
table.calendrier > tbody > tr:last-child,
table.calendrier > tbody > tr:last-child > td:first-child {
    border-bottom-left-radius: inherit;
}
table.calendrier > tbody,
table.calendrier > tbody > tr:last-child,
table.calendrier > tbody > tr:last-child > td:last-child {
    border-bottom-right-radius: inherit;
}

.calendrier_wrapper[data-position=NW],
.calendrier[data-position=NW] {
    top: 1.2rem;
    left: 1.2rem;
}
.calendrier_wrapper[data-position=NE],
.calendrier[data-position=NE] {
    top: 1.2rem;
    right: 1.2rem;
}
.calendrier_wrapper[data-position=SW],
.calendrier[data-position=SW] {
    bottom: 1.2rem;
    left: 1.2rem;
}
.calendrier_wrapper[data-position=SE],
.calendrier[data-position=SE] {
    bottom: 1.2rem;
    right: 1.2rem;
}

.calendrier tr {
    vertical-align: middle;
}
.calendrier td {
    height: var(--cell-width-calendrier);
}
.innerField .calendrier td {
    height: calc(var(--cell-width-calendrier) * 0.66);
}
.calendrier_fleche {
    text-align: center;
    cursor: pointer;
    font-size: var(--font-size-calendrier-fleche);
}

.calendrier_mois {
    text-align: center;
    font-weight: bold;
    font-size: var(--font-size-calendrier-mois);
}

.calendrier_rangee_semaine > * {
    text-align: center;
    background-color: var(--background-color-theme-dark);
    font-weight: normal;
    font-size: var(--font-size-calendrier-semaine);
}

.calendrier *.cal_case {
    text-align: center;
    width: var(--cell-width-calendrier);
    height: var(--cell-width-calendrier);
    font-size: var(--font-size-calendrier-jour);
    border: none;
}
.innerField .calendrier *.cal_case {
    width: calc(var(--cell-width-calendrier) * 0.66);
    height: calc(var(--cell-width-calendrier) * 0.66);
}
.calendrier *.cal_case:nth-child(odd) {
    background-color: var(--background-color-alt);
}
.calendrier *.cal_case:nth-child(even) {
    background-color: var(--background-color);
}
.calendrier *.cal_case_actif {
    cursor: pointer;
}
.calendrier *.cal_case_inactif {
    color: var(--color-ultralight);
}
.calendrier *.cal_case_aujourdhui {
    font-weight: bold;
}
.calendrier *.cal_case_selectionne.cal_case_selectionne:nth-child(odd) {
    background-color: var(--background-color-evidence-alt);
}
.calendrier *.cal_case_selectionne.cal_case_selectionne:nth-child(even) {
    background-color: var(--background-color-evidence);
}

.calendrier *.cal_case > * {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.calendrier *.cal_case > *:hover {
    background-color: var(--background-color-hover);
}
