/* Estilos base y custom para módulos */
body { overflow-x: hidden; }

/* Ajustes Visuales Calendario FullCalendar para Theme "Belén" */
.fc { --fc-border-color: #EFE4D8; --fc-page-bg-color: transparent; height: 100%; font-family: 'Inter', sans-serif;}
.fc-theme-standard td, .fc-theme-standard th { border-color: rgba(181, 141, 113, 0.2) !important; }

.fc-col-header-cell {
    font-size: 0.75rem; text-transform: uppercase; color: #8C7765; padding-bottom: 10px !important; border-bottom: none!important;
}

.fc-daygrid-day-number {
    font-size: 0.95rem; font-weight: 600; color: #4A3B32; padding: 8px !important;
}

.fc-toolbar-title {
    font-size: 1.25rem !important; font-weight: 700; font-family: 'Playfair Display', serif; text-transform: capitalize; color: #4A3B32;
}

.fc-button-primary {
    background-color: transparent !important; color: #4A3B32 !important; border: 1px solid #B58D71 !important; text-transform: uppercase; font-size: 0.7rem !important; font-weight: 600 !important; border-radius: 8px !important; transition: background-color 0.3s !important; outline: none; box-shadow: none !important; margin: 0 4px !important;
}

.fc-button-primary:hover {
    background-color: #B58D71 !important; color: white !important;
}

.fc-daygrid-day:hover {
    background: rgba(181, 141, 113, 0.05) !important; cursor: pointer; border-radius: 8px;
}
.fc-day-selected {
    background: rgba(181, 141, 113, 0.15) !important; border: 2px solid #B58D71 !important; border-radius: 8px;
}
.fc-day-past {
    opacity: 0.3 !important; pointer-events: none !important; cursor: not-allowed !important; background-color: #FAF8F5 !important;
}

/* Scrollbar estilizada */
.custom-scroll::-webkit-scrollbar { width: 6px; }
.custom-scroll::-webkit-scrollbar-track { background: #fdfdfd; border-radius: 10px; }
.custom-scroll::-webkit-scrollbar-thumb { background: #EFE4D8; border-radius: 10px; }
.custom-scroll::-webkit-scrollbar-thumb:hover { background: #B58D71; }

.agenda-slot { transition: all 0.3s ease; }
.agenda-slot.disponible:hover { border-color: #B58D71; background: #fffcf8; transform: translateY(-2px); box-shadow: 0 4px 6px rgba(0,0,0,0.05); }
.agenda-slot.selected { background: #B58D71 !important; border-color: #B58D71 !important; color: white !important; transform: scale(1.02); }

/* Chat Window Modal */
@media (max-width: 640px) {
    #chat-window {
        width: 90vw !important;
        right: 5vw !important;
        bottom: 85px !important;
        max-height: 70vh !important;
    }
}
