
/* ===== ABIDJAN RESIDENCE FORCE VISIBILITY COLORS ===== */
html body h1,
html body h2,
html body h3,
html body h4,
html body .page-title,
html body .section-title,
html body .room-title,
html body .room-detail h1,
html body .room-detail h2,
html body .room-details h1,
html body .room-details h2,
html body .backend-main h1,
html body .backend-main h2,
html body .backend-card h1,
html body .backend-card h2,
html body .room-calendar-head h2,
html body .calendar-toolbar strong {
    color: #0f1f33 !important;
    opacity: 1 !important;
    visibility: visible !important;
    text-shadow: none !important;
    font-weight: 900 !important;
}

html body .hero h1,
html body .hero-title,
html body .hero h2,
html body .hero p {
    color: #ffffff !important;
    text-shadow: 0 8px 28px rgba(0,0,0,.45) !important;
}

html body .eyebrow,
html body .section-eyebrow {
    color: #d97706 !important;
    font-weight: 900 !important;
}

/* ===== CALENDAR COLORS FORCE ===== */

/* Default */
html body .calendar-day {
    background: #f8fafc !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f1f33 !important;
    opacity: 1 !important;
}

/* Available = GREEN */
html body .calendar-day.available,
html body button.calendar-day.available,
html body .calendar-grid .calendar-day.available:not(.past):not(.unavailable) {
    background: #dcfce7 !important;
    border-color: #16a34a !important;
    color: #14532d !important;
}

html body .calendar-day.available small {
    color: #166534 !important;
}

/* Booked / unavailable = ORANGE */
html body .calendar-day.unavailable,
html body button.calendar-day.unavailable,
html body .calendar-grid .calendar-day.unavailable {
    background: #fed7aa !important;
    border-color: #f97316 !important;
    color: #9a3412 !important;
    opacity: 1 !important;
}

html body .calendar-day.unavailable small {
    color: #9a3412 !important;
}

/* Past = GRAY */
html body .calendar-day.past,
html body button.calendar-day.past,
html body .calendar-grid .calendar-day.past {
    background: #e5e7eb !important;
    border-color: #94a3b8 !important;
    color: #475569 !important;
    opacity: .9 !important;
}

html body .calendar-day.past small {
    color: #64748b !important;
}

/* Selected = NAVY */
html body .calendar-day.selected,
html body button.calendar-day.selected {
    background: #172533 !important;
    border-color: #172533 !important;
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(23,37,51,.30) !important;
}

html body .calendar-day.selected small {
    color: #ffffff !important;
}

html body .calendar-day.in-range {
    outline: 3px solid rgba(23,37,51,.22) !important;
}

/* Legend */
html body .calendar-legend .dot.available,
html body .calendar-legend .available {
    background: #16a34a !important;
}

html body .calendar-legend .dot.unavailable,
html body .calendar-legend .unavailable {
    background: #f97316 !important;
}

html body .calendar-legend .dot.selected,
html body .calendar-legend .selected {
    background: #172533 !important;
}

html body .availability-result.is-available {
    background: #dcfce7 !important;
    border: 1px solid #16a34a !important;
    color: #14532d !important;
}

html body .availability-result.is-unavailable {
    background: #fed7aa !important;
    border: 1px solid #f97316 !important;
    color: #9a3412 !important;
}
