/* Estepona Apartments - independent availability calendar styles (Bootstrap 5.3.8) */
.ea-calendar {
    --ea-open-bg: #e2f3e6;
    --ea-open-text: #24663b;
    --ea-booked-bg: #f8e3e4;
    --ea-booked-text: #a13036;
    --ea-past-bg: #f1f2f4;
    --ea-past-text: #9299a2;
    color: #233142;
}
.ea-calendar__month {
    padding: 1rem;
    border: 1px solid #e2e6ea;
    border-radius: .75rem;
    background: #fff;
    box-shadow: 0 3px 16px rgb(0 0 0 / 5%);
}
.ea-calendar__month-title {
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0 0 .9rem;
}
.ea-calendar__grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: .3rem;
}
.ea-calendar__weekday,
.ea-calendar__day {
    display: grid;
    place-items: center;
    min-width: 0;
    aspect-ratio: 1;
    font-size: .86rem;
    line-height: 1;
}
.ea-calendar__weekday {
    aspect-ratio: auto;
    min-height: 1.9rem;
    font-size: .76rem;
    font-weight: 700;
    color: #6b7785;
}
.ea-calendar__day { border-radius: .38rem; font-weight: 600; }
.ea-calendar__day--open { background: var(--ea-open-bg); color: var(--ea-open-text); }
.ea-calendar__day--booked { background: var(--ea-booked-bg); color: var(--ea-booked-text); }
.ea-calendar__day--past { background: var(--ea-past-bg); color: var(--ea-past-text); }
.ea-calendar__day--empty { background: transparent; }
.ea-calendar__day--today { outline: 2px solid #316dac; outline-offset: -2px; }
.ea-calendar__swatch {
    display: inline-block;
    width: .85rem;
    height: .85rem;
    margin-right: .25rem;
    border-radius: .2rem;
    vertical-align: -.1rem;
    border: 1px solid rgb(0 0 0 / 7%);
}
.ea-calendar__swatch--open { background: var(--ea-open-bg); }
.ea-calendar__swatch--booked { background: var(--ea-booked-bg); }
.ea-calendar__swatch--past { background: var(--ea-past-bg); }
.ea-calendar__note { max-width: 920px; }
@media (max-width: 360px) {
    .ea-calendar__month { padding: .7rem; }
    .ea-calendar__grid { gap: .19rem; }
    .ea-calendar__day { font-size: .8rem; }
}
