@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap');
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

.wrapper, .wrapper-calendar {
    margin: 15px auto;
    padding: 10px;
}

.wrapper header {
    display: flex;
    align-items: center;
    padding: 25px 30px 10px;
    justify-content: space-between;
}

.button-container-calendar {
    display: flex;
    justify-content: center;
}

header .icons {
    display: flex;
}

header .icons span {
    height: 38px;
    width: 38px;
    margin: 0 1px;
    cursor: pointer;
    color: #878787;
    text-align: center;
    line-height: 38px;
    font-size: 1.9rem;
    user-select: none;
    border-radius: 50%;
}

.icons span:last-child {
    margin-right: -10px;
}

header .icons span:hover {
    background: #f2f2f2;
}

header .current-date {
    font-size: 1.45rem;
    font-weight: 500;
}

.calendar {
    padding: 20px;
}

.calendar ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    text-align: center;
}

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

.calendar li {
    color: #333;
    width: calc(100% / 7);
    font-size: 1.07rem;
}

.calendar .weeks li {
    font-weight: 500;
    cursor: default;
}

.calendar .days li {
    z-index: 1;
    cursor: pointer;
    position: relative;
    margin-top: 30px;
}

.days li.inactive {
    color: #aaa;
}

.days li.active {
    color: #fff;
}

.days li::before {
    position: absolute;
    content: "";
    left: 50%;
    top: 50%;
    height: 40px;
    width: 40px;
    z-index: -1;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.days li.active::before {
    background: #f45038;
}

.days li:not(.active):hover::before {
    background: #f2f2f2;
}

.container-calendar {
    background: #ffffff;
    padding: 15px;
    max-width: 600px;
    margin: 0 auto;
    overflow: auto;
}

.button-container-calendar div,
#today {
    cursor: pointer;
    display: inline-block;
    background: #09538a;
    color: #fff;
    border-radius: 4px;
    padding: 5px 10px;
}

.table-calendar {
    border-collapse: collapse;
    width: 100%;
}

.table-calendar td,
.table-calendar th {
    padding: 5px;
    border: 1px solid #e2e2e2;
    text-align: center;
    vertical-align: top;
}

.date-picker.selected {
    font-weight: bold;
    outline: 1px dashed #09538a;
}

.date-picker {
    text-decoration-line: line-through;
}

.date-picker#booked {
    font-weight: bold;
    background-color: #f45038 !important;
    color: #fff !important;
    text-decoration-line: inherit;
}

.date-picker.bk-available {
    font-weight: bold;
    background-color: #188a09;
    background-clip: padding-box;
    color: #fff !important;
    text-decoration-line: inherit;
}
.date-picker.bk-available.half-day {
	background-image: linear-gradient(to bottom right, #188a09 50%, transparent 50%);
	background-size: 100% 100%;
	background-color: #a1ca9b;
}

.date-picker.bk-available:hover {
    cursor: pointer;
}

.date-picker.selected span {
    border-bottom: 2px solid currentColor;
}


/* dimanche */

.date-picker:nth-child(1) {
    color: red;
}

#monthAndYear {
    text-align: center;
    margin: 0;
}

.button-container-calendar {
    position: relative;
    margin-bottom: 1em;
    overflow: hidden;
    clear: both;
}

.button-container-calendar .material-symbols-outlined {
    font-size: 16px;
}

#previous,
#next {
    display: flex;
    align-items: center;
    position: absolute;
}

#previous {
    float: left;
    left: 0;
}

#next {
    float: right;
    right: 0;
}

.footer-container-calendar {
    margin-top: 1em;
    border-top: 1px solid #dadada;
    padding: 10px 0;
}

.footer-container-calendar select {
    cursor: pointer;
    display: inline-block;
    background: #ffffff;
    color: #585858;
    border: 1px solid #bfc5c5;
    border-radius: 3px;
    padding: 5px 1em;
}

.tg {
    border-collapse: collapse;
    border-spacing: 0;
}

.tg td {
    border-color: black;
    border-style: solid;
    border-width: 1px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    overflow: hidden;
    padding: 10px 5px;
    word-break: normal;
}

.tg th {
    border-color: black;
    border-style: solid;
    border-width: 1px;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: normal;
    overflow: hidden;
    padding: 10px 5px;
    word-break: normal;
}

.tg .tg-0lax {
    text-align: left;
    vertical-align: top
}

.bk-available {
    position: relative;
}

/* styling of the tooltip display */
.info-wanday {
	display: none;
	position: absolute;
	top: -45px;
	z-index: 1;
	background: #f45038;
	padding: 8px;
	font-size: 12px;
	color: #fff;
	border-radius: 2px;
	animation: fadeIn 0.6s;
	width: 100%;
	left: 0;
}

/* optional styling to add a "wedge" to the tooltip */
.info-wanday:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-top: 8px solid #f45038;
}

@keyframes fadeIn {
 from {
   opacity: 0;
 }
 to {
   opacity: 1;
 }
}
.bk-available:hover .info-wanday {
    display: block; /* afficher lorsqu'on survole le parent */
  }

@media screen and (max-width: 768px) {
    .wrapper-calendar.col-12.col-lg-6 {
        padding: 0;
    }
    .container-calendar {
        padding: 0;
    }
    .footer-container-calendar {
        font-size: 12px;
    }
    .bk-available:hover .info-wanday{
        display: none;
    }
}